Adam Bosworth's Weblog: Where have all the good databases gone: "If the database vendors ARE solving these problems, then they aren't doing a good job of telling the rest of us. The customers I talk to who are using the traditional databases are esentially using them as very dumb row stores and trying very hard to move all the logic and searching out into arrays of machines with in memory caches. Oracle is doing some very clever high end things with streaming queries and the ability to see data as of some point in recent history (and even which updates affected the query within some date range) and with integrated pub/sub and queueing, but even Oracle seems to make systems too static and too ponderous to really meet the needs about and, oh yes, they seem to charge about ten times as much as one would expect for them."
Looks like Adam Bosworth hasn't visited the sites for IBM DB2, Microsoft SQL Server, or Oracle Database recently. His first "very simple thing," dynamic schema, is very far from simple, although IBM is doing some very creative things with XML in DB2. Dynamic partioning -- "very simple thing" #2 -- is certainly addressed by all 3 DBMS leaders. "Modern indexing" -- VST #3 -- is also being addressed by the DBMS leaders.
I wouldn't bet on open source initiatives addressing leading-edge DBMS challenges anytime soon. I have great respect for MySQL AB and PostgreSQL, for instance, but the "very simple things" on Adam's wishlist require some very special -- and rare -- skills and experience. Also a lot of really tedious testing and exceptional product support, things for which the open source community doesn't have a great track record.
Free DBMS are not technology leaders and you can't expect them to innovate on advanced features. They still have to play catch-up and are busy implementing common functions (e.g. MySQL still doesn't support stored procedures). I expressed my view in an article for Computerworld Germany and my conclusions - surprise, surprise - have been critized by the IBPhoenix Community.
ReplyDelete