Apache kafka 直接从本地机器将1GB文件加载到Kafka producer
我已经尝试过通过命令行从生产者向消费者发布随机消息的基本示例。 现在我想发布本地机器中的所有1GB数据。为此,我正在努力将1GB的数据加载到producerApache kafka 直接从本地机器将1GB文件加载到Kafka producer,apache-kafka,Apache Kafka,我已经尝试过通过命令行从生产者向消费者发布随机消息的基本示例。 现在我想发布本地机器中的所有1GB数据。为此,我正在努力将1GB的数据加载到producer 请帮帮我。您只需将文件重定向到卡夫卡主题即可转储文件。假设1.xml是1GB文件,则可以使用以下命令 bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test123 < ./1.xml bin/kafka-console-producer.sh—
请帮帮我。您只需将文件重定向到卡夫卡主题即可转储文件。假设1.xml是1GB文件,则可以使用以下命令
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test123 < ./1.xml
bin/kafka-console-producer.sh——代理列表localhost:9092——主题test123<./1.xml
socket.request.max.bytes
,socket.receive.buffer.bytes
,socket.send.buffer.bytes
max.message.bytes
因此,有两种方法可以帮助: 1) 您可以使用Flume等大数据平台,它们是为此类用例而构建的。 2) 如果您想实现自己的代码,那么可以使用ApacheCommons Lib,当新文件到达文件夹()时,它将帮助您捕获事件,并且在获得新文件后,您可以调用在kafka上发布数据的代码。
3) 在我们的项目中,我们使用Logstash API执行同样的操作,即从文件夹中提取数据并将数据从文件发布到kafka,然后通过Storm进行处理。但问题是什么?从kafka中的某个位置读取许多文件(该文件夹产生1GB)。您的命令是将数据从生产者推送到代理。这我已经知道了。我的make producer从一个位置实时读取大文件。一个位置的所有新文件都应由producer读取并自动发送给代理。我不会遇到任何错误。我只是在开始时遇到麻烦。我的意思是如何让制作人从一个位置实时读取所有文件,所以有两种方法可以帮助你:1)你可以使用Flume这样的大数据平台,它们是为这样的用例而构建的。2) 如果您想实现自己的代码,那么可以使用ApacheCommons Lib,当新文件到达文件夹()时,它将帮助您捕获事件,并且在获得新文件后,您可以调用在kafka上发布数据的代码。3) 在我们的项目中,我们使用LogstashAPI做同样的事情,从文件夹中获取数据并将数据从文件发布到kafka,然后通过Storm进行处理。