离线同步任务支持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