当前位置: 首页 > news >正文

广州网站建设海珠信科搜索排行

广州网站建设海珠信科,搜索排行,做网站的说3年3年包括什么软件,无锡商业网站建设之前遇到过一个问题,在进行Hive的元数据采集时,因为Hive表的文件已经被删除了,当时是无法删除表,导致元数据采集也发生了问题,所以希望通过删除Hive表的元数据解决上述问题。 之前安装时,经过特定的配置后…

之前遇到过一个问题,在进行Hive的元数据采集时,因为Hive表的文件已经被删除了,当时是无法删除表,导致元数据采集也发生了问题,所以希望通过删除Hive表的元数据解决上述问题。

之前安装时,经过特定的配置后,Hive上所有元数据均保存在Mysql中,所以可以从Mysql上删除表相关信息即可删除hive表,而且不会影响Hdfs上数据。

解决方法:

1、Hive在Mysql上的相关元数据表关系图:

 2、先在Mysql中建存储过程:

DELIMITER $$
ROLLBACK;
DROP PROCEDURE IF EXISTS P_TBL_DATA_DEL$$
CREATE PROCEDURE P_TBL_DATA_DEL(i_tbl_name varchar(100) -- 表id
,out o_outcode integer  -- 输出代码
,out o_outmsg  varchar(500) --输出信息
COMMENT'从mysql数据库中制除Hive的元数据信息'
label_prot:
BEGIN/*====================================================================** 存储名称: 从MySQL数据库中删除Hive元数据                            ** 文件名称: P_TBL_DATA_DEL.sql                                       ** 调用示例:call P_TBL_DATA_DEL(tablename,@o_outcode,@o_outmsg);     **====================================================================*/
-- 自定义变量
DECLARE v_sd_id    int;
DECLARE v_part_id  int;
DECLARE v_cd_id    int;
DECLARE v_serde_id int;
DECLARE v_tbl_id   int;
DECLARE v_tbl_name varchar(100) ;
-- 异常声明
DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
SET o_outcode = -1;
SET o_outmsg  ='failuro';
END;
-- 初始化变量
IF
i_tbl_name IS NOT NULL THEN
SET v_tbl_name = i_tbl_name;
ELSE  -- 否则默认赋值0
SET v_tbl_name = 0;
END IF;
-- START TRANSACTION
-- todo begin
-- 根据表名获取表ID
select TBL_ID into v_tbl_id from tbls where TBL_NAME = v_tbl_name;
-- 根据表ID获取存储配置ID(SDS.SD_ID)
select SD_ID into v_sd_id from tbls where TBL_ID = v_tbl_id;
-- 根据表ID获取分区ID(PARTITIONS.part_id)
select part_id into v_part_id from partitions where tbl_id = v_tbl_id:
-- 根据存储配置ID获取表字段信息和序列化类配置ID
select cd_id,serde_id into v_cd_id,v_serde_id from sds where sd_id = v_sd_id;
-- 册除表属性信息数据
delete from table_params where tbl_id = v_tbl id;
-- 删除表信息数据
delete from tbls where tbl_id = v_tbl_id;
-- 删除文件存储的基本信息数据
delete from sds where sd_id = v_sd_id;
-- 删除序列化属性信息数据
delete from serde_params wheras serde_id = v_serde_id;
-- 删除存储序列化使用的类信息数据
delete from serdes where serde_id = v_sd_id;
-- 删除表的字段信息
delete from colum ms_v2 where cd_id = v_cd_id;
-- 判断是否v_part_id值是否为空,如果不为空,表示分区属性和表分区字段值表有值,进行删除
IF v_part_id IS NOT NULL THAN
-- 删除分区属性信息
delete from partition_params where part_id = v_part_id;
-- 删除分区字段值表数据
delete from partition_key_vals where par_id = v_part_id;
END IF;
-- 删除分区信息数据
delete from partitions where tbl_id = v_tbl_id;
-- 删除分区字段信思
delete from partition_keys where tbl_id = v_tbl_id;-- 处理成功后的返回值
SET o_outcode = 0;
SET o_outmsg='succe';
END
$$
DELIMITER;

2、备份Hive的元数据库;

3、删除备份表的外键信息;

4、执行存储过程,即:

call P_TBL_DATA_DEL (‘需要删除的表英文名’,@o_outcode,@o_outmsg);

5、将删除的外键添加回去;

6、验证表hive中表是否还存在,即是否删除成功。

http://www.yayakq.cn/news/362118/

相关文章:

  • 网页版式设计欣赏绵阳做网站优化
  • 常州外贸网站建设公司免费做简易网站
  • 英文网站建设的请示怎么写广告代运营
  • 公司网站去哪里做全栈开发需要学什么课程
  • ps个人网站的首页界面韶关市住房和城乡建设管理局网站
  • 英文网站建设 深圳凤翔网站制作
  • 专门设计的网站网页设计与制作教程期末考试
  • 网站你懂我意思正能量晚上在线观看不用下载免费pc站和手机网站
  • 网站建设成本包含哪些方面台州建设局网站企业黑名单
  • 江苏水利工程建设局网站甜蜜定制app还有吗
  • 怎样构建自己的网站什么是网站内容建设
  • 网站一键收录济宁网站运营策略
  • 陕西 建设工程有限公司网站html5 单页 响应式 网站模板
  • 衡水冀县做网站学校网站建设需要注意什么
  • 网站社区建设wordpress 购买
  • 网站的代码在哪里设置江苏省住房和建设部网站首页
  • 网站设计建设公司怎么做wordpress aws
  • 网站建设实训主要收获及体会德州极速网站建设
  • 重庆城市建设集团官方网站定制网站开发哪里好
  • 沟通交流类网站有哪些做彩票网站是违法的吗
  • 网站服务器迁移步骤index.html网站怎么做
  • 网站建设工作室+怎么样成都建设网站专业
  • 站长之家关键词查询设计衣服网站
  • 网站升级 html建站公司最新报价
  • 网站开发超链接点击后变色湖南公司网站建设
  • 网站备案有什么风险网站营销的分类有哪些
  • 有没有帮别人做图片的网站赚钱免费虚拟机下载手机版
  • 做视频网站要什么主机怎么套模板 网站模板
  • 任务网站(做任务学技能的)莱州网站建设包年多少钱
  • xml文件里做网站超链接聚名网官网登录