3

最近我注意到 Cassandra 和 DataStax 正在更多地推动 CQL3。甚至发布了一个新的 java 驱动程序,这个根本不使用 Thrift。如果您不打算使用“紧凑型存储”,您将无法在您的应用程序中使用 Thrift。因此,我相信 Thrift 正在从 Cassandra 中淡出。

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

4

2 回答 2

3

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

尽管 CQL3 的附加抽象层略微缺乏透明度,但在我看来,编写 SQL 样式语句的易用性和熟悉性使代码更具可读性和直观性。另外,我们发现在调试和一般数据库维护方面,cqlsh 界面比 cassandra-cli 更加用户友好(自动完成在 cqlsh 中非常棒!)。

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

于 2013-05-10T11:20:25.040 回答
1

Datastax 鼓励开发人员将 cql3 用于更新的应用程序。从Thrift 到 CQL3 指南

…我们相信 CQL3 是一个比 thrift API 更简单且整体更好的 Cassandra API。因此,鼓励新项目/应用程序使用 CQL3(尽管请记住 CQL3 还不是最终版本,因此该声明仅在 Cassandra 1.2 中完全有效)。但是thrift API 不会去任何地方。

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

于 2013-05-10T09:38:45.607 回答