Erlang有一个稳定的Cassandra库吗?我好像找不到一个
答案 0 :(得分:5)
Apache Cassandra使用Thrift。所以你需要做的就是为Erlang生成thrift绑定(thrift --gen erl interface/cassandra.thrift
)
来自Apache Thrift wiki:
Thrift有C ++,C#的生成器, Erlang,Haskell,Java,Objective C / Cocoa,OCaml,Perl,PHP,Python, Ruby和Squeak
(如果您正在寻找更多“高级客户”库,那么我不知道。)
答案 1 :(得分:5)
我遇到了同样的问题。在对所有可用的Cassandra驱动程序进行基准测试后,我决定基于Erlcass启动新的驱动程序datastax cpp driver。
datastax cpp驱动程序具有令人难以置信的性能,并且完全异步。
从我在群集上的测试中,其他erlang驱动程序无法达到每秒10k读取数据/秒,我可以超过60k / s。
Datastax驱动程序与Erlcass之间存在细微差别,但在相同的情况下我仍然可以达到超过50k读数。
大部分开销来自将数据转换为erlang术语,反之亦然。
正在进行改进界面和性能的工作。目前未准备好的陈述需要进行一些修改。
答案 2 :(得分:4)
我写了一个简单的Cassandra erlang客户端。看看这个! https://github.com/lpgauth/cassanderl
答案 3 :(得分:3)
根据video by Eric Evans,你应该避免在Thrift API中使用Cassandra,如果可以的话。