离线同步任务支持ElasticSearch数据源,支持该数据源的抽取(Reader)导入(Writer),当前支持的版本为:5.66.8.87.37.6.27.7

使用前提


在使用之前需要在项目中心(新)完成ElasticSearch数据源的登记。
数据源登记过程中,需要填写如下信息:

  • 数据源名称:ElasticSearch数据源的名称
  • 数据源标识:仅允许包含英文小写、数字、下划线,只允许英文小写开头,最大长度为64个字符。平台内唯一,保存数据源后数据标识不可修改
  • 归属项目:由于元数据中心是项目组级别,因此此处支持选择项目组下的项目,默认为当前项目名称
  • 负责人:默认为当前创建人员
  • 管理员:同负责人,有该数据源的管理权限,包括编辑、设置“源系统账号映射”。可在安全中心为自己或其他人设置该数据源的使用权限
  • 版本:支持6和7
  • host:格式为ip:port,通过','相连
  • 连接协议:支持http和https两种
  • 用户名:填写访问数据源的用户名
  • 密码:填写用户名所对应的密码
  • 自定义属性:支持添加数据源的其它配置
唯一性校验规则:基于host进行校验。

除了数据源需要准备之外,进行离线同步任务创建和数据源的使用都需要在安全中心中添加相应的权限(可参考权限说明文档安全中心功能权限)。

ElasticSearch作为数据来源


ElasticSearch to Hive为例,在数据来源端选择ElasticSearch数据源类型及数据源名称,选择需要进行读取的Index-Type和Type。支持通过DSL查询条件作为过滤条件,支持特殊字符替换。(当ES版本为7.0以下时,Type为必填项;当ES版本为7.0以上时,Type可不填)
ElasticSearch - 图1

ElasticSearch作为数据去向


Hive to ElasticSearch为例,当ElasticSearch作为数据去向时,配置如下:
ElasticSearch - 图2

  • 数据源:数据源类型选择ElasticSearch,数据源选择已登记的数据源
  • Index-Type:支持静态索引动态索引。当ES版本为7.0以下时,Type为必填项;当ES版本为7.0以上时,Type可不填。

    • 静态索引:选择静态索引时,写入指定的索引
    • 动态索引:选择动态索引时,根据填写的index值动态生成索引

      • 动态索引模式下,index由自定义输入项和指定的去向端字段名称构成。自定义输入项可选填,支持输入常量、系统参数和参数组参数。去向端字段名称必填,格式:{字段名称};若需填写多个字段,可按格式:{字段名称1}{字段名称2}填写
      • 动态索引模式下,mapping的字段名称为字段映射的去向表字段名称,mapping的字段类型会根据写入数据内容采取dynamic mapping(动态映射)来推断产生。此外,创建索引时会匹配ES数据源中的dynamic template(动态模板)
  • batchSize:默认为1000条/次

  • 写入规则:支持index、create、update、upsert

    • index:根据ES主键字段新增数据,如果已经存在就替换并重建索引
    • create:根据ES主键字段添加新的数据,如果数据已经存在就报错
    • update:根据ES主键字段更新数据,如果数据不存在就报错
    • upsert:根据ES主键字段数据存在就更新,不存在就新增
  • ES主键字段:输入主键字段

关于字段映射,当前版本无论ES作为数据来源还是数据去向均支持字段名称并展示字段类型。
ElasticSearch - 图3