应用与数据集成平台 ROMA CONNECT-配置目标端数据信息:RabbitMQ

时间:2024-05-07 17:09:58

RabbitMQ

返回页首

任务的“集成模式”为“定时”或“实时”时,可以选择RabbitMQ作为目标端数据源,具体配置如下。
表12 目标端RabbitMQ信息

参数

配置说明

是否创建新队列

选择是否在源端RabbitMQ数据源创建一个新队列。

  • 选择是,表示创建一个新队列,并把待集成数据发送到该队列。
  • 选择否,表示把待集成数据发送到已有队列。

交换方式

选择RabbitMQ数据源中,交换器将消息转发到队列的路由方式。若“是否创建新队列”选择“是”,则选择新队列的交换方式;若“是否创建新队列”选择“否”,则选择已有目标队列一致的交换方式。

  • Direct:若消息的路由关键字与队列完全匹配,则消息会转发到队列。
  • Topic:若消息的路由关键字与队列模糊匹配,则消息会转发到队列。
  • Fanout:所有消息都会转发到队列。
  • Headers:若消息的Headers属性与队列完全匹配,则消息会转发到队列。

交换机名称

填写RabbitMQ数据源的交换器名称。若“是否创建新队列”选择“是”,则配置新队列的交换器名称;若“是否创建新队列”选择“否”,则配置已有目标队列一致的交换器名称。

路由关键字

仅当“交换方式”选择“Direct”或“Topic”时需要配置。

RabbitMQ把路由关键字作为判断条件,符合条件的消息将转发到队列。若“是否创建新队列”选择“是”,则配置新队列的路由关键字;若“是否创建新队列”选择“否”,则配置已有目标队列一致的路由关键字。

消息参数

仅当“交换方式”选择“Headers”时需要配置。

RabbitMQ把Headers作为判断条件,符合条件的消息将转发到新队列。若“是否创建新队列”选择“是”,则配置新队列的Headers键值对;若“是否创建新队列”选择“否”,则配置已有目标队列一致的Headers键值对。

队列名称

仅当“是否创建新队列”选择“是”时需要配置。

填写新队列的名称,自定义。

自动删除

当没有客户端连接队列时,队列是否自动删除。

持久化

队列中的消息是否持久化保存。

元数据

定义写入到目标端的JSON格式数据中,每一个底层key-value型数据元素。源端有多少个字段需要集成,则目标端需要定义相同个数的元数据。

  • 别名:对元数据的自定义名称。
  • 类型:元数据的数据类型,需要与源端数据中对应字段的数据类型一致。
  • 解析路径:元数据的完整路径,具体请参见元数据解析路径配置说明

映射规则

配置ROMA Connect源端数据字段到目标端数据字段的映射规则,把获取到的源端数据转换成写入目标端的数据。具体映射说明参见配置映射规则

  • 映射模式:通过列表形式填写源端和目标端的字段名,增加源端数据字段到目标端数据字段的映射关系。
  • 脚本模式:通过JavaScript脚本实现从源端读取数据后先进行处理再写入目标端,脚本样例参见脚本映射样例

元数据解析路径配置说明:

  • JSON格式数据中不含数组

    如以下写入目标端的JSON格式数据,元素a的完整路径定义为a,元素b的完整路径为a.b,元素c的完整路径为a.b.c,元素d的完整路径为a.b.d,元素c和d为底层数据元素。

    此场景下,元素c的解析路径需要设置为a.b.c,元素d的解析路径需设置为a.b.d

    {
       "a": {
          "b": {
             "c": "xx",
             "d": "xx"
          }
       }
    }
  • JSON格式数据中含数组

    如以下写入目标端的JSON格式数据,元素a的完整路径定义为a,元素b的完整路径为a.b,元素c的完整路径为a.b[i].c,元素d的完整路径为a.b[i].d。元素c和d为底层数据元素。

    此场景下,元素c的解析路径需要设置为a.b[i].c,元素d的解析路径需设置为a.b[i].d

    {
       "a": {
          "b": [{
             "c": "xx",
             "d": "xx"
          },
          {
             "c": "yy",
             "d": "yy"
          }
          ]
       }
    }

以上面JSON格式数据中不含数组的样例为例,目标端为RabbitMQ的配置示例如下图所示。

图5 RabbitMQ配置示例
support.huaweicloud.com/usermanual-roma/roma_03_1007.html