Cassandra .Net驱动程序和CQL驱动程序(2012年8月)

时间:2012-08-07 23:39:24

标签: .net cassandra cql fluentcassandra aquiles

有人问过这个问题,但是他们已经有一年多了,所以我重新发帖了。

我不是问哪个是“最好的”司机,因为那是主观的。我正在寻找有关稳定性,符合最新Cassandra功能,文档和易用性以及速度的数据。

看起来Hector活动很少(2年前每个Github)。所以它介于Cassandra-sharp,Fluentcassandra,Aquiles和Cassandraemo之间。

我注意到有些人做了,有些人没有提到Thrift API。从.Net的角度看有什么意义?

是否有CQL解决方案?

5 个答案:

答案 0 :(得分:4)

FluentCassandra非常支持LINQ-to-CQL,它的类型系统是首屈一指的,目前正由DataStax推荐。它支持以下类型,并使用Java的大端字节格式对它们进行正确编码,以便可以从其他库中读取它们。

  • ASCII
  • 布尔
  • 字节
  • 组合
  • 计数器
  • 日期
  • 十进制
  • 动态合成
  • 的Int32
  • 整数(其他称为Big Integer - 超过64位的任何东西)
  • Lexical UUID
  • 时间UUID
  • UTF8
  • UUID

大多数.NET库只支持Cassandra早期发布的最初5个。

在我看来,我是FluentCassandra的开发人员,提到使用Thrift就像提到.NET使用Win32 API一样。我们已经围绕这些事情构建了库,因为作为开发界面它们很臭,而且对于最终用户开发者来说它们并不重要。

答案 1 :(得分:2)

我正在使用支持Linq2CQL3的“DataStax C#Client Driver”。

您可以使用GitHub下载它: https://github.com/datastax/csharp-driver

驱动程序包含以下模块:

  • Cassandra:核心层。
  • Cassandra.Data.Linq:Linq2CQL驱动程序
  • TestRunner:基本的单元测试环境
  • Cassandra.Test:核心驱动程序的单元测试
  • Cassandra.Data.Linq.Test:Linq2CQL驱动程序的单元测试
  • Playground:提供Linq2CQL驱动程序基本用法的简单应用程序

    参考: http://planetcassandra.org/DownLoad/ViewDownLoadType/datastax-c-client-driver-109

  • 答案 2 :(得分:1)

    我认为Thrift API是Cassandra的最低级别接口,几乎任何客户端库都必须使用它。

    Cassandraemon是一个LINQ提供程序,也支持CQL。

    答案 3 :(得分:0)

    Datastax现在提供自己的Cassandra .net驱动程序实现。我有这方面的经验,但通常DataStax在支持Cassandra方面做得很好。

    答案 4 :(得分:0)

    据我所知,Datastax c#驱动程序在linq中根本不执行timeuuid列。如果你想使用linq来做时间序列行的范围查询

    ,那么你就搞砸了