Why NoSQL Should Be Called "SQL with Alternative Storage Models"
Time and again, you’ll find blog posts like this one here telling you the same “truths” about SQL vs.NoSQL:
http://onewebsql.com/blog/no-sql-do-i-really-need-it
(OneWebSQL being a competitor of jOOQ, see a previous article for a comparison)
Usually, those blogs aim for the same arguments being:
• Performance (“SQL” can “never” scale as much as “NoSQL”)
• ACID (you don’t always need it)
• Schemalessness (just store any data)
For some funny reason, all of these ideas have led to the misleading term “NoSQL”, which is interpreted by some as being “no SQL”, by others as being “not only SQL”. But SQL really just means “Structured Query Language”, and it is extremely powerful in terms of expressing relational context. It is well-designed for ad-hoc creation of tuples, records, tables, sets and for mapping them to other projections, reducing them to custom aggregations, etc. Note the terms “map/reduce”, which are often employed by NoSQL evangelists.
For good reasons, the Facebook Query Language (FQL), one of the leading NoSQL query languages, closely resembles SQL although it operates on a completely different data model. Oracle too, has jumped on the “NoSQL” train and sells its own product. It won’t be very long until the two types of data storage will merge and can be queried by an ISO/IEEE standardised SQL:2015 (or so). Because the true spirit of “NoSQL” does not consist in the way data is queried. It consists in the way data is stored. NoSQL is all about data storage. So, sooner or later, you will just create “traditional” tables along with “graph tables” and “hashmap tables” in the same database and join them in single SQL queries without thinking much about today’s hype.
“NoSQL” should be called “SQL with alternative storage models” and queried with pure SQL!
http://onewebsql.com/blog/no-sql-do-i-really-need-it
(OneWebSQL being a competitor of jOOQ, see a previous article for a comparison)
Usually, those blogs aim for the same arguments being:
• Performance (“SQL” can “never” scale as much as “NoSQL”)
• ACID (you don’t always need it)
• Schemalessness (just store any data)
For some funny reason, all of these ideas have led to the misleading term “NoSQL”, which is interpreted by some as being “no SQL”, by others as being “not only SQL”. But SQL really just means “Structured Query Language”, and it is extremely powerful in terms of expressing relational context. It is well-designed for ad-hoc creation of tuples, records, tables, sets and for mapping them to other projections, reducing them to custom aggregations, etc. Note the terms “map/reduce”, which are often employed by NoSQL evangelists.
For good reasons, the Facebook Query Language (FQL), one of the leading NoSQL query languages, closely resembles SQL although it operates on a completely different data model. Oracle too, has jumped on the “NoSQL” train and sells its own product. It won’t be very long until the two types of data storage will merge and can be queried by an ISO/IEEE standardised SQL:2015 (or so). Because the true spirit of “NoSQL” does not consist in the way data is queried. It consists in the way data is stored. NoSQL is all about data storage. So, sooner or later, you will just create “traditional” tables along with “graph tables” and “hashmap tables” in the same database and join them in single SQL queries without thinking much about today’s hype.
“NoSQL” should be called “SQL with alternative storage models” and queried with pure SQL!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/301743/viewspace-738654/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Why Startups Should Not Choose NoSQLSQL
- Why NoSQL?SQL
- Why should we copy blocks rather than retain?BloCAI
- Ten Reasons Why Android Should Support OpenCLAndroid
- When should reread of cl_crm_bol_entity and $scope.$apply be called manuallyAPP
- What are HANA's models of cloud computing, and which should I choose?Cloud
- why use dynamic SQL?SQL
- what storage is used in a LOBSEGMENT and should it be shrunk / reorg-1453350.1
- LangChain AlternativeLangChain
- sql與nosql的權衡SQL
- SQL vs NoSQL:如何選擇?SQL
- The SQL vs NoSQL Difference: MySQL vs MongoDBMySqlMongoDB
- NoSQL——not onlySQL不僅僅是SQLSQL
- Squirrel: 通用SQL、NoSQL客戶端UISQL客戶端
- WhyASMLIBandwhynot?ASM
- DBA的困境:NoSQL VS SQL 生存 Or 死亡?SQL
- SQL Server的幾種恢復模式(recovery models)SQLServer模式
- SQL與NoSQL,資料橋樑SqoopSQLOOP
- 如何更換Azure SQL DB blob storage credentialsSQL
- 不在models.py中的models
- WPF TreeView SelectedItemChanged called twiceView
- getOutputStream() has already been called
- How to check why identical SQL Statements have high version countIDESQL
- Sql Or NoSql,看完這一篇你就懂了SQL
- NoSQL 還是 SQL ?這一篇講清楚SQL
- SQL、NoSQL和NewSQL的優缺點比較SQL
- 排名前十的SQL和NoSQL資料庫SQL資料庫
- Why TypeScript?TypeScript
- The Storage Situation: Removable StorageREM
- Probabilistic Models
- java.lang.IllegalStateException: getWriteableDatabase called recursivelyJavaExceptionDatabase
- NoSQL再次敗北——我堅持使用SQL的原因SQL
- SQL 與 NoSQL 混合資料庫正在取得進展SQL資料庫
- SQL 2014 in-memory中的storage部分SQL
- SSL - SSLHandshakeException: No subject alternative names presentException
- Why React HooksReactHook
- WHY review code?View
- Why Redis 4.0?Redis