什么cassandra客户端用于hadoop集成?

时间:2013-05-01 23:59:30

标签: hadoop cassandra thrift cql3

我正在尝试使用cassandra作为后端存储来构建数据服务层。我是Cassandra的新手,不知道用什么客户端用于cassandra - thrift或cql 3?我们有很多使用亚马逊弹性mapreduce(EMR)的mapreduce工作,它将以高容量读取/写入来自cassandra的数据。总数据量将>卡桑德拉有数十亿排的100 TB。可以使用高qps(> 1000 qps)读取或写入mapreduce作业。要求如下:

我找不到任何回答此问题的权威信息来源。感谢您是否可以提供帮助,因为我确信这对大多数人来说是一个常见问题,并且会使整个社区受益。

非常感谢提前。

-Prateek

1 个答案:

答案 0 :(得分:1)

Hadoop和Cassandra都是用Java编写的,所以一定要选择一个基于java的驱动程序。至于代码的简单性,我会去Astyanax,他们的维基页面非常好,文档全面可靠。是的atyanax确实允许您在运行时定义列,但请注意基于thrift的API正在被cql apis取代。

如果您想要继续使用纯cql3路由,我建议您使用datastax's驱动程序。它允许异步连接并不断更新(view the logs)。虽然文档还不完整,但代码也很干净,但是你可以看一下源代码中的测试。

但说实话,有很多关于API的问题,你应该通过它们阅读并为自己形成一个意见:

此外,对于性能,一些基准测试(它们已经过时了!)显示cql正在赶上(并且在准备语句时有些超车)thrift: