Skip to content

Latest commit

 

History

History
83 lines (63 loc) · 3.05 KB

elasticsearchreader.md

File metadata and controls

83 lines (63 loc) · 3.05 KB

ElasticSearchReader

ElasticSearchReader 插件实现了从 Elasticsearch 读取索引的功能, 它通过 Elasticsearch 提供的 Rest API (默认端口9200),执行指定的查询语句批量获取数据

示例

假定要获取的索引内容如下

--8<-- "sql/es.json"

配置一个从 Elasticsearch 读取数据并打印到终端的任务

=== "job/es2stream.json"

--8<-- "jobs/esreader.json"

将上述内容保存为 job/es2stream.json

执行下面的命令进行采集

bin/addax.sh job/es2stream.json

其输出结果类似如下(输出记录数有删减)

--8<-- "output/esreader.txt"

参数说明

配置项 是否必须 类型 默认值 描述
endpoint string ElasticSearch的连接地址
accessId string "" http auth中的user
accessKey string "" http auth中的password
index string elasticsearch中的index名
type string index名 elasticsearch中index的type名
search list [] json格式api搜索数据体
column list 需要读取的字段
timeout int 60 客户端超时时间(单位:秒)
discovery boolean false 启用节点发现将(轮询)并定期更新客户机中的服务器列表
compression boolean true http请求,开启压缩
multiThread boolean true http请求,是否有多线程
searchType string dfs_query_then_fetch 搜索类型
headers map {} http请求头
scroll string "" 滚动分页配置

search

search 配置项允许配置为满足 Elasticsearch API 查询要求的内容,比如这样:

{
  "query": {
    "match": {
      "message": "myProduct"
    }
  },
  "aggregations": {
    "top_10_states": {
      "terms": {
        "field": "state",
        "size": 10
      }
    }
  }
}

searchType

searchType 目前支持以下几种:

  • dfs_query_then_fetch
  • query_then_fetch
  • count
  • scan