如何使用Spark从hbase读取所有行并将其发布到弹性搜索

时间:2017-08-22 08:05:48

标签: apache-spark elasticsearch mapreduce

在我当前的应用程序中,我们以elastic search文档的形式将数据加载到json,并且这些数据是通过处理从HBASE获取的数据生成的。 目前,我们正在使用mapreduce执行此操作,从hbase获取每一行,处理它并将生成的json文件发布到elastic search。 我们的数据包含数百万个文档,并且执行此数据加载需要花费太多时间。 使用Spark是否有更有效的方法来执行相同操作。

1 个答案:

答案 0 :(得分:0)

您可以将Mapreduce替换为spark。你必须使用以下配置。

val conf = new SparkConf().setAppName(appName).setMaster(master)
conf.set("es.index.auto.create", "true")

如果您想查看完整的文档Apache spark with elasticsearch 带有elasticsearch Scala code for elasticsearch的Scala代码 如果您想从Hbase获取该行,请检查spark-hbase-connector