2016-05-17 39 views
1

由于java驱动3.0我看到我的ddl(数据定义语言)查询每个取1。在我所有的询问过去都花费大约2s的时间。卡桑德拉缓慢的DDL查询,因为驱动程序3.0

我的ddl大多包含CREATE TABLE,但也包括DROP和CREATE KEYSPACE,CREATE TYPE和INDEXES。

他们都采取大致相同的时间。

有些东西随驱动程序或默认设置而改变? 有人遇到过这样的问题吗?

回答

2

您可能碰到JAVA-1120。应该立即发布修复方案。

同时,尝试禁用事件去抖:

Cluster cluster = Cluster.builder() 
    .addContactPoints(...) 
    // other options... 
    .withQueryOptions(
     new QueryOptions() 
      .setRefreshNodeIntervalMillis(0) 
      .setRefreshNodeListIntervalMillis(0) 
      .setRefreshSchemaIntervalMillis(0) 
    ).build(); 
+0

是的,但我听说,当它是创建的架构另一个司机发生反跳。这不是我的情况。我在每次测试时都不删除密钥空间,而是通过使用TRUNCATE和IF EXIST来解决问题。这是一个解决方法,但驱动程序事件2.1我把我所有的测试时间分为两个因素。 – crak

+0

不,对于更改架构的客户端也会发生反弹。这正是JAVA-1120的目的。通过关闭它,您应该获得明显的性能提升,但如果您首先可以避免DDL语句,那可能是更好的解决方案。 – adutra