使用 pentaho 中的 jms 生产者将数据行从 mysql 数据库转换为队列
transform a data row from mysql database to queue using jms producer in pentaho
我想从数据库中读取数据并将每一行数据发送到队列中。但在 jms 生产者编辑器中,我可以只选择每行的一列作为消息字段。
例如:
我有一个 table 和 (id,name,family,address,postcode) 字段。我需要将每一行数据发送到队列。但是在 jms producer editor 中,有一个消息字段下拉列表,这让我只能选择上述字段之一作为消息字段(例如 id 或 name 或 family ...)
如何将整行数据作为一条消息发送到队列。
我不熟悉 JMS,但这种情况需要将数据包装成可以作为消息发布的格式。
我会使用 JSON 输出步骤,将每一行转换为 JSON 对象(进入消息字段)。将其配置为输出值而不是文件,并将 bloc 中的 Nr 行设置为 1。在字段选项卡上,包括要迁移的所有字段。
XML输出也是一个选项。无论哪种方式,您可能还需要转义编译消息上的任何 HTML/XML 代码 and/or 将其包装在 CDATA 标记中,具体取决于行的内容。
在接收端,JSON 可以被解码回字段。您将丢失需要单独验证的确切数据类型和长度元数据。
我想从数据库中读取数据并将每一行数据发送到队列中。但在 jms 生产者编辑器中,我可以只选择每行的一列作为消息字段。
例如: 我有一个 table 和 (id,name,family,address,postcode) 字段。我需要将每一行数据发送到队列。但是在 jms producer editor 中,有一个消息字段下拉列表,这让我只能选择上述字段之一作为消息字段(例如 id 或 name 或 family ...) 如何将整行数据作为一条消息发送到队列。
我不熟悉 JMS,但这种情况需要将数据包装成可以作为消息发布的格式。
我会使用 JSON 输出步骤,将每一行转换为 JSON 对象(进入消息字段)。将其配置为输出值而不是文件,并将 bloc 中的 Nr 行设置为 1。在字段选项卡上,包括要迁移的所有字段。
XML输出也是一个选项。无论哪种方式,您可能还需要转义编译消息上的任何 HTML/XML 代码 and/or 将其包装在 CDATA 标记中,具体取决于行的内容。
在接收端,JSON 可以被解码回字段。您将丢失需要单独验证的确切数据类型和长度元数据。