卡桑德拉与斯卡拉

时间:2011-06-17 07:39:12

标签: scala cassandra phantom-dsl

有人对scalaandra使用scala有什么建议吗?没有本地scala-cassandra客户端支持cassandra版本8.0+,所以我必须使用hector,它似乎工作正常但不简洁。你有任何尝试,建议或任何包装代码,...等hector?

5 个答案:

答案 0 :(得分:16)

完全支持CQL 3.0的Apache Cassandra和Datastax Enterprise的官方Scala驱动程序为phantom

Phantom是在Outworkers,Datastax官方合作伙伴开发的,明确取代所有其他驱动程序。它正在积极开发和维护,完全支持所有最新的Cassandra功能。

免责声明:我是幽灵的项目负责人,结果可能在我的推荐中有偏见。我们在幻像维基上提供更深入的功能比较。

答案 1 :(得分:5)

Cassie是“Cassandra的Scala客户端”:https://github.com/twitter/cassie。 根据twitter的开发块,它在2012-02-09发布,在对这个问题的初步回答之后。

https://wiki.apache.org/cassandra/ClientOptions还列出了我认为比Cassie更老的Cascal。

答案 2 :(得分:3)

您是否查看了模板包中的类?它们可以使您的包装更简洁。我们在维基上有一个快速的方法: https://github.com/rantav/hector/wiki/Getting-started-%285-minutes%29

答案 3 :(得分:1)

两个受欢迎的客户驱动程序是Quill和Phantom。他们都在下面使用Datastax。我使用play进行了一个简单的json GET / POST的负载测试分析。您可以在root / loadtest / phantom | quill / results下看到项目结果的并排比较。

可能会帮助您更好地选择司机。

https://github.com/yleun/cassandra-loadtest

Cassandra 3.10 斯卡拉2.11.8 幻影2.6.4 羽毛笔1.2.1

答案 4 :(得分:1)

简介

如先前的回答所示,Cassandra的基于Scala的客户端为:

但是,它们都内部基于Datastax Java Driver

就我个人而言,我不喜欢它们中的任何一个,并且Java Driver感觉更加自然和简单。另一方面,这些库在上面增加了一些开销,因此从性能角度来看,它们总是很差。

Java驱动程序Scala集成

我发现有一些文章(example)展示了如何更好地将Java驱动程序与Scala集成在一起,而且看起来并不难。

结果是我自己的库,您可以在GitHub上找到:https://github.com/atais/scassandra

它允许在Scala中无缝集成CQL查询和操作ListenableFuture,而无需将其映射到scala.Future

享受:)