The Center of the UniverseXML, Web services, analytics, and other hot technologies have the leading relational DBMS providers working overtime to remain the best choice for managing all of your data. Here's a look at what IBM, Microsoft, and Oracle are doing
by Ken North Whatever form software takes in the next decade, databases will continue as the primary tool for managing data. DBMSs from rivals IBM, Microsoft, and Oracle will provide persistent data management for Web services, embedded applications, Web stores, grid services, and other software. But SQL DBMS products will increasingly be judged on how well they support traditional tasks (such as transaction processing) while evolving to provide new capabilities (such as integrated business analytics). The latest releases of data management software from the big three vendors unite SQL with multidimensional and document-centric (XML) data and grid computing. Whether an organization follows a best-of-breed approach or taps a single vendor to build an IT infrastructure, problems can arise with interoperability, data aggregation, and data and application integration. That's why XML, XML-based messaging, XML-enabled databases, and Web services have become increasingly important. But XML is only one of the fields on which the database software giants are competing. Although there are now fewer SQL database vendors than a decade ago, competition remains fierce among IBM, Oracle, and Microsoft. Each company tries to gain an edge over the others by complementing their database platforms with broad-spectrum software offerings such as vertical market applications and developer tools. The DBMS products from each of these vendors provide parallel processing, extensible servers, online analytic processing (OLAP), tight integration with messaging software, and support for XML and Web services. The products diverge when it comes to programming database server plug-ins, querying multidimensional data sets, persisting message queues, orchestrating the flow of Web services, and processing audio, video, and other rich data types. This overview of the different strategies vendors are following sheds light on their plans for developing technologies to extend the SQL DBMS to handle business intelligence (BI), XML, Web services, and grid requirements. Development PlatformsSome of the differences in vendor approaches result from development and deployment platform choices. Some developers want to query databases, process XML documents, and create Web services using Microsoft's .Net environment, the Windows platform, Active Server Pages, Visual Basic, and C#. Others will use XML and SQL in the context of Java 2 Enterprise Edition (J2EE), Java Server Pages, and developer environments such as Oracle JDeveloper. Another approach, favored by the open source community, is to use technologies such as Linux and the Apache Struts Web Application Framework. Although IBM, Microsoft, and Oracle cooperate on important World Wide Web Consortium (W3C) specifications, they take divergent paths when it comes to development and deployment platforms. IBM and Oracle are actively involved with Java, Unix, and Linux. Microsoft developed the .Net framework, in part, as an alternative to Java and Linux computing. SQL, XML, and simple object access protocol (SOAP) are vendor-neutral technologies, but the software infrastructure, client APIs, and developer tools from each vendor tend to have a distinct Java or .Net flavor. IBM and Oracle see J2EE as the environment for building Web services, while Microsoft sees Web services development through .Net glasses. IBM, Microsoft, and Oracle are heavily invested in XQuery; and IBM and Oracle are heavily invested in grid computing. IBM DB2 Universal Database (UDB) is available for a variety of platforms, with tools for the Java, Linux, .Net, and Windows communities. IBM WebSphere Application Server is J2EE-compliant, supports WebSphere MQ (formerly MQSeries) messaging, can host Web services, and acts as an Enterprise JavaBeans (EJB) container. IBM has made major financial commitments to Linux computing. Oracle has a tradition of offering its DBMS on multiple platforms. Like IBM, it offers software for developers in the Java, Linux, and .Net communities. Oracle is heavily invested in distributed SQL queries, Web services, distributed XA transactions, XQuery, and grid computing.
Microsoft offers a JDBC driver for SQL Server client development, but its developer tools are geared to the Windows and .Net community. It continues to update SQL Server to be competitive for transaction processing and BI. Platform choices are often influenced by technologies that aren't universally available, such as Java in the database or multidimensional expressions (MDX) in OLAP queries. Developers looking to write transaction processing software in Java can use EJBs with container- or bean-managed persistence and the EJB Query Language. Oracle 9i users have the option of using the database or application server as an EJB container. Microsoft SQL Server would be the choice for companies with data mining applications that need MDX extensions to SQL. XML-Enabled DatabasesDB2 UDB, Oracle 9i, and SQL Server can all manage and search XML document collections. To use an XML-enabled database, you define document structure with a Document Type Description or schema, use Extensible Stylesheet Language Transformations and stylesheets for document transformations, and find information in documents with XPath and XQuery. In addition to understanding document structure, an XML-enabled database can use a parser to validate dcuments generated by queries. When SQL stores or retrieves columns in tables, it doesn't maintain order. But XML is hierarchical. Documents contain elements and attributes, which are somewhat analogous to subjects and adjectives in sentences. The order of attributes isn't important, but the order of elements in a document is. To store an XML document in multiple tables in a SQL database, information about its structure must also be stored if the document will be reconstituted. XML document collections often start out as a set of files before someone realizes they should be stored in a database. Therefore, it's helpful if an XML-enabled database can use the DBMS indexes when querying documents that are both internal and external to the database. Oracle and DB2 UDB provide that capability. Support for World Wide Web Distributed Authoring and Versioning and folder metaphors for managing documents in SQL databases are also useful. Processing XML. When working with an XML-enabled SQL database, developers use vendor-neutral APIs to store and retrieve documents and process their content. Choices for data access include JDBC or ODBC. For processing document content, developers can choose the W3C Document Object Model (DOM), the Java Community Process JDOM, the simple API for XML, or other APIs. IBM, Microsoft, and Oracle provide XML parsers that can validate documents constructed from database queries. Although the document processing and SQL data access APIs are vendor-neutral, XML support from IBM, Microsoft, and Oracle diverges in other areas. Microsoft offers Transact-SQL extensions and relational views of XML documents. IBM provides the DB2 XML Extender. Oracle provides an XML developer kit and an XML database known as XDB. IBM, Microsoft, and Oracle support XML Schema and XQuery, although in different ways. Oracle is looking at both federated and crawled multisource query support for XQuery. It expects to make product announcements based on final standards for XQuery, XQuery-FT, and XQuery Update. SQL and XML. The International Committee for Information Technology Standards is now responsible for the work of the SQLX Group in bringing SQL and XML together. The SQL/XML project includes experts responsible for both the International Organization for Standardization/International Electrotechnical Commission SQL standard and the W3C XQuery specification. To produce a new SQL standard that integrates with XML, they addressed issues such as data conversions, mapping SQL identifiers to XML names, mapping between SQL schema types and XML schema types, and integrating XQuery and SQL. The next release of the SQL standard, incorporating SQL/XML, is scheduled for late 2003. IBM, Microsoft, and Oracle have taken divergent paths in how to extend SQL dialects for XML, but the new standard may bring alignment. The SQL:2003 standard will introduce an XML type and operators such as Data and information integration. If SQL is "intergalactic data-speak," then XML is "intergalactic integration-speak." It's becoming a favored tool for integrating applications, data, metadata, and processes and can be used for messaging, Web services, interchanging models, and describing scientific data sets used in grid computing. SQL companies recognize that important information exists in documents that aren't in a database. They've developed tools for importing XML content and for integrating XML with tabular data. IBM and Oracle have also extended their DBMS products to provide indexed queries over tables in the database and documents external to a database. IBM's Xperanto project also developed data aggregation and integration software that culminated in DB2 Information Integrator, a tool that works with structured and unstructured data.
|
Most Popular This Week
IE Weekly Newsletter
Subscribe to the newsletter
|
|
|











