从Hive表读取并写入Cassandra表

问题描述 投票:0回答:1

我在Cloudera群集中的Hive中有一些外部表,按daily_date列进行分区。

我也有DataStax Enterprise Cassandra集群,在其中创建了与Hive表结构相同的表。

问题:我想将Hive表中的表数据导出/写入相应的Cassandra表。

是否有可用的Hive与Cassandra连接器?还是我需要在Spark中执行此操作(如果是)如何?什么是最佳实践/解决方案?

我尝试用谷歌搜索很多不同的关键字,但没有遇到任何正确/推荐的解决方案。

请指导。

apache-spark hive cassandra cloudera datastax
1个回答
0
投票

仅将Spark与Spark Cassandra Connector一起使用,最好与Dataframe APIs一起使用。以described in Spark docs的身份访问Hive中的数据,并在获取数据帧后将其写入Cassandra。像这样的东西:

// assuming that table is registered already:
val df = sql("SELECT * from hive_table")
df.write
  .format("org.apache.spark.sql.cassandra")
  .options(Map("table" -> "...", "keyspace" -> "..."))
  .save()
© www.soinside.com 2019 - 2024. All rights reserved.