当前位置: 首页 > 知识库问答 >
问题:

Kafka基于密钥连接读取值并写入HDFS

华萧迟
2023-03-14
    null

如果Kafka connect没有这些功能,可以使用Kafka Streams来实现吗?如果可以,请提供一些文档帮助。

共有1个答案

司寇阳曦
2023-03-14

是否有任何方法可以从kafka主题接收特定的事件类型到HDFS,使用kafka connect HDFS连接器过滤剩余的类型?

Kafka Connect具有用于操作消息的转换,但它不是用于过滤的。这通常由Kafka Streams或KSQL完成

我们是否可以根据某个键将输入事件分离,并写入到不同的分区,从而使特定键的值到特定分区?

我们可以使用存储在模式注册表中的键来获取特定于avro格式数据的特定键的主题中的值吗?

我不明白这个问题,但是HDFS Connect默认情况下,在写入数据时会忽略Kafka消息键,所以我要说不。

Kafka数据不是按键索引的,而是按键分区的,这意味着如果您确实使用了DefaultPartitoner,而不是FieldPartitoner,那么所有键都将按Kafka分区登陆到一个文件系统路径中。只有这样,您才能够查询,但不是通过键,而是通过分区。例如使用Shtml" target="_blank">park或Hive。同样,这是默认的行为--您可以使用一个转换,如前所述,将Kafka键添加到数据中,然后您可以通过它来查询

 类似资料:
  • 我正在使用Kafka连接JDBC源连接器从数据库中的视图中读取并将其发布在kafka上,它工作正常。 我的用例是用户可以创建多个对象,并且对象的顺序在我的应用程序中很重要。我想使用用户 ID 作为我发布到主题中的所有消息的消息密钥,以保持它们的顺序。 我的问题是,如何在Kafka connect source连接器中定义消息键?

  • 这是我的密码 抱歉,如果我的代码一团糟。

  • 我一直在考虑使用Apache Kafka作为事件源配置中的事件存储。发布的事件将与特定的资源相关联,传递到与资源类型相关联的主题,并按资源ID分片到分区中。因此,例如,创建类型为Folder和id 1的资源将产生一个FolderCreate事件,该事件将通过在主题中的分区总数中对id 1进行分片来传递到给定分区中的“Folders”主题。即使我不知道如何处理使日志不一致的并发事件。 最简单的场景是

  • 我有一个外部应用程序生成的多个主题,这些主题共享相同的密钥,并且它们共享此模型: Topic1:使用unix ms时间戳作为键生成消息。 主题2:从主题1中读取并生成具有相同密钥的消息 Topic3:从Topic2读取并生成具有相同键的消息 等等 我的应用程序依赖于Topic3中的最终消息(它们在1-2ms内生成),但我也希望Topic1中的值。我创建了一个使用多个使用者的类,但我觉得它不是很有效

  • 在我发布配置之后,当我执行HTTP curl时,状态是。在worker的日志中也没有错误日志,当我检查它时,在kafka主题中也没有数据。当我尝试做一个控制台-消费者时,我还尝试了其他几种组合,比如在。 我尝试的另一件事是使用这两个链接https://rmoff.net/2018/05/21/kafka-connect-and-oracle-data-types/https://www.confl

  • Kafka用例:连续读取Kafka(可能是一个流),用Java方法对消息值执行解密,然后插入到db(可以是接收器连接器,也可以是我有一个Java REST API,如果需要的话可以插入到db) 对于这个用例,我还没有看到任何可行的解决方案,因为: > 我不能用Kafka存储解密数据。 我需要在插入到数据库之前执行解密步骤。 看看Kafka Connect和Kafka Streams来解决用例: 我