如何将单个csv文件缓存到Kafka中的KTable中?

时间:2020-01-12 18:02:38

标签: apache-kafka apache-kafka-streams

我们有一种情况,我们必须在Kafka KTable中缓存并持久保存CSV文件。

根据我的研究,我们可以在KTable中读取CSV文件,但不会持久保存(我在这里可能是错误的)。我无法在文档中找到与其相关的任何内容。

要具体一点:

  • 我们需要获取一个CSV文件。
  • 将其发送到KTable并按原样对其进行缓存/持久化。

还有一件事:如果可能的话,它会逐行读取文件还是只用一个键就可以发送整个文件?

谢谢!

1 个答案:

答案 0 :(得分:3)

可能,是的,但是,我不确定我是否理解为什么您不只是将CSV本身作为行列表加载到应用程序中。

它会逐行读取文件还是可以通过一个键发送整个文件?

取决于您如何读取文件。然后,您首先将数据生成给Kafka。 KTable必须使用主题而不是文件

注意:Kafka的最大邮件默认大小为1MB,并不意味着文件传输

它不会被保留

我不确定你在哪里读的书。您可以将数据保留在一个压缩的主题中,尽管如此,您希望为文件的每一行都有一些键