我正在使用Elasticsearch-hadoop连接器向Elasticsearch运行PySpark。我可以使用以下方法从所需的索引中读取:
es_read_conf = {
"es.nodes": "127.0.0.1",
"es.port": "9200",
"es.resource": "myIndex_*/myType"
}
conf = SparkConf().setAppName("devproj")
sc = SparkContext(conf=conf)
es_rdd = sc.newAPIHadoopRDD(
inputFormatClass="org.elasticsearch.hadoop.mr.EsInputFormat",
keyClass="org.apache.hadoop.io.NullWritable",
valueClass="org.elasticsearch.hadoop.mr.LinkedMapWritable",
conf=es_read_conf
)
工作正常。我可以通配符索引。
如何通配文件"输入"?或者,我怎样才能获得多种类型,甚至_all
?
答案 0 :(得分:2)
对于所有类型,您可以使用“es.resource”:“myIndex _ *”。
对于通配符部分,您需要一个查询:
"prefix": {
"_type": {
"value": "test"
}
}