我想为任何新添加/删除的分区修复hive表。而不是在hive中手动运行msck修复命令,有没有办法在java中实现这一点?我试图从hdfs和hive获取所有分区然后在比较它们之后将把新添加/删除的分区放在hive metastore中。但是我无法从hivecontext获取api。我试图使用hivecontext获取所有分区,但它没有找到错误表。< / p>
/opt/homelab
有没有办法在使用java添加/删除hive中的分区?
答案 0 :(得分:3)
使用hivecontext可以执行此操作,如下例所示。无需手动操作
sqlContext = HiveContext(sc)
sqlContext.sql("MSCK REPAIR TABLE your table")
有没有办法在使用java添加/删除hive中的分区?
如果你想以普通的java方式使用spark,那么使用普通的java代码 您可以使用类HiveMetaStoreClient直接从HiveMetaStore查询。