根据表14-7 学生表student sno sname ssex sage 95001 John M 23 95002 Tom M 23 1. 根据上面给出的student表,编写Python程序完成如下操作: (1)读取student表的数据内容,将其转为JSON格式,发送给Kafka; (2)再从Kafka中获取到JSON格式数据,打印出来
时间: 2024-02-06 17:09:24 浏览: 93
下面是一个实现上述功能的Python程序:
```python
import json
from kafka import KafkaProducer, KafkaConsumer
# 读取student表数据
data = []
with open('student.txt', 'r') as f:
for line in f.readlines():
sno, sname, ssex, sage = line.strip().split()
data.append({'sno': sno, 'sname': sname, 'ssex': ssex, 'sage': sage})
# 将数据转为JSON格式
json_data = json.dumps(data)
# 发送数据到Kafka
producer = KafkaProducer(bootstrap_servers='localhost:9092')
producer.send('students', json_data.encode())
# 从Kafka中获取数据
consumer = KafkaConsumer('students', bootstrap_servers='localhost:9092', auto_offset_reset='earliest')
for message in consumer:
json_data = message.value.decode()
data = json.loads(json_data)
print(data)
```
这个程序首先读取student表的数据,将其转换为JSON格式,并发送到名为“students”的Kafka主题。然后,它创建一个Kafka消费者,从“students”主题中获取JSON格式数据,并将其打印出来。注意,这里假设本机上已经启动了一个Kafka broker,并且创建了一个名为“students”的主题。
阅读全文