我可以在Hadoop中使用什么而不是MapReduce,Hadoop对小型集群有用吗?

时间:2011-12-05 06:43:45

标签: frameworks hadoop mapreduce

在MapReduce中,我们需要编写bash脚本并运行作业来获取数据。我希望像在sql中查询一样轻松获取数据以获取数据。为此,我们可以使用Hive,Pig,HBase,Sqoop,Flume,Oozie,ZooKeeper和Hue。

  • 但哪个最好在这里使用?
  • 并且所有这些框架都在后台使用MapReduce吗?

1 个答案:

答案 0 :(得分:0)

至于数据分析,MapReduce是您在HDFS或任何Hadoop其他支持的文件系统中查询数据的唯一本机选项。也就是说,Hive和Pig等解决方案在Hadoop之上创建了一个抽象,允许您编写PigLatin或Hive-SQL而不是Java。 Pig和Hive都编译成MapReduce。

另一种选择是使用Hadoop Streaming,它允许你用任何语言编写MapReduce,包括Python,Ruby,bash等。

至于哪个选项更好,那是你的决定。 Java中的MapReduce将始终是最快的,因为它是原生的,您可以通过控件来微调您的工作。但是Hive和Pig的开发速度要快得多,而且易于维护。流媒体对于那些不喜欢或不了解Java但仍想要比Hive和Pig更多控制的人来说非常棒,尽管如今Hive和Pig非常成熟且非常灵活。