【发布时间】:2020-01-18 05:25:37
【问题描述】:
如果我错了,请纠正我.. parquet 文件是自我描述的,这意味着它包含其正确的架构。
我想使用 S3 sink confluent 连接器(特别是因为它可以正确处理 S3 的 Exactly Once 语义)从我们的 Kafka 读取 JSON 记录,然后在 s3 中创建 parquet 文件(按事件时间分区)。 我们的 JSON 记录没有嵌入架构。
我知道它还不支持,但我对镶木地板和 AVRO 也有一些疑问。
由于我们的 JSON 记录中没有嵌入模式,这意味着连接器任务必须从它自己的 JSON 字段中推断数据? (这是一个可行的解决方案吗?)
除了镶木地板,在 Kafka.. 中没有模式注册表之类的东西,对吗?
AVRO 似乎很好地集成到 Kafka,意味着使用模式注册表读取模式。这是否意味着融合的 S3 接收器将足够智能,可以在 s3 中创建包含模式作为标题的文件,然后在 s3 文件中创建一堆记录?
我知道那个人正在为这个 s3 接收器连接器实现镶木地板:
https://github.com/confluentinc/kafka-connect-storage-cloud/pull/172
但我不明白,它似乎在代码中使用了 AVRO 模式,这是否意味着 Kafka 中有 AVRO 记录来使用这个 Parquet 实现?
我开始认为在 S3 上定位 AVRO 文件会更容易(我可以通过失去一些 OLAP 功能来负担它),但在使用 AVRO 之前想确定一下。
问候,
亚尼克
【问题讨论】:
标签: json apache-kafka parquet apache-kafka-connect