This post is not just concerned with SQL but more like relational databases. Nowadays there are tons of database options and that makes many developers wonder what will happen to the SQL database.
People have been working on relational databases since a few decades now and there are tons of organizations that have their database tangled into relational tables so the end of SQL database is nowhere near. It’s a huge cost to change something drastically at an organizational level.
Let’s not cut to the chase and discuss it in detail.
Non-relational database is faster but not everything
The first argument to be made is that now we have non-relational database, which is faster than the relational database, there is no need for the slower, relational database.
That’s not true since both relational and non-relational databases fulfil different purposes. When two things are made for two different purposes, there is no way they can replace each other. It is true that some organizational with specific kind of data structure might find one way more appealing than the other.
Huge investments to switch
If you’re working at a large organization, just think of how much time, effort, budget and problem solving will it take to move all the relational data tables into non-relational data tables? Do you believe it’s worth doing? Do you believe it’ll solve a larger issue that your organization is having? Do you believe it’ll simplify the future database related operations? I do not believe so.
Large companies that offer SQL solutions such as Microsoft and Oracle are investing huge amount of money into relational databases till date. They also have cloud solutions for SQL so they are not getting rid of the relational database but expanding it to keep up with the modern demand.
Microsoft announced Cosmos Database which is an enhancement of a Document Database. Cosmos Database is a NoSQL Database offers features of SQL Server and Azure SQL both but not at a large level since it won’t offer complete relational database features. So, it can not replace SQL.
SQL is a core in a way
When you learn SQL, you’re learning the fundamentals of how a database works and how data is stored, how the CRUD operations are performed etc. When you learn those fundamentals, you can use those fundamentals in pretty much any databases. Don’t get me wrong here. You won’t be able to apply the same query language in any database but the overall database management core principals will be the same.
More companies are adding SQL supports
More and more companies that did not support SQL database initially, they are going for SQL since they know that at many organizations, SQL is what’s being used and they are not switching anytime soon. There are many schools that have integrated their systems around SQL and relational databases which is just unbelievably complex to untangle into a non-relational database.
Big Data and BigQuery use SQL/relational engines for data aggregation and generating some reports.
Some Useful Resources
- Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase vs Couchbase vs Hypertable vs ElasticSearch vs Accumulo vs VoltDB vs Scalaris comparison
- Cosmos DB
database future NoSQL relational