hive 通过元数据导出所有表信息

南墨2年前技术文章681

select 

db.NAME as db_name,

tb.TBL_NAME as table_name,

case tb.TBL_TYPE when 'MANAGED_TABLE' then '' else 'external' end as table_type,

sds.LOCATION,

sds.INPUT_FORMAT,

sds.OUTPUT_FORMAT,

t1.TBLPROPERTIES,

ser.SLIB as rowFS,

t2.WithSERD,

t3.colums,

t4.part,

tb.SD_ID,tb.TBL_ID,sds.CD_ID,sds.SERDE_ID

from TBLS tb

join metastore.DBS db on tb.DB_ID=db.DB_ID

join metastore.SDS sds on tb.SD_ID = sds.SD_ID

join (

   select  tp.TBL_ID,  group_concat(concat_ws(':',tp.PARAM_KEY,tp.PARAM_VALUE) separator '@#@') as TBLPROPERTIES

   from metastore.TABLE_PARAMS tp

   group by tp.TBL_ID

) t1 on tb.TBL_ID=t1.TBL_ID

join metastore.serdes ser on ser.SERDE_ID=sds.SERDE_ID

left join (

   select spa.SERDE_ID, group_concat(concat_ws(':',spa.PARAM_KEY,spa.PARAM_VALUE) separator '@#@') as WithSERD

   from metastore.SERDE_PARAMS spa

   group by spa.SERDE_ID

)t2  on t2.SERDE_ID = sds.SERDE_ID

join (

  select cv2.CD_ID, group_concat(concat_ws(':',cv2.INTEGER_IDX,cv2.TYPE_NAME,cv2.COLUMN_NAME) separator '@#@') as colums

  from metastore.COLUMNS_V2 cv2

  group by cv2.CD_ID

)t3 on t3.CD_ID = sds.CD_ID

  left join (

  select parts.TBL_ID,group_concat(concat_ws(':',parts.PKEY_NAME,parts.PKEY_TYPE) separator '@#@') as part

  from metastore.partition_keys parts

  group by parts.TBL_ID

)t4 on tb.TBL_ID=t4.TBL_ID;


相关文章

kafka启动失败

kafka启动失败

问题现象客户重启kafka服务,页面显示run fail        问题报错问题原因  &nbs...

RAID磁盘阵列详解

RAID磁盘阵列详解

1 RAID原理无论是DAS、NAS还是SAN,都是存储系统,一个存储系统可以包含多块磁盘。不同磁盘之间的组织排列,就是磁盘阵列技术,也就是RAID技术。RAID磁盘阵列技术的核心思想主要有两个,包括...

k8s Krew 插件使用指南

kubectl Krew 插件使用指南前言:在某些情况下,只是使用 kubectl 命令的时候存在效率比较低、功能不满足的问题,针对这些问题,社区提出了krew插件项目。还有一点是:大部分工程师还是喜...

两款方案详解,企业线下数据库迁移至云上ScyllaDB(1)

两款方案详解,企业线下数据库迁移至云上ScyllaDB(1)

方案一通过扩缩容(上线新节点和下线老节点)方式迁移,这个过程数据库通过数据传输到新节点。整个过程不停机上下线节点的数据传输时存在压力。某个节点存在不可控的故障导致节点无法启动时,数据存在丢失的风险。新...

MySQL创建用户授权

创建用户授权一、创建用户1.创建管理用户create user 'test'@'%' identified by 'Test123@'create user 'test'@'localhost' id...

MySQL运维实战之ProxySQL(9.3)使用ProxySQL实现读写分离

proxysql读写分离主要通过mysql_query_rules表中的规则来实现。下面是具体的配置步骤:hostgroup配置insert into mysql_servers&...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。