NoSQL会取代SQL数据库吗?

来源: 发布时间:2010-03-31 点击数:

最近有Twitter、Digg和Reddit等多家Web 2.0企业宣布从MySQL转而使用非关系型数据库(NoSQL)提供可伸缩的数据存储解决方案,引起了开发者对NoSQL的强烈关注。

NoSQL真的会完全取代关系型数据库吗?

对此,前Google工程师,Milo(本地商店搜索引擎)创始人Ted Dziuba最近发表标题惊人的博客“I Can't Wait for NoSQL to Die”,对NoSQL的适用范围进行了分析。他认为,NoSQL也会带来一连串的新问题,并不会成为主流,无法取代关系型数据库。

他的理由是:Cassandra等NoSQL数据库在使用上并不方便,比如,修改column family定义时就需要重启。而且NoSQL更适合Google那样的规模,而一般的互联网公司都不是Google,早早地去考虑Google那样的规模的可扩展性,纯粹是浪费时间,存在巨大的商业风险。

他还透露,即使在Google,AdWords这样的关键产品也是基于MySQL实现的。

他在文中最后表示,NoSQL当然死不了,但是它最终会被边缘化,就像Rails被NoSQL边缘化一样。而DBA同学们也用不着担惊受怕,因为有钱招DBA的公司的决策者们都懂实际的生意是怎么回事儿。

Dziuba的文章因为言辞激烈,在社区里引起了强烈反应。

SQL数据库阵营赞同者大有人在。craigslist工程师、著名的MySQL专家Jeremy Zawodny表示,在读此文的时候,不时会心一笑。他说,NoSQL运动只是软件不断进化进程中的正常现象。关系型数据库也会继续发展,MySQL社区不断推出的XtraDB或InnoDB插件, PBXT, Drizzle都是证据。各种技术竞争的结果是,我们获得了更多解决问题的选择。

drizzle项目开发者Eric Day也表示,NoSQL有很多值得学习的,但是目前大部分实际项目的最佳选择还是关系型数据库。

NoSQL阵营当然不会坐视不理,Cassandra项目组的Eric Evans表示,Dziuba提到Cassandra修改column family定义的问题其实很容易解决。而且,NoSQL并不是要取代MySQL,事实上Twitter仍然在用MySQL。如果关系型数据库能够承担负荷,那就用好了;如果不行,请考虑NoSQL。

而德国知名博客Code Monkeyism则嘲笑Dziuba看起来并没有用MySQL做过真实项目,因为MySQL如果没有memcache,基本上无法应付网站项目。他认为,NoSQL将使SQL数据库边缘化,而且一个重要理由恰恰是可以节省DBA的开销。

digg的前任首席架构师现在也在创业的Joe Stump说,自己现在的创业项目就是用NoSQL,而且列举了一系列问题挑战SQL阵营。他表示,无论从可伸缩性、速度、成本各个方面来看,NoSQL都有SQL数据库无法企及的优势。

你的项目开始用NoSQL方案了吗?你对这一争论的意见?欢迎反馈。

IDC
域名注册
主机服务
租用托管
数据修复
优化推广
网站建设
解决方案
管理咨询
企业内训
广告设计
技术整合
云主机
ICP备案说明
教育产业
维普点卡
计算机培训
人才外包
服务外包
全程外包
软件研发
Zoomla!逐浪CMS
企业管理软件
三维与仿生应用
软件管理
IT外包
短信接口
社区
江西IDC排行榜
微博
东方红公益
7*24小时服务中心
微信互动
会员
纪念品
发哥的博客
上海站长聚会
软件开发沙龙
宣传视频
用户手册
全站检索
关于我们
公司介绍
发展历程
工作机会
团队介绍
汇款方式
联系我们