创建 ElasticSearch 结果表
注意:本文档只适合独享模式下使用。
ElasticSearch 结果表的实现使用 REST API,理论上兼容 ElasticSearch 的各个版本。以下将 ElasticSearch 简称为 ES。
ES 需要定义的 DDL 如下:
-
create table es_stream_sink(
-
field1 long,
-
field2 varbianary,
-
field3 varchar
-
) with (
-
type ='elasticsearch',
-
endPoint = 'http://127.0.0.1:9211',
-
accessId = 'abcd',
-
accessKey = 'efgh',
-
index = 'mockIdx',
-
typeName = 'mockType'
-
...
-
);
WITH参数
通用配置:
参数 | 注释说明 | 默认值 | Required |
---|---|---|---|
endPoint | server 地址,例: http://127.0.0.1:9211 | 无 | 是 |
accessId | 访问实例 id | ||
accessKey | 访问实例密钥 | ||
index | 索引名称,类似于数据库 DB 的概念 | ||
typeName | type 名称,类似于数据库 table 的概念 | ||
bufferSize | 分 batch 写入的 records 条数 | 1000 | 否 |
maxRetryTimes | 异常重试次数 | 30 | |
timeout | 读超时(ms) | 600000 | |
discovery | 是否开启节点发现,如果开启客户端会 分钟刷新一次 server list | false | |
compression | 是否使用 GZIP 压缩 request bodies | true | |
multiThread | 是否开启 JestClient 多线程 | ||
ignoreWriteError | 是否忽略写入异常 | ||
settings | 创建 index 的 settings 配置 | / |
本文转自实时计算——
创建ElasticSearch(ES)结果表