在flink 1.8.0和Kafka中使用python

时间:2019-06-27 14:12:10

标签: python apache-kafka apache-flink jython flink-streaming

学习将Flink(1.8.0)与Python结合使用,尝试阅读Kafka主题。 使用Apache Flink: Kafka connector in Python streaming API, "Cannot load user class"中的代码 似乎不适用于此版本。

我还在lib目录中放置了以下jar:force-shading-1.8.0.jar,flink-connector-kafka-base_2.11-1.8.0.jar,flink-connector-kafka_2.11-1.8 .0.jar,kafka-clients-2.0.1.jar,lz4-java-1.4.1.jar,snappy-java-1.1.7.1.jar

import glob
import os
import sys
from java.util import Properties
from org.apache.flink.streaming.api.functions.source import SourceFunction
from org.apache.flink.streaming.api.collector.selector import OutputSelector
from org.apache.flink.api.common.serialization import SimpleStringSchema

directories=['/opt/flink-1.8.0/lib']
for directory in directories:
    for jar in glob.glob(os.path.join(directory,'*.jar')):
                sys.path.append(jar)

from org.apache.flink.streaming.connectors.kafka import FlinkKafkaConsumer09

给出错误

Failed to run plan: null
Traceback (most recent call last):
   File "<string>", line 1, in <module>
   File "/tmp/flink_streaming_plan_711cd057-6fbc-445f-a669-bb7a01e72d48/test01.py", line 16, in <module>
ImportError: No module named connectors

为什么org.apache.flink.streaming.connectors不可用?

0 个答案:

没有答案