Open source software is gaining traction in many software infrastructure markets, particularly in the operating system, Web/application server and database server infrastructure areas. Many organizations currently are leveraging open source components or are devising an open source acquisition and management plan. In most cases, organizations are adopting a blended-source approach that leverages both open source and traditionally licensed software. It is not uncommon to see environments that leverage a commercial database, such as Oracle, running on Linux, an open source operating system. This phenomenon is accelerated by interoperability support for open source components provided by traditionally licensed software vendors.
DataDirect Technologies has a proven track record in blended-source deployments. DataDirect's database middleware products are pervasively deployed in production environments, including many scenarios that include open source components.
Successful infrastructure-level open source solutions, such as Apache and Linux, enjoy two distinguishing characteristics that make them suitable for enterprise deployments of critical applications. First, they are supported by a large, vibrant community of developers who ensure robust feature support, solid reliability, and enterprise-class performance and scalability. Second, these infrastructure-level solutions are backed by a consortium (Apache Software Foundation) or commercial venture (RedHat, JBoss) that provides the financial backing and management infrastructure to sustain ongoing research and development, as well as technical and legal support. Projects lacking a vibrant developer community and commercial support are just that – technology projects. Although they may be suitable for certain non-critical use cases, these projects lack the characteristics that make a technology suitable for use with business-critical production systems. Literally, thousands of these projects are available on the SourceForge open source portal – most are developed and maintained by one or two part-time developers.
Although many major infrastructure components (for example, operating systems and Web/application servers) enjoy the critical developer mass and financial/organizational support necessary for success, open source efforts for more modest solutions, such as database drivers, do not use modern development methodologies and quality assurance, and lack organized support operations. Organizations that use an open source database driver assume extraordinary risk because of inferior product quality, non-existent technical support, and the complete assumption of legal liability. This article contrasts the organizational approach used by open source database driver providers with DataDirect's industry-leading, database connectivity solutions, which are production viable and commercially supported. After reading this article, it will be apparent that the product quality, technical support, and legal liability risks associated with open source database drivers far outweigh any initial cost advantages associated with the open source option.
Open source software is perceived to be free, but it should not be confused with public domain software. Similar to traditionally licensed software, usage of open source software is limited by a set of restrictions that are imposed by a license agreement. Unlike traditionally licensed software, open source license agreements are written to protect the licensor (for example, code contributor); they are not written to provide legal liability protection for the licensee (for example, the organization using the software). Open source license agreements do not include intellectual property protections, fitness clauses, or indemnification to protect the licensee. The agreements simply provide a vehicle for propagation of the license itself in the licensee's application, and are silent with respect to indemnification, which intentionally benefits the licensor/contributor. It is imperative that the corporate user of open source products is familiar with the restrictions and legal risks associated with the open source solution.
Open source licensing is greatly complicated by various license types, as well as ambiguous language in the license. The Open Source Initiative (OSI) lists 58 approved license types including the GPL, LGPL, BSD, MIT, and Mozilla licenses. Each of these licenses carries a different set of restrictions and obligations – factors that could ultimately determine whether a proprietary or "home grown" software application is subject to release under an open source license agreement. Corporate users of open source software must trust their IT staff to make the correct technical and legal decisions so that the organization does not violate the license agreement. In most cases, corporate developers are completely unaware of open source license obligations and leverage open source software without consulting their legal department. Even if a corporation's legal organization gets involved, the costs involved in the legal review of every open source contract can be considerable. These license agreements often are written in ambiguous language. Legal interpretations vary greatly in terms of the user's obligations, and the courts are just now starting to adjudicate open source license disputes.
In addition to license complexity, another important factor when considering using open source software is the business or organizational model used by the software project. Initially, most open source projects are managed by a handful of developers in an autonomous manner. Although this approach can lead to a strong sense of community, it does not provide the level of development, testing, and product-release rigor to ensure enterprise-class reliability, performance, and scalability. To address these shortcomings, many larger, infrastructure-level projects have turned to consortiums or commercial ventures to provide the resources for enterprise-class deployments. Many of these organizations are now household names and include RedHat Linux, JBoss Application Server, as well as the Apache Software Foundation (Apache Web Server).
Although commercial ventures leverage a variety of business models (RedHat relies on license revenue, and JBoss sells training/customer support), they all provide the financial, management, development, and technical support resources to ensure that their open source products are viable for use in production deployments. They are careful to distinguish their product offerings from non-commercial, project-based, open source solutions. In fact, JBoss has trademarked the term Professional Open Source™ and explicitly states that they "hire and pay experts in the open source community to write exceptional and innovative software full-time" to ensure that their solution is "the safe choice for end-user enterprises and independent software vendors alike." These vendors understand the difficulties and risks associated with open source solutions that lack commercial vendor support and are very deliberate about explaining how their approach is different.
Project-based open source solutions, such as those associated with database driver projects, lack the financial, management, development, and technical support resources for production deployments. The remainder of this article addresses the product-quality issues, unreliable technical support, and legal risk associated with using an open source database driver.
Organizations that rely on open source database drivers are assuming risks that can easily disrupt their business practices. A combination of legal, functional, and support issues can cause the following disruptions:
Perhaps the most important question facing an organization that is considering the use of an open source driver is whether they want to expend resources on implementing, supporting, and mitigating the risks associated with the open source project rather than focus their resources on projects that are core to the financial success of their business.
Open source database driver projects lack the financial support and dedicated developer and QA resources to ensure the high quality and rich functionality for success in production-critical environments. Lack of resources results in the following shortcomings:
As is readily apparent, the product abilities provided by a stable, well-financed organization, such as DataDirect, significantly outclass those abilities provided by a small, open source project. What may not be apparent is the detrimental impact that using an open source driver can have on an organization because of its product shortcomings. The following table clearly states the advantages provided by DataDirect and the risks associated with using an open source database driver.
DataDirect Database Drivers |
Open Source Database Drivers |
Customer Impact |
Massive product breadth based on complete support for the specification, robust support for optional features, and extensive support for abilities that complement the specification. |
Not all features in the database driver specification are supported; some that are supported leverage proprietary extensions or result in errors and application failure. |
Limited ability restricts application functionality, forcing organizations to build their own functionality (increasing development costs) or sacrifice user features (reducing end-user satisfaction). |
Unrivaled product quality based on an extensive certification process, test methodology, and transparent/audited processes. |
Suspect product quality resulting from lack of resources and development methodologies. |
Suspect driver quality can greatly impact applications, leading to costly downtime, data corruption, and extensive troubleshooting and re-deployment costs. |
Specification leader and strategic partner to the database vendors. |
No role in the specification process. Forced to build their drivers by reverse engineering database protocol. |
Sub-optimal driver design because of limited visibility into the specification process and a reverse-engineered protocol design. |
Commercial software providers of open source and traditionally licensed software provide legal indemnification and quality warranties as part of their standard product offering. In addition, these commercial ventures institute a rigorous methodology that greatly reduces the likelihood of plagiarized code or patent-related violations. These benefits provide a level of assurance for organizations using these products. On the other hand, organizations relying on project-based, open source solutions (for example, open source database drivers) are forced to use the software "as is" and are responsible for potential legal risks if the software is found to be in violation. The legal risks associated with open source database drivers are substantial and include the following items:
It is critical to note that the aforementioned legal risks exist for any organization that uses open source software, including open source database drivers. These risks do not depend on whether an organization modifies open source code. If an organization simply uses open source software, an organization is immediately at risk.
Additional legal risks are associated with the act of modifying the source code; these risks include the following items:
The net effect of managing these changes forces an organization to focus on an infrastructure component – a component that is clearly not their core competency. This effort reduces the amount of time dedicated to strategic projects that clearly drive the success of the business venture.
In addition to the risks associated with most organizations, ISVs assume an additional level of risk because their software solution is a core component of their business offering. ISVs need to consider the following licensing ramifications:
Organizations that rely on open source database drivers assume a tremendous amount of legal risk. Perhaps more importantly, implementing and enforcing the policies and procedures and the additional development burdens associated with an open source solution forces an organization to reduce their focus on their core competency and development efforts that provide their business with a competitive advantage. The following table outlines the clear advantages provided by DataDirect and the risks associated with an open source database driver relative to legal liability.
DataDirect |
Open Source Database Projects |
Customer Impact |
DataDirect has the financial, legal, and development resources required to implement policies that ensure DataDirect's product is free from licensing issues. |
Organization cedes control to an amorphous group of developers whose lack of financial, legal, and development resources greatly increases the possibility of licensing issues. |
Customer assumes complete legal responsibility if they use an open source database driver. This risk is substantial because the open source project has no accountability and the customer lacks visibility into the development processes used by the project. |
DataDirect provides legal indemnification and quality guarantees that provide customer protection and legal assurance. |
Open source database driver providers do not provide legal indemnification or quality guarantees. Customers who use an open source database driver assume total responsibility for the "as is" product. |
Legal Indemnification is a base requirement when dealing with software acquired from an external source. Without indemnification, customers assume tremendous legal risk for actions that are beyond their control. |
DataDirect provides an aggressive product roadmap that ensures its customers receive driver enhancements in a timely fashion. DataDirect customers focus on their application needs instead of investing their time and resources in the database driver. |
The nature of open source software forces a customer to modify the source code to compensate for missing or sub-optimal features. These changes are subject to the LGPL, which means that the organization must contribute the changes back to the open source project or open source their version of the driver. |
Customers are forced to dedicate valuable development resources to the database driver instead of focusing on their application needs. If the code is contributed back to the open source project, the customer must deal with integration and version control issues. In addition, the customer must manage the risks associated with releasing their driver, or entire application solution, as an open source offering. |
Reliable technical support is a basic requirement when working with software from an external source. In today's hyper-competitive business environment, reliable, multi-channel (phone, email, and so on), 24x7x365 support is imperative for mission-critical applications. IT organizations are increasingly being held to high levels of service, and in many cases, their applications are subject to availability, reliability, and performance thresholds established in service-level agreements. If reliable technical support is not available, the IT organization assumes a significant level of risk, because even simple technical support issues can turn into major project delays, lost developer time, application downtime, and so on.
Open source database driver solutions are not backed by organized technical support. At best, these projects provide online forums where a developer may submit questions, bug reports, and so on. The developer has no assurance that a response will be provided, and there is no guarantee or contract in place that regulates the response time of the resolution. Open source database driver project teams simply lack the resources to provide reliable technical support. The organization must depend on its own development resources to resolve issues if an organization runs into problems during installation or configuration of the driver, performance or scalability issues that occur when the driver is deployed in a production environment, problems that occur when upgrading the driver to a new release, and so on. Problems are especially difficult to troubleshoot when a developer did not write the code and may be completely unfamiliar with the mechanics of the driver.
This situation is in stark contrast with the technical support offered by DataDirect, which recently won its fifth consecutive Omega NorthFace Scoreboard Award for excellence in customer service. DataDirect Technologies' SupportLink Technical Service Program was recognized for its outstanding customer service record and strong commitment to customer satisfaction. DataDirect's SupportLink offering includes the following abilities:
DataDirect leads other software providers in terms of the level of quality, responsiveness, and customer satisfaction that it provides to its customers. This level of assurance eliminates technical difficulties relating to database connectivity, which is critical to application availability, and enterprise-class reliability, performance, and scalability. The following table summarizes the advantages of DataDirect's award-winning technical support when compared to open source software offerings.
DataDirect |
Open Source Database Projects |
Customer Impact |
DataDirect provides award-winning technical support that includes phone, email, and Web-based support. In addition, DataDirect provides an extensive library of articles on database middleware topics. |
Open source database driver providers do not provide any level of organized technical support. Customers who leverage these components must be prepared to provide their own technical support or risk debilitating application reliability and downtime problems. |
With open source database providers, the customer must assume control for providing their own technical support, forcing the customer to make a significant investment in supporting a product for which they have no development expertise. Even simple problems can lead to costly downtime and user-satisfaction issues. |
The perceived advantages associated with the open source movement (improved quality and lower cost) depend on having a large, vibrant community of developers and testers. Although these advantages (to a limited degree) have been realized in large, complex components, such as operating systems and application servers with large and active open source communities, the critical mass necessary to realize these benefits in an open source database driver simply does not exist. Open source projects typically are supported by a small group of part-time developers, offer limited support restricts application functionality and database support, and lack the commercial backing to provide the legal assurances needed by enterprise-class IT organizations.
These limitations force customers that rely on an open source database driver to assume a significant level of risk – risk that spans the entire application including legal, product, and support elements. The financial costs associated with these risks can easily overcome the initial lower acquisition cost associated with a free license. In fact, when the aggregate costs involved in the project are considered (technical support, development and quality assurance cost, increased end-user satisfaction based on performance, driver reliability, business risk from the legal issues involving the open source license, and so on), the DataDirect driver has proven time and again to be the most cost-effective data connectivity alternative available today.