查询卡桑德拉并按顺序消费卡夫卡

问题描述:

我是新来的火花,不知道如何实现这一点。 关于如何从同一个Spark任务查询Cassandra和消费者Kafka流的任何想法。基本上,查询卡桑德拉并按顺序消费卡夫卡

  1. 我想查询cassandra并获得一些信息,当工作开始。

  2. 然后,继续并使用卡夫卡。使用我从cassandra获得的信息来转换来自kafka的数据。 那么,如何确保这两个事件的顺序。

你可以用spark-cassandra-connector来做到这一点。那就是你将连接和查询cassandra的代码与发送数据给kafka的代码结合起来。 你可以找到用于阅读和写入cassandra here的Java工具。要将您的数据发送到kafka,请查看this code的sendToKafka方法。

+0

谢谢,但我仍不确定如何确保按顺序发生。基本上,有关数据如何转换的数据信息来自cassandra。所以我需要以某种方式强制执行该依赖关系,以便spark工作仅在读取cassandra数据后才应用转换。 –

+0

我不是很明白我明白你现在面临的问题。因为当我查看代码https://gist.github.com/jacek-lewandowski/278bfc936ca990bee35a上的showResults方法时,我认为您可以替换System.out.println(result);通过调用此代码的方法sendToKafka https://github.com/streamlyio/streamly-spark-examples/blob/master/streamly-mqtt-kafka/src/main/java/io/streamly/examples/StreamlyMqttKafka。 java的 – berrytchaks