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

时间:2024-11-08 14:31:36

RabbitMQ

返回页首

任务的“集成模式”为“定时”或“实时”时,可以选择RabbitMQ作为目标端数据源。

  1. 在创建任务页面中配置目标端信息。
    表26 目标端RabbitMQ信息

    参数

    配置说明

    目标端实例

    配置为当前正在使用的ROMA Connect实例,源端实例配置后目标端自动关联,无需配置。

    目标端集成应用

    选择RabbitMQ数据源所属的集成应用,在接入数据源时已配置。

    目标端数据类型

    选择“RabbitMQ”。

    数据源名称

    选择接入数据源中已配置的RabbitMQ数据源。

    是否创建新队列

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

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

    交换方式

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

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

    交换机名称

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

    路由关键字

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

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

    消息参数

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

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

    队列名称

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

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

    自动删除

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

    持久化

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

    元数据

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

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

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

    • 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的配置示例如下图所示。

    图12 RabbitMQ配置示例
  2. 完成目标端信息配置后,继续进行下一部分配置,配置数据映射规则
support.huaweicloud.com/usermanual-roma/fdi-ug-190624007.html