Hadoop,Hive,Pig,HBase,Cassandra - 何时使用什么?

Dan*_*iel 11 hadoop hive apache-pig cassandra

首先,我对大数据和Hadoop世界相对较新,我刚刚开始尝试使用Hortonworks Sandbox(猪和Hive到目前为止).我想知道在哪些情况下我可以使用上面提到的Hadoop,Hive,Pig,HBase和Cassandra的工具?

在我的沙盒环境中,文件只有9MB Hive和Pig的响应时间为几秒到几分钟.这显然在某些情况下不可用,例如Web应用程序(除非它是其他东西,例如我的虚拟机设置).

我对正确用法的猜测是:

  • Hadoop:只是其余的技术基础,只有很少的用例可以直接使用
  • 蜂巢或猪:用于每小时或每天运行一次的分析过程
  • HBase或Cassandra:用于需要100ms或更短响应时间的实时应用程序(例如Web应用程序)

另外,何时使用HBase而不是何时使用Cassandra?

谢谢!

Cha*_*aos 9

你的猜测有点准确.

通过Hadoop,我猜你指的是MapReduce?Hadoop就是这样一个由许多组件组成的生态系统(包括MapReduce,HDFS,Pig和Hive).

当您需要在Map()和Reduce()方法级别编写处理数据的逻辑时,MapReduce很好.在我的工作中,当我处理非结构化且需要清理的数据时,我发现MapReduce非常有用.

Hive,Pig:它们适用于批处理过程,定期运行(可能是几小时或几天)

HBase和Cassandra:支持低延迟呼叫.因此,它们可用于实时应用程序,其中响应时间是关键.看看这个讨论,以便更好地了解HBase vs Cassandra.