http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/
Kingsley Idehen's Blog Data Space
I have seen the future and it's full of Linked Data! :-)
kidehen@openlinksw.com
kidehen@openlinksw.com
2024-03-29T12:41:29Z
Virtuoso Universal Server 08.03.3327
http://www.openlinksw.com/weblog/public/images/vbloglogo.gif
Re-introducing the Virtuoso Virtual Database Engine
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-02-17#1608
2010-02-17T21:38:01Z
2010-02-17T16:46:53-05:00
<p>In recent times a lot of the commentary and focus re. <a href="http://virtuoso.openlinksw.com" id="link-id16a22f48">Virtuoso</a> has centered on the RDF Quad Store and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id112d82a0">Linked Data</a>. What sometimes gets overlooked is the sophisticated <a href="http://dbpedia.org/resource/Virtual_Database" id="link-id6493cc8">Virtual Database</a> Engine that provides the foundation for all of Virtuoso's <a href="http://dbpedia.org/resource/Data">data</a> integration capabilities.</p> <p>In this post I provide a brief re-introduction to this essential aspect of Virtuoso.</p> <h3>What is it?</h3> <p>This component of Virtuoso is known as the Virtual Database Engine (VDBMS). It provides transparent high-performance and secure access to disparate data sources that are external to Virtuoso. It enables federated access and integration of data hosted by any <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id13c26008">ODBC</a>- or <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id166604c0">JDBC</a>-accessible <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id139dfdb8">RDBMS</a>, RDF Store, XML database, or Document (Free Text)-oriented Content Management System. In addition, it facilitates integration with <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Services (SOAP-based SOA RPCs or REST-fully accessible Web Resources). </p> <h3>Why is it important?</h3> <p>In the most basic sense, you shouldn't need to upgrade your existing database engine version simply because your current DBMS and Data Access Driver combo isn't compatible with ODBC-compliant desktop tools such as Microsoft Access, Crystal Reports, BusinessObjects, Impromptu, or other of ODBC, JDBC, <a href="http://dbpedia.org/resource/ADO.NET" id="link-id13c7ceb8">ADO</a>.NET, or OLE DB-compliant applications. Simply place Virtuoso in front of your so-called "legacy database," and let it deliver the compliance levels sought by these tools</p> <p>In addition, it's important to note that today's enterprise, through application evolution, company mergers, or acquisitions, is often faced with disparately-structured data residing in any number of line-of-business-oriented data silos. Compounding the problem is the exponential growth of user-generated data via new social media-oriented collaboration tools and platforms. For companies to cost-effectively harness the opportunities accorded by the increasing intersection between line-of-business applications and social media, virtualization of data silos must be achieved, and this virtualization must be delivered in a manner that doesn't prohibitively compromise performance or completely undermine security at either the enterprise or personal level. Again, this is what you get by simply installing Virtuoso.</p> <h3>How do I use it?</h3> <p>The VDBMS may be used in a variety of ways, depending on the data access and integration task at hand. Examples include: </p> <h4>Relational Database Federation</h4> <p>You can make a single ODBC, JDBC, ADO.NET, OLE DB, or XMLA connection to multiple ODBC- or JDBC-accessible RDBMS data sources, concurrently, with the ability to perform intelligent distributed joins against externally-hosted database tables. For instance, you can join internal human resources data against internal sales and external stock market data, even when the HR team uses <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id16706720">Oracle</a>, the Sales team uses <a href="http://dbpedia.org/resource/IBM_Informix" id="link-ide5a15c8">Informix</a>, and the Stock Market figures come from <a href="http://dbpedia.org/resource/Ingres" id="link-id13c0e138">Ingres</a>!</p> <h4>Conceptual Level Data Access using the RDF Model</h4> <p>You can construct RDF Model-based Conceptual Views atop Relational Data Sources. This is about generating HTTP-based <a href="http://dbpedia.org/resource/Entity-attribute-value_model" id="link-id115150f8">Entity</a>-Attribute-Value (E-A-V) graphs using data culled "on the fly" from native or external data sources (Relational Tables/Views, XML-based Web Services, or User Defined Types).</p> <p>You can also derive RDF Model-based Conceptual Views from Web Resource transformations "on the fly" -- the Virtuoso <a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id1675db50">Sponger</a> (RDFizing middleware component) enables you to generate RDF Model Linked Data via a RESTful Web Service or within the process pipeline of the <a href="http://dbpedia.org/resource/SPARQL" id="link-id166b8d90">SPARQL</a> query engine (i.e., you simply use the <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id167d00c8">URL</a> of a Web Resource in the FROM clause of a SPARQL query).</p> <p>It's important to note that Views take the form of HTTP links that serve as both Data Source Names and Data Source Addresses. This enables you to query and explore relationships across entities (i.e., People, Places, and other Real World Things) via HTTP clients (e.g., Web Browsers) or directly via SPARQL Query Language constructs transmitted over HTTP.</p> <h4>Conceptual Level Data Access using ADO.NET <a href="http://dbpedia.org/resource/Entity" id="link-id13c6bb60">Entity</a> <a href="http://dbpedia.org/resource/ADO.NET_Entity_Framework" id="link-id16ad3f68">Frameworks</a> </h4> <p>As an alternative to RDF, Virtuoso can expose ADO.NET Entity Frameworks-based Conceptual Views over Relational Data Sources. It achieves this by generating Entity Relationship graphs via its native ADO.NET Provider, exposing all externally attached ODBC- and JDBC-accessible data sources. In addition, the ADO.NET Provider supports direct access to Virtuoso's native RDF database engine, eliminating the need for resource intensive Entity Frameworks model transformations.</p> <h3>Related</h3> <ul> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtLinkRemoteTables" id="link-id1183acd8">Attaching ODBC or JDBC accessible Relational Tables to Virtuoso</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtRdb2RDFViewsGeneration#One-Click%20Linked%20Data%20Generation%20&%20Deployment" id="link-id113f2fd8">Using an HTML based Wizard to Generate RDF based Linked Views over Relational Tables</a> </li> <li> <a href="http://www.youtube.com/watch?v=bj7AbJ0ZYCk&feature=channel" id="link-id16ad4480">Screencast Demonstrating Wizard based generation of RDF based Linked Data Views Part 1</a> </li> <li> <a href="http://www.youtube.com/watch?v=yXNlcISS0aY&feature=channel" id="link-id114eb720">Screencast Demonstrating Wizard based generation of RDF based Linked Data Views Part 1</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSponger" id="link-id116e5810">Generating RDF based Linked Data from non RDF based Web Resources via the Sponger</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAdoNet35Provider" id="link-id16706118">Building ADO.NET based Entity Frameworks Views over Relational Data</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSilverlightSPARQLExample" id="link-id139c1278">Building Silverlight Rich Internat Applicaitons using ADO.NET, Entity Frameworks, and RDF based Linked Data</a>.</li> </ul>
5 Game Changing Things about the OpenLink Virtuoso + AWS Cloud Combo
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-01-31#1590
2010-01-31T22:29:34Z
2010-02-01T08:59:36-05:00
<p> Here are 5 powerful benefits you can immediately derive from the combination of <a href="http://virtuoso.openlinksw.com" id="link-id17eb8988">Virtuoso</a> and Amazon's AWS services (specifically the EC2 and EBS components): <br /> </p> <ol> <li> Acquire your own personal or service specific <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id1423e520">data space</a> in the Cloud. Think DBase, Paradox, FoxPRO, Access of yore, but with the power of <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id136c6290">Oracle</a>, <a href="http://dbpedia.org/resource/IBM_Informix" id="link-id11b269b8">Informix</a>, <a href="http://dbpedia.org/resource/Microsoft_SQL_Server" id="link-id138084b8">Microsoft SQL Server</a> etc.. using a Conceptual, as opposed to solely Logical, model based DBMS (i.e., a Hybrid DBMS Engine for: <a href="http://dbpedia.org/resource/SQL" id="link-id132a7938">SQL</a>, RDF, XML, and Full Text) </li> <li> Ability to share and control access to your resources using innovations like <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id17ee9d28">FOAF</a>+SSL, OpenID, and OAuth, all from one place </li> <li> Construction of personal or organization based FOAF profiles in a matter of minutes; by simply creating a basic DBMS (or <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id14784ae0">ODS</a> application layer) account; and then using this profile to create strong links (references) to all your Data silos (esp. those from the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> 2.0 realm) </li> <li> Load data sets from the <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id17e6ac98">LOD</a> cloud or Sponge existing Web resources (i.e., on the fly data transformation to RDF model based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id17e65d38">Linked Data</a>) and then use the combination to build powerful lookup services that enrich the value of URLs (think: Web addressable reports holding query results) that you publish </li> <li> Bind all of the above to a domain that you own (e.g. a .Name domain) so that you have an attribution-friendly "authority" component for resource URLs and <a href="http://dbpedia.org/resource/Entity" id="link-id118a08d8">Entity</a> URIs published from your Personal Linked Data Space on the Web (or private HTTP network). </li> </ol> <p> In a nutshell, the AWS Cloud infrastructure simplifies the process of generating Federated presence on the <a href="http://dbpedia.org/resource/Internet" id="link-id1380af38">Internet</a> and/or <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id11633b10">World Wide Web</a>. Remember, centralized networking models always end up creating data silos, in some <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id142006f0">context</a>, ultimately! :-) </p>
New ADO.NET 3.x Provider for Virtuoso Released (Update 2)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-01-08#1514
2009-01-08T04:36:47Z
2009-01-08T09:12:50.000006-05:00
<p>I am pleased to announce the immediate availability of the <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAdoNet35Provider" id="link-id142e7390">Virtuoso ADO.NET 3.5 data provider</a> for Microsoft's .NET platform.</p> <h3>What is it?</h3> <p>A data access driver/provider that provides conceptual <a href="http://dbpedia.org/resource/Entity" id="link-id11c36c00">entity</a> oriented access to <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id12fb8618">RDBMS</a> data managed by Virtuoso. Naturally, it also uses Virtuoso's in-built virtual / <a href="http://dbpedia.org/resource/federated_database_system" id="link-id115bedc8">federated database</a> layer to provide access to <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id15153c08">ODBC</a> and <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id13418908">JDBC</a> accessible RDBMS engines such as: <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id134d72f0">Oracle</a> (7.x to latest), <a href="http://dbpedia.org/resource/SQL" id="link-id15757b88">SQL</a> Server (4.2 to latest), <a href="http://dbpedia.org/resource/Sybase" id="link-id15ef8d48">Sybase</a>, IBM <a href="http://dbpedia.org/resource/IBM_Informix" id="link-id12f56aa0">Informix</a> (5.x to latest), IBM <a href="http://dbpedia.org/resource/IBM_DB2" id="link-id119feb38">DB2</a>, <a href="http://dbpedia.org/resource/Ingres" id="link-id14e3d6c8">Ingres</a> (6.x to latest), Progress (7.x to OpenEdge), <a href="http://dbpedia.org/resource/MySQL" id="link-id11295630">MySQL</a>, PostgreSQL, <a href="http://dbpedia.org/resource/Firebird_database_server" id="link-id12f40448">Firebird</a>, and others using our ODBC or JDBC bridge drivers.</p> <h3>Benefits?</h3> <h4>Technical:</h4> <p>It delivers an <a href="http://dbpedia.org/resource/Entity-attribute-value_model" id="link-id14012040">Entity-Attribute-Value + Classes & Relationships model</a> over disparate data sources that are materialized as .NET Entity Framework Objects, which are then consumable via ADO.NET Data Object Services, LINQ for Entities, and other ADO.NET data consumers.</p> <p>The provider is fully integrated into Visual Studio 2008 and delivers the same "ease of use" offered by Microsoft's own SQL Server provider, but across Virtuoso, Oracle, Sybase, DB2, Informix, Ingres, <a href="http://dbpedia.org/resource/Progress_4GL" id="link-id158d1fe8">Progress (OpenEdge</a>), MySQL, PostgreSQL, Firebird, and others. The same benefits also apply uniformly to Entity Frameworks compatibility.</p> <p> Bearing in mind that Virtuoso is a multi-model (hybrid) data manager, this also implies that you can use .NET Entity Frameworks against all data managed by Virtuoso. Remember, Virtuoso's SQL channel is a conduit to Virtuoso's core; thus, RDF (courtesy of <a href="http://esw.w3.org/topic/SPASQL" id="link-id133c9b70">SPASQL</a> as already implemented re. <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtJenaProvider" id="link-id11380b80">Jena</a>/<a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSesame2Provider" id="link-id10fc0c88">Sesame</a>/<a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtRDFDriverRedland" id="link-id1390f730">Redland</a> providers), XML, and other data forms stored in Virtuoso also become accessible via .NET's Entity Frameworks.</p> <br /> <h4>Strategic:</h4> <p>You can choose which entity oriented data access model works best for you: RDF <a href="http://dbpedia.org/resource/Linked_Data" id="link-id151354f0">Linked Data</a> & <a href="http://dbpedia.org/resource/SPARQL" id="link-id15dc5eb0">SPARQL</a> or .NET Entity Frameworks & <a href="http://en.wikipedia.org/wiki/ADO.NET_Entity_Framework#Entity_SQL" id="link-id14404e80">Entity SQL</a>. Either way, Virtuoso delivers a commercial grade, high-performance, secure, and scalable solution.</p> <br /> <h3>How do I use it?</h3> Simply follow one of guides below: <ul> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEntityFrameworkSchoolDbWinFormApp" id="link-id15e5c580">Using Visual Studio 2008 & Virtuoso to build an Entity Frameworks based Windows forms application</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtUsingMsAdoNetDataServicesWithVirtuoso" id="link-id157912b0">Using Visual Studio 2008 & Virtuoso to build an ADO.NET Data Services based application</a> </li> </ul> <p> <b>Note:</b> When working with external or 3rd party databases, simply use the Virtuoso Conductor to link the external data source into Virtuoso. Once linked, the remote tables will simply be treated as though they are native Virtuoso tables leaving the <a href="http://dbpedia.org/resource/Virtual_Database" id="link-id15b04b18">virtual database</a> engine to handle the rest. This is similar to the role the Microsoft JET engine played in the early days of ODBC, so if you've ever linked an ODBC data source into Microsoft Access, you are ready to do the same using Virtuoso.</p> <h3>Related</h3> <ul> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1420" id="link-id160afdd0">Entity Oriented Data Access</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1474" id="link-id113eeb50">Yoda & the Data FORCE.</a> </li> </ul>
Dog-fooding: Linked Data and OpenLink Product Portfolio
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-24#1463
2008-10-24T22:05:42Z
2008-10-24T18:13:50-04:00
<p>Thanks to RDF and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1cf5c700">Linked Data</a>, it's becoming a lot easier for us to explain and reveal the depth of the OpenLink technology portfolio.</p> <p>Here is a look at our offerings by product family:</p> <ul> <li> <a href="http://data.openlinksw.com/about/html/http://data.openlinksw.com/oplweb/product_family/uda" id="link-id1161c6d0">Universal Data Access Drivers</a> </li> <li> <a href="http://data.openlinksw.com/about/html/http://data.openlinksw.com/oplweb/product_family/virtuoso" id="link-id17945fc8">Virtuoso</a> </li> <li> <a href="http://data.openlinksw.com/about/html/http://data.openlinksw.com/oplweb/product_family/dca" id="link-id10f899c0">Distributed Collaborative Applications</a> (DCA)</li> <li> <a href="http://data.openlinksw.com/oplweb/product_family/development" id="link-id1c55ac70">Developer Kits & Frameworks</a> </li> <li> <a href="http://data.openlinksw.com/oplweb/product_family/utilities" id="link-id1a735e50">Benchamark & Diagnostic Utilities</a> </li> </ul> <p>As you explore the <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id10fc4af8">Linked Data graph</a> exposed via our product portfolio, I expect you to experience, or at least spot, the virtuous potential of high SDQ (<a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1442" id="link-id13847698">Serendipitous Discovery Quotient</a>) courtesy of Linked Data, which is <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> 3.0's answer to <a href="http://dbpedia.org/resource/Search_engine_optimization" id="link-id115ad4f0">SEO</a>. For instance, how <a href="http://linkeddata.uriburner.com/about/html/http://data.openlinksw.com/oplweb/dbms_family/Oracle" id="link-id1cda63c8">Database</a>, <a href="http://data.openlinksw.com/oplweb/opsys_family/Windows" id="link-id1a803f18">Operating System</a>, and <a href="http://data.openlinksw.com/oplweb/processor/universal_1" id="link-id19cbaba0">Processor</a> family paths in the product portfolio graph (data network) unveil a lot more about <a href="http://linkeddata.uriburner.com/about/html/http://www.openlinksw.com/dataspace/organization/openlink%23this" id="link-ide9b7070">OpenLink Software</a> than meets the proverbial "eye" :-)</p>
Crunchbase & Semantic Web Interview (Remix - Update 1)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-08-27#1424
2008-08-27T18:16:37Z
2008-08-27T20:35:15-04:00
<p>After reading <a href="http://blog.crunchbase.com/2008/08/26/building-a-semantic-web-interview-with-benjamin-nowack/" id="link-id16b8e0e0">Bengee's interview with CrunchBase</a>, I decided to knock up a quick interview remix as part of my usual attempt to add to the developing discourse.</p> <blockquote> <cite><a href="http://www.crunchbase.com/" id="link-id17c8e7b8">CrunchBase</a>: When we released the <a href="http://www.crunchbase.com/help/api" id="link-id16681f68">CrunchBase API</a>, you were one of the first developers to step up and quickly released a <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com's%20BLOG%20%5B127%5D/1395" id="link-id1016d5f0">CrunchBase Sponger Cartridge</a>. Can you explain what a CrunchBase Sponger Cartridge is?</cite> </blockquote> <blockquote> <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id13243300">Me</a>: A Sponger Cartridge is a <a href="http://dbpedia.org/resource/Data">data</a> access driver for <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Resources that plugs into our <a href="http://virtuoso.openlinksw.com" id="link-id17042f08">Virtuoso</a> <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id1399b588">Universal Server</a> (DBMS and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id137fd188">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id100b23d8">Web</a> Server combo amongst other things). It uses the internal structure of a resource and/or a web service associated with a resource, to materialize an RDF based <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id10418750">Linked Data graph</a> that essentially describes the resource via its properties (Attributes & Relationships). </blockquote> <br /> <img src="http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/images/ldp4.png" /> <br /> <br /> <br /> <blockquote> <cite>CrunchBase: And what inspired you to create it?</cite> </blockquote> <blockquote> <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id12fa60c0">Me</a>: Bengee built a new space with your data, and we've built a space on the fly from your data which still resides in your domain. Either solution extols the virtues of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id101a8d28">Linked Data</a> i.e. the ability to explore relationships across data items with high degrees of serendipity (also colloquially known as: following-your-nose pattern in <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id14a3ff30">Semantic Web</a> circles).</blockquote> <blockquote> <a href="http://cb.semsol.org/" id="link-id182a0170">Bengee</a> posted a notice to the <a href="http://esw.w3.org/topic/SweoIG/TaskForces/CommunityProjects/LinkingOpenData" id="link-id131e8d10">Linking Open Data Community</a>'s public <a href="http://lists.w3.org/Archives/Public/public-lod/2008Jul/0110.html" id="link-id11dd0720">mailing list announcing his effort</a>. Bearing in mind the fact that we've been using <a href="http://www.openlinksw.com/blog/~kidehen/?id=1144" id="link-id117cf6e8">middleware to mesh the realms of Web 2.0 and the Linked Data Web</a> for a while, it was a no-brainer to knock something up based on the conceptual similarities between <a href="http://wikicompany.org/wiki/Main_Page" id="link-id13b87a68">Wikicompany</a> and CrunchBase. In a sense, a quadrant of orthogonality is what immediately came to mind re. Wikicompany, CrunchBase, Bengee's RDFization efforts, and ours.</blockquote> <blockquote>Bengee created an RDF based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id133c8fc8">Linked Data</a> warehouse based on the data exposed by your API, which is exposed via the <a href="http://cb.semsol.org/" id="link-id1826f928">Semantic CrunchBase</a> <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id102d8890">data space</a>. In our case we've taken the "RDFization on the fly" approach which produces a transient <a href="http://dbpedia.org/resource/Linked_Data" id="link-id16a0b8d0">Linked Data</a> View of the CrunchBase data exposed by your APIs. Our approach is in line with our world view: all resources on the Web are data sources, and the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1668e6c8">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id188e7da0">Web</a> is about incorporating HTTP into the naming scheme of these data sources so that the conventional <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id13490710">URL</a> based hyperlinking mechanism can be used to access a structured description of a resource, which is then transmitted using a range negotiable representation formats. In addition, based on the fact that we house and publish a lot of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id169aa568">Linked Data</a> on the Web (e.g. <a href="http://dbpedia.org/resource/DBpedia" id="link-id10af10e8">DBpedia</a>, <a href="http://www.pingthesemanticweb.com/about/" id="link-id10a2b710">PingTheSemanticWeb</a>, and others), we've also automatically meshed Crunchbase data with related data in <a href="http://dbpedia.org/resource/DBpedia" id="link-id1403cd40">DBpedia</a> and Wikicompany data.</blockquote> <br /> <blockquote> <cite>CrunchBase: Do you know of any apps that are using CrunchBase Cartridge to enhance their functionality?</cite> </blockquote> <blockquote> <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id177d24c8">Me</a>: Yes, the <a href="http://ode.openlinksw.com" id="link-id10725ca0">OpenLink Data Explorer</a> which provides CrunchBase site visitors with the option to explore the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id17dedea8">Linked Data</a> in the CrunchBase <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id13f02a00">data space</a>. It also allows them to "Mesh" (rather than "Mash") CrunchBase data with other <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11fb3ba0">Linked Data</a> sources on the Web without writing a single line of code. </blockquote> <br /> <blockquote> <cite>CrunchBase: You have been immersed in the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id12e18a00">Semantic Web</a> movement for a while now. How did you first get interested in the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id15132110">Semantic Web</a>?</cite> </blockquote> <blockquote> <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id0xddaa9c8">Me</a>: We saw the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id188b3330">Semantic Web</a> as a vehicle for standardizing conceptual views of heterogeneous data sources via <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id10350978">context</a> lenses (URIs). In 1998 as part of our strategy to expand our business beyond the development and deployment of <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id171d6798">ODBC</a>, <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id138120a0">JDBC</a>, and OLE-DB data providers, we decided to build a <a href="http://dbpedia.org/resource/Virtual_Database" id="link-id13ea6618">Virtual Database</a> Engine (see: <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VOSHistory" id="link-id11a4fa30">Virtuoso History</a>), and in doing so we sought a standards based mechanism for the conceptual output of the <a href="http://dbpedia.org/resource/Federated_database_system" id="link-id101a1248">data virtualization</a> effort. As of the time of the <a href="http://www.w3.org/DesignIssues/Semantic.html" id="link-id18882cf8">seminal unveiling of the Semantic Web in 1998</a> we were clear about two things, in relation to the effects of the Web and <a href="http://dbpedia.org/resource/Internet" id="link-id12fa2c58">Internet</a> data management infrastructure inflections: 1) Existing DBMS technology had reached it limits 2) Web Servers would ultimately hit their functional limits. These fundamental realities compelled us to develop <a href="http://virtuoso.openlinksw.com" id="link-id102b09a0">Virtuoso</a> with an eye to leveraging the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id11984d98">Semantic Web</a> as a vehicle from completing its technical roadmap.</blockquote> <br /> <blockquote> <cite>CrunchBase: Can you put into laymanâs terms exactly what RDF and <a href="http://dbpedia.org/resource/SPARQL" id="link-id1066dcf0">SPARQL</a> are and why they are important? Do they only matter for developers or will they extend past developers at some point and be used by website visitors as well?</cite> </blockquote> <blockquote>Me: RDF (Resource Description Framework) is a Graph based Data Model that facilitates resource description using the <a href="http://www.eslincanada.com/englishlesson2.html" id="link-id178b94a8">Subject, Predicate, and Object principle</a>. Associated with the core data model, as part of the overall framework, are a number of markup languages for expressing your descriptions (just as you express presentation markup semantics in HTML or document structure semantics in XML) that include: <a href="http://dbpedia.org/resource/RDFa" id="link-id188db0a8">RDFa</a> (simple extension of HTML markup for embedding descriptions of things in a page), N3 (a human friendly markup for describing resources), RDF/XML (a machine friendly markup for describing resources).</blockquote> <blockquote> <a href="http://dbpedia.org/resource/SPARQL" id="link-id188c2030">SPARQL</a> is the query language associated with the RDF Data Model, just as <a href="http://dbpedia.org/resource/SQL" id="link-id13f0ffe0">SQL</a> is a query language associated with the Relational Database Model. Thus, when you have RDF based structured and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id166874d0">linked data</a> on the Web, you can query against Web using <a href="http://dbpedia.org/resource/SPARQL" id="link-id1016cc98">SPARQL</a> just as you would against an <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id101c9708">Oracle</a>/<a href="http://dbpedia.org/resource/SQL" id="link-id11cb0b18">SQL</a> Server/<a href="http://dbpedia.org/resource/IBM_DB2" id="link-id10760ec0">DB2</a>/<a href="http://dbpedia.org/resource/IBM_Informix" id="link-id1066c8c0">Informix</a>/<a href="http://dbpedia.org/resource/Ingres" id="link-id18894f40">Ingres</a>/<a href="http://dbpedia.org/resource/MySQL" id="link-iddc9ebb0">MySQL</a>/etc.. DBMS using <a href="http://dbpedia.org/resource/SQL" id="link-id1030d120">SQL</a>. That's it in a nutshell.</blockquote> <br /> <blockquote> <cite>CrunchBase: On your website you wrote that âRDF and <a href="http://dbpedia.org/resource/SPARQL" id="link-id168e9ad0">SPARQL</a> as productivity boosters in everyday web developmentâ. Can you elaborate on why you believe that to be true?</cite> </blockquote> <blockquote>Me: I think the ability to discern a formal description of anything via its discrete properties is of immense value re. productivity, especially when the capability in question results in a graph of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0x179f6328">Linked Data</a> that isn't confined to a specific host operating system, database engine, application or service, programming language, or development framework. RDF <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> is about infrastructure for the true materialization of the "<a href="http://dbpedia.org/resource/Information" id="link-id13e475b8">Information</a> at Your Fingertips" vision of yore. Even though it's taken the emergence of RDF Linked Data to make the aforementioned vision tractable, the comprehension of the vision's intrinsic value have been clear for a very long time. Most organizations and/or individuals are quite familiar with the adage: <a href="http://dbpedia.org/resource/Knowledge" id="link-id13e38a30">Knowledge</a> is Power, well there isn't any <a href="http://dbpedia.org/resource/Knowledge" id="link-id188b7348">knowledge</a> without accessible <a href="http://dbpedia.org/resource/Information" id="link-id140415d0">Information</a>, and there isn't any accessible <a href="http://dbpedia.org/resource/Information" id="link-id11a976e8">Information</a> without accessible Data. The Web has always be grounded in accessibility to data (albeit via compound container documents called Web Pages).</blockquote> <blockquote>Bottom line, RDF based Linked Data is about Open <a href="http://dbpedia.org/resource/Reference_(computer_science)" id="link-id1206bfb8">Data access by reference</a> using URIs (HTTP based <a href="http://dbpedia.org/resource/Entity" id="link-idfaa6ce0">Entity</a> IDs / Data Object IDs / Data Source Names), and as I said earlier, the intrinsic value is pretty obvious bearing in mind the costs associated with integrating disparate and heterogeneous data sources -- across intranets, extranets, and the <a href="http://dbpedia.org/resource/Internet" id="link-id188ecc68">Internet</a>.</blockquote> <br /> <blockquote> <cite>CrunchBase: In his definition of Web 3.0, Nova Spivack proposes that the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id12e2d968">Semantic Web</a>, or Semanti<a href="http://dbpedia.org/resource/C_(programming_language)" id="link-id105744c0">c</a> Web technologies, will be force behind much of the innovation that will occur during Web 3.0. Do you agree with Nova Spivack? What role, if any, do you feel the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id13fa4218">Semantic Web</a> will play in Web 3.0?</cite> </blockquote> <blockquote>Me: I agree with Nova. But I see Web 3.0 as a phase within the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id188c9000">Semantic Web</a> innovation continuum. Web 3.0 exists because Web 2.0 exists. Both of these Web versions express usage and technology focus patterns. Web 2.0 is about the use of Open Source technologies to fashion Web Services that are ultimately used to drive proprietary Software as Service (SaaS) style solutions. Web 3.0 is about the use of "Smart Data Access" to fashion a new generation of Linked Data aware Web Services and solutions that exploit the federated nature of the Web to maximum effect; proprietary branding will simply be conveyed via quality of data (cleanliness, <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id188d2ef8">context</a> fidelity, and comprehension of privacy) exposed by URIs.</blockquote> <p>Here are some examples of the CrunchBase Linked Data <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id122756f8">Space</a>, as projected via our CruncBase Sponger Cartridge:</p> <ol> <li> <a href="http://demo.openlinksw.com/rdfbrowser2/?uri=http%3A%2F%2Fwww.crunchbase.com%2Fcompany%2Famazon" id="link-id13e0fd18">Amazon.com</a> </li> <li> <a href="http://demo.openlinksw.com/rdfbrowser2/?uri=http%3A%2F%2Fwww.crunchbase.com%2Fcompany%2Fmicrosoft" id="link-id13eef9e0">Microsoft</a> </li> <li> <a href="http://demo.openlinksw.com/rdfbrowser2/?uri=http%3A%2F%2Fwww.crunchbase.com%2Fcompany%2Fgoogle" id="link-id13fe47a0">Google</a> </li> <li> <a href="http://demo.openlinksw.com/rdfbrowser2/?uri=http%3A%2F%2Fwww.crunchbase.com%2Fcompany%2Fapple" id="link-id170c73b8">Apple</a> </li> </ol>
Linked Data enabling PHP Applications
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-04-10#1334
2008-04-10T18:09:49Z
2008-04-10T14:12:47-04:00
<p> <a href="http://myopenlink.net/dataspace/person/danieljohnlewis#this" id="link-id10820610">Daniel lewis</a> has penned a variation of post about <a href="http://vanirsystems.com/danielsblog/2008/04/10/simplified-adding-wordpress-blogs-into-the-linked-data-web-using-virtuoso/" id="link-id10827948">Linked Data enabling PHP applications</a> such as: <a href="http://dbpedia.org/resource/WordPress" id="link-id10426278">Wordpress</a>, <a href="http://dbpedia.org/resource/PhpBB" id="link-id13f431c0">phpBB3</a>, <a href="http://dbpedia.org/resource/MediaWiki" id="link-id10dd8760">MediaWiki</a> etc.</p> <p>Daniel simplifies my post by using diagrams to depict the different paths for <a href="http://dbpedia.org/resource/PHP" id="link-id10adcc08">PHP</a> based applications exposing <a href="http://dbpedia.org/resource/Linked_Data" id="link-id107b4e60">Linked Data</a> - especially those that already provide a significant amount of the content that drives <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id13b0ab48">Web</a> 2.0.</p> <p>If all the content in <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id0x1d499470">Web</a> 2.0 <a href="http://dbpedia.org/resource/Information" id="link-id12bd3b10">information</a> resources are distillable into discrete <a href="http://dbpedia.org/resource/Data" id="link-id10962060">data</a> objects endowed with <a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol" id="link-id176a30e8">HTTP</a> based IDs (URIs), with zero "<a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=rdf%20tax&type=text&output=html" id="link-id1098bcd8">RDF handcrafting Tax</a>", what do we end up with? A <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id1372ce88">Giant Global Graph</a> of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0xa29f0658">Linked Data</a>; the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> as a Database.</p> <p>So, what used to apply exclusively, within enterprise settings re. <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id12d91448">Oracle</a>, <a href="http://dbpedia.org/resource/IBM_DB2" id="link-id13dd27d8">DB2</a>, <a href="http://dbpedia.org/resource/IBM_Informix" id="link-id108e6b98">Informix</a>, <a href="http://dbpedia.org/resource/Ingres" id="link-id13383708">Ingres</a>, <a href="http://dbpedia.org/resource/Sybase" id="link-idfed8aa8">Sybase</a>, <a href="http://dbpedia.org/resource/Microsoft_SQL_Server" id="link-id10b8b190">Microsoft SQL Server</a>, <a href="http://dbpedia.org/resource/MySQL" id="link-id13066ea8">MySQL</a>, PostrgeSQL, Progress Open Edge, <a href="http://dbpedia.org/resource/Firebird_database_server" id="link-id104f0a78">Firebird</a>, and others, now applies to the Web. The Web becomes the "<a href="http://dbpedia.org/resource/federated_database_system" id="link-id105a5340">Distributed Database</a> Bus" that connects database records across disparate databases (or <a href="http://dbpedia.org/resource/Data" id="link-id0xc706c68">Data</a> Spaces). These databases manage and expose records that are remotely accessible "by reference" via <a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol" id="link-id0x1c8f7fe0">HTTP</a>.</p> <p>As I've stated at every opportunity in the past, Web 2.0 is the greatest thing that every happened to the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id13d65278">Semantic Web</a> vision :-) Without the "<a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=Web%202.0%20%20conundrum&type=text&output=html" id="link-id100d16d0">Web 2.0 Data Silo Conundrum</a>" we wouldn't have the cry for "<a href="http://dbpedia.org/resource/Data">Data</a> Portability" that brings a lot of clarity to some fundamental Web 2.0 limitations that end-users ultimately find unacceptable.</p> <p> In the late '80s, the <a href="http://dbpedia.org/resource/SQL" id="link-idff4f0d0">SQL</a> <a href="http://dbpedia.org/resource/SQL_Access_Group" id="link-id138fbd40">Access Group</a> (now part of <a href="http://dbpedia.org/resource/X/Open" id="link-id104ee010">X</a>/<a href="http://dbpedia.org/resource/X/Open" id="link-id0xac9eab8">Open</a>) addressed a similar problem with <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id106d2008">RDBMS</a> silos within the enterprise that lead to the SAG <a href="http://dbpedia.org/resource/Call_Level_Interface" id="link-id105d45d0">CLI</a> which is exists today as Open Database Connectivity.</p> <p>In a sense we now have WODBC (Web Open Database Connectivity), comprised of Web Services based CLIs and/or traditional back-end DBMS CLIs (<a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id13f58708">ODBC</a>, <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id10aa81e0">JDBC</a>, <a href="http://dbpedia.org/resource/ADO.NET" id="link-id5fddb68">ADO</a>.<a href="http://dbpedia.org/resource/ADO.NET" id="link-id0x9f085a10">NET</a>, OLE-DB, or Native), Query Language (<a href="http://dbpedia.org/resource/SPARQL" id="link-id10adb5c8">SPARQL</a> Query Language), and a Wire Protocol (<a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol">HTTP</a> based <a href="http://www.w3.org/TR/rdf-sparql-protocol/" id="link-id126fa068">SPARQL Protocol</a>) delivering Web infrastructure equivalents of <a href="http://dbpedia.org/resource/SQL" id="link-id0x1d0a5fc8">SQL</a> and RDA, but much better, and with much broader scope for delivering profound value due to the Web's inherent openness. Today's <a href="http://dbpedia.org/resource/PHP" id="link-id0xc88ed68">PHP</a>, <a href="http://dbpedia.org/resource/Python_programming_language" id="link-id10a70530">Python</a>, <a href="http://dbpedia.org/resource/Ruby_programming_language" id="link-id13d9da18">Ruby</a>, <a href="http://dbpedia.org/resource/Tcl" id="link-id10a3c2a8">Tcl</a>, <a href="http://dbpedia.org/resource/Perl" id="link-id13e1b6f0">Perl</a>, <a href="http://dbpedia.org/resource/ASP.NET" id="link-id10810388">ASP</a>.<a href="http://dbpedia.org/resource/ASP.NET" id="link-id0xa22ce378">NET</a> developer is the enterprise <a href="http://dbpedia.org/resource/4GL" id="link-id1396a500">4GL</a> developer of yore, without enterprise confinement. We could even be talking about <a href="http://dbpedia.org/resource/5GL" id="link-id1077f250">5GL</a> development once the <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> interaction is meshed with dynamic languages (delivering higher levels of abstraction at the language and data interaction levels). Even the underlying schemas and basic design will evolve from <a href="http://dbpedia.org/resource/Closed_world_assumption" id="link-id10b280c8">Closed World</a> (solely) to a mesh of Closed & <a href="http://dbpedia.org/resource/Open_world_assumption" id="link-id104b9978">Open World</a> view schemas.</p>
New W3C Incubator Group: Relational Database to RDF Mapping
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-03-05#1320
2008-03-05T17:13:35Z
2008-03-11T13:58:24-04:00
<p>The new <a href="http://www.w3.org/2005/Incubator/rdb2rdf/" id="link-id17fb5440">RDB2RDF Incubator Group</a> is now official. The group is sponsored by <a href="http://dbpedia.org/resource/Oracle_Corporation" id="link-id1c93f338">Oracle</a>, <a href="http://dbpedia.org/resource/Hewlett-Packard" id="link-id18f4bce8">HP</a>, PartnersHealth, and <a href="http://www.openlinksw.com/dataspace/organization/openlink#this>" id="link-id175ed3a8">OpenLink Software</a>.</p> <h2>Goals</h2> <p>The goal of this effort is standardization of approaches (syntax and methodology) for mapping Relational Data Model instance data to RDF (Graph Data Model).</p> <h2>Benefits</h2> <p>Every record in a relational table/view/stored procedure (Table Valued Functions/Procedures) is declaratively morphed into an Entity (instance of a Class associated with a Schema/Ontology). The derived entities become part of a graph that exposes relationships and relationship traversal paths that have lower JOIN Costs than attempting the same thing directly via SQL. In a nutshell, you end up with a conceptual interface atop a logical data layer that enables a much more productive mechanism for exploring homogeneous and/or heterogeneous data without confinement at the DB instance, SQL DBMS type, host operating system, local area network, or wide area network levels.</p> <p>Just as we have to mesh the Linked Data and Document Webs, unobtrusively. It's also important that the same principles to apply to exposure of RDBMS hosted data as RDF based Linked Data.</p> <p>We all know that a large amount of data driving the IT engines of most enterprises resides in <a href="http://dbpedia.org/resource/Relational_database" id="link-id190ee500">Relational Databases</a>. And contrary to recent <a href="http://www.readwriteweb.com/archives/semantic_web_11_things_to_know.php" id="link-id175e6c58">RDBMS vs RDF database misunderstandings</a> espoused (hopefully inadvertently) by some commentators, Relational Database engines aren't going away anytime soon. Meshing Relational (logical) and Graph (conceptual) data models a natural progression along an evolutionary path towards: <a href="http://virtuoso.openlinksw.com/presentations/RDF_Mapping_Presentation_W3C_workshop3/RDF_Mapping_Presentation_W3C_workshop3.html" id="link-id175e56c0">Analysis for All</a>. By the way, there is a parallel evolution occurring in others realms such as <a href="http://dbpedia.org/resource/ADO.NET_Entity_Framework" id="link-id13037248">Microsoft's ADO.NET's Entity Framework</a>.</p> <h2>How would I use RDB2RDF Mapping?</h2> <p>To Unobtrusively expose existing data sources as RDF Linked Data. The links that follow provide examples:</p> <ul>-- Enterprise Databases e.g. Northwind SQL Database as Linked Data (<a href="http://dataviewer.zitgist.com/?uri=http%3A//demo.openlinksw.com/Northwind/Customer/ALFKI" id="link-id176c79c0">Zitgist View</a>, <a href="http://demo.openlinksw.com/Northwind/Customer/ALFKI" id="link-id175ed1b8">OpenLink RDF Browser View</a>, <a href="http://www4.wiwiss.fu-berlin.de/rdf_browser/?browse_uri=http%3A%2F%2Fdemo.openlinksw.com%2FNorthwind%2FCustomer%2FALFKI%23this" id="link-id16ee5730">DISCO Browser View</a>, <a href="http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html?uri=http://demo.openlinksw.com/Northwind/Customer/ALFKI#this" id="link-id18e35570">Tabulator View</a>)</ul> <ul>-- Content Management e.g. <a href="http://dbpedia.org/resource/Drupal" id="link-id17687bf0">Drupal</a> hosted <a href="http://demo.openlinksw.com/drupal/user/demo" id="link-id179ed818">Blog Posts as Linked Data</a> </ul> <ul>-- Weblog Platform e.g. <a href="http://dbpedia.org/resource/WordPress" id="link-id17441650">Wordpress</a> hosted <a href="http://demo.openlinksw.com/wordpress/user/demo" id="link-id18fab188">Blog Posts as Linked Data</a> </ul> <ul>-- Wiki Platform e.g. <a href="http://dbpedia.org/resource/MediaWiki" id="link-id1c93e1c8">MediaWiki</a> hosted <a href="http://demo.openlinksw.com/mediawiki/user/KingsleyIdehen" id="link-id17d05448">Wikiwords as Linked Data</a> </ul> <h2>Related</h2> <ol> <li>Virtuoso's Meta Schema Language for Declaratively generating RDF Views of SQL Data (<a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_RDF_Views/Virtuoso_RDF_Views_1.html#(1)" id="link-id19156058">Presentation</a>, <a href="http://virtuoso.openlinksw.com/Whitepapers/pdf/Virtuoso_SQL_to_RDF_Mapping.pdf" id="link-id18bab048">White Paper</a>, <a href="http://virtuoso.openlinksw.com/Whitepapers/html/rdf_views/virtuoso_rdf_views_example.html" id="link-id18e36480">Tutorial</a>, and <a href="http://docs.openlinksw.com/virtuoso/rdfviews.html" id="link-id18e34380">Online Docs</a>)</li> <li>ESW Wiki's Collection of<a href="http://esw.w3.org/topic/RdfAndSql" id="link-id18d3b5d8"> SQL-RDF Mapping Tools</a> </li> <li> <a href="http://www.bitaplanet.com/article.php/3696281" id="link-id12dc20e8">What the Semantic Web means for your Business </a> </li> </ol>
Hello Data Web (Take 3 - Feel The "RDF" Force)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-02-24#1144
2007-02-24T21:43:39Z
2007-02-24T17:01:28-05:00
<p>As I have stated, and implied, in various posts about the Data Web and burgeoning Semantic Web in general; the value of RDF is felt rather than seen (driven by presence as opposed to web sites). That said, it is always possible to use the visual Interactive-Web dimension (Web 1.0) as a conduit to the Data-Web dimension.</p> <p>In this third take on my introduction to the Data Web I would like to share a link with you (a Dynamic Start Page in Web 2.0 parlance) with a Data Web twist: You do not have to preset the Start Page Data Sources (this is a small-big thing, if you get my drift, hopefully!).</p> <p>Here are some Data Web based Dynamic Start Pages that I have built for some key play ers from the Semantic Web realm (in random order):</p> <ol> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/danbri_dataspace.isparql.xml">Dan Brickley</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/timbl_dataspace.isparql.xml">Tim Berners-Lee</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/danc_dataspace.isparql.xml">Dan Connolly</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/danja_dataspace.isparql.xml">Danny Ayers</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/planet_rdf_dataspace.isparql.xml">Planet RDF</a> </li> </ol> <p>"These are RDF prepped Data Sources....", you might be thinking, right? Well here is the reminder: <a href="http://www.openlinksw.com/blog/~kidehen/?id=1122">The Data Web is a Global Data Generation and Integration Effort</a>. Participation may be active (Semantic Web & Microformats Community), or passive (web sites, weblogs, wikis, shared bookmarks, feed subscription, discussion forums, mailing lists etc..). Irrespective of participation mode, RDF instance can be generated from close to anything (I say this because I plan to add binary files holding metadata to this mix shortly). Here are examples of Dynamic Start Pages for non RDF Data Sources:</p> <ol> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/delicious_web20_events_dataspace.isparql.xml">del.icio.us Web 2.0 Events Bookmarks</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/vecosys_dataspace.isparql.xml">Vecosys</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/techcrunch_dataspace.isparql.xml">Techcrunch</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/jonudell_dataspace.isparql.xml">Jon Udell's Blog</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/davewiner_dataspace.isparql.xml">Dave Winer's Scripting News</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/scobelizer_dataspace.isparql.xml">Robert Scoble's Blog</a> </li> </ol> <p>what about Microformats you may be wondering? Here goes:</p> <ol> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/microformats_dataspace.isparql.xml">Microformats Wiki</a> (click on the Brian Suda link for instance) </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/planet_microformats_dataspace.isparql.xml">Microformats Planet</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/delicious_microformats_dataspace.isparql.xml">Del.icio.us Microformats Bookmarks</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/ben_adida_dataspace.isparql.xml">Ben Adida's home page</a> (RDFa)</li> </ol> <p>Let's carry on.</p> <p>How about some traditional Web Sites? Here goes:</p> <ol> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/openlink_dataspace.isparql.xml">OpenLink Software's Home Page</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/oracle_dataspace.isparql.xml">Oracle's Home Page</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/apple_dataspace.isparql.xml">Apple's Home Page</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/microsoft_dataspace.isparql.xml">Microsoft's Home Page</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/ibm_dataspace.isparql.xml">IBM's Home Page</a> </li> </ol> <p>And before I forget, here is <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/kidehen_dataspace.isparql.xml">My Data Web Start Page </a>.</p> <p>Due to the use of Ajax in the Data Web Start Pages, IE6 and Safari will not work. For Mac OS X users, Webkit works fine. Ditto re. IE7 on Windows.</p>
Birds of a Feather Flock Together - Mac OS X & Rails
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-10-20#1065
2006-10-20T23:55:40Z
2006-10-22T19:21:17.000001-04:00
<p>A very cool v<a href="http://www.apple.com/education/whymac/compsci/video.html">ideo promo for Ruby on Rails and Mac OS X</a>, or should I say: 37 Signals & Apple :-) Either way, very cool!</p> <p>BTW - We have just released a collection of <a href="http://rubyforge.org/projects/odbc-rails/">High-Performance Data Providers for ActiveRecord</a>. Our providers deliver </p> <blockquote>Consistent Functionality</blockquote> to RoR developers across <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso</a>, Oracle, SQL Server, Sybase, DB2, Ingres, Informix, and others without compromising performance or cross platform portability.
Recent Virtuoso Developments
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-09-26#1050
2006-09-26T19:46:55Z
2006-09-26T15:46:55.000001-04:00
<p>(Cut & Pasted verbatim from <a href="http://www.openlinksw.com/weblog/oerling/">Orri Erling's Weblog</a>.)</p> <p> <a href="http://www.openlinksw.com/weblog/oerling/?id=1043">Recent Virtuoso Developments</a>: "</p> <p>We have been extensively working on virtual database refinements. There aremany SQL cost model adjustments to better model distributed queries and wenow support direct access to Oracle and Informix statistics system tables.Thus, when you attach a table from one or the other, you automatically getup to date statistics. This helps <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso</a> optimize distributed queries.Also the documentation is updated as concerns these, with a new section ondistributed query optimization.</p> <p>On the applications side, we have been keeping up with the SIOC RDF ontologydevelopments. All ODS applications now make their data available as SIOCgraphs for download and SPARQL query access.</p> <p>What is most exciting however is our advance in mapping relational data intoRDF. We now have a mapping language that makes arbitrary legacy data in <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso</a> or elsewhere in the relational world RDF queriable. We will putout a white paper on this in a few days.</p> <p>Also we have some innovations in mind for optimizing the physical storage ofRDF triples. We keep experimenting, now with our sights set to the highend of triple storage, towards billion triple data sets. We areexperimenting with a new more space efficient index structure for betterworking set behavior. Next week will yield the first results.</p>
"Free" Databases: Express vs. Open-Source RDBMSs
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-05-05#968
2006-05-05T16:02:17Z
2006-07-21T07:21:57.000006-04:00
<p>Very detailed and insightful peek into the state of affairs re. database engines (Open & Closed Source).</p> <p>I added the missing piece regarding the "Virtuoso Conductor" (the Web based Admin UI for Virtuoso) to the original post below. I also added a link to our live SPARQL Demo so that anyone interested can start playing around with SPARQL and SPARQL integrated into SQL right away.</p> <p>Another good thing about this post is the vast amount of valuable links that it contains. To really appreciate this point simply visit my Linkblog (excuse the current layout :-) - a Tab if you come in via the front door of this <a href="http://www.infoworld.com/opinions/index.html">Data Space</a> (what I used to call <a href="http://www.openlinksw.com/blog/%7Ekidehen/">My Weblog Home Page</a>).</p> <blockquote> <p> <a href="http://oakleafblog.blogspot.com/2006/05/free-databases-express-vs-open-source.html">"Free" Databases: Express vs. Open-Source RDBMSs</a>: "<span style="font-family: verdana;">Open-source relational database management systems (RDBMSs) are gaining IT mindshare at a rapid pace. As an example, <em>BusinessWeek</em>'s February 6, 2006 '</span> <a href="http://www.businessweek.com/technology/content/feb2006/tc20060206_918648.htm"><span style="font-family: verdana;">Taking On the Database Giants</span> </a><span style="font-family: verdana;">' article asks 'Can open-source upstarts compete with Oracle, IBM, and Microsoft?' and then provides the answer: 'It's an uphill battle, but customers are starting to look at the alternatives.'</span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;">There's no shortage of open-source alternatives to look at. The <em>BusinessWeek</em> article concentrates on <a href="http://www.mysql.com/">MySQL</a>, which <em>BW</em> says 'is trying to be the Ikea of the database world: cheap, needs some assembly, but has a sleek, modern design and does the job.' The article also discusses <a href="http://www.postgresql.org/">Postgre[SQL]</a> and <a href="http://www.ingres.com/products/Prod_Ingres_2006.html">Ingres</a>, as well as <a href="http://www.enterprisedb.com/">EnterpriseDB</a>, an Oracle clone created from PostgreSQL code*. Sun includes <a href="http://www.sun.com/software/solaris/postgres.jsp">PostgreSQL with Solaris 10</a> and, as of April 6, 2006, with <a href="http://docs.sun.com/app/docs/doc/819-2183/6n4g726uc?a=view">Solaris Express</a>.**</span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;"><span style="font-size: 85%;">*Frank Batten, Jr., the investor who originally funded Red Hat, invested a reported </span> <a href="http://www.theinquirer.net/?article=28201"><span style="font-size: 85%;">$16 million into Great Bridge</span> </a><span style="font-size: 85%;"> with the hope of making a business out of providing paid support to PostgreSQL users. </span> <a href="http://news.com.com/2100-1001-272715.html"><span style="font-size: 85%;">Great Bridge stayed in business only 18 months</span> </a><span style="font-size: 85%;">, having </span> <a href="http://news.com.com/2100-1001-268915.html"><span style="font-size: 85%;">missed an opportunity to sell the business to Red Hat</span> </a><span style="font-size: 85%;"> and finding that selling </span> <a href="http://news.com.com/2100-1001-269729.html"><span style="font-size: 85%;">$50,000-per-year support packages</span> </a><span style="font-size: 85%;"> for an open-source database wasn't easy. As Batten concluded, 'We could not get customers to pay us big dollars for support contracts.' Perhaps EnterpriseDB will be more successful with a choice of </span> <a href="http://www.enterprisedb.com/shop.do?cID=10000&pID=10001"><span style="font-size: 85%;">$5,000, $3,000, or $1,000 annual support subscriptions</span> </a><span style="font-size: 85%;">.</span> </span> <br /> <span style="font-family: Verdana;"></span><span style="font-family: Verdana;"></span><span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana; font-size: 85%;">**Interestingly, <a href="http://www.sun.com/smi/Press/sunflash/2005-11/sunflash.20051115.4.xml">Oracle announced in November 2005</a> that Solaris 10 is 'its preferred development and deployment platform for most x64 architectures, including x64 (x86, 64-bit) AMD Opteron and Intel Xeon processor-based systems and Sun's UltraSPARC(R)-based systems.'</span> <br /> <br /> <span style="font-family: Verdana;">There is a surfeit of reviews of current MySQL, PostgreSQL andâto a lesser extentâIngres implementations. These three open-source RDBMSs come with their own or third-party management tools. These systems compete against free versions of commercial (proprietary) databases: <a href="http://msdn.microsoft.com/vstudio/express/sql/">SQL Server 2005 Express Edition</a> (and its MSDE 2000 and 1.0 predecessors), <a href="http://www.oracle.com/technology/products/database/xe/index.html" target="_blank">Oracle Database 10g Express Edition</a>, <a href="http://www-306.ibm.com/software/data/db2/udb/db2express/download.html" target="_blank">IBM DB2 Express-C</a>, and <a href="http://www.sybase.com/linux_promo" target="_blank">Sybase ASE Express Edition for Linux</a> where database size and processor count limitations aren't important. Click <a href="http://www.ftponline.com/special/sqlserver/rjennings-overview/table4.aspx">here</a> for a summary of recent <em>InfoWorld</em> reviews of the full versions of these four databases plus MySQL, which should be valid for Express editions also. The <a href="http://www.ftponline.com/special/sqlserver/">FTPOnline Special Report</a> article, 'Microsoft SQL Server Turns 17,' that contains the preceding table is <a href="http://www.ftponline.com/special/sqlserver/rjennings-overview/">here</a> (requires registration.)</span> <br /> <br /> </p> <p> <strong><span style="font-family: verdana;">SQL Server 2005 Express Edition SP-1 Advanced Features</span> </strong> </p> <p> <span style="font-family: Verdana;"><a href="http://www.microsoft.com/downloads/details.aspx?familyid=4C6BA9FD-319A-4887-BC75-3B02B5E48A40&displaylang=en">SQL Server 2005 Express Edition with Advanced Features</a> enhances SQL Server 2005 Express Edition (SQL Express or SSX) dramatically, so it deserves special treatment here. SQL Express gains full text indexing and now supports SQL Server Reporting Services (SSRS) on the local SSX instance. The SP-1 with Advanced Features setup package, which Microsoft released on April 18, 2006, installs the release version of SQL Server Management Studio Express (SSMSE) and the full version of Business Intelligence Development Studio (BIDS) for designing and editing SSRS reports. My '<a href="http://www.ftponline.com/special/sqlserver/rjennings-sp1/">Install SP-1 for SQL Server 2005 and Express</a>' article for FTPOnline's <a href="http://www.ftponline.com/special/sqlserver/">SQL Server Special Report</a> provides detailed, illustrated installation instructions for and related information about the release version of SP-1. SP-1 makes SSX the most capable of all currently available Express editions of commercial RDBMSs for Windows.</span> </p> <p> <strong><span style="font-family: verdana;">OpenLink Software's Virtuoso Open-Source Edition</span> </strong> <br /> <span style="font-family: verdana;"></span> <br /> <span style="font-family: verdana;"><a href="http://openlinksw.com/">OpenLink Software</a> announced an <a href="http://virtuoso.openlinksw.com/wiki/main/Main/">open-source version</a> of it's <a href="http://virtuoso.openlinksw.com/">Virtuoso Universal Server</a> commercial DBMS on April 11, 2006. On the initial date of this post, May 2, 2006, Virtuoso Open-Source Edition (VOS) was virtually under the radar as an open-source product. According to <a href="http://www.openlinksw.com/press/VOSPressRelease.htm">this press release</a>, the new edition includes:</span> <span style="font-family: Verdana;"></span> </p> <blockquote> <span style="font-family: Verdana;"></span> </blockquote> <blockquote></blockquote> <blockquote></blockquote> <ul> <li> <a href="http://demo.openlinksw.com/sparql_demo/">SPARQL compliant RDF Triple Store</a> </li> <li>SQL-200n Object-Relational Database Engine (SQL, XML, and Free Text) </li> <li>Integrated BPEL Server and Enterprise Service Bus</li> <li>WebDAV and Native File Server </li> <li>Web Application Server that supports PHP, Perl, Python, ASP.NET, JSP, etc. </li> <li>Runtime Hosting for Microsoft .NET, Mono, and Java </li> </ul>VOS only lacks the virtual server and replication features that are offered by the commercial edition. VOS includes a Web-based administration tool called the "Virtuoso Conductor" According to <a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=951&sid=&realm=">Kingsley Idehen's Weblog</a>, 'The Virtuoso build scripts have been successfully tested on Mac OS X (Universal Binary Target), Linux, FreeBSD, and Solaris (AIX, HP-UX, and True64 UNIX will follow soon). A Windows Visual Studio project file is also in the works (ETA some time this week).'<br /> <br /> <em>InfoWorld</em>'s Jon Udell has tracked Virtuoso's progress since <a href="http://www.infoworld.com/article/02/04/12/020415plvirtuoso_1.html">2002</a>, with an <a href="http://www.infoworld.com/article/03/03/21/12virtuoso_1.html">additional article in 2003</a> and a <a href="http://weblog.infoworld.com/udell/2006/04/28.html#a1437">one-hour podcast with Kingsley Idehen</a> on April 26, 2006. A major talking point for Virtuoso is its support for Atom 0.3 syndication and publication, Atom 1.0 syndication and (forthcoming) publication, and future support for Google's <a href="http://code.google.com/apis/gdata/overview.html">GData protocol</a>, as mentioned in <a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=965">this Idehen post</a>. Yahoo!'s <a href="http://jeremy.zawodny.com/blog/archives/006687.html">Jeremy Zawodny</a> points out that the 'fingerprints' of <a href="http://oakleafblog.blogspot.com/2005/11/adam-bosworth-learning-from-web-and.html">Adam Bosworth</a>, Google's VP of Engineering and the primary force behind the development of Microsoft Access, 'are all over GData.' Click <a href="http://search.blogger.com/?as_q=bosworth&ie=UTF-8&ui=blg&bl_url=oakleafblog.blogspot.com&x=50&y=10">here</a> to display a list of all OakLeaf posts that mention Adam Bosworth.<br /> <br />One application for the GData protocol is querying and updating the Google Base database independently of the Google Web client, as mentioned by Jeremy: 'It's not about building an easier onramp to Google Base. ... Well, it is. But, again, that's the small stuff.' Click <a href="http://search.blogger.com/?as_q=%22google+base%22&ie=UTF-8&x=50&y=9&q=%22google+base%22+blogurl:oakleafblog.blogspot.com&filter=0&ui=blg&sa=N&start=0">here</a> for a list of posts about my experiences with Google Base. Watch for a future OakLeaf post on the subject as the GData APIs gain ground.<br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;"><strong>Open-Source and Free Embedded Database Contenders</strong> </span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;">Open-source and free embedded SQL databases are gaining importance as the number and types of mobile devices and OSs proliferate. Embedded databases usually consist of Java classes or Windows DLLs that are designed to minimize file size and memory consumption. Embedded databases avoid the installation hassles, heavy resource usage and maintenance cost associated with client/server RDBMSs that run as an operating system service.</span> <br /> <br /> <span style="font-family: Verdana;">Andrew Hudson's December 2005 '<a href="http://www.theinquirer.net/?article=28201">Open Source databases rounded up and rodeoed</a>' review for The Enquirer provides brief descriptions of one commercial and eight open source database purveyors/products: Sleepycat, MySQL, PostgreSQL, Ingres, InnoBase, Firebird, IBM Cloudscape (a.k.a, Derby), Genezzo, and Oracle. Oracle <a href="http://www.sleepycat.com/">Sleepycat</a>* isn't an SQL Database, Oracle <a href="http://www.innodb.com/index.php">InnoDB</a>* is an OEM database engine that's used by MySQL, and <a href="http://www.genezzo.com/">Genezzo</a> is a multi-user, multi-server distributed database engine written in Perl. These special-purpose databases are beyond the scope of this post.</span> <br /> <br /> <span style="font-family: Verdana;"><span style="font-size: 85%;">* Oracle <a href="http://www.oracle.com/sleepycat/index.html">purchased Sleepycat Software, Inc. in February 2006</a> and </span> <a href="http://www.oracle.com/innodb/index.html"><span style="font-size: 85%;">purchased Innobase OY in October 2005</span> </a><span style="font-size: 85%;">. The press release states: 'Oracle intends to continue developing the InnoDB technology and expand our commitment to open source software.' </span> </span> <br /> <span style="font-family: Verdana; font-size: 85%;"></span> <br /> <span style="font-family: Verdana;"> <a href="http://db.apache.org/derby/"><strong>Derby</strong> </a> is an open-source release by the <a href="http://www.apache.org/">Apache Software Foundation</a> of the <a href="http://www.infoworld.com/article/04/08/03/HNcloudscape_1.html">Cloudscape Java-based database that IBM acquired</a> when it bought Informix in 2001. IBM offers a commercial release of Derby as <a href="http://www-128.ibm.com/developerworks/db2/library/techarticle/dm-0408cline/">IBM Cloudscape 10.1</a>. Derby is a Java class library that has a relatively light footprint (2 MB), which make it suitable for <a href="http://www-128.ibm.com/developerworks/db2/library/techarticle/dm-0503stumpf/">client/server synchronization</a> with the IBM DB2 Everyplace Sync Server in <a href="http://www-128.ibm.com/developerworks/library/wi-cloud/">mobile applications</a>. The IBM DB2 Everyplace Express Edition isn't open source or free*, so it doesn't qualify for this post. The same is true for the corresponding Sybase SQL Anywhere components.**</span> <br /> <br /> <br /> <p> <span style="font-family: verdana; font-size: 85%;">* IBM DB2 Everyplace Express Edition with synchronization costs $379 per server (up to two processors) and $79 per user. DB2 Everyplace Database Edition (without DB2 synchronization) is $49 per user. (Prices are based on those when </span> <a href="http://news.earthweb.com/wireless/article.php/3107101"><span style="font-family: verdana; font-size: 85%;">IBM announced version 8</span> </a><span style="font-family: verdana; font-size: 85%;"> in November 2003.)</span> </p> <p> <span style="font-family: verdana; font-size: 85%;">** Sybase's iAnywhere subsidiary calls SQL Anywhere 'the industry's leading mobile database.' A Sybase SQL Anywhere Personal DB seat license with synchronization to SQL Anywhere Server is $119; the cost without synchronization wasn't available from the Sybase Web site. Sybase SQL Anywhere and IBM DB2 Everyplace perform similar replication functions.</span> </p> <p> <span style="font-family: Verdana;">Sun's <a href="http://developers.sun.com/prodtech/javadb/"><strong>Java DB</strong></a>, another commercial version of Derby, comes with the <a href="http://www.sun.com/software/solaris/">Solaris Enterprise Edition</a>, which bundles Solaris 10, the Java Enterprise System, developer tools, desktop infrastructure and N1 management software. A recent Between the Lines blog entry by ZDNet's David Berlind waxes enthusiastic over the use of <a href="http://blogs.zdnet.com/BTL/?p=2298">Java DB embedded in a browser</a> to provide offline persistence. RedMonk analyst <a href="http://www.redmonk.com/jgovernor/archives/001151.html">James Governor</a> and <em>eWeek</em>'s <a href="http://www.eweek.com/article2/0,1895,1902407,00.asp">Lisa Vaas</a> wrote about the use of Java DB as a local data store when <a href="http://www.sauria.com/blog/2005/12/13#1440">Tim Bray announced Sun's Derby derivative</a> and <a href="http://blogs.sun.com/roller/page/FrancoisOrsini?entry=derby_apachecon_demo">Francois Orsini</a> demonstrated Java DB embedded in the Firefox browser at the ApacheCon 2005 conference.</span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;"> <a href="http://www.firebirdsql.org/"><strong>Firebird</strong> </a> is derived from Borland's InterBase 6.0 code, the first commercial relational database management system (RDBMS) to be released as open source. Firebird has excellent support for SQL-92 and comes in three versions: Classic, SuperServer and Embedded for Windows, Linux, Solaris, HP-UX, FreeBSD and MacOS X. The embedded version has a 1.4-MB footprint. Release Candidate 1 for Firebird 2.0 became available on March 30, 2006 and is a major improvement over earlier versions. <a href="http://www.borland.com/us/products/interbase/index.html">Borland continues to promote InterBase</a>, now at version 7.5, as a small-footprint, embedded database with commercial Server and Client licenses.</span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;"> <a href="http://www.sqlite.org/index.html"><strong>SQLite</strong> </a> is a featherweight C library for an embedded database that implements most SQL-92 entry- and transitional-level requirements (some through the JDBC driver) and supports transactions within a tiny 250-KB code footprint. <a href="http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers">Wrappers</a> support a multitude of languages and operating systems, including Windows CE, SmartPhone, Windows Mobile, and Win32. SQLite's primary <a href="http://www.sqlite.org/omitted.html">SQL-92 limitations</a> are lack of nested transactions, inability to alter a table design once committed (other than with RENAME TABLE and ADD COLUMN operations), and foreign-key constraints. SQLite provides read-only views, triggers, and 256-bit encryption of database files. A downside is the the entire database file is <a href="http://weblogs.asp.net/jgalloway/archive/2006/04/12/442615.aspx">locked when while a transaction is in progress</a>. SQLite uses file access permissions in lieu of GRANT and REVOKE commands. Using SQLite involves no license; its code is entirely in the public domain.</span> </p> <p> <span style="font-family: Verdana; font-size: 85%;">The Mozilla Foundation's <a href="http://wiki.mozilla.org/Mozilla2:Unified_Storage">Unified Storage wiki</a> says this about SQLite: 'SQLite will be the back end for the unified store [for Firefox]. Because it implements a SQL engine, we get querying 'for free', without having to invent our own query language or query execution system. Its code-size footprint is moderate (250k), but it will hopefully simplify much existing code so that the net code-size change should be smaller. It has exceptional performance, and supports concurrent access to the database. Finally, it is released into the public domain, meaning that we will have no licensing issues.'</span> </p> <p> <span style="font-family: verdana;">Vieka Technology, Inc.'s <a href="http://vieka.com/esql.htm"><strong>eSQL 2.11</strong></a> is a port of SQLite to Windows Mobile (Pocket PC and Smartphone) and Win32, and includes development tools for Windows devices and PCs, as well as a .NET native data provider. A conventional ODBC driver also is available. eSQL for Windows (Win32) is free for personal and commercial use; eSQL for Windows Mobile requires a license for commercial (for-profit or business) use.</span> </p> <p> <span style="font-family: verdana;"> <a href="http://hsqldb.org/"><strong>HSQLDB</strong> </a> isn't on most reviewers' radar, which is surprising because it's the default database for <a href="http://www.openoffice.org/">OpenOffice.org</a> (OOo) 2.0's <a href="http://www.openoffice.org/product/base.html">Base</a> suite member. HSQLDB 1.8.0.1 is an open-source (BSD license) Java dembedded database engine based on Thomas Mueller's original Hypersonic SQL Project. Using OOo's Base feature requires installing the Java 2.0 Runtime Engine (which is not open-source) or the presence of an alternative open-source engine, such as Kaffe. My prior posts about OOo Base and HSQLDB are <a href="http://oakleafblog.blogspot.com/2005/10/openoffice-base-20-vs-microsoft-access.html">here</a>, <a href="http://oakleafblog.blogspot.com/2005/10/openoffice-base-20-vs-microsoft-access_22.html">here</a> and <a href="http://oakleafblog.blogspot.com/2005/10/openoffice-20-base-matches-microsoft.html">here</a>.</span> </p> <p> <span style="font-family: verdana;">The <a href="http://hsqldb.sourceforge.net/web/hsqlDocsFrame.html">HSQLDB 1.8.0 documentation</a> on SourceForge states the following regarding SQL-92 and later conformance:</span> </p> <span style="font-family: verdana;"> <blockquote> <p> <span style="font-family: verdana;">HSQLDB 1.8.0 supports the dialect of SQL defined by SQL standards 92, 99 and 2003. This means where a feature of the standard is supported, e.g. left outer join, the syntax is that specified by the standard text. Many features of SQL92 and 99 up to Advanced Level are supported and here is support for most of SQL 2003 Foundation and several optional features of this standard. However, certain features of the Standards are not supported so no claim is made for full support of any level of the standards. </span> </p> </blockquote> <span style="font-family: verdana;"><span style="font-size: 85%;">Other less well-known embedded databases designed for or suited to mobile deployment are </span> <a href="http://www.mimer.com/leftright.asp?secId=172"><span style="font-size: 85%;">Mimer SQL Mobile</span> </a><span style="font-size: 85%;"> and </span> <a href="http://www.vistadb.net/"><span style="font-size: 85%;">VistaDB 2.1</span> </a><span style="font-size: 85%;">. Neither product is open-source and require paid licensing; VistaDB requires a small up-front payment by developers but offers royalty-free distribution.</span> </span> <br /> <br /> <span style="font-family: Verdana;">Java DB, Firebird embedded, SQLite and eSQL 2.11 are contenders for lightweight PC and mobile device database projects that aren't Windows-only.</span> <br /> <br /> <strong> <span style="font-family: verdana;">SQL Server 2005 Everywhere<br /> </span><span style="font-family: Verdana;"></span> </strong> <br /> <span style="font-family: verdana;">If you're a Windows developer, SQL Server Mobile is the logical embedded database choice for mobile applications for Pocket PCs and Smartphones. Microsoft's April 19, 2006 press release delivered the news that SQL Server 2005 Mobile Editon (SQL Mobile or SSM) would gain a big brotherâSQL Server 2005 Everywhere Edition. </span> <br /> <span style="font-family: verdana;"></span> <br /> <span style="font-family: verdana;">Currently, the SSM client is licensed (at no charge) to run in production on devices with Windows CE 5.0, Windows Mobile 2003 for Pocket PC or Windows Mobile 5.0, or on PCs with Windows XP Tablet Edition only. SSM also is licensed for development purposes on PCs running Visual Studio 2005.</span> <span style="font-family: verdana;"> Smart Device replication with SQL Server 2000 SP3 and later databases has been the most common application so far for SSM.<br /> <br /> </span><span style="font-family: verdana;">By the end of 2006, Microsoft will license SSE for use on <em>all</em> PCs running any Win32 version or the preceding device OSs. A version of SQL Server Management Studio Express (SSMSE)âupdated to support SSEâis expected to release by the end of the year. These features will qualify SSE as <em>the universal embedded database</em> for Windows client and smart-device applications. </span> <br /> <br /> <span style="font-family: verdana;">For more details on SSE, read <a href="http://weblogs.asp.net/jgalloway/archive/2006/04/11/442451.aspx">John Galloway's April 11, 2006 blog post</a> and my '<a href="http://www.ftponline.com/special/sqlserver/rjennings-mobile/">SQL Server 2005 Mobile Goes Everywhere</a>' article for the <a href="http://www.ftponline.com/special/sqlserver/">FTPOnline Special Report on SQL Server</a>.</span><span style="font-family: verdana;"></span>" <p>(Via <a href="http://oakleafblog.blogspot.com">OakLeaf Systems</a>.)</p> </span> </blockquote>
Another Reminder About Database Independence
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-10-10#875
2005-10-10T21:36:58Z
2006-06-22T08:56:58-04:00
<a href="http://techdirt.com/articles/20051010/000252_F.shtml">MySQL's essential core has been acquired by Oracle</a>. This is yet another warning salvo to the legions of developers out there (especially the Open Source tribe) that write database specific applications. I have been <a href="http://www.openlinksw.com/weblog/kidehen@openlinksw.com/127/?id=446">warning about database specific application development</a> myopia for a very long time! <p>There is a countdown that is pretty much in motion as a result of the latest move by Oracle. If Open Source developers want to alleviate the inevitable despair, they will need to revisit the issue of decoupling those MySQL specific applications via a re-binding effort to database independent call level interfaces such as ODBC (using <a href="http://www.iodbc.org">iODBC</a> or <a href="http://www.unixodbc.org"> unixODBC</a>).</p> <p>For those MySQL users that think binding to ODBC is too hard, simply take a look at the two year old <a href="http://www.iodbc.org/index.php?page=mysql2odbc/index">MySQL2ODBC SDK</a>. It will not stop you from using MySQL, it simply separates your intellectual capital (the application logic) from the data storage (DBMS engine). You can still use ODBC to talk to MySQL, but you won't be locked into an inheritance tree that is susceptible to the inevitable strategic assaults on MySQL.</p>
SAP, IBM Make Play for Oracle Database Customers With New DB2 Version
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-04-28#819
2005-04-28T21:52:55Z
2006-06-22T08:56:58-04:00
<font size="2"> <p><a href="http://ct.enews.eweek.com/rd/cts?d=186-1965-11-96-81585-221904-0-0-0-1">CNET reports</a>:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>There are a whopping <u>44,000 SAP customers</u> running on Oracle databases, and IBM wants them. To get them, for the first time ever, it's optimized its enterprise database for a specific vendor's applications. The new version of DB, 8.2.2, will include a slew of SAP-optimized features, including self-tuning, self-configuration, silent install, dynamic storage allocation and more. </p></blockquote> <p dir="ltr">Wouldn't SAP be better served by simply making their application database independent via <a href="http://uda.openlinksw.com/odbc/">ODBC</a>? This process really could have commenced years ago and prevented today's dilema: Your Partner has become Your most aggressive Competitor! </p> <p dir="ltr">SAP tuned for specifically for DB2 or SAP tuned likewise for Microsoft SQL simply reeks of: "Same Sh*t different Pile". Microsoft and IBM will emulate Oracle in due course regarding their assault on SAP's market if DBMS specificity remains the SAP data access API strategy (this is a simple fact).</p> <p dir="ltr">SAP should be using its quest for DBMS independence to stimulate or contribute ODBC enhancements (should ODBC be lacking in areas critical to its application needs; it is available in <a href="http://www.iodbc.org">Open Source form</a> and across all major platforms). Should the ODBC API not be the problem, then it can push ODBC Driver vendors (DBMS vendors such as IBM included) to get their Drivers in shape (should they be lacking, I know <a href="http://uda.openlinksw.com/odbc ">our ODBC Drivers</a> are absolutely fine for this kind of task).</p> <p dir="ltr">Database specificity gets application vendors nowhere. You can only control your business development destiny by being database independent. When applications are database independent the intellectual capital that drives your applications is preserved. This is akin to building physical and logical firewalls around the ecosystem created by your products. This is much better that being a pseudo DBMS engine reseller for a future competitor.</p> <p dir="ltr"> </p> <p dir="ltr"> </p> <p dir="ltr"></font> </p>
Oracle To Support .NET Runtime Hosting
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-04-25#807
2005-04-25T22:54:03Z
2006-06-22T08:56:58-04:00
<p>Better late than never! Oracle has <a href="http://www.oracle.com/technology/oramag/oracle/05-may/o35briefs.html">announced</a> the commencement of a journey that we <a href="http://www.novell.com/news/press/archive/2002/ximian_archive/pr112502.html">completed in 2002 </a>(across Microsoft .NET and Mono). Hopefully, their support of CRL Runtime Hosting will bring added clarity to the intrinsic value of the multi-language bindings via the ECMA-CLI that facilitate the development and deployment of DBMS Stored Procedures using a plethora of languages (ditto creation of User Defined Types, Function, Table Value Functions).</p> <p>I also hope that Oracle will support Mono -off the bat- rather than taking the typical "we will port to Mono sometime in the future..." type message which will not be acceptable, especially as we pulled this off first time around in 2002 (as atop Mono then). Thus, I am sure they can do it in 2005 :-)</p> <p>Hopefully we should be able to add Oracle 10g Release 2 and <a href="http://www-128.ibm.com/developerworks/db2/library/techarticle/dm-0406evans/index.html">DB2</a> to our SQL CLR hosting features <a href="http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/index.vspx?id=138">comparison document</a> that currently only covers SQL Server 2005 and <a href="http://virtuoso.openlinksw.com/">Virtuoso</a>.</p> <p> </p> <p> </p> <p> </p>
The Cost of Database Specificity
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-02-28#698
2005-02-28T15:57:24Z
2006-06-22T08:56:58-04:00
<p dir="ltr" style="MARGIN-RIGHT: 0px">The cost of writing database specific applications (Open or Closed Source) adversely affects application developers/vendors and end user alike. <a href="http://www.nwc.com/showitem.jhtml?docid=1603buzz3">This</a> article in <a href="http://www.nwc.com">Network Computing</a> (regarding Oracle and PeopleSoft's DB2's user base) provides great insight into the time-tested problem of writing or acquiring database driven applications that are database specific. <span class="grey12"></p></span> <p dir="ltr" style="MARGIN-RIGHT: 0px">DB2 users of PeopleSoft and IBM (the DB2 developer and vendor) suspect that Oracle will obviously try to use its ownership of PeopleSoft to covertly coerce DB2 users into becoming Oracle DBMS users. This strategy would take the form of new features and fixes discrimination as somewhat echoed in these excerpts:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p dir="ltr" style="MARGIN-RIGHT: 0px"><span class="grey12">"..In the crescendo surrounding the Oracle-PeopleSoft merger, one question has been repeatedly drowned out: What happens to users of PeopleSoft's DB2 database? Oracle chief Larry Ellison has repeatedly assured DB2 users--and IBM--that Oracle will continue to support DB2 and PeopleSoft's interfaces to IBM's WebSphere platform. But IBM isn't taking any chances, announcing an initiative to alter DB2 to work with products from Oracle rival SAP." </span></p> <p dir="ltr" style="MARGIN-RIGHT: 0px"><span class="grey12">"..IBM has good reason to be concerned. Oracle vies with SAP as the leading vendor for enterprise applications, but it's under pressure to show concrete benefits from the merger by combining assets and pumping up revenue. One obvious tactic will be to use the PeopleSoft applications to steer enterprise customers toward the Oracle database by optimizing performance and features toward the Oracle back end."</span></p></blockquote> <p dir="ltr" style="MARGIN-RIGHT: 0px">If PeopleSoft's application core was ODBC based, the vulnerability to this predictable competitive tactic would at the very least be significantly alleviated. DB2 end-users and IBM the product vendor would have a much stronger basis for countering Oracle by taking them to task about their claimed inability to implement new application functionality enhancements against DB2 etc. especially as this would have morphed into a generic database issue as opposed to a DB2 specific issue -- by virtue of the application and data access layer seperation provided by <a href="http://uda.openlinksw.com/odbc/">ODBC's architecture</a>. </p> <p dir="ltr" style="MARGIN-RIGHT: 0px"> </p>
Bill Gates Memo: Building Software That Is Interoperable By Design
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-02-04#678
2005-02-04T23:58:28Z
2006-06-22T08:56:58-04:00
<font size="2"> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>By Bill Gates, Microsoft Executive Mail</p> <p>Microsoft's product interoperability strategy: "First, we continue to support customers' needs for software that works well with what they have today. Second, we are working with the industry to define a new generation of software and Web services based on eXtensible Markup Language (XML), which enables software to efficiently share information and opens the door to a greater degree of 'interoperability by design' across many different kinds of software. Our goal is to harness all the power inherent in modern (and not so modern) business software, and enable them to work together so that the whole is greater than the sum of the parts. We want to further eliminate friction among heterogeneous architectures and applications without compromising their distinctive underlying capabilities... The XML-based architecture for Web services, known as WS-* ('WS-Star'), is being developed in close collaboration with dozens of other companies in the industry including IBM, Sun, Oracle and BEA. This standard set of protocols significantly reduces the cost and complexity of connecting disparate systems, and it enables interoperability not just within the four walls of an organization, but also across the globe."</p> <p></font><a href="http://www.microsoft.com/mscorp/execmail/2005/02-03interoperability.asp"><u><font color="#0000ff" size="2">http://www.microsoft.com/mscorp/execmail/2005/02-03interoperability.asp</u></font></a></p></blockquote> <p align="left" dir="ltr">Amen Bill! As long as this doesn't covertly imply "Windows Specificity" by way of "Interoperability" becoming a "Windows Unique Selling Point"! </p> <p align="left" dir="ltr">As per usual, the devil will be in the implementation details of your company's products. </p>
MacSOS Releases SyBrowser 6.2
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-11-19#642
2004-11-19T17:40:38Z
2006-06-22T08:56:58-04:00
<a href="http://feeds.feedburner.com/rbgarage?m=93">MacSOS Releases SyBrowser 6.2</a> <div xmlns="http://www.w3.org/1999/xhtml">Dr. Gerard Hammond of MacSOS announced the release of SyBrowser 6.2, a Macintosh application that can query Sybase, FrontBase, PostgreSQL, Oracle, ODBC and MS SQL databases hosted on OSX, UNIX, Linux, and Windows servers. <br><br>SyBrowser v6.2 features include: <br><br>- Added FrontBase database support. <br>- Added "Bachman" style ERD features (Tridents for 'Many' arms of a relationship, open circles for optional entities) <br>- The arms of a relationship now track their entities correctly in all directions. <br>- The arm of the selected relationship can be moved using the mouse or the keyboard <br>- Fixed bug with SQL auto-completion popup with multiple monitors. <br>- Enhanced the "Edit Relationships Info..." dialog. This dialog allows the properties of the selected relationship to be edited. <br>- The mouse cursor changes to reflect the draggable direction when resizing ERD tables, or dragging the various arms of a relationship. The selected arm of the selected relationship now has a circle for a handle. <br>- Documentation added. <br>- Printing the ERD panel has been improved. <br>- The Find dialog allows searching the returned datasets on the SQL panel and Results windows as well as the code in Sybase stored procedures. <br><br>SyBrowser Overview <br>SyBrowser is a table browser and alternative "isql" client for Sybase databases. It facilitates SQL generation thorough a point and click interface. SyBrowser also provides an overview of the tables in ODBC, MySQL, Oracle, FrontBase, PostgreSQL and MS SQL databases. Complex queries can be saved to disk for reuse. An ERD module allows the creation of visual representations of data models. <br><br>$89 Shareware from MacSOS, Australia <br>$49 upgrade from any previous version <br><br><a href="http://www.macsos.com.au/">http://www.macsos.com.au</a> </div> <div align="right">[via <a href="http://rbgarage.blogspot.com/">RB Garage News Feed</a>]</div>
A Standards-Based Look at XAML's Features
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-04-29#534
2004-04-29T21:15:30Z
2006-06-22T08:56:58-04:00
<font size="2"> <p>By Nigel McFarlane, <a href="http://www.devx.com/">devX.com</a></p> <p>Microsoft's XAML markup language floats on top of the .NET platform. It is compiled into .NET classes, usually C#, which reduces it to a set of objects. Along with a host of other XML dialects it is an example of a new type of specification for GUIs. </p> <p>This article takes a look at XAML's tags to see what (if anything) is new in them. There are many such GUI specifications now, a few being <a href="http://www.mozilla.org/projects/xul/">Mozilla's XUL</a>, <a href="http://www.oracle.com/consulting/offerings/platform/jhs_fs.pdf">Oracle's UIX</a>, <a href="http://www.google.com/search?sourceid=navclient&ie=UTF-8&oe=UTF-8&q=Macromedia+Flex">Macromedia's Flex </a>and the XML files created by the <a href="http://www.gtkmm.org/gnomemm2/reference/html/namespaceGnome_1_1Glade.html">Gnome Glade tool</a>. Although not W3C standards, some of these new GUI specifications are already on the W3C standards track. An example is the box model used within Mozilla's XUL, which is headed toward inclusion in future CSS drafts. </p> <p>The original and most popular source of XML definitions is, however, still the World Wide Web Consortium. The W3C is responsible for formalizing XML and many XML applications such as XHTML and SVG. Given that these standards are mostly complete, do we really need all these new XML GUI dialects?</p> <p>Microsoft's XAML is a new spin on XML-based GUI description languages, borrowing very little syntax from established standards. Let's see if it's a radical improvement in some way, or if it's merely familiar old friends dressed up in new clothes.</p> <p><a href="http://www.devx.com/webdev/Article/20834"><u><font color="#0000ff" size="2">http://www.devx.com/webdev/Article/20834</font></u></a></p><font size="2"> <p>See also XAML References: <a href="http://xml.coverpages.org/ms-xaml.html"><u><font color="#0000ff" size="2">http://xml.coverpages.org/ms-xaml.html</font></u></a></p></font></font>
SQL-XML Evaluation and Comparison By InfoWorld
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-04-26#531
2004-04-27T00:15:05Z
2006-06-22T08:56:58-04:00
<p>There is a <a href="http://www.infoworld.com/infoworld/article/04/04/23/17FExml_2.html">new evaluation and comparison </a>article from InfoWorld that compares the SQL-XML integration offerings of the major DBMS vendors (Oracle 10g, DB2 8.1, Sybase ASE 12.5, and SQL Server 2000)</p>
INSTEAD-OF Triggers
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-04-23#526
2004-04-24T00:52:50Z
2006-06-22T08:56:58-04:00
<p>During a session with a potential customer/partner I was posed the following question re. <a href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso's Virtual Database</a> functionality:</p> <p>"Can I create an updateable SQL VIEW in Virtuoso that would comprise columns from 3rd party databases such as Oracle, SQL Server, and say MySQL".</p> <p>The answer was yes, based on the fact that Virtuoso does support SQL <a href="http://docs.openlinksw.com/virtuoso/TRIGGERS.html#TRIGGERS">INSTEAD-OF Triggers</a> - even in Virtual Database mode. </p> <p>I am certainly keen to see if any other Virtual Database style products achieve this feat (which is trying for many homogeneous SQL database engines).</p> <p>Dr. Paul Dorsey of <a href="http://www.dulcian.com/">Dulcian, Inc</a>. wrote a very <a href="http://www.dulcian.com/papers/INSTEAD%20OF%20Trigger%20Views_ODTUG.htm">good article about this subject</a>, and here is an excerpt from his article overiew:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>Views are an important part of application development. Since Oracle 7.3, we quickly recognized the importance of using Oracleâs updateable view feature. An updateable view allows you to join several tables and perform updates against the driving table. For example, if you join EMP and DEPT in the traditional way and display columns from both tables, DML operations are possible against EMP but not DEPT. </p> <p class="Text">For traditional relational database designs, this is enough functionality. For example, in a typical Forms application, when you are basing a block on a table, the additional columns that you want to display are lookups from other tables and can therefore be easily supported using traditional updateable views. These views are built using a combination of joins and outer joins or,<span> </span>in extreme cases, looking up additional information through functions embedded in the views. Under no circumstances should post query triggers be used to support this functionality. Post query triggers cause unnecessary network traffic and also embed the logic in the application rather than in the database or somewhere else where it can easily be reused.</p> <p class="Text">What happens in a situation where the information you want to display in the block requires a query that is so complex that your ability to maintain (insert, update, delete) that information using a simple updateable view is eliminated? The updateable views are relatively restrictive. Only a single table can be updated. Joins must be created carefully and based on Foreign Key constraints in the database. No set operators such as UNION or MINUS can be used. For these reasons, it is common to end up with a block that cannot be updated as required. How do most developers handle this situation?</p> <p class="Text" style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in"><!--[if !supportLists]-->a)<span style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"> </span><!--[endif]-->By placing complex logic in the form (WHEN-VALIDATE-ITEM triggers)</p> <p class="Text" style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in"><!--[if !supportLists]-->b)<span style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"> </span><!--[endif]-->By writing procedures that access Formsâ ability to replace the Insert, Update, Delete routines and place that logic in the form</p> <p class="Text">These practices are just as undesirable as using POST-QUERY triggers. The logic is in the wrong place and is not reusable. </p> <p class="Text">The INSTEAD-OF trigger views feature was introduced by Oracle in version 8.15. This feature enables developers to create views on single or multiple tables or any other view imaginable by writing INSTEAD-OF triggers that tell the view how to behave when Inserts, Updates or Deletes are issued. Peter Koletzke and I first wrote about this feature in our Oracle Press book <i>Oracle Developer: Advanced Forms & Reports</i> (2000). At the time, we gave the feature relatively brief mention because we believed that most of the systems we were building included blocks based on traditional updateable views, which allow updates to a single table. Now, there is a good reason to look more closely at INSTEAD-OF trigger views. </p></blockquote> <p class="Text" dir="ltr">Database Journal also has an <a href="http://www.databasejournal.com/features/mssql/article.php/1437741">article on this subject</a>.</p>
Will SQL Become The ETL Language Of Choice?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-03-28#497
2004-03-29T02:57:59Z
2006-06-22T08:56:58-04:00
<blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p dir="ltr"><a href="http://www.rittman.net/archives/000825.html">Will SQL Become The ETL Language Of Choice?</a> </p> <p>Will SQL replace proprietary tool languages as the ETL language of choice? Yves de Montcheuil <a href="http://www.dmreview.com/editorial/newsletter_article.cfm?nl=bireport&articleId=1000016&issue=031604">asks this question over at DMReview.com</a>.</p></blockquote> <div align="right">[via <a href="http://www.rittman.net/">Mark Rittman's Oracle Weblog</a>]</div> <div align="left"></div>
DBMS Hall of Fame: Larry Ellison
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-03-23#488
2004-03-24T02:09:16Z
2006-06-22T08:56:58-04:00
<p>Larry Ellison (love him or hate him) continues to impact the RDBMS market (-your-choice-itively). Here is an <a href="http://www.crn.com/sections/special/supplement/816/816p35_hof.asp">article that tells the inextricable story of Oracle and Larry Ellison</a>. Some excerpts:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><font face="ARIAL,HELV" size="2">Whether it is attempting to buy a Mig jet fighter, building a $40- million house modeled on a medieval Japanese village or turning the industry on its head with his latest idea, Ellison is the antithesis of the gray-suited execs or antiseptic yuppies that seem to proliferate in Silicon Valley. What better man to start the database industry? Or the relational database industry, to be exact.</font></p> <p><font face="ARIAL,HELV" size="2">There always have been databases, of course. But they were unwieldy, hierarchical, flat-file-based creatures that depended on a team of programmers to extract meaningful information.</font></p> <p><font face="ARIAL,HELV" size="2"><a href="http://www.research.ibm.com/resources/news/20030423_edgarpassaway.shtml">Ted Codd</a>, an IBM Corp. researcher, had published a seminal paper in 1970 describing a "relational database" whereby data was separated out from applications and arranged in tables and columns and could be queried and joined though a variety of dimensions (the <a href="http://www.databaseanswers.com/codds_rules.htm">12 rules of Codd</a>). The new database described would, for example, allow queries into sales of a product by region sorted by month, without having to write a separate program. </font></p> <p><font face="ARIAL,HELV" size="2">Codd's paper, heavy on algebraic formulas, did not exactly set the industry on fire. It was six years before IBM and a team at Berkeley decided to start building a relational database.</font></p> <p><font face="ARIAL,HELV" size="2">It may have been six years before a product was available if not for Ellison and a company he started called Relational Software Inc. (RSI).</font></p></blockquote>
Enterprise Databases get a grip on XML
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-01-06#442
2004-01-06T23:17:07Z
2006-06-22T08:56:58-04:00
<blockquote style="margin-right: 0px;" dir="ltr"> <p><a class="listLinkLrg" title="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D" href="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D" target="_new"><strong><font face="Verdana">Databases get a grip on XML</font></strong></a><br /><font size="2"></font><font face="Verdana">From <a href="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D">Inforworld</a>.</font><br /><br /><font face="Verdana,Geneva,Arial,sans-serif" size="2">The next iteration of the SQL standard was supposed to arrive in 2003. But SQL standardization has always been a glacially slow process, so nobody should be surprised that SQL:2003 ? now known as SQL:200n ? isn?t ready yet. Even so, 2003 was a year in which XML-oriented data management, one of the areas addressed by the forthcoming standard, showed up on more and more developers? radar screens.ÃÂ <a title="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D" href="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D" target="_blank">>> READ MORE</a></font></p></blockquote> <p dir="ltr"><font face="Verdana" size="2">This article rounds up product for 2003 in the critical area of Enterprise Database Technology. It's certainly provides an apt reflection of how Virtuoso compares with offerings from some the larger (but certainly slower to implement) database vendors in this space. As usual Jon Udell's quote pretty much sums this up:</font></p> <blockquote style="margin-right: 0px;" dir="ltr"> <p dir="ltr"><!--StartFragment --><span class="artText"><em>"While the spotlight shone on the heavyweight contenders, a couple of agile innovators made noteworthy advances in 2003. </em><a class="regularArticleU" href="http://www.infoworld.com/699"><em>OpenLink Software?s Virtuoso 3.0</em></a><em>, which we reviewed in March, stole thunder from all three major players. Like Oracle, it offers a WebDAV-accessible XML repository. Like DB2 Information Integrator, it functions as database middleware that can perform federated ?joins? across SQL and XML sources. And like the forthcoming Yukon, it embeds the .Net CLR (Common Language Runtime), or in the case of Linux, Novell/Ximian?s Mono."</em></span> </p></blockquote> <p dir="ltr"><font face="Verdana" size="2">Albeit still somewhat unknown to the broader industry we have remained true our "innovator" discipline, which still remains our chosen path to market leadership. Thus, its worth a quick Virtuoso release history, and featuresÃÂ recap as we get set to up the ante even further in 2004:</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/virtuoso.htm">1998 - Virtuoso's initial public beta</a> release with functional emphasis on Virtual Database Engine for ODBC and JDBC Data Sources.</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/virtuoso1.htm">1999 - Virtuoso's official commercial</a> release, with emphasis stillÃÂ on Virtual Database functionality for ODBC, JDBC accessible SQL Databases.</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/v2releas.htm">2000 - Virtuoso 2.0</a> adds XML Storage, XPath, XML Schema, XQuery, XSL-T, WebDAV, SOAP, UDDI, HTTP, Replication, Free Text Indexing (*feature update*), POP3, and NNTP support.</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/v27releas.htm">2002 - Virtuoso 2.7</a> extends Virtualization prowess beyond data access via enhancements to its Web Services protocol stack implementation by enabling SQL Stored Procedures to be published as Web Services. It also debutsÃÂ its Object-Relational engine enhancements that include theÃÂ incorporation of Java and Microsoft .NET Objects into its User Defined Type, User Defined Functions, and Stored ProcedureÃÂ offerings.</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/virt3beta.htm">2003 - Virtuoso 3.0</a> extends data and application logic virtualization into the Application Server realm (basically a Virtual Application server too!), by adding support for ASP.NET, PHP, Java Server Pages runtime hosting (making applications built using any of these languages deployable using Virtuoso across all supported platforms).</font></p> <p dir="ltr"><font face="Verdana" size="2">Collectively each of these releases have contributed to a very premeditated architecture and vision that will ultimately unveil the inherent power of critical I.S infrastructure virtualizationÃÂ along the following lines; data storage, data access , and application logic via coherent integration of SQL, XML, Web Services, and Persistent Stored Modules (.NET, Java, and other object based component building blocks).</font></p> <p dir="ltr"><font face="Verdana"></font>ÃÂ </p>
eBay Will Someday Buy Oracle?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-07-07#202
2003-07-07T20:51:56Z
2006-06-22T08:56:58-04:00
<p><a href="http://slashdot.org/article.pl?sid=03/07/04/1955241">O'Reilly on the Commoditization of Software</a> </p> <p>Certinaly an interesting proposition, or should I say vision, but I don't think this proposition does justice to some of the valid insights contained in this recent <a href="http://www.idg.se/ArticlePages/idgnet.asp?id=4635">IDG interview </a>with <a href="http://tim.oreilly.com/">Tim O'Reilly</a>. Here are some of Tim's quotes:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><em>"Nobody is pointing out something that I think is way more significant: all of the killer apps of the Internet era: Amazon (.com, Inc), Google (Inc.), and Maps.yahoo.com. They run on Linux or FreeBSD, but they're not apps in the way that people have traditionally thought of applications, so they just don't get considered. Amazon is built with Perl on top of Linux. It's basically a bunch of open source hackers, but they're working for a company that's as fiercely proprietary as any proprietary software company."</em></p></blockquote> <p dir="ltr">Solutions are always more important that the technology that makes up the solutions from a business development perspective. The trouble is that the constituent parts of a solution ultimately affect the longevity of the solution (the future adaptability of the solution), hence the middleware and components segments of the software industry.</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p dir="ltr"><em>"With eBay it's even clearer. The fact is, it's the critical mass of marketplace buyers and sellers and all the information that people have put in that marketplace as a repository."<br /><br />"So I think we're going to find more and more places where that happens, where somebody gets a critical mass of customers and data and that becomes their source of value. On that basis, I will predict that -- this is an outrageous prediction -- but eBay will buy Oracle someday. The value will have moved so much to people who are not now seen as software suppliers."</em></p></blockquote> <p>In reading this article that I can only assume that Tim does realize the inevitable; computing is, and always will be about data -- creation, transformation, dissemination, and exploitation. That said, you don't maximize the opportunities that such a realization accords by acquiring the largest vendor of database software. </p> <p>The largest database vendor doesn't imply dominance in any of the following areas:</p> <ol> <li>Data Creation </li> <li>Data Storage</li> <li>Data Access</li> <li>Data Dissemination</li> <li>Data Exploitation</li></ol> <p>I see the Internet as the Database (comprising various forms), and the Web as a dominant database segment within Internet realm. Every Internet Point of Presence is really a point of Data interaction; Creation, Storage, Access, Dissemination, and Exploitation.</p> <p>eBay can acquire a license from Oracle or any other database vendor and still be sucessful, and all they need to do is come to the actual realization that like Amazon and Google they could become a very important Executable and Semantic Web platform by finally understanding that their home page isn't that important, it's the interactions with the site that matter. All of this is certainly achievable without acquiring Oracle.</p> <p>In short, this applies to any organization that seeks to incorporate the Internet into their operational strategy (Business Development, Customer Services, Intranets, Extranets etc.). I am inclined to believe that Sofware Commoditization (which has been with us for a very long time) is the new moniker for "its all about data" or to quote <a href="http://www.intertwingly.net/blog/index.rss">Sam Ruby</a>, "It's just data".</p>
Interesting Database History: INFORMIX
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-26#192
2003-06-26T23:45:45Z
2006-06-22T08:56:58-04:00
<!--StartFragment --><A href="http://www.wikipedia.org/wiki/Informix">Interesting Database History: INFORMIX</A> <P class=subtitle>From <A href="http://www.wikipedia.org/">Wikipedia</A>, the free encyclopedia. </P> <P><STRONG>Informix</STRONG> is a <A class=internal title="Relational database" href="http://www.wikipedia.org/wiki/Relational_database">relational database</A> and for almost 20 years was also the name of the company who developed it. Informix DBMS was a development of the pioneering <A class=internal title=Ingres href="http://www.wikipedia.org/wiki/Ingres">Ingres</A> system that also led to <A class=internal title=Sybase href="http://www.wikipedia.org/wiki/Sybase">Sybase</A> and <A class=internal title="SQL Server" href="http://www.wikipedia.org/wiki/SQL_Server">SQL Server</A>, and was the #2 database system behind <A class=internal title=Oracle href="http://www.wikipedia.org/wiki/Oracle">Oracle</A> for some time in the 1990s. Their brush with success was surprisingly short-lived however, and by 2000 a series of management blunders had all but destroyed the company. In <A class=internal title=2001 href="http://www.wikipedia.org/wiki/2001">2001</A> they were purchased by <A class=internal title=IBM href="http://www.wikipedia.org/wiki/IBM">IBM</A> in order to gain access to Informix's existing market share and customer base. Long term plans to merge Informix technology with <A class=internal title=DB2 href="http://www.wikipedia.org/wiki/DB2">DB2</A> are in place, since the Informix Arrowhead project is now called DB2 Arrowhead. <A class=internal title=IBM href="http://www.wikipedia.org/wiki/IBM">IBM</A> is also commited in supporting older versions. </P> <P><A href="http://www.wikipedia.org/wiki/Informix">Read on.</A></P>
Open Database Connectivity for Mac OS X
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-23#177
2003-06-23T15:37:38Z
2006-06-22T08:56:58-04:00
<P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><A href="http://www.macdevcenter.com/pub/a/mac/2003/06/20/odbc.html">Open Database Connectivity for Mac OS X</A></SPAN></P> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"></SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">It continues to amaze me that the fundamental implications of corporate data access remains misunderstood by all parties in the ITsphere. How can any organization afford to be ambivalent about where data is stored, and their ability to transform this data into information and knowledge (ultimate competitive advantage)? Data is the most valuable company asset (we even had data in the enterprise before computers!).</SPAN></P> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"></SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Mac OS X is attempting to make a serious push into the enterprise, but how can this be taken seriously if solving one of the biggest problems in the enterprise today isn't a flagship item driving the enterprise marketing strategy? The excerpt below simply sums this up:</SPAN></P> <BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"></SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">One of the new, albeit virtually undocumented features included in Jaguar is ODBC, or Open Database Connectivity. ODBC allows programs to connect to databases from different vendors using the same set of connectivity protocols. This allows for simplified database programming as well as database access from programs that normally would not allow such access. For instance, with ODBC you can use Excel to get data from MySQL, or you can use FileMaker to get data from Oracle. </SPAN></P> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"></SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">From article titled <A href="http://www.macdevcenter.com/pub/a/mac/2003/06/20/odbc.html"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'">Open Database Connectivity in Jaguar</SPAN></A> by <A href="http://www.macdevcenter.com/pub/au/1236"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'">Andrew Anderson</SPAN></A></SPAN></P> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"></SPAN><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Open Database Connectivity is the only mechanism today that will enable any application to connect to any database without compromising choices across the following lines: Operating System, Programming Language, Desktop Productivity Tools, and Database Engine. All alternatives fail in one of the listed areas, with the ultimate destination being the painful realization that you are down a technology cul-de-sac (and these cost money via integration and data access quagmires). <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P></BLOCKQUOTE> <P> </P>
Ingres - A Forgotten Database, the untold story
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-17#279
2003-06-17T11:18:57Z
2006-06-22T08:56:58-04:00
<P><A href="http://www.it-director.com/article.php?articleid=10951">Ingres - A Forgottent Database The Untold Story</A></P> <P><EM>Ingres (technically, Advantage Ingres Enterprise) is, arguably, the forgotten database. There used to be five major databases: Oracle, DB2, Sybase, Informix and Ingres. Then along came Microsoft and, if you listened to most press comment (or the lack of it), you would think that there were only two of these left, plus SQL Server</EM>. [From <A href="http://www.it-director.com/article.php?articleid=10951">IT-Director</A>]</P> <BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Oracle, Microsoft, and IBM would certainly like the illusion of a 3 horse race, as this is the only way they can induce Ingres, Informix, and Sybase users to jump ship, and this, even though database migrations are by far the most risk prone and problematic aspects of any IT infrastructure. <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Here is the interesting logic from the self-made big three, if you want to take advanatage of new paradigms and technologies such as XML, Web Services, and anything else in the pipeline you have to move all your data out of these databases, and then get all the mission critical applications re-associated with one of these databases, and by the way when you do so it is advisable that you use native interfaces (so that sometime in the future you have no chance whatsoever of repeating this folly at their expense).<o:p></o:p></SPAN></P> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">The simple fact of the matter (which the self-made big three do not want you to know) is that you can put ODBC, JDBC, even platform specific data access APIs such as OLE DB and ADO.NET atop any of these databases, and then explore and exploit the benefits of new technologies and paradigms as long as the tool pool supports one of more of these standards.<o:p></o:p></SPAN></P> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Unfortunately the no-brainer above appears to be the more difficult of the choices before decision makers. In other words, many would rather dig themselves into a deeper hole (unknowingly i can only presume) that ultimately leads to technology lock-in.<o:p></o:p></SPAN></P> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">The biggest challenge before any RDBMS based infrastructure today isn't which of the self-made big three to migrate to wholesale, rather, how to make progressive use of the pool of disparate applications, and application databases that proliferate the enterprise. <o:p></o:p></SPAN></P> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">This is another way of understanding the burgeoning market for Virtual Databases, which in my opiion present the new frontier in database technology.<o:p></o:p></SPAN></P> <P> </P></BLOCKQUOTE>
How Databases Changed The World
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-09#113
2003-06-09T09:28:17Z
2006-06-22T08:56:58-04:00
<a href="http://searchdatabase.techtarget.com/bestWebLinks/0,289521,sid13_tax281575,00.html"><b>How Databases Changed The World</b></a> by Tim DiChiara, Site Editor (<a href="http://www.searchdatabase.com">SearchDatabase.com</a>) How did the database industry get started? How has it changed the face of business? What were the key milestones, the big obstacles and the lessons learned? I recently came across an interesting panel discussion addressing these very issues, featuring many of the database pioneers and leaders of the last 30 years: Chris Date, Herb Edelstein, Bob Epstein, Ken Jacobs, Pat Selinger, Roger Sippl and Michael Stonebraker. It's available via streaming <a href="http://www.computerhistory.org/events/lectures/db_02102003/">video</a> and was recorded in February at the Computer History Museum in Mountain View, California. After a chatty and lengthy (45 minutes!) introduction only interesting to hardcore insiders, you can see Chris Date waxing eloquent about Ted Codd (complete with quotes from Shakespeare, no less), Herb Edelstein waxing eloquent about Chris Date, and Michael Stonebraker at his geeky best. There's also interesting trivia about the beginnings of SQL, the role of INGRES, why the relational model will stand the test of time and some friendly Oracle and IBM bashing (and Microsoft and Sybase and...). I urge all you data management pros interested in broadening your knowledge of the field to check it out! If you're still not satiated, don't forget about our collection of backgrounders about the DBMS and the data management industry.
How Databases Changed The World
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-09#266
2003-06-09T09:28:17Z
2006-06-22T08:56:58-04:00
<p><a href="http://searchdatabase.techtarget.com/bestWebLinks/0,289521,sid13_tax281575,00.html"><b>How Databases Changed The World</b></a> by Tim DiChiara, Site Editor (<a href="http://www.searchdatabase.com">SearchDatabase.com</a>) </p><p>How did the database industry get started? How has it changed the face of business? What were the key milestones, the big obstacles and the lessons learned? I recently came across an interesting panel discussion addressing these very issues, featuring many of the database pioneers and leaders of the last 30 years:</p><a href="http://en.wikipedia.org/wiki/Chris_Date">Chris Date</a><br /><a href="http://www.computerhistory.org/events/lectures/db_02102003/edelstein/">Herb Edelstein</a> <br /><a href="http://www.computerhistory.org/events/lectures/db_02102003/epstein/">Bob Epstein</a> (<a href="http://en.wikipedia.org/wiki/Sybase">Sybase</a> who shared code with Microsoft for remarketing on SQL Server on OS/2 which inevitably lead to the <a href="http://en.wikipedia.org/wiki/Microsoft_SQL_Server">Microsoft SQL Server</a> we know today)<br /><a href="http://www.oracle.com/corporate/pressroom/html/kjacobs.html">Ken Jacobs</a> (<a href="http://en.wikipedia.org/wiki/Oracle_database">Oracle</a>'s Dr. DBA)<br /><a href="http://www.witi.com/center/witimuseum/halloffame/2004/pselinger.php">Pat Selinger </a> (<a href="http://en.wikipedia.org/wiki/DB2">DB2</a> precursor called System R) <br /><a href="http://en.wikipedia.org/wiki/Informix">Roger Sippl</a> (<a href="http://en.wikipedia.org/wiki/Informix">Informix</a>)<br /><a href="http://en.wikipedia.org/wiki/Michael_Stonebraker">Michael Stonebraker</a> (<a href="http://en.wikipedia.org/wiki/Ingres">Ingres</a>, <a href="http://en.wikipedia.org/wiki/PostgreSQL">Postgres</a>, and <a href="http://mariposa.cs.berkeley.edu/about.html">Mariposa</a>)<br /><br />The event is available via streaming <a href="http://www.computerhistory.org/events/lectures/db_02102003/">video</a> and was recorded in February at the Computer History Museum in Mountain View, California. After a chatty and lengthy (45 minutes!) introduction only interesting to hardcore insiders, you can see Chris Date waxing eloquent about Ted Codd (complete with quotes from Shakespeare, no less), Herb Edelstein waxing eloquent about Chris Date, and Michael Stonebraker at his geeky best. There's also interesting trivia about the beginnings of SQL, the role of INGRES, why the relational model will stand the test of time and some friendly Oracle and IBM bashing (and Microsoft and Sybase and...). I urge all you data management pros interested in broadening your knowledge of the field to check it out! If you're still not satiated, don't forget about our collection of backgrounders about the DBMS and the data management industry. <a href="index.vspx?tag=sql" rel="tag" style="display:none;">sql</a><a href="index.vspx?tag=rdbms" rel="tag" style="display:none;">rdbms</a><a href="index.vspx?tag=database" rel="tag" style="display:none;">database</a>
<big>SQL Injection FAQ </big>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-21#319
2003-05-21T22:27:45Z
2006-12-04T08:41:24.000003-05:00
<p align="center"><font color="#0080c0" size="2"><big><strong><big>SQL Injection FAQ </big></strong></big></font></p> <p align="center"> </p><p align="center"><strong><font color="red"></font></strong></p><strong><font color="red"> </font></strong><a href="http://www.sqlsecurity.com/DesktopDefault.aspx?tabindex=2&tabid=3"><strong><font color="red"><a href="http://www.sqlsecurity.com/DesktopDefault.aspx?tabindex=2&;tabid=3">http://www.sqlsecurity.com/DesktopDefault.aspx?tabindex=2&;tabid=3</a><br /></font></strong></a><strong><font color="red"> </font></strong> <br /> <div align="center"> <center> <table width="80%" border="0"> <tbody> <tr> <td width="100%"> <p><big><strong><font size="2">Are other SQL Servers (Sybase, Oracle, DB2) subject to SQL injection?</font></strong></big></p> <p><font size="2">Yes, to varying degrees. Here is a site that can get you more details on some of the issues with other SQL Servers. </font><a href="http://www.owasp.org/" target="_blank"><a href="http://www.owasp.org/"><font size="2">http://www.owasp.org</font></a></a></p><font size="2"><b>What is SQL Injection and why is all this information not included in the regular FAQ?</b> </font> <p><font size="2">SQL Injection is simply a term describing the act of passing SQL code into an application that was not intended by the developer.  Since this topic is not specifically restricted to SQL Server it is not included in the normal FAQ. In fact, much of the problems that allow SQL injection are not the fault of the database server per-se but rather are due to poor input validation and coding at other code layers. However, due to the serious nature and prevalence of this problem I feel its inclusion in a thorough discussion of SQL Server security is warranted.</font></p> <p><big><strong><font size="2">What causes SQL Injection?</font></strong></big></p> <p><font size="2">SQL injection is usually caused by developers who use "string-building" techniques in order to execute SQL code. For example, in a search page, the developer may use the following code to execute a query (VBScript/ASP sample shown):</font></p> <p><font face="Courier New" color="#ff0000" size="2">Set myRecordset = myConnection.execute("SELECT * FROM myTable WHERE someText ='" & request.form("inputdata") & "'")</font></p> <p><font size="2">The reason this statement is likely to introduce an SQL injection problem is that the developer has made a classic mistake - poor input validation. We are trusting that user has not entered something malicious - something like the innocent looking single quote ('). Let's consider what would happen if a user entered the following text into the search form:</font></p> <p><font size="2">' exec master..xp_cmdshell 'net user test testpass /ADD' --</font></p> <p><font size="2">Then, when the query string is assembled and sent to SQL Server, the server will process the following code:</font></p> <p><font face="Courier New" color="#ff0000" size="2">SELECT * FROM myTable WHERE someText ='' exec master..xp_cmdshell 'net user test testpass /ADD'--'</font></p> <p><font size="2">Notice, the first single quote entered by the user closed the string and SQL Server eagerly executes the next SQL statements in the batch including a command to add a new user to the local accounts database. If this application were running as 'sa' and the MSSQLSERVER service is running with sufficient privileges we would now have an account with which to access this machine. Also note the use of the comment operator (--) to force the SQL Server to ignore the trailing quote placed by the developer's code.</font></p> <p><a href="http://www.sqlsecurity.com/faq-inj.asp"><font size="2">More</font></a></p> <p><em><font color="#000000" size="2">Very intresting that these are all Native Interface based exploits. So the security issue isn't ODBC, JDBC, ADO.NET, or OLE DB specific (although they certainly increase the potential damage that can be unleashed via metadata analysis en route to that huge Cartesian Product ; the mother of all Exploits!). Our Session Rules Book was devised in 1993 with many of these issues in mind, and to this date there are no other ODBC/JDBC/OLE DB products out there that even come close to acknowledging this reality.</font></em></p></td></tr></tbody></table></center></div>
<big>SQL Injection FAQ </big>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-21#48
2003-05-21T22:27:45Z
2006-06-22T08:56:58-04:00
<P align=center><FONT color=#0080c0 size=2><BIG><STRONG><BIG>SQL Injection FAQ </BIG></STRONG></BIG></FONT></P> <P align=center> <P align=center><STRONG><FONT color=red></FONT></STRONG></P><STRONG><FONT color=red> </FONT></STRONG><A href="http://www.sqlsecurity.com/DesktopDefault.aspx?tabindex=2&tabid=3"><STRONG><FONT color=red><A href="http://www.sqlsecurity.com/DesktopDefault.aspx?tabindex=2&;tabid=3">http://www.sqlsecurity.com/DesktopDefault.aspx?tabindex=2&;tabid=3</A><BR></FONT></STRONG></A><STRONG><FONT color=red> </FONT></STRONG> <BR> <DIV align=center> <CENTER> <TABLE width="80%" border=0> <TBODY> <TR> <TD width="100%"> <P><BIG><STRONG><FONT size=2>Are other SQL Servers (Sybase, Oracle, DB2) subject to SQL injection?</FONT></STRONG></BIG></P> <P><FONT size=2>Yes, to varying degrees. Here is a site that can get you more details on some of the issues with other SQL Servers. </FONT><A href="http://www.owasp.org/" target=_blank><A href="http://www.owasp.org/"><FONT size=2>http://www.owasp.org</FONT></A></A></P><FONT size=2><B>What is SQL Injection and why is all this information not included in the regular FAQ?</B> </FONT> <P><FONT size=2>SQL Injection is simply a term describing the act of passing SQL code into an application that was not intended by the developer. Since this topic is not specifically restricted to SQL Server it is not included in the normal FAQ. In fact, much of the problems that allow SQL injection are not the fault of the database server per-se but rather are due to poor input validation and coding at other code layers. However, due to the serious nature and prevalence of this problem I feel its inclusion in a thorough discussion of SQL Server security is warranted.</FONT></P> <P><BIG><STRONG><FONT size=2>What causes SQL Injection?</FONT></STRONG></BIG></P> <P><FONT size=2>SQL injection is usually caused by developers who use "string-building" techniques in order to execute SQL code. For example, in a search page, the developer may use the following code to execute a query (VBScript/ASP sample shown):</FONT></P> <P><FONT face="Courier New" color=#ff0000 size=2>Set myRecordset = myConnection.execute("SELECT * FROM myTable WHERE someText ='" & request.form("inputdata") & "'")</FONT></P> <P><FONT size=2>The reason this statement is likely to introduce an SQL injection problem is that the developer has made a classic mistake - poor input validation. We are trusting that user has not entered something malicious - something like the innocent looking single quote ('). Let's consider what would happen if a user entered the following text into the search form:</FONT></P> <P><FONT size=2>' exec master..xp_cmdshell 'net user test testpass /ADD' --</FONT></P> <P><FONT size=2>Then, when the query string is assembled and sent to SQL Server, the server will process the following code:</FONT></P> <P><FONT face="Courier New" color=#ff0000 size=2>SELECT * FROM myTable WHERE someText ='' exec master..xp_cmdshell 'net user test testpass /ADD'--'</FONT></P> <P><FONT size=2>Notice, the first single quote entered by the user closed the string and SQL Server eagerly executes the next SQL statements in the batch including a command to add a new user to the local accounts database. If this application were running as 'sa' and the MSSQLSERVER service is running with sufficient privileges we would now have an account with which to access this machine. Also note the use of the comment operator (--) to force the SQL Server to ignore the trailing quote placed by the developer's code.</FONT></P> <P><A href="http://www.sqlsecurity.com/faq-inj.asp"><FONT size=2>More</FONT></A></P> <P><EM><FONT color=#000000 size=2>Very intresting that these are all Native Interface based exploits. So the security issue isn't ODBC, JDBC, ADO.NET, or OLE DB specific (although they certainly increase the potential damage that can be unleashed via metadata analysis en route to that huge Cartesian Product ; the mother of all Exploits!). Our Session Rules Book was devised in 1993 with many of these issues in mind, and to this date there are no other ODBC/JDBC/OLE DB products out there that even come close to acknowledging this reality.</FONT></EM></P></TD></TR></TBODY></TABLE></CENTER></DIV>
<font size="+1">XML Features of Oracle 8i and 9i</font>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-15#296
2003-05-15T21:16:32Z
2006-06-22T08:56:58-04:00
<p class="sitetext"><font face="arial,helvetica" size="3"><b><font size="+1">XML Features of Oracle 8i and 9i</font></b><br /> </font></p><p> </p><p>XML and relational databases are both technologies for structuring, cataloguing and processing data. If data has a regular and atomic structure, it is more appropriate and efficient to use a database than XML. </p> <p><em>Databases store data, XML is not a storage mechanism, it is a storage format (amongst its many capabilities).</em></p> <p>In this case, why would you wish to go to the trouble of converting such data from a database into XML and vice versa? Reasons include: </p> <ul> <li>XML is easy to convert further into different formats as required: e.g HTML, PDF, and plain text. This gives a flexibility to web applications where data can be searched for and accessed from the database, and then formatted for output in different formats using e.g XSL. </li></ul> <p><em>XML seperates data from formatting (and programming logic). XSL is now broken down into two parts; XSLT</em></p>