Open source database adoption for BI and data warehousing appears to lag the open source BI and ETL tools. There are lots of reasons for this documented elsewhere, but one reason becoming less valid is performance.
An IDC survey of data warehouse size reported that ~60% of data warehouses are less than a terabyte in size. Several other surveys over the past few years reported similar findings. This tells us that the industry focus on scale-out options is overkill for the majority of people deploying data warehouses. What's needed is cost-effective performance at a scale of less than a terabyte. There are interesting vendors of both close and open source databases and appliances that work well in this size range.
Gartner recently gave some recommendations on open source databases and data warehousing that I think are inappropriate. They suggest MySQL as the only viable option. Part of their rationale is sound: commercial support and company viability. Most of the open source databases are smaller vendors or the projects are community supported rather than commercial, making them less suitable for enterpriuse use.
Where Gartner goes wrong is that MySQL isn't as good for BI workloads. It's easy to find information on basic MySQL performance, but not for data warehouse workloads. Maybe that's why Gartner overlooked this MySQL performance test. MySQL couldn't complete the 100GB scale tests, and part of the reason is obvious: missing features for large-scale queries.
These are some of the reasons companies have stepped in to offer new storage engines and appliances that are MySQL compatible. Infobright is delivering a MySQL-compatiable BI-focused product - it's hard to get proper scaling and performance with standard MySQL as a data warehouse database. Kickfire offers a different option for performance in an appliance package. Postgres and Ingres offer better features for both querying and managability with data warehouse workloads. EnterpriseDB delivers commercial support for Postgres as well as providing a scale-out option, removing another of the Gartner criticisms.
Jos van Dongen did a small scale TPC-H benchmark with a group of open source databases and one of the major vendors (name withheld since they don't allow third party publication of bechmarks). What's most interesting is how well the (relatively new) MySQL 5.1 release performed. Even more amazing is how well MonetDB and LucidDB performed relative to the others. Maybe it shouldn't be a surprise since we're talking about columnar engines, query workloads and a small scale test. He's got a nice chart showing the BI-related features in these open source databases.
When you grow a dataset to the 10GB and 100GB scales (which Jos is doing), the results will sureley change. The maturity of a database is really seen when you have to do three things: manage larger volumes of data, optimize complex queries on that volume, and deal with concurrrent users querying this data. I suspect there will be a reshuffling of his benchmark results at larger sizes.
Other interesting performance information is the benchmark Josh Berkus wrote about in his blog post on a Postgres benchmark run at Sun, where he notes that Postgres is almost as fast as Oracle on equivalent hardware, at significantly lower cost. (I know this old info for those of you who follow Postgres more closely) While not a DW-specific benchmark, it does demonstrate equivalent performance levels - the key point. A similar benchmark was done with MySQL, DB2, Oracle and Microsoft a few years ago and showed similar results.
Posted February 8, 2009 12:19 PM
Permalink | 1 Comment |