<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>

<title>Universal Data Access Technology Blog</title><link>http://www.openlinksw.com:443/weblog/uda/135/</link><description /><managingEditor>hwilliams@openlinksw.com</managingEditor><pubDate>Sat, 18 Apr 2026 03:09:13 GMT</pubDate><generator>Virtuoso Universal Server 08.03.3334</generator><webMaster>hwilliams@openlinksw.com</webMaster><image><title>Universal Data Access Technology Blog</title><url>http://www.openlinksw.com:443/weblog/public/images/vbloglogo.gif</url><link>http://www.openlinksw.com:443/weblog/uda/135/</link><description /><width>88</width><height>31</height></image>
<item><title>Why Do I Need To Pay For ODBC, JDBC, ADO.NET, OLE-DB Drivers? (revisited)</title><guid>http://www.openlinksw.com:443/weblog/uda/135/?date=2015-06-11#1847</guid><comments>http://www.openlinksw.com:443/weblog/uda/135/?id=1847#comments</comments><pubDate>Thu, 11 Jun 2015 21:18:05 GMT</pubDate><description>&lt;h2&gt;Situation Analysis&lt;/h2&gt;

&lt;p&gt;It&amp;#39;s the year 2015, and the fundamental issues associated with the utility of data access drivers remain confusing. Basically, we remain uncertain about the value-to-compensation alignment of  ODBC (Open Database Connectivity), JDBC (Java Database Connectivity), and ADO.NET drivers/providers.&lt;/p&gt;

&lt;table style=&quot;border-spacing: 10px; margin-left: auto; margin-right: auto; padding: 10px; width: 95%;&quot;&gt;
&lt;tr&gt;
&lt;th style=&quot;text-align: center; width: 45%;&quot;&gt;ODBC&lt;/th&gt;
&lt;th style=&quot;text-align: center; width: 45%;&quot;&gt;JDBC&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center; width: 45%;&quot;&gt;
&lt;a href=&quot;https://s-media-cache-ak0.pinimg.com/originals/ef/b2/7e/efb27e54ef098c18a93aa8a074d5817d.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot; id=&quot;link-id0x1066f4c38&quot;&gt;&lt;img alt=&quot;Image&quot; border=&quot;0&quot; src=&quot;https://s-media-cache-ak0.pinimg.com/originals/ef/b2/7e/efb27e54ef098c18a93aa8a074d5817d.png&quot; style=&quot;max-width: 400px; width: 100%&quot; /&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;td style=&quot;text-align: center; width: 45%;&quot;&gt;
&lt;a href=&quot;https://s-media-cache-ak0.pinimg.com/originals/75/11/a8/7511a81c2e4ec244473cc514d997bd0a.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot; id=&quot;link-id0x10619cce8&quot;&gt;&lt;img alt=&quot;Image&quot; border=&quot;0&quot; src=&quot;https://s-media-cache-ak0.pinimg.com/originals/75/11/a8/7511a81c2e4ec244473cc514d997bd0a.png&quot; style=&quot;max-width: 400px; width: 100%&quot; /&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th style=&quot;text-align: center; width: 45%;&quot; colspan=&quot;2&quot;&gt;ADO.NET&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center; width: 45%;&quot; colspan=&quot;2&quot;&gt;
&lt;a href=&quot;https://s-media-cache-ak0.pinimg.com/originals/70/67/69/706769ab0ff453e94c50f38c956beeab.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot; id=&quot;link-id0x108c5e078&quot;&gt;&lt;img alt=&quot;Image&quot; border=&quot;0&quot; src=&quot;https://s-media-cache-ak0.pinimg.com/originals/70/67/69/706769ab0ff453e94c50f38c956beeab.jpg&quot; style=&quot;max-width: 400px; width: 100%&quot; /&gt;&lt;/a&gt;&lt;/td&gt;

&lt;/tr&gt;
&lt;/table&gt;

&lt;h3&gt;Why do we pay for anything?&lt;/h3&gt;

