【发布时间】:2019-11-20 15:43:51
【问题描述】:
我正在尝试将数据从 kafka 获取到 spark-structured-streaming,但我无法检查我是否做得很好。我想在控制台上打印来自 kafka 的数据,但控制台上什么也没有。 这可能是因为来自 Kafka 的大量数据,但我不知道。
我使用的是 Windows 10。我检查了 kafka 的端口是由 “netstat -an | findstr TARGET_IP”。 TARGET_IP 表示 kafka 生产者的 IP。 通过上述结果的 PID,我检查了“tasklist /FI”PID eq 5406“”。 5406是java.exe的PID,PID 5406使用的内存不断增加。
public static void main( String[] args ) {
SparkSession spark = SparkSession.builder()
.master("local")
.appName("App").getOrCreate();
Dataset<Row> df = spark
.readStream()
.format("kafka")
.option("kafka.bootstrap.servers", "TARGET_IP:TARGET_PORT")
.option("subscribe", "TARGET_TOPIC")
.option("startingOffsets", "earliest")
.load();
df.printSchema();
StreamingQuery queryone = df.writeStream().trigger(Trigger.ProcessingTime(1000)).format("console").start();
try {
queryone.awaitTermination();
} catch (StreamingQueryException e) {
e.printStackTrace();
}
}
【问题讨论】:
-
也许你应该从 kafka 控制台消费者开始?
标签: java apache-spark apache-kafka spark-structured-streaming