10

Erlang 是否有稳定的 Cassandra 库?我好像找不到

4

4 回答 4

7

我遇到了同样的问题。在对大多数可用的 Cassandra 驱动程序进行基准测试后,我决定基于datastax cpp driver启动一个新的驱动程序Erlcass

datastax cpp 驱动程序具有令人难以置信的性能并且它是完全异步的。

从我在集群上的测试中,其他 erlang 驱动程序使用 datastax 无法达到超过 10k 读取/秒,我能够获得超过 60k/s。

Datastax 驱动程序和 Erlcass 之间存在细微差别,但在相同的情况下我仍然能够达到超过 50k 读取/秒。

大部分开销来自将数据转换为 erlang 术语,反之亦然。

改进界面和性能的工作正在进行中。目前未准备好的语句需要一些更改。

于 2015-10-08T22:48:20.570 回答
5

Apache Cassandra 使用Thrift。所以你需要做的就是为 Erlang ( thrift --gen erl interface/cassandra.thrift)生成 thrift 绑定

来自 Apache Thrift 维基:

Thrift 有 C++、C#、Erlang、Haskell、Java、Objective C/Cocoa、OCaml、Perl、PHP、Python、Ruby 和 Squeak 的生成器

(如果您正在寻找更“高级客户端”库,那么我不知道。)

于 2010-04-23T08:23:23.643 回答
4

我写了一个简单的 Cassandra erlang 客户端。看看这个! https://github.com/lpgauth/cassanderl

于 2011-05-13T18:26:08.023 回答
3

根据Eric Evans 的视频,如果可能的话,你应该避免通过 Thrift API 使用 Cassandra。

于 2011-02-01T18:20:49.427 回答