python读取文件数据推送到Kafka(python读取文件信息)

http://www.itjxue.com  2023-03-27 16:40  来源:未知  点击次数: 

python三方库之kafka

更详细的可以参考:

生产者:producer

生产者kafka有对应的三方库可以支撑去进行信息发送。

消费者:consumer

消费者,同样可以通过topic和服务器名称,去获取对应的数据。

使用kafka

confluent kafka python怎么实时获取数据

使用kafkapython读取实时数据小例子 使用kafkapython读取实时数据小例子 from kafka import KafkaConsumer from kafka.client import KafkaClient imp

如何编写python文件将oracle导入kafka

如何编写python文件将oracle导入kafka

MySQLdb只支持Python2.*,还不支持3.*

可以用PyMySQL代替。安装方法:pip install PyMySQL

然后在需要的项目中,把 __init__.py中添加两行:

import pymysql

pymysql.install_as_MySQLdb()

就可以用 import MySQLdb了。其他的方法与MySQLdb一样。

如何使用python 连接kafka 并获取数据

连接 kafka 的库有两种类型,一种是直接连接 kafka 的,存储 offset 的事情要自己在客户端完成。还有一种是先连接 zookeeper 然后再通过 zookeeper 获取 kafka 的 brokers 信息, offset 存放在 zookeeper 上面,由 zookeeper 来协调。

我现在使用 samsa 这个 highlevel 库

Producer示例

from kazoo.client import KazooClientfrom samsa.cluster import Clusterzookeeper = KazooClient()zookeeper.start()cluster = Cluster(zookeeper)topic = cluster.topics['topicname']topic.publish('msg')

** Consumer示例 **

from kazoo.client import KazooClientfrom samsa.cluster import Clusterzookeeper = KazooClient()zookeeper.start()cluster = Cluster(zookeeper)topic = cluster.topics['topicname']consumer = topic.subscribe('groupname')for msg in consumer:

print msg

Tip

consumer 必需在 producer 向 kafka 的 topic 里面提交数据后才能连接,否则会出错。

在 Kafka 中一个 consumer 需要指定 groupname , groue 中保存着 offset 等信息,新开启一个 group 会从 offset 0 的位置重新开始获取日志。

kafka 的配置参数中有个 partition ,默认是 1 ,这个会对数据进行分区,如果多个 consumer 想连接同个 group 就必需要增加 partition , partition 只能大于 consumer 的数量,否则多出来的 consumer 将无法获取到数据。

(责任编辑:IT教学网)

更多

推荐linux文章