kylin误删hdfs上kylin_metadata下数据出现java.lang.IllegalStateException错误

一、问题描述

   在Kylin新建连接操作时选择的连接主键不唯一(两表连接时,连接主键ID在各个表中必须唯一),导致cub任务失败。此时导致网页端的Model界面一直处于加载状态,因此我把hdfs上/kylin/kylin_metadata/文件夹下当天建的项目全部删除了。以至于在新建cub时,不能新建和以前同样名字的cub(以前的cub名字为join,此时网页端已经没有了该cub,但是仍然不能建join的cub)。并且在调用./metastore.sh clean命令时出现如下错误:



二、原因分析

    因为此时删除了HDFS上/kylin/kylin_metadata/文件夹下的数据,而在Hbase的kylin_metadata元数据表中仍然存在该项目的数据即rowkey为“/cube/join.json”的数据,但是该项目的“index_path”却丢失了(kylin_metadata中数据的格式和内容保存在HDFS上/kylin/kylin_metadata/文件夹下)。因此在建cub时,不能建相同名字的cub;在调用./metastore.sh clean命令时因为不能找到/cube/join.json的“index_path”而报错。


三、解决办法

  删除Hbase中kylin_metadata元数据表对应的行。进入Hbase shell模式,调用get 'kylin_metadata', '/cube/join.json'命令可以查看到具体的内容;而后调用deleteall 'kylin_metadata','/cube/join.json'命令删除对应的行即可。

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fenghuibian/article/details/53689833
文章标签: metadata kylin hdfs cub
个人分类: kylin系列
上一篇notepad++突然崩溃,保存的文件没了怎么办
下一篇window 上测试 kafka
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