如何将cassandra转换为HDFS文件系统以进行shark / hive查询

时间:2013-12-30 04:22:19

标签: hadoop cassandra hive hdfs apache-spark

有没有办法将cassandra数据暴露为HDFS,然后在HDFS上执行shark / Hive查询?

如果是,请提供一些链接将cassandra db转换为HDFS。

5 个答案:

答案 0 :(得分:0)

您可以编写身份MapReduce代码,该代码从CFS(cassandra文件系统)获取输入并将数据转储到HDFS。

在HDFS中获得数据后,您可以映射配置单元表并运行查询。

答案 1 :(得分:0)

在Hive中访问Cassandra数据的典型方法是使用CqlStorageHandler。 详细信息请参阅Hive Support for Cassandra CQL3

但如果您有理由直接访问数据,请查看Cassowary。它是Cassandra和Shark的Hive存储处理程序,可直接读取SSTable。这样可以完全控制用于运行即席查询的资源,从而控制对实时Cassandra性能的影响。“

答案 2 :(得分:0)

我认为您正在尝试针对Cassandra中的数据运行Hive / Shark。如果是这种情况,那么您不需要将其作为HDFS访问,但是您需要一个hive-handler来对抗Cassandra。

为此,您可以使用Tuplejump's项目,CASH自述文件提供有关如何构建和使用它的说明。如果你想把你的“大文件”放在Cassandra中并查询它们,就像你从HDFS那样,你将需要一个在Cassandra上运行的文件系统,如DSE中存在的DataStax's CFS,或者Tuplejump的SnackFS(存在于Calliope Project早期访问回复)

免责声明:我为Tuplejump,Inc。工作。

答案 3 :(得分:0)

您可以使用Tuplejump Calliope项目。 https://github.com/tuplejump/calliope

使用TumpleJump代码中提供的存储处理程序在Shark(如Hive)中配置外部Cassandra表。

一切顺利!

答案 4 :(得分:0)