&lt;p&gt;After allowing for consumer irrationality [&lt;a href=&quot;http://www.theatlantic.com/business/archive/2013/01/the-irrational-consumer-why-economics-is-dead-wrong-about-how-we-make-choices/267255/&quot; id=&quot;link-id0x10711d0f8&quot;&gt;1&lt;/a&gt;], the basis of any payment is fundamentally tied to the monetization of opportunity costs. Essentially, we pay for one thing to alleviate the (usually higher) costs of something else.&lt;/p&gt;

&lt;p&gt;The rest of this post focuses on highlighting the real pains associated with the $0.00 value misconception associated with Data Access Drivers: ODBC, JDBC, ADO.NET, OLE-DB, etc.&lt;/p&gt;

&lt;h2&gt;Real Costs of Data Access Drivers&lt;/h2&gt;

&lt;p&gt;In the most basic sense, there are some fundamental aspects of data access that are complex to implement and rarely implemented (if at all) by free drivers. The list includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
  &lt;b&gt;Escape Syntaxes for Dates and Functions&lt;/b&gt; -- abstraction for dates and function signatures at the application level (i.e., the same abstraction works across all compliant databases)&lt;/li&gt;
&lt;li&gt;
  &lt;b&gt;Metadata Calls which enable smarter ODBC compliant applications&lt;/b&gt; -- this feature is typically missing in Drivers and abused by the Clients (consumers); i.e., clients are made DBMS specific by testing for specific DBMS names, rather than utilizing feature and functionality metadata returned by drivers&lt;/li&gt;
&lt;li&gt;
  &lt;b&gt;Scrollable Cursors&lt;/b&gt; -- this is how you deal with change sensitivity and paging through large datasets; some 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).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Beyond actual driver sophistication, in regards to key feature implementations, let&amp;#39;s up the ante by veering into the area of data security. At the most basic level, It&amp;#39;s extremely important to understand that all data access drivers provide read-write access to your databases; thus, it&amp;#39;s imperative that data access drivers address the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Read-Only or Read-Write Access modalities scoped to specific
  &lt;ul&gt;
     &lt;li&gt;users&lt;/li&gt;
     &lt;li&gt;user groups&lt;/li&gt;
     &lt;li&gt;target databases&lt;/li&gt;
     &lt;li&gt;data access standards (e.g., ODBC, JDBC, ADO.NET) 
     &lt;/li&gt;
    &lt;li&gt;client applications&lt;/li&gt;
     &lt;li&gt;client host operating systems&lt;/li&gt;
     &lt;li&gt;client host IP addresses&lt;/li&gt;
  &lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Any combination of the above as part of a configurable collection of data access rules (or policies).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once you&amp;#39;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:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
  &lt;i&gt;Protection against Cartesian-product-based network flooding&lt;/i&gt; (e.g., user queries an enormous table without knowing or understanding back-end implications)&lt;/li&gt;
&lt;li&gt;
  &lt;i&gt;Enabling or Disabling of key DBMS engine data access optimization features&lt;/i&gt; (e.g. SQL RDBMS-specific extensions exposed via Environment Variables or SQL-command-based settings)&lt;/li&gt;
&lt;li&gt;
  &lt;i&gt;Conditional Connection Pooling&lt;/i&gt; across various dimensions such as Users, User Groups, Applications, Host Operating Systems, IP Addresses&lt;/li&gt;
&lt;li&gt;
  &lt;i&gt;Encryption of Data&lt;/i&gt; in Transit&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once you&amp;#39;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.&lt;/p&gt;

&lt;h2&gt;OpenLink Universal Data Access (UDA) Drivers &lt;/h2&gt;

&lt;p&gt;When OpenLink Software entered the ODBC Driver Market segment (circa 1992), the issues above were the fundamental basis of our Multi-Tier Drivers. Although the marketplace highlighted our drivers for high performance, stability, and specification adherence -- to all of which we remain committed -- our fundamental engineering focus has always been skewed towards configurable data security, platform independence, and scalability.&lt;/p&gt;

