将数据从 volt 导出到 kafka

Exporting data from volt to kafka

我们正在尝试做一个 POC,我们尝试将数据从 volt db table 导出到 kafka 以下是我遵循的步骤:-

第 1 步:- 准备 deployment.xml 以支持导出到 kafka

<?xml version="1.0"?>
<deployment>
<cluster hostcount="1" kfactor="0" schema="ddl" />
<httpd enabled="true">
    <jsonapi enabled="true" />
</httpd>
<export enabled="true" target="kafka">
<configuration>
<property name="metadata.broker.list">localhost:9092</property>
 <property name="batch.mode">false</property>
 </configuration>
 </export>
 </deployment>

第 2 步:- 然后启动 voltdb 服务器

 ./voltdb create -d deployment-noschema.xml --zookeeper=2289

第 3 步:- 仅创建导出 table 并向其中插入一些数据

create table test(x int);
export table test;

insert into test values(1);
insert into test values(2);

在此之后,我尝试验证是否在 kafka 中创建了任何主题,但是 none。

./kafka-topics.sh --list  --zookeeper=localhost:2289

我还可以在 exportoverflow 目录中看到所有数据的记录。谁能告诉我这里缺少的部分是什么。

一些问题和可能的答案。

  1. 您使用的是企业版吗?
  2. 你能从 sqlcmd 调用 @Quiesce 并查看你的数据是否推送到 kafka。
  3. 您使用的是哪个版本?
  4. VoltDB 嵌入了一个 zookeeper,您使用的是独立的 zookeeper 还是 VoltDB 的?我们不使用嵌入式进行测试,因为它与支持的 kafka 不完全相同。

让我们知道或发送电子邮件至 voltdb.com 期待。

普拉巴特,

在您的特定情况下,对您观察到的行为的可能解释是您在启动 Kafka 时没有将自动创建主题选项设置为 true。导出过程需要 Kafka 启用此功能才能动态创建主题。否则,您将必须手动创建主题,然后从 VoltDB 中导出。

附带说明一下,虽然您可以使用以 VoltDB 开头的 zookeeper 来启动 Kafka,但这不是推荐的方法,因为当您关闭 VoltDB 服务器时,您的 Kafka 将没有 zookeeper。最好的方法是使用 Kafka 自己的 zookeeper 来管理你的 Kafka 实例。

如果有帮助请告诉我 - 谢谢。