Do You Put Trust in Vendors’ NoSQL Promises?
Disruptive times lead to disruptive technologies. But moreover, they lead to new buzzwords and thus new “value propositions” for an unsettled clientele who will buy into any promise these vendors make. If you believe those expensive reports that you can buy from companies like Gartner, you will think:
You need to run your business in the cloud
“You need to run your business in the cloud”. The advent of what marketers have come to call “The Cloud” (formerly known as “Web 2.0”, or “The Internet”) has started to transform the ways some people think about data. Many vendors trust in “Big Data” becoming the next “Big Paradigm” for software engineering. “Big Data” seems to cry for new data storage technologies, as advertised in this article here: http://www.ncs-london.com/blog/Five-Benefits-of-a-noSQL-approach-to-DBA-management Consider section 4:
4: An end to DBAs
Despite the many manageability enhancements claimed by RDBMS vendors over the years, high-end RDBMS systems can be upheld only with the help of lavish, highly trained DBAs. DBAs are intimately involved in the design, installation, and on-going tweaking of high-end RDBMS systems.
“lavish, highly trained DBAs”. This article assumes that moving away from SQL will make maintaining and managing large amounts of data a piece of cake that your average junior PHP script kiddie can handle.
“Blimey, Dear Rupert! Our customer fancies going to The Cloud with his 20 million transactions per day.”
“Good Lord, Rodney, I believe you are right. We ought to get Clive, our lovely intern youngster on the job. He only costs us a penny a minute.”
People often forget that an average iPhone with 64 GB of memory would have been considered quite “Big Data” 13 years ago, when the average Nokia 3310 could only store 100 phone numbers! 13 years changed a lot in terms of volume, but not that much in terms of software technology. Since then, software engineering has slowly transformed to manage ever larger sets of data, but few companies really need to scale in dimensions where RDBMS cannot scale to. In fact, some database vendors actually went to “The Cloud” with their RDBMS themselves, such as Google App Engine’s Cloud SQL. And what about Twitter? Well, they’re actually using a MySQL sharded database, which serves them perfectly fine. Just as Instagram uses a sharded PostgreSQL database. Pinterest, another provider for a large “Cloud” application uses sharded MySQL (along with Solr, Memcache and Redis).
RDBMS might not be the optimal choice for some data models (hierarchical, unstructured, document-oriented models). But they are extremely powerful when it comes to manipulating relational data. SQL itself has evolved quite a bit since Nokia 3310 times, when 64 GB of memory was “Big Data”. The differences between Oracle 8i and Oracle 12c are amazing. The same applies to the differences between SQL Server 2000 and SQL Server 2012. Moreover, you can employ the very same DBA for the Oracle 12c job as you could for the 8i job back in the days.
While we are certainly living in exciting times where new technologies lead to new ways of thinking (and vice-versa), we should be sceptical of vendors who promise that we will migrate to the next paradigm within a blink of an eye. Your data might endure longer than the new technology you use to store it.
We should be sceptical of vendors who claim that highly trained maintenance people are the main problem we need to solve. They promise you to cut down on DBA and licensing costs, while hardly anyone even knows about future “NoDBA” and “NoLicensing” costs.