我正在尝试按照官方网页https://clickhouse.yandex/docs/en/table_engines/kafka.html
的步骤将Streaming queue kafka批量转换为clickhouse,并且没有办法让它运行正常。
我已经检查了kafka configuration
并且没问题,因为我已为此队列创建了一个馈线,并且我已将clickhouse configuration
zookeeper's host
添加到port
}和System.out.println(ck.connection.createStatement().execute("CREATE TABLE IF NOT EXISTS test.clickhouseMd5 ("st1 String," + "st2 String," + "st3 String) ENGINE = Kafka('node2:2181', 'TestTopic', 'testConsumerGroup', 'JSONEachRow')"));
。
例如,来自日食的句子是:
System.out.println()
* {margin:0;padding:0;box-sizing:border-box}
html, body {text-align: center;}
#logo2 img {
margin: 0 auto;
margin-top: 3%;
}
.menu2 {
display: flex; /* displays children inline */
margin: 0;
width: 100%;
margin-top: 2%;
list-style-type: none;
background: linear-gradient(#3E3E3E, #2B2B2B);
}
li {
flex: 1; /* each takes as much width as it can, i.e. 25% */
border-right: 1px solid #232323;
}
li:last-child {
border: none;
}
li a {
display: block;
text-align: center;
font: Verdana;
font-size: 16px;
color: #EAE0D2;
text-decoration: none;
padding: 20px 0;
}
li a:hover {
background: linear-gradient(#404040, #3E3E3E);
}
.active {
background: linear-gradient(#2B2B2B, #232323);
}
的结果总是 false ,并且没有例外。
有什么想法吗?
谢谢, 亲切的问候。
答案 0 :(得分:1)
你可以尝试通过命令行clickhouse-client运行你的查询
在clickhouse节点?
cliclhouse-client -c "CREATE TABLE IF NOT EXISTS test.clickhouseMd5 (st1 String,st2 String, st3 String) ENGINE = Kafka('node2:2181', 'TestTopic', 'testConsumerGroup', 'JSONEachRow')"
答案 1 :(得分:0)
您使用端口2181,它是zookeeper的默认端口。 但是根据你提到的文档(https://clickhouse.yandex/docs/en/table_engines/kafka.html),你应该在第一个参数中指定一个以逗号分隔的代理列表(localhost:9092)。
另请注意,它可能不适用于旧的Kafka版本。例如,使用0.9.0.1。使用此版本,CREATE TABLE命令将返回OK。但是在kafka日志中我有错误,例如错误处理器得到未捕获的异常。 (kafka.network.Processor)java.lang.ArrayIndexOutOfBoundsException:18'。
但是对于最新的Kafka 0.11.0.2,它对我来说很好。