用于数据分析的NoSql或MySQL

时间:2011-10-15 21:49:16

标签: mysql nosql hive

我们有一个群集(hadoop,pig),它可以生成数据350Gb(每周增长几GB)。

所有这些数据都需要提供给Google Analytics。

我们有一个带有星型模式的Msyql解决方案(只有部分数据加载到此)。但是

关注的是人们可以伸展多远?

我应该像Hive一样关注NoSQL进行数据分析吗?

我读过这篇文章http://anders.com/cms/282/Distributed.Data/Hadoop/Hbase/Hive

大数据有多大,何时我应该远离MySQL? Mysql的结构刚性是否会导致问题?

目前数据只有几GB(在MySQL中),但肯定会增长。 MySQL集群怎么样?

我应该走这条路吗?

4 个答案:

答案 0 :(得分:14)

  

350Gb(每周增长几GB)...所有这些数据都需要提供给Google

你有内部的MySQL专家吗?如果是,确定=>只是创建和发展MySQL集群。这个解决方案的唯一问题不是它是MySQL,并不是它 NoSQL =>它实际上是因为它需要专家进行设置并始终在您身边,以防需要更改。但是猜猜是什么=>与map / reduc'ish SQL模拟相比,SQL MUCH 更好,更简单。

稍后使用MySQL解决方案成为问题的东西是 Oracle 。因此,请确保您了解可以免费使用的MySQL功能,以及您需要支付的功能。

如果您内部有MySQL专家,或者您不想支付一个,那么您肯定可以转向NoSQL。这并不意味着您不需要NoSQL产品专业知识,但是将X节点配置和运行为单个系统对于NoSQL解决方案来说是一个非常简单和自然的过程。

例如,在Riak和其他一些NoSQL野兽中,大多数分发复杂性都是由产品解决的,而你根本不需要做任何事情=>它真的很简单。

你用NoSQL支付的价格正在失去SQL(考虑好的聚合功能)和一致性,这是最终的,如果你严格做分析,对你来说,一致性可能不是一个价格所有

作为回报,您将获得非常自然的大数据处理,容错和much more

如果您在Hadooooxyz空间,并且您可以付费,请查看Hadapt,它承诺5次Hive性能。

答案 1 :(得分:2)

问题当然是好几个月了,但是......我最近遇到了InfiniDB,它将MySQL前端放在一个高度可扩展的基于MapReduce的大数据引擎上,专门用于分析。它可能是这个问题的解决方案 - 原则上它应该是插入并且需要很少的管理和很少的代码更改。支持在一个盒子上扩展或在多个服务器上扩展...

答案 2 :(得分:1)

当你开始遇到比较问题中列出的各种问题时,你会切换:https://dba.stackexchange.com/questions/5/what-are-the-differences-between-nosql-and-a-traditional-rdbms

除此之外,回答一般建议之外的问题有点困难,因为你没有提出你想要解决的特定问题(例如缩放,读取速度,要求100%一致性的问题等等) )。

答案 3 :(得分:1)

InfiniDB不是免费的。

查看http://code.google.com/p/shard-query

这就像在分享的无共享数据库集上的Map-Reduce。适用于STAR架构。在N个节点上对事实表进行分片,并复制每个服务器上的维度表。

您可以查看此博文,了解更多信息和效果测试结果:

http://www.mysqlperformanceblog.com/2011/05/06/scale-out-mysql/

仅供参考:我是Shard-Query的作者。