我正在处理海量数据,我的输入数据约为 100 GB。我想选择其中一种 hadoop 发行版,但我不知道选择 mapr 集群还是 cloudera 集群。我想使用免费版本(使用 hadoop 0.20 的 mapr M3 和 cloudera CDH4)。哪个更好?我使用哪种配置效果最好?谢谢。
1 回答
其实说起来,这个问题的答案是这个世界上最常见的答案,看情况而定。这完全取决于您和您的要求。人们可能会发现一种特定的口味更适合他/她的需求,而您可能会发现相同的口味不太有用。此外,这完全取决于个人选择,就像我个人喜欢 Apache 的 Hadoop。一切都很好。这只是适合您需求的那个。
他们哪个更好?是一个有争议的话题。像这样的问题往往以激烈的争论告终。例如,请参阅此问题。所以,我不会列出任何一个相对于另一个的优势。但是这些不同风格的 Hadoop 之间存在某些差异,这可能会在您的思考过程中对您有所帮助。
CDH(Apache Hadoop)和 MapR 之间的主要区别在于 MapR 使用自己的专有文件系统MapRFS而不是 HDFS。M3 版是免费的,可用于无限制的生产使用。支持以社区为基础并通过 MapR 的论坛提供。CDH 是 100% 开源的,您可以免费使用 Cloudera Manager 的“标准”版本。还有 Apache,嗯,它是 Apache :)。做任何你想做的事。
MapR 甚至最近与Ubuntu 操作系统背后的组织Canonical合作,努力通过其存储库使 Hadoop 作为 Ubuntu 的一个集成部分可用。该合作伙伴宣布 MapR 的 M3 版 Apache Hadoop 将被打包并作为 Ubuntu 操作系统的一个集成部分可供下载(如果您需要更多信息,请参阅此处)。源代码可在Github上找到。CDH 代码库与 Apache 的相同,但有一些自己的补丁。
但是免费版缺少一些好的特性,比如JobTracker HA、NameNode HA、镜像、快照等。CDH4 基于 Hadoop-2.x 为您提供了 HA 特性。凭借其设计,MapR 没有任何 SPOF,就像 CDH3(或 Hadoop-1.x)一样。MapRFS 将数据存储在卷中,概念上存储在一组分布在集群中的容器中。每个容器都包含自己的元数据,从而消除了中央 NameNode 单点故障。API 仍然与 Apache Hadoop 兼容。MapR 设置要求与 Apache/CDH 不同。例如,像 MapR 一样,需要原始卷可供安装。一旦您拥有正确的硬件和操作系统先决条件,设置时间和评估时间应该与 Apache/CDH 处于同一数量级。
恕我直言,M3 不会给您带来比 Apache/CDH 更大的优势,因为 M3 免费版中没有一些吸引人的 MapR 功能,例如NFS-HA、快照等。
作为第一个 Cloudera 在经验和坚实的客户基础方面绝对具有额外的优势。但是 MapR 在对 MapReduce 和 HDFS 组件进行重大更改以提高性能方面更具创新性。
稍后我会再写一些,因为我正在通话中,而您正在等待答复;)