Details
UDA Data Space Bot
Burlington, United States
Subscribe
Post Categories
Recent Articles
Display Settings
|
Showing posts in category ODBC Refresh
Why Do I Need To Pay For ODBC , JDBC, ADO.NET, OLE-DB Drivers?
Payment is a function of pain alleviation (opportunity cost) monetization.
This post is about highlighting the real pains associated with the $0.00 misconception associated with Data Access Drivers: ODBC, JDBC, ADO.NET, OLE-DB etc.
In the most basic sense, there are some fundament aspects of data access that are complex to implement and rarely implemented (if at all) by free drivers, the list includes:
- Escape Syntaxes for Dates and Functions
- Metadata Calls which enable smarter ODBC compliant applications (this feature is typically missing on Driver Side and abused on the Client side i.e., making clients DBMS specific by testing for specific DBMS names)
- Scrollable Cursors, this is how you deal with change sensitivity, and most drivers actually fake support and get away with it due to shortage of applications to test proper cursor types (Static, Forward-Only, Key-Set, Dynamic, and Mixed models).
Okay, so we're done with actual driver sophistication re. implementation of critical features. Let's Up the ante by veering into the area of security. At the most basic level, It's extremely important to understand that all data access driver types provide read-write access to your databases; thus, it's imperative that data access drivers address the following:
-
Read-Only or Read-Write Access scoped to specific Users
-
Ditto applied to specific User Groups
-
Ditto applied to Database Names
-
Ditto applied to specific ODBC compliant applications
-
Ditto applied to specific ODBC host operating systems
-
Ditto applied to specific IP addresses or Ranges on your Network
-
Any combination of items 1-6 as part of a configurable data access rules/policy system.
Once you're done with security, you then have the thorny issue of data access and data flow management. In a nutshell, your driver needs to be able to handle:
-
Protection against cartesian product network flooding (e.g., user clicks on Customer Table via an ODBC compliant application without comprehension of back-end implications)
-
Enabling or Disabling of key DBMS engine data access optimization features (e.g. DBMS specific extensions exposed via Environment Variables of SQL commands based settings)
-
Conditional Connection Pooling across User, User Groups, Applications, Host Operating System, IP Address dimensions.
Once you've dealt with Security and Data Flow, you then have to address the enforcement of these settings across a myriad of ODBC compliant host, which is where Zeroconfig and centralized data access administration comes into play i.e., configure once (locally) and enforce globally.
When OpenLink Software entered the ODBC Driver Market segment in 1992, the issues above where the fundamental basis of our Multi-Tier Drivers. Thus, although we distinguished ourselves via performance, stability, and specification adherence, our fundamental engineering focus has always been skewed towards security and configurability, alongside high-performance and scalability.
As we close 2009, the security issues that pervade Native DBMS Drives, ODBC, JDBC, ADO.NET, OLE-DB etc. Drivers have only increased, courtesy of ubiquitous computing, sadly though, there remains a fundamental illusion that Data Access Drivers simply connect you to DBMS back-ends, and since you can get these drivers at $0.00 from most DBMS vendors they can't be that important.
I hope that this post brings some clarity to a very serious security and general configuration management issues associated with Data Access Drivers. Free ODBC Drivers offer nothing, when it comes to the real issues of Open Data Access. If they did, they wouldn't be worth $0.00!
Note: wondering if this has anything to do with Linked Data (my current data access focal point)? Well, remember, the Linked Data meme is fundamentally about REST based Open Data Access & Integration via HTTP; thus, what applies to Relational Model databases naturally applies to their more granular Graph Model relatives. Basically, data access security never goes away, it just gets more granular, complex, and ultimately, mercurial.
Related
|
02/05/2010 01:03 GMT-0500
|
Modified:
09/12/2010 19:07 GMT-0500
|
DataSpaces Bulletin: December issue now online!
The highly anticipated December 2008 issue of the DataSpaces Bulletin is now available!
This month's DataSpaces contains material of interest to the Virtuoso developer and UDA user community alike —
- Introduction to Virtuoso Universal Server (Cloud Edition).
- Links to Virtuoso and Linked Data mailing lists.
- UDA license management tips and tricks.
|
12/09/2008 13:09 GMT-0500
|
Modified:
12/09/2008 15:06 GMT-0500
|
IBM Flexes XML Muscle
Here is another article titled "IBM Flexes XML Muscle" that covers the same general theme: IBM's appreciation of Unified Storage.
As indicated in an earlier post: IBM is clearly validating what we have done with Virtuoso (as was the case initially with their Virtual / Federated DBMS initiative ala DB2 Integrator). Here is an excerpt from today's eWeek article supporting this position:
To achieve maximum XML performance, bolstered indexing attributes in the technology will enable advanced search functions and a higher degree of filtering. IBM is also adding support for XPath and XQuery data models. This will allow users to create views that involve SQL and XQuery by sending the protocol through DB2's query optimizer for a unified query plan.
Read on..
Virtuoso has been doing this since 2000; unfortunately a lot of
|
01/04/2005 12:19 GMT-0500
|
Modified:
09/30/2006 04:38 GMT-0500
|
Preventable SQL DBMS Vulnerabilities
Here are some excerpts (inlined) with my comments (outlined)
|
05/17/2004 20:41 GMT-0500
|
Modified:
06/22/2006 08:56 GMT-0500
|
New Open Source ODBC SDK Site
A revamped iodbc.org site is now live. A cross platform ODBC SDK (for writing Drivers, or making applications database independent) remains an important part of the tecnology spectrum for the information age. The further we go into the information age, the more obvious the value of data access, and a standards base API will become.
|
01/06/2004 19:10 GMT-0500
|
Modified:
06/22/2006 08:56 GMT-0500
|
XML Development Hindered by Lack of Conformity to Data Connectivity Standards ?
|
11/11/2003 18:14 GMT-0500
|
Modified:
06/22/2006 08:56 GMT-0500
|
HOWTO: Apache-PHP-ODBC on Mac OS X
There is a new
HOWTO document
that addresses an area of frequent confusion on Mac OS X, which is how do you build PHP with an ODBC data access layer binding (
iODBC
variant) using Mac OS X Frameworks as opposed to Darwin Shared Libraries.
|
10/24/2003 11:39 GMT-0500
|
Modified:
06/22/2006 08:56 GMT-0500
|
A Virtuoso of a Server
NETWORK WORLD NEWSLETTER: MARK GIBBS ON WEB APPLICATIONS
Today's focus: A Virtuoso of a server
By Mark Gibbs
One of the bigger drags of Web applications development is that building a system of even modest complexity is a lot like herding cats - you need a database, an applications server, an XML engine, etc., etc. And as they all come from different vendors you are faced with solving the constellation of integration issues that inevitably arise.
If you are lucky, your integration results in a smoothly functioning system. If not, you have a lot of spare parts flying in loose formation with the risk of a crash and burn at any moment.
An alternative is to look for all of these features and services in a single package but you'll find few choices in this arena.
One that is available and looks very promising is OpenLink's Virtuoso (see links below).
Virtuoso is described as a cross platform (runs on Windows, all Unix flavors, Linux, and Mac OS X) universal server that provides databases, XML services, a Web application server and supporting services all in a single package.
OpenLink's list of supported standards is impressive and includes .Net, Mono, J2EE, XML Web Services (Simple Object Application Protocol, Web Services Description Language, WS-Security, Universal Description, Discovery and Integration), XML, XPath, XQuery, XSL-T, WebDav, HTTP, SMTP, LDAP, POP3, SQL-92, ODBC, JDBC and OLE-DB.
Virtuoso provides an HTTP-compliant Web Server; native XML document creation, storage and management; a Web services platform for creation, hosting and consumption of Web services; content replication and synchronization services; free text index server, mail delivery and storage and an NNTP server.
Another interesting feature is that with Virtuoso you can create Web services from existing SQL Stored Procedures, Java classes,
C++ classes, and 'C' functions as well as create dynamic XML
documents from ODBC and JDBC data sources.
This is an enormous product and implies a serious commitment on the part of adopters due to its scope and range of services.
Virtuoso is enormous by virtue of its architectural ambitions, but actual disk requirements are
|
10/23/2003 17:58 GMT-0500
|
Modified:
06/22/2006 08:56 GMT-0500
|
MySQL-ODBC Bridge SDK
What Is This?
The MySQL-ODBC SDK enables you to make MySQL specific applications database independent via ODBC without wholesale re-writes of your MySQL specific application code. Thus, applications that are written directly to the MySQL Call Level Interface now end up being database independent via ODBC, and usable against any ODBC accessible database (including MySQL).
Why Is It Important?
The Open-Source community is rapidly producing innovative applications and in many cases these applications sit atop relational database management systems. Traditionally and historically, the tendency has been to look to MySQL as the default relational database service for Open Source Applications (the "M" in LAMP) which is unfortunately retrogressive since the concept of database independence has long been addressed industry wide via APIs such as ODBC, JDBC, OLE DB, and more recently ADO.NET.
In some case the existence of these APIs has been unknown to Open Source developers prior to application development, and in other cases the complexity of a port from the MySQL API to ODBC ends up being too difficult. There are numerous reasons why you can't mandate MySQL or any other database engine for that matter to every potential user of an Open Source database centric application:
- Compromises freedom of choice ("Freedom of Choice" is a central theme of the Open Source movement and concept)
- Database vendor lock-in reduces the deployment scope of your application, and it also potentially impedes functionality growth (what happens when the underlying database lacks the functionality that you desire? And cannot or will not deliver an implementation within your time-frame?)
- Cost-Effectiveness is an Open Source value proposition main stay, so asking potential users to acquire yet another database (the real costs aren't $0.00 as resources will be required for administration, installation, configuration etc.) when functional ODBC accessible relational databases exist in house is simply contradictory at the very least.
ODBC as a concept has always been designed to be database-independent; iODBC as an Open Source project was devised to ensure platform neutrality for ODBC (just as Mono is pursuing the same goals re. .NET). When you write an application using the ODBC API database interchangeablity becomes a reality (the worst thing that can happen to you is a dysfunctional driver which is replaceable). Read on..
|
10/02/2003 14:20 GMT-0500
|
Modified:
08/29/2006 06:36 GMT-0500
|
|
Multi-Tier Online Documentation
OPML
OCS
Single-Tier Online Documentation
OPML
OCS
|