&lt;p&gt;Every item of concern outlined in the section above is addressed by security features built into our Multi-Tier Drivers [&lt;a href=&quot;http://uda.openlinksw.com/odbc/mt/&quot; id=&quot;link-id0x106b2c0c8&quot;&gt;2&lt;/a&gt;][&lt;a href=&quot;http://uda.openlinksw.com/jdbc/mt/&quot; id=&quot;link-id0x108454e28&quot;&gt;3&lt;/a&gt;][&lt;a href=&quot;http://uda.openlinksw.com/dotnet/&quot; id=&quot;link-id0x108454f28&quot;&gt;4&lt;/a&gt;]. These features all leverage the fact that our multi-tier drivers include a sophisticated DB session rules book that enables construction and enforcement of user attribute (user name, application, client operating system, IP address, target database etc.) based rules which are applied to all database sessions (single or pooled). &lt;/p&gt;

&lt;table style=&quot;border-spacing: 10px; margin-left: auto; margin-right: auto; padding: 10px; width: 95%;&quot;&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center; width: 45%;&quot;&gt;
&lt;a href=&quot;https://s-media-cache-ak0.pinimg.com/originals/ed/95/14/ed9514178ecf89849402af1c48942412.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot; id=&quot;link-id0x107378c98&quot;&gt;&lt;img alt=&quot;Image&quot; border=&quot;0&quot; src=&quot;https://s-media-cache-ak0.pinimg.com/originals/ed/95/14/ed9514178ecf89849402af1c48942412.png&quot; style=&quot;max-width: 400px; width: 100%&quot; /&gt;&lt;/a&gt;
&lt;div class=&quot;p2&quot;&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;

&lt;p&gt;Today, in the year 2015, the security issues that pervade Data Access, whether via Native SQL RDBMS Drivers, or ODBC, JDBC, and ADO.NET Drivers/Providers, have only increased, courtesy of ubiquitous computing -- facilitated by the Internet &amp;amp; Web, across desktop and mobile device dimensions.  Paradoxically, there remains a fundamental illusion that all Data Access Drivers are made the same; i.e., they simply provide you with the ability to connect to SQL RDBMS back-ends, for the industry standard price of $0.00, without consequence -- thereby skewing the very nature of SQL RDBMS data access and its security and privacy implications. &lt;/p&gt;

&lt;p&gt;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; that&amp;#39;s why they cost $0.00. When dealing with real issues associated with Open Data Access, you must have a handle on the inevitable issues of data security and privacy. &lt;/p&gt;

&lt;h2&gt;Links&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://www.theatlantic.com/business/archive/2013/01/the-irrational-consumer-why-economics-is-dead-wrong-about-how-we-make-choices/267255/&quot; id=&quot;link-id0x1082b54b8&quot;&gt;The Irrational Consumer: Why Economics Is Dead Wrong About How We Make Choices&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://uda.openlinksw.com/odbc/mt/&quot; id=&quot;link-id0x1082b55b8&quot;&gt;OpenLink Multi-Tier ODBC Drivers&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://uda.openlinksw.com/jdbc/mt/&quot; id=&quot;link-id0x1067e1e68&quot;&gt;OpenLink Multi-Tier JDBC Drivers&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://uda.openlinksw.com/dotnet/mt/&quot; id=&quot;link-id0x1067e1fd8&quot;&gt;OpenLink Multi-Tier ADO.NET Providers&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;Related&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
  &lt;a href=&quot;http://www.dba-oracle.com/t_auditing4_horror_stories_inside_jobs.htm&quot; id=&quot;link-id0x107044328&quot;&gt;&lt;span class=&quot;s1&quot;&gt;Oracle Security Auditing Horror Stories&lt;/span&gt;
  &lt;/a&gt;&lt;span class=&quot;s1&quot;&gt; -- showcases social dimension of security that exploits literal identifiers used by SQL RDBMS products in regards to user identity&lt;/span&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://searchoracle.techtarget.com/news/2240015728/Database-security-strategies-need-to-grow-up-in-2010?&quot; id=&quot;link-id0x1062ad718&quot;&gt;Database Security Strategies Need to Grow Up in 2010&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://walkingoncoals.blogspot.com/2009/12/whos-data-is-it-part-1.html&quot; id=&quot;link-id0x10772cc78&quot;&gt;&lt;span class=&quot;s1&quot;&gt;Whose Data is it? Part 1&lt;/span&gt;
  &lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;span class=&quot;s1&quot;&gt;&lt;a href=&quot;http://walkingoncoals.blogspot.com/2009/12/whos-data-is-it-part-2.html&quot; id=&quot;link-id0x10876fc48&quot;&gt;Whose Data is it? Part 2&lt;/a&gt;
  &lt;/span&gt;
&lt;/li&gt;
&lt;/ul&gt;
</description></item><item><title>DataSpaces Bulletin: December issue now online!</title><guid>http://www.openlinksw.com:443/weblog/uda/135/?date=2008-12-09#1492</guid><comments>http://www.openlinksw.com:443/weblog/uda/135/?id=1492#comments</comments><pubDate>Tue, 09 Dec 2008 18:09:00 GMT</pubDate><description>&lt;p&gt;The highly anticipated &lt;a href=&quot;http://support.openlinksw.com/supportweb/DataSpacesBulletin-2008-12&quot; id=&quot;link-id0x2108a398&quot;&gt;December 2008 issue of the DataSpaces Bulletin is now available&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;This month&amp;#39;s DataSpaces contains material of interest to the Virtuoso developer and UDA user community alike —&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Introduction to Virtuoso Universal Server (Cloud Edition).&lt;/li&gt;
&lt;li&gt;Links to Virtuoso and Linked Data mailing lists.&lt;/li&gt;
&lt;li&gt;UDA license management tips and tricks.&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>IBM Flexes XML Muscle</title><guid>http://www.openlinksw.com:443/weblog/uda/135/?date=2005-01-04#658</guid><comments>http://www.openlinksw.com:443/weblog/uda/135/?id=658#comments</comments><pubDate>Tue, 04 Jan 2005 17:19:09 GMT</pubDate><description>&lt;p&gt;Here is another article titled &amp;quot;&lt;a href=&quot;http://www.eweek.com/article2/0,1759,1747224,00.asp?kc=ewnws010305dtx1k0000599&quot;&gt;IBM Flexes XML Muscle&lt;/a&gt;&amp;quot; that covers the same general theme: IBM&amp;#39;s appreciation of Unified Storage.&lt;/p&gt;
&lt;p&gt;As indicated in an earlier &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/index.vspx?id=648&quot;&gt;post&lt;/a&gt;: 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&amp;#39;s &lt;a href=&quot;http://www.eweek.com/article2/0,1759,1747224,00.asp?kc=ewnws010305dtx1k0000599&quot;&gt;eWeek article&lt;/a&gt; supporting this position:&lt;/p&gt;
&lt;blockquote dir=&quot;ltr&quot; style=&quot;MARGIN-RIGHT: 0px&quot;&gt;
&lt;p&gt;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&amp;#39;s query optimizer for a unified query plan. &lt;/p&gt;
&lt;p&gt;
  &lt;a href=&quot;http://www.eweek.com/article2/0,1759,1747224,00.asp?kc=ewnws010305dtx1k0000599&quot;&gt;Read on..&lt;/a&gt;
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir=&quot;ltr&quot;&gt;
&lt;a href=&quot;http://virtuoso.openlinksw.com/&quot;&gt;Virtuoso&lt;/a&gt; has been doing this since 2000; unfortunately a lot of&lt;/p&gt;</description></item><item><title>Preventable SQL DBMS Vulnerabilities</title><guid>http://www.openlinksw.com:443/weblog/uda/135/?date=2004-05-17#545</guid><comments>http://www.openlinksw.com:443/weblog/uda/135/?id=545#comments</comments><pubDate>Tue, 18 May 2004 00:41:39 GMT</pubDate><description>&lt;p&gt;Here are some excerpts (inlined) with my comments (outlined)&lt;/p&gt;</description></item><item><title>Creating RSS Using SQLX</title><guid>http://www.openlinksw.com:443/weblog/uda/135/?date=2003-11-11#425</guid><comments>http://www.openlinksw.com:443/weblog/uda/135/?id=425#comments</comments><pubDate>Tue, 11 Nov 2003 23:33:50 GMT</pubDate><description>&lt;p&gt;Here is a &lt;a href=&quot;http://www.openlinksw.com/articles/rssvirtsqlx.htm&quot;&gt;practical example of how to create RSS on the fly from SQL &lt;/a&gt;data sources leveraging Virtuoso 3.2&amp;#39;s SQLX implementation.&lt;/p&gt;
&lt;p&gt;This is further illuminates the content of my &lt;a href=&quot;http://www.openlinksw.com/weblogs/virtuoso/index.vspx?id=426&quot;&gt;earlier post&lt;/a&gt; on this subject.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</description></item><item><title>XML Development Hindered by Lack of Conformity to Data Connectivity Standards ?</title><guid>http://www.openlinksw.com:443/weblog/uda/135/?date=2003-11-11#424</guid><comments>http://www.openlinksw.com:443/weblog/uda/135/?id=424#comments</comments><pubDate>Tue, 11 Nov 2003 23:14:55 GMT</pubDate><description>&lt;p dir=&quot;ltr&quot;&gt;I&amp;#39;ve just read an&lt;/p&gt;</description></item><item><title>HOWTO: Apache-PHP-ODBC on Mac OS X</title><guid>http://www.openlinksw.com:443/weblog/uda/135/?date=2003-10-24#397</guid><comments>http://www.openlinksw.com:443/weblog/uda/135/?id=397#comments</comments><pubDate>Fri, 24 Oct 2003 15:39:28 GMT</pubDate><description>&lt;div class=&quot;Section1&quot;&gt;
&lt;p&gt;
  &lt;font face=&quot;Times New Roman&quot;&gt;
   &lt;span style=&quot;FONT-SIZE: 12pt&quot;&gt;&lt;font size=&quot;2&quot;&gt;There is a new &lt;/font&gt;
    &lt;a href=&quot;http://www.iodbc.org/iodbc-phposxHOWTO.html&quot;&gt;&lt;font size=&quot;2&quot;&gt;HOWTO document&lt;/font&gt;
    &lt;/a&gt;&lt;font size=&quot;2&quot;&gt; 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 (&lt;/font&gt;
    &lt;a href=&quot;http://www.iodbc.org/&quot;&gt;&lt;font size=&quot;2&quot;&gt;iODBC&lt;/font&gt;
    &lt;/a&gt;&lt;font size=&quot;2&quot;&gt; variant) using Mac OS X Frameworks as opposed to Darwin Shared Libraries. &lt;/font&gt;
   &lt;/span&gt;
  &lt;/font&gt;
&lt;/p&gt;
&lt;/div&gt;</description></item><item><title>A Virtuoso of a Server</title><guid>http://www.openlinksw.com:443/weblog/uda/135/?date=2003-10-23#396</guid><comments>http://www.openlinksw.com:443/weblog/uda/135/?id=396#comments</comments><pubDate>Thu, 23 Oct 2003 21:58:31 GMT</pubDate><description>&lt;font size=&quot;2&quot;&gt;
&lt;p&gt;
&lt;a href=&quot;http://www.nwfusion.com/index.html&quot;&gt;NETWORK WORLD&lt;/a&gt; NEWSLETTER: MARK GIBBS ON WEB APPLICATIONS &lt;/p&gt;
&lt;p&gt;
&lt;font size=&quot;2&quot;&gt;Today&amp;#39;s focus: A Virtuoso of a server&lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;By &lt;a href=&quot;http://www.nwfusion.com/columnists/gibbs.html&quot;&gt;Mark Gibbs&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;An alternative is to look for all of these features and services in a single package but you&amp;#39;ll find few choices in this arena.&lt;/p&gt;
&lt;p&gt;One that is available and looks very promising is OpenLink&amp;#39;s Virtuoso (see links below).&lt;/p&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;OpenLink&amp;#39;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.&lt;/p&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;Another interesting feature is that with Virtuoso you can create Web services from existing SQL Stored Procedures, Java classes,&lt;/p&gt;
&lt;p&gt;C++ classes, and &amp;#39;C&amp;#39; functions as well as create dynamic XML&lt;/p&gt;
&lt;p&gt;documents from ODBC and JDBC data sources.&lt;/p&gt;
&lt;p&gt;This is an enormous product and implies a serious commitment on the part of adopters due to its scope and range of services.&lt;/p&gt;
&lt;blockquote dir=&quot;ltr&quot; style=&quot;MARGIN-RIGHT: 0px&quot;&gt;
&lt;p&gt;
  &lt;em&gt;Virtuoso is enormous by virtue of its architectural ambitions, but actual disk requirements are&lt;/em&gt;
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/font&gt;</description></item><item><title>Universal Data Access and Security</title><guid>http://www.openlinksw.com:443/weblog/uda/135/?date=2003-10-01#379</guid><comments>http://www.openlinksw.com:443/weblog/uda/135/?id=379#comments</comments><pubDate>Wed, 01 Oct 2003 15:39:02 GMT</pubDate><description>&lt;p&gt;There is an old adage that states, &amp;quot;there are no free lunches&amp;quot;. &lt;/p&gt;
&lt;p&gt;This cannot be more true than in the case of universal data access (ODBC, JDBC, ADO.NET, and OLE-DB) and security. There is a &lt;a href=&quot;http://www.openlinksw.com/articles/dbsecurity.pdf&quot;&gt;recently published article&lt;/a&gt; on our web site that sheds light on how we have engineered our data access technology to enable our customers enjoy secure and high-performance database connectivity when utilizing any of our Multi-Tier Database Connectivity drivers. &lt;/p&gt;
&lt;p&gt;It is no secret that technologies such as &lt;a href=&quot;http://www.wikipedia.org/wiki/ODBC&quot;&gt;ODBC&lt;/a&gt;, and to a fair degree &lt;a href=&quot;http://www.wikipedia.org/wiki/JDBC&quot;&gt;JDBC&lt;/a&gt;, have generated a good share of undeserved criticism over the years in relation to their fundamental value propositions (providing transparent access from compliant applications to backend databases via seperation of application and database connectivity &lt;a href=&quot;http://www.wikipedia.org/wiki/API&quot;&gt;APIs&lt;/a&gt;), and that one of the unfortunate offshoots of this negative press is the contradictory perception that these components are valueless (i.e. they are worth $0.00). Thus, the emergence of the &amp;quot;free is good enough&amp;quot; syndrome which is predicated on the misconception that data access drivers (data source connectivity API implementations) simply provide connectivity and that&amp;#39;s it. &lt;/p&gt;
&lt;p&gt;If you want to open up your organization (whatever your variation internal, external, internet, extranet, intranet etc.) for the worst of all worlds (&lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/index.vspx?id=319&quot;&gt;deliberate or inadvertent attacks&lt;/a&gt; on your data) the FREE is GOOD. Otherwise, when dealing with data access drivers you have to bear the following in mind (covered in detail in the&lt;a href=&quot;http://www.openlinksw.com/articles/dbsecurity.pdf&quot;&gt; data access security article&lt;/a&gt;): &lt;/p&gt;
&lt;ul&gt;
&lt;ul&gt;
&lt;li&gt;Can I control&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;</description></item>
</channel>
</rss>
