CQL3客户端是否支持本机协议?

时间:2013-12-05 07:45:05

标签: cassandra

是否可以使用CQL3 java客户端(使用execute_prepared_cql3_query等的客户端) 使用2.0中的本机协议? 或者Datastax java客户端是唯一支持本机协议的客户端吗? 使用本机协议是否有性能优势,特别是在插入1MB blob时? 我有使用CQL3客户端的现有应用程序,因此除非性能优势很大,否则不希望移植。

1 个答案:

答案 0 :(得分:4)

Apache Cassandra的DataStax Java驱动程序(https://github.com/datastax/java-driver)是迄今为止唯一支持CQL本机协议的Java驱动程序。

澄清有关此新协议的详细信息:Css Native Protocol v1已在Cassandra 1.2中引入,然后在Cassandra 2.0中作为CQL Native Protocol v2进行了增强。虽然Thrift接口在即将推出的Cassandra版本中仍会支持一段时间,但您可以预期某些功能将来只能与CQL Native Protocol一起使用,Cassandra 2.0中的自动分页就是这种情况(参见{{3 }})。

在性能方面,仍然没有明确的基准来比较Thrift与公开提供的CQL Native Protocol的效率。这是我们希望很快看到的。请记住,虽然没有一个尺寸适合这个性能问题的答案,因为它将在很大程度上取决于所考虑的用例和工作量。这就是为什么我肯定建议你运行自己的性能测试,看看如何提高应用程序的效率。我要注意的是,对于您提到的1MB blob情况,我预计不会有太大差异,因为有效负载会比这里的协议开销大得多。

因此,我不会说您升级到支持CQL原生协议的驱动程序是迫切需要的,但是您应该开始尝试,因为大多数投资将在未来几年内发生。