在java中使用hiveContext修复配置表

时间:2017-01-14 16:39:44

标签: hadoop apache-spark hive apache-spark-sql hivecontext

我想为任何新添加/删除的分区修复hive表。而不是在hive中手动运行msck修复命令,有没有办法在java中实现这一点?我试图从hdfs和hive获取所有分区然后在比较它们之后将把新添加/删除的分区放在hive metastore中。但是我无法从hivecontext获取api。我试图使用hivecontext获取所有分区,但它没有找到错误表。< / p>

/opt/homelab

有没有办法在使用java添加/删除hive中的分区?

1 个答案:

答案 0 :(得分:3)

Spark选项:

使用hivecontext可以执行此操作,如下例所示。无需手动操作

sqlContext = HiveContext(sc)
sqlContext.sql("MSCK REPAIR TABLE your table")
  

有没有办法在使用java添加/删除hive中的分区?

普通java选项:

如果你想以普通的java方式使用spark,那么使用普通的java代码 您可以使用类HiveMetaStoreClient直接从HiveMetaStore查询。

enter image description here enter image description here

请参阅my answer here with example usage