Apache kafka 为不同的推文创建不同的卡夫卡主题';学科?

Apache kafka 为不同的推文创建不同的卡夫卡主题';学科?,apache-kafka,spark-streaming,tweepy,Apache Kafka,Spark Streaming,Tweepy,我正在尝试从Twitter上传输不同主题的数据:音乐、政治、体育等,以便在地图上显示推文。目的是用户可以“过滤”她/他正在观看的推文(通过时间戳、主题…)。我正在使用卡夫卡,火花流和Tweepy为这个项目 每个提到的主题都通过几个关键字/哈希标记进行过滤。您可以看到下面的示例 music_keywords = ['music', 'song', 'The Voice', '#Eurovision'] politics_keywords = ['politics', 'democracy', 'g

我正在尝试从Twitter上传输不同主题的数据:音乐、政治、体育等,以便在地图上显示推文。目的是用户可以“过滤”她/他正在观看的推文(通过时间戳、主题…)。我正在使用卡夫卡,火花流和Tweepy为这个项目

每个提到的主题都通过几个关键字/哈希标记进行过滤。您可以看到下面的示例

music_keywords = ['music', 'song', 'The Voice', '#Eurovision']
politics_keywords = ['politics', 'democracy', 'government']
sports_keywords = ['sports', 'football', 'tennis', 'basketball', 'Real Madrid']
正因为如此,我怀疑是为每个主题创建一个卡夫卡主题,还是仅仅通过一个键识别它们并将它们发布到同一主题

我读过一篇文章,强烈建议使用分区来保持Kafka消息的发布顺序,并按该顺序使用它们。但这对我来说不是问题,因为我不在乎订单,所有推文都会被同一个消费者消费。我还担心严格按顺序执行的事实可能会导致消费时的延迟

我考虑过的另一个解决方案是,通过所有主题的所有关键字过滤推文,然后在解析消费者中的数据时,根据每条推文的文本对它们进行分类(例如,使用开关)


我不知道哪种方法最适合解决我的问题,同时考虑到我使用的是标准的Twitter API,而且我没有大量的传入数据。

如果您想按时间戳进行过滤,具体来说,您可能想将卡夫卡数据发送到某个数据库,您实际上可以在该数据库上进行基于时间的搜索。。。在这一点上,我不认为你有多少主题真的很重要,只要它们最终在同一个系统中如果你想按时间戳过滤,具体来说,你可能想把卡夫卡数据发送到某个数据库,你实际上可以根据该数据库进行基于时间的搜索。。。在这一点上,我认为你有多少主题并不重要,只要它们最终在同一个系统中