Apache Kafka/NiFi 可以将数据转换为 JSON 文件吗?

Posted

技术标签:

【中文标题】Apache Kafka/NiFi 可以将数据转换为 JSON 文件吗?【英文标题】:Can Apache Kafka/NiFi convert data into a JSON file? 【发布时间】:2017-10-27 09:59:43 【问题描述】:

假设您有一个业务应用程序在其自己的环境中生成和存储丰富的产品主数据,您希望在 CouchBase 数据库上提供该数据。

为了将业务应用程序环境中的数据导入 CouchBase,假设我想使用 Kafka 广播更改并使用 Nifi 将其分发到最终目的地 (CouchBase)。

但 CouchBase 采用 JSON 格式文件。我可以使用 Kafka 或 Nifi 将拉取的数据转换为 JSON 格式吗?我知道我可以在业务应用程序和 Kafka 之间放置诸如 Attunity 之类的解决方案来实时复制数据。但是让我们假设没有预算来实施解决方案,因此将暂时在业务应用程序端使用 REST API 并使用(基于所做的更改)Kafka 提取数据,c我转换数据用 Kafka 转换成 JSON?还是 NiFi?

编辑

我之所以想知道 NiFi 是否可以做到这一点,是因为我们的环境比我描述的要复杂一些。因为在 CouchBase 和业务应用程序之间,您有: [Business App] - [ X ] - [Kafka] - [NiFi] - [DC/OS with KONG API Layer] - [CouchBase Cluster]。

我想知道我是否应该在 X 现场实施新的数据复制解决方案,还是应该只使用 Business App REST API 并使用 Kafka 从 REST API 中提取数据并转换我的数据在 NiFI 中转换为 JSON。

【问题讨论】:

Kafka 本身不会以任何方式查看数据。您可以拥有一个流处理器,将数据从一个主题转换为 JSON 格式的另一个主题。或者那个 REST 端点可以改变它即时读取的内容。无论哪种方式,这似乎都不是一项重大的努力(需要“预算”)。 所以你的意思是像 Apache NiFi 这样的解决方案可以将获得的数据转换为 JSON ?还是业务应用端的 REST API? Kafka 不关心消息格式。它没有“官方有效载荷格式”。到 JSON 的转换(从什么?Kafka 也不知道)是在 Kafka 之外完成的。如果您想在某些中间件产品或应用程序代码中执行此操作,则取决于您。 @Thilo ;请看我的编辑。 【参考方案1】:

Kafka Connect 有一个Couchbase sink。这将使您能够完全按照您的意愿行事。简单的基于配置文件的方法。

【讨论】:

请看我的编辑,我会详细说明为什么我需要专门了解 NiFi。

以上是关于Apache Kafka/NiFi 可以将数据转换为 JSON 文件吗?的主要内容,如果未能解决你的问题,请参考以下文章

数据正在转换为二进制格式,同时使用 Apache pig 将数据加载到 monet db

将 pyspark 数据帧转换为 pandas 会抛出 org.apache.spark.SparkException: Unseen label: null [重复]

apache-commons-dbutils 可以将 bean 转换为 SQL 语句吗?

将 CSV 数据加载到 Dataframe 并使用 Apache Spark (Java) 转换为 Array

如何使用scala将特定函数转换为apache spark中的udf函数? [复制]

如何在 Apache nifi 中配置 convertrecord 处理器,以便将 JSON 转换为 AVRO 格式