我想知道使用MySQL集群和使用Hadoop框架的优缺点。什么是更好的解决方案。我想听听你的意见。
我认为使用MySQL集群的优点是:
我看不出有什么坏处!Hadoop有什么缺点吗?
Hadoop的优势在于它上面有蜂巢:
缺点是:
因此,在我看来,对于处理大数据,MySQL集群是更好的解决方案。为什么Hadoop是处理大数据的圣杯?你的意见是什么?
发布于 2015-05-08 23:52:17
上述两个答案都忽略了mySQL和Hadoop之间的巨大区别。mySQL要求您以某种格式存储数据。它喜欢高度结构化的数据--您可以声明表中每个列的数据类型等等。Hadoop根本不关心这一点。
示例--如果您有10亿个文本日志文件,那么要使mySQL的分析甚至成为可能,您需要首先解析数据并将数据加载到mySQL表中,并在此过程中键入每一列。使用hadoop和mapreduce,您定义了一个函数,即从原始源扫描/分析/返回数据--您不需要预处理ETL就可以得到预结构化的数据。
如果数据已经被结构化,并且在mySQL中--那么(希望是)它的良好结构--为什么要导出它以供hadoop分析呢?如果不是,为什么要花时间去ETL数据呢?
发布于 2014-01-29 03:25:41
Hadoop不是MySQL的替代品,所以我认为他们有自己的场景。
每个人都知道hadoop更适合批处理作业或脱机计算,但也有许多相关的实时产品,如hbase。
如果您想要选择一个离线计算&存储拱形。
我建议使用hadoop而不是MySQL集群进行脱机计算和存储,因为:
因此,您可以选择hadoop作为离线计算和存储,选择MySQL作为在线计算和存储,您也可以从lambda建筑了解更多信息。
发布于 2014-03-13 19:09:18
另一个答案很好,但并没有真正解释为什么hadoop在离线数据处理方面比MySQL集群更具可伸缩性。Hadoop对于必须分布在多台计算机上的大型数据集更为有效,因为它使您能够完全控制数据的切分。
MySQL集群使用自动分片,它被设计成随机分配数据,这样就不会有任何一台机器受到更多负载的影响。另一方面,Hadoop允许您显式地定义数据分区,以便需要同时访问的多个数据点位于同一台机器上,从而使完成工作所需的计算机之间的通信量最小化。这使得Hadoop在许多情况下更好地处理大量数据集。
这个问题的答案很好地解释了这一区别。
https://stackoverflow.com/questions/21420879
复制相似问题