首页 > 解决方案 > 从 Kafka 主题中提取特定数据

问题描述

我正在 Twitter 上进行实时流式传输,想知道有没有办法从 Kafka 主题中仅提取消息和某些值?

标签: pythontwitterapache-kafka

解决方案


您可以使用 ksqlDB 来执行此操作。例如:

ksql> CREATE STREAM TWEETS WITH (KAFKA_TOPIC='twitter_01', VALUE_FORMAT='Avro');

ksql> SELECT USER->SCREENNAME, TEXT FROM TWEETS WHERE TEXT LIKE '%cool%' EMIT CHANGES;

+-------------------+------------------------------------------------------------------------------------------+
|USER__SCREENNAME   |TEXT                                                                                      |
+-------------------+------------------------------------------------------------------------------------------+
|MobileGist         |This is super cool!! Great work @houchens_kim!                                            |

如果需要,您还可以使用此结果构建一个新主题

ksql> CREATE STREAM COOL_TWEETS AS SELECT USER->SCREENNAME, TEXT FROM TWEETS WHERE TEXT LIKE '%cool%' EMIT CHANGES;

由于您标记了 Python,因此值得指出的是,您可以使用 Python 的 REST API 调用 ksqlDB。这是一个例子

参考:使用 Twitter 数据探索 ksqlDB


推荐阅读