TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

SQL vs. NoSQL

78 点作者 dkthehuman超过 12 年前

5 条评论

badclient超过 12 年前
I am presently researching these so-called NoSQL databases and one thing that I keep wondering is why can't all of these database still support a <i>limited</i> form of SQL-like language?<p>Almost any json document could be represented as a db table as far as I can see. Why can't I query using a common language instead of learning each of these NoSQL database's own way of doing simple stuff like returning documents of User object that have a gender field value as 'male'. In SQL, it would be something like "select * from users where gender='male". Why can't NoSQL databases support a query similar to that? Why do they require me to describe a similar request in their own unique syntax?<p>I sometimes get the feeling that coining a term like NoSQL is a marketing gimmick which hurts people actually trying to learn the nuanced differences but I am only getting started. Why can't we <i>extend</i> SQL to support "NoSQL"-specific cases instead of replacing it with <i>nothing</i>.<p>I get that a big part of SQL is joins and the philosophy of joins goes against the idea of NoSQL. The solution to that is to still accept SQL but just throw an exception when join is used with a link to educate the person on alternative implementations.
评论 #4473586 未加载
评论 #4473943 未加载
评论 #4475614 未加载
评论 #4477910 未加载
elchief超过 12 年前
I don't really get why HBase isn't bigger than it is. I mean, it's BigTable, right? And Facebook dropped Cassandra for it, IIRC.<p>Not trying to start a war here, I am not an interested party, I am just curious.
评论 #4472839 未加载
评论 #4472527 未加载
评论 #4473624 未加载
评论 #4472757 未加载
评论 #4472430 未加载
VLM超过 12 年前
A NoSQL discussion isn't complete without a link to the inner platform effect<p><a href="http://en.wikipedia.org/wiki/Inner-platform_effect" rel="nofollow">http://en.wikipedia.org/wiki/Inner-platform_effect</a><p>Basically if your application domain is inherently relational or inherently "SQL" no "NoSQL", then building your own RDBMS in your application absolutely dooms you, unless you're not a "real" application writer but actually a RDBMS author.<p>I have having a conversation with a guy "I wish there was a library for (whatever nosql DB he was complaining about) I could link in to do transactions and indexing for me" my reply "yeah, its called postgresql". That's not trendy and buzzword compliant, he ended up annoyed with me. There's a "pragmatic programming" book "seven databases in seven days" which is a pretty good book and it describes polyglot database design a little toward the end... so you "need" a key-value store and indexed transactions and there's nothing that does both perfectly... Well, there's plenty of good free open source DBs, so install and use two DBs... its really not that hard.
评论 #4474385 未加载
Lasher超过 12 年前
Interesting that one of the original "noSQL" databases that is still going strong today, Pick and its variants, was not mentioned in the article at all.<p>Universe and JBase are both well supported on Linux and there are several multi-billion dollar (revenue) companies running their core business on it - I work for one of them.
评论 #4472831 未加载
stevencorona超过 12 年前
stopped reading the articled referred to amazon s3 a database. instant credibility killer. no thanks.<p>(p.s the amazon product you're looking for is dynamo)
评论 #4472517 未加载
评论 #4472510 未加载
评论 #4472489 未加载
评论 #4473430 未加载