我是using confluent.connect.cassandra.CassandraSinkConnector
,因为kafka连接了cassandra sink。
我想知道是否可以使用io.confluent.connect.cassandra.CassandraSinkConnector
作为连接器从kafka主题自动生成cassandra表。
如果可能的话,请您建议设置什么配置以启用此功能。我已经尝试了文档中提到的所有配置,但是创建表没有成功。
这是我正在使用的配置:
{
"name": "cassandra-test4",
"config": {
"connector.class": "io.confluent.connect.cassandra.CassandraSinkConnector",
"tasks.max": "3",
"topics": "orders-topic2",
"cassandra.contact.points": "my_ip",
"cassandra.keyspace": "test_cas",
"cassandra.write.mode": "Insert",
"cassandra.table.manage.enabled": "true",
"cassandra.sink.route": "test_cas.orders",
"key.converter.schema.registry.url": "http://localhost:8081",
"value.converter.schema.registry.url": "http://localhost:8081",
"value.converter": "io.confluent.connect.avro.AvroConverter",
"key.converter": "org.apache.kafka.connect.storage.StringConverter",
"flush.size": "1",
"cassandra.keyspace.create.enabled": "true",
"name": "cassandra-test4"
},
"tasks": [
{
"connector": "cassandra-test4",
"task": 0
},
{
"connector": "cassandra-test4",
"task": 1
},
{
"connector": "cassandra-test4",
"task": 2
}
],
"type": null
}
答案 0 :(得分:1)
这应该通过将cassandra.keyspace.create.enabled
和cassandra.table.manage.enabled
属性设置为true
来完成。参见documentation。
但是要非常小心-在集群中很容易出现架构分歧,然后您需要执行其他步骤以从中恢复。最好在启动连接器之前预先创建表...