配置Elasticsearch输入组件

Elasticsearch输入组件用于读取Elasticsearch数据源的数据。同步Elasticsearch数据源的数据至其他数据源的场景中,您需要先配置Elasticsearch输入组件读取的数据源,再配置数据同步的目标数据源。本文为您介绍如何配置Elasticsearch输入组件。

前提条件

  • 已创建Elasticsearch数据源。具体操作,请参见创建Elasticsearch数据源

  • 进行Elasticsearch输入组件属性配置的账号,需具备该数据源的同步读权限。如果没有权限,则需要申请数据源权限。具体操作,请参见申请数据源权限

操作步骤

  1. 请参见离线管道组件开发入口,进入离线单条管道脚本的开发页面。

  2. 按照以下操作指引,进入Elasticsearch输入配置对话框。

    单击组件库->单击输入->拖动Elasticsearch输入组件至画布->单击配置image图标。

    image

  3. Elasticsearch输入配置对话框,配置参数。

    参数

    说明

    基础配置

    步骤名称

    即Elasticsearch输入组件的名称。Dataphin自动生成步骤名称,您也可以根据业务场景修改。命名规则如下:

    • 只能包含汉字、字母、下划线(_)、数字。

    • 不能超过64个字符。

    数据源

    在数据源下拉列表中,展示当前Dataphin中所有Elasticsearch类型的数据源和项目层级,包括是否拥有同步读权限的数据源。

    • 对于没有同步读权限的数据源,您可以单击数据源后的申请,申请数据源的同步读权限。具体操作,请参见申请数据源权限

    • 如果您还没有Elasticsearch类型的数据源,单击新建,创建数据源。具体操作,请参见创建Elasticsearch数据源

    查询类型

    可以根据索引(Index)或索引别名(Alias)选择读取的索引文档。不同查询类型需要配置不同参数。

    • 索引(Index)。

      • 索引文档:Elasticsearch中的index名。

      • 索引文档类型:Elasticsearch中index的type名。

        说明

        索引文档索引文档类型,Elasticsearch6.x 、Elasticsearch7.x版本为必填,Elasticsearch8.x版本为非必填。

    • 索引别名(Alias)。

      • 索引别名:Elasticsearch中的index的别名Alias。

      • 索引文档类型:Elasticsearch中index的type名。

    检索查询条件

    Elasticsearch的query参数,用于全量或增量查询,例如{ "match_all": {}}表示全量查询。

    游标时间

    填写游标存放时间,即Elasticsearch的分页参数。

    • 设置过小时,如果获取两页数据间隔时间超出scroll,会导致游标过期,进而丢失数据。

    • 设置过大时,如果同一时刻发起的查询过多,超出服务端max_open_scroll_context配置时,会导致数据查询报错。例如:5m表示5分钟的游标时间。

    单位:天(-d),小时(-h),分钟(-m),秒(-s),毫秒(-ms),微秒(-micros),纳秒(-nanos)。

    高级配置

    批量读取条数

    一次性读取数据的条数,默认1024条。在从源数据库读取数据时,可以配置一个特定的批量读取条数,而不是一条一条地读取,以减少与数据源之间的交互次数,提高I/O效率,并降低网络延迟。

    连接超时时间

    客户端连接超时时间,默认6000秒。

    管理超时时间

    客户端读取超时时间,默认6000秒。

    日期格式

    待同步字段存在date类型,且该字段mapping没有format配置时,需要配置dateFormat参数。ES中默认格式为:yyyy-MM-dd'T'HH:mm:ssZ

    输出字段

    为您展示输出字段。

    • 获取字段信息。

      查询类型为索引(Index)时,支持单击获取字段信息,获取所选的索引(Index)字段信息。

    • 批量添加字段。

      1. 单击批量添加

        • 以JSON格式批量配置。示例如下:

          [{"name":"col_integer","type":"integer"},
           {"name":"col_long","type":"long"},
           {"name":"col_double","type":"double"}]
          说明

          name表示引入的字段名称,type表示引入后的字段类型。 例如:"name":"user_id","type":"String" 表示把字段名为user_id的字段引入,设置字段类型为String。

        • 以TEXT格式批量配置,示例如下:

          col_long,long
          col_double,double
          • 行分隔符用于分隔每个字段的信息,默认为换行符(\n),可支持换行符(\n)、分号(;)、点(.)。

          • 列分隔符用于分隔字段名与字段类型,默认英文逗号(,)。

      2. 单击确定

    • 新建输出字段

      单击新建输出字段,根据页面提示填写字段及选择类型

    • 管理输出字段。

      您可以对已添加的字段执行如下操作:

      • 单击拖动字段旁的image移动图标,可调换字段所处位置。

      • 单击操作列下的agag编辑图标,编辑已有的字段。

      • 单击操作列下的agfag删除图标,删除已有的字段。

  4. 单击确认,完成Elasticsearch输入组件的属性配置。