13

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

4

5 回答 5

17

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

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

免责声明:我是 phantom 的项目负责人,结果可能会对我的推荐产生偏见。我们在 phantom wiki 上提供了更深入的功能比较。

于 2015-02-27T19:33:08.893 回答
5

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

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

于 2012-02-23T01:53:25.753 回答
3

你看过模板包中的类吗?它们可能会使您的包装更简洁。我们在 wiki 上有一个快速操作方法: https ://github.com/rantav/hector/wiki/Getting-started-%285-minutes%29

于 2011-07-01T18:54:08.337 回答
2

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

可能会帮助您更好地选择驱动程序。

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

Cassandra 3.10 scala 2.11.8 幻影 2.6.4 羽毛笔 1.2.1

于 2017-05-30T03:24:32.650 回答
1

介绍

正如之前的答案所建议的,Cassandra 的基于 Scala 的客户端是:

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

就个人而言,我不喜欢它们中的任何一个,Java Driver 感觉更加自然和简单。另一方面,这些库在其之上产生了一些开销,因此在性能方面它们总是较差的。

Java 驱动程序 Scala 集成

我发现一些文章(示例)展示了如何将 Java Driver 与 Scala 更好地集成,而且看起来并不难。

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

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

享受 :)

于 2019-09-26T10:17:05.987 回答