Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cassandra 节俭,CQL3还是什么?_Cassandra_Cql_Datastax Java Driver - Fatal编程技术网

Cassandra 节俭,CQL3还是什么?

Cassandra 节俭,CQL3还是什么?,cassandra,cql,datastax-java-driver,Cassandra,Cql,Datastax Java Driver,最近我注意到Cassandra和DataStax正在进一步推动CQL3。甚至发布了一个新的java驱动程序,这个驱动程序根本不使用Thrift。 如果您的应用程序不打算使用“紧凑型存储”,您将无法在应用程序中使用Thrift。因此,我相信节俭正在从卡桑德拉消失 我的问题是,对于一个新的应用程序,我应该直接使用CQL3吗?然而,我仍然更喜欢节俭,因为我想知道下面发生了什么,另一方面,我不想使用正在消失并成为遗产的东西。您有什么建议?Datastax鼓励开发人员将cql3用于较新的应用程序。从: …

最近我注意到Cassandra和DataStax正在进一步推动CQL3。甚至发布了一个新的java驱动程序,这个驱动程序根本不使用Thrift。 如果您的应用程序不打算使用“紧凑型存储”,您将无法在应用程序中使用Thrift。因此,我相信节俭正在从卡桑德拉消失


我的问题是,对于一个新的应用程序,我应该直接使用CQL3吗?然而,我仍然更喜欢节俭,因为我想知道下面发生了什么,另一方面,我不想使用正在消失并成为遗产的东西。您有什么建议?

Datastax鼓励开发人员将cql3用于较新的应用程序。从:

…我们相信CQL3对于Cassandra来说比thrift API更简单、更全面。因此,鼓励新项目/应用程序使用CQL3(但请记住,CQL3还不是最终版本,因此本声明仅对Cassandra 1.2完全有效)。但节俭API是行不通的


Thrift不会获得更新的功能(除非它们被大量要求),因此可以肯定地说CQL3是新应用程序的更好选择(当然也有例外……如果你需要低级的,你需要Thrift)。我唯一的痛苦是datastax的驱动程序还不支持SSL,但它正在开发中,有望很快成为一项承诺功能

我的公司最近也经历了同样的思考过程,最终使用CQL3而不是节俭

虽然CQL3的附加抽象层略微缺乏透明度,但在我看来,编写SQL风格语句的简单性和熟悉性使代码更具可读性和直观性。此外,我们发现cqlsh界面在调试和一般数据库维护方面比cassandra cli更加用户友好(在cqlsh中,自动完成功能非常出色!)


一旦您了解了底层数据结构以及CQL3如何表示该数据,额外的抽象层就变得无关紧要了。

关于CQL3如何表示我的数据(从节俭者的用户角度)的更多信息吗??此外,我还担心CQL3可能会在我不知道的情况下尝试生成非常宽的行(限制为20亿行)?!我发现这篇文章对于理解CQL3如何表示底层数据结构非常有用:你说“如果你需要低级,你就需要节俭”你说的低级是什么意思,抱歉,如果这是愚蠢的话,我对Cassandra是新手,正在尝试写一个mapreduce来读取Cassandra的数据。