我们可以将 Hadoop 与 Python 集成吗?

Posted

技术标签:

【中文标题】我们可以将 Hadoop 与 Python 集成吗?【英文标题】:Can we integrate Hadoop with Python? 【发布时间】:2016-06-21 06:25:10 【问题描述】:

我有一个项目要求。我正在使用 python 脚本来分析数据。最初,我使用 txt 文件作为该 python 脚本的输入。但随着数据的增长,我不得不将我的存储平台切换到 Hadoop HDFS。如何将 HDFS 数据提供给 python 脚本作为输入?有什么办法吗?提前致谢。

【问题讨论】:

使用 Hadoop 流来使用 python、php 等 例如:hadoop jar hadoop/tools/lib/hadoop-streaming-2.7.2.jar -mapper /mapper.php -reducer /reducer.php -input /hdfsinputpath -输出 /hdfsoutputpath 这可能会有所帮助:***.com/questions/12485718/… 【参考方案1】:

Hadoop 流 API:

$HADOOP_HOME/bin/hadoop  jar $HADOOP_HOME/hadoop-streaming.jar \
-input myInputDirs \
-output myOutputDir \
-mapper /bin/cat \
-reducer /bin/wc

所有你需要知道的都在这里: http://www.michael-noll.com/tutorials/writing-an-hadoop-mapreduce-program-in-python/

【讨论】:

这就是我要找的。那么,基本上一切都将由 Hadoop-streaming.jar 处理,对吧?不需要额外的工作。我说的对吗?【参考方案2】:

除了其他方法之外,您还可以使用类似 JDBC 的编译、绑定、运行模型将 Pig Latin 语句和 Pig 命令嵌入 Python 脚本中。对于 Python,请确保 Jython jar 包含在您的类路径中。更多详细信息请参阅此处的 apache pig 文档:https://pig.apache.org/docs/r0.9.1/cont.html#embed-python

【讨论】:

以上是关于我们可以将 Hadoop 与 Python 集成吗?的主要内容,如果未能解决你的问题,请参考以下文章

spark集群安装并集成到hadoop集群

Elasticsearch:Hadoop 大数据集成 (Hadoop => Elasticsearch)

Elasticsearch:Hadoop 大数据集成 (Hadoop => Elasticsearch)

大数据 hue 安装配置与其它框架的集成

如何将 presto 集群集成到 hadoop 集群?

阿里云万亿级数据集成架构实践