繁体   English   中英

如何从Elasticsearch读取数据到Spark?

[英]How to read data from Elasticsearch to Spark?

我正在尝试通过python将数据从ElasticSearch读取到Apache Spark。

以下是从官方文档复制的代码。

$ ./bin/pyspark --driver-class-path=/path/to/elasticsearch-hadoop.jar
conf = {"es.resource" : "index/type"}    
rdd = sc.newAPIHadoopRDD("org.elasticsearch.hadoop.mr.EsInputFormat",    "org.apache.hadoop.io.NullWritable", "org.elasticsearch.hadoop.mr.LinkedMapWritable", conf=conf)
rdd.first()   

上面的代码可以从相应的索引中读取数据,但是它正在读取整个索引。

您能告诉我如何使用查询来限制读取范围吗?

另外,我没有找到与此相关的文档。 例如,似乎该矛盾控制着读取范围,但是ES文档只是说这是Hadoop配置,仅此而已。 我去Hadoop config找不到与ES相关的键和值。 您知道一些更好的文章吗?

您可以将es.query设置添加到您的配置中,如下所示:

conf.set("es.query", "?q=me*")

这是有关如何使用它的更详细的文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM