寻找hive视图
如何hive视图
1.mysql数据库
[centos@s201 ~]$ mysql -uroot -proot mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| azkaban |
| big12 |
| hive |
| mysql |
| performance_schema |
+--------------------+
6 rows in set (0.05 sec)
2.找hive库
show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| azkaban |
| big12 |
| hive |
| mysql |
| performance_schema |
+--------------------+ mysql> use hive;
3.观表
show tables;
+---------------------------+
| Tables_in_hive |
+---------------------------+
| AUX_TABLE |
| BUCKETING_COLS |
| CDS |
| COLUMNS_V2 |
| COMPACTION_QUEUE |
| COMPLETED_COMPACTIONS |
| COMPLETED_TXN_COMPONENTS |
| DATABASE_PARAMS |
| DBS |
| DB_PRIVS |
| DELEGATION_TOKENS |
| FUNCS |
| FUNC_RU |
| GLOBAL_PRIVS |
| HIVE_LOCKS |
| IDXS |
| INDEX_PARAMS |
| KEY_CONSTRAINTS |
| MASTER_KEYS |
| NEXT_COMPACTION_QUEUE_ID |
| NEXT_LOCK_ID |
| NEXT_TXN_ID |
| NOTIFICATION_LOG |
| NOTIFICATION_SEQUENCE |
| NUCLEUS_TABLES |
| PARTITIONS |
| PARTITION_EVENTS |
| PARTITION_KEYS |
| PARTITION_KEY_VALS |
| PARTITION_PARAMS |
| PART_COL_PRIVS |
| PART_COL_STATS |
| PART_PRIVS |
| ROLES |
| ROLE_MAP |
| SDS |
| SD_PARAMS |
| SEQUENCE_TABLE |
| SERDES |
| SERDE_PARAMS |
| SKEWED_COL_NAMES |
| SKEWED_COL_VALUE_LOC_MAP |
| SKEWED_STRING_LIST |
| SKEWED_STRING_LIST_VALUES |
| SKEWED_VALUES |
| SORT_COLS |
| TABLE_PARAMS |
| TAB_COL_STATS |
| TBLS |
| TBL_COL_PRIVS |
| TBL_PRIVS |
| TXNS |
| TXN_COMPONENTS |
| TYPES |
| TYPE_FIELDS |
| VERSION |
| WRITE_SET |
+---------------------------+
4.TBLS表结构
mysql> desc TBLS;
+--------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------------+--------------+------+-----+---------+-------+
| TBL_ID | bigint(20) | NO | PRI | NULL | |
| CREATE_TIME | int(11) | NO | | NULL | |
| DB_ID | bigint(20) | YES | MUL | NULL | |
| LAST_ACCESS_TIME | int(11) | NO | | NULL | |
| OWNER | varchar(767) | YES | | NULL | |
| RETENTION | int(11) | NO | | NULL | |
| SD_ID | bigint(20) | YES | MUL | NULL | |
| TBL_NAME | varchar(128) | YES | MUL | NULL | |
| TBL_TYPE | varchar(128) | YES | | NULL | |
| VIEW_EXPANDED_TEXT | mediumtext | YES | | NULL | |
| VIEW_ORIGINAL_TEXT | mediumtext | YES | | NULL | |
+--------------------+--------------+------+-----+---------+-------+
5.根据TBL_TYPE找到视图
mysql> select * from TBLS where tbl_type='VIRTUAL_VIEW';
+--------+-------------+-------+------------------+--------+-----------+-------+----------+--------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
| TBL_ID | CREATE_TIME | DB_ID | LAST_ACCESS_TIME | OWNER | RETENTION | SD_ID | TBL_NAME | TBL_TYPE | VIEW_EXPANDED_TEXT | VIEW_ORIGINAL_TEXT |
+--------+-------------+-------+------------------+--------+-----------+-------+----------+--------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
| 187 | 1544269997 | 6 | 0 | centos | 0 | 222 | a | VIRTUAL_VIEW | select `a`.`id`, `a`.`tag`, count(*) as `count` from (select `temptags`.`id`, `xx`.`tag` from `big12`.`temptags` lateral view explode(`parsejson`(`temptags`.`json`)) `xx` as `tag`) `a` group by `a`.`id`, `a`.`tag` | select id, tag, count(*) as count from (select id, tag from temptags lateral view explode(parsejson(json)) xx as tag) a group by id, tag |
| 193 | 1544336757 | 6 | 0 | centos | 0 | 229 | a1 | VIRTUAL_VIEW | select `logevent`.`deviceid`, `logevent`.`musicid`, sum(cast(`logevent`.`mark` as int)) as `sum` from `big12`.`logevent` where `logevent`.`musicid` is not null group by `logevent`.`deviceid`, `logevent`.`musicid` | select deviceid, musicid, sum(cast(mark as int)) as sum from logevent where musicId is not null group by deviceid, musicid |
| 194 | 1544336831 | 6 | 0 | centos | 0 | 230 | a2 | VIRTUAL_VIEW | select
`a1`.`deviceid` ,
`a1`.`musicid`,
`a1`.`sum`,
max(`a1`.`sum`)over(partition by `a1`.`deviceid`) as `sum2`
from `big12`.`a1` | select
deviceid ,
musicid,
sum,
max(sum)over(partition by deviceid) as sum2
from a1 |
| 227 | 1550817816 | 6 | 0 | centos | 0 | 262 | zz1 | VIRTUAL_VIEW | select `duowan_parquet`.`id`, `duowan_parquet`.`name`, `duowan_parquet`.`pass`, `duowan_parquet`.`email`, `duowan_parquet`.`nickname` from `big12`.`duowan_parquet` where substring(`duowan_parquet`.`id`,1,1) in (1,2,3,4,5,6,8,9,0) | select * from duowan_parquet where substring(id,1,1) in (1,2,3,4,5,6,8,9,0) |
+--------+-------------+-------+------------------+--------+-----------+-------+----------+--------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
6.查看存储库信息的DBS表
mysql> desc DBS;
+-----------------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+---------------+------+-----+---------+-------+
| DB_ID | bigint(20) | NO | PRI | NULL | |
| DESC | varchar(4000) | YES | | NULL | |
| DB_LOCATION_URI | varchar(4000) | NO | | NULL | |
| NAME | varchar(128) | YES | UNI | NULL | |
| OWNER_NAME | varchar(128) | YES | | NULL | |
| OWNER_TYPE | varchar(10) | YES | | NULL | |
+-----------------+---------------+------+-----+---------+-------+
select * from DBS limit 10;
+-------+-----------------------+------------------------------------------------+-------------+------------+------------+
| DB_ID | DESC | DB_LOCATION_URI | NAME | OWNER_NAME | OWNER_TYPE |
+-------+-----------------------+------------------------------------------------+-------------+------------+------------+
| 1 | Default Hive database | hdfs://s201/user/hive/warehouse | default | public | ROLE |
| 6 | NULL | hdfs://s201/user/hive/warehouse/big12.db | big12 | centos | USER |
| 11 | NULL | hdfs://s201/user/hive/warehouse/music164.db | music164 | centos | USER |
| 16 | NULL | hdfs://s201/user/hive/warehouse/big12_umeng.db | big12_umeng | centos | USER |
| 21 | NULL | hdfs://s201/user/hive/warehouse/big12_2.db | big12_2 | centos | USER |
| 26 | NULL | hdfs://s201/user/hive/warehouse/iml.db | iml | centos | USER |
| 31 | NULL | hdfs://s201/user/hive/warehouse/wqbin.db | wqbin | centos | USER |
+-------+-----------------------+------------------------------------------------+-------------+------------+------------+
7.如何删除视图跑路的脚本如下
7.1连接mysql
import pymysql conn = pymysql.connect(host='192.168.154.201', user='root', passwd='root', db='hive')
cur = conn.cursor() # 查询
sql = "select NAME,TBL_NAME from TBLS a join DBS b on a.DB_ID=b.DB_ID "
reCount = cur.execute(sql) # 返回受影响的行数
print(reCount)
data = cur.fetchall() # 返回数据,返回的是tuple类型
print(data) cur.close()
conn.close()
(('big12', 'a'), ('big12', 'a1'), ('big12', 'a2'), ('big12', 'zz1'))
7.2删除hive视图
使用pyhive连接hive删除所有视图
import pymysql
conn = pymysql.connect(host='192.168.154.201', user='root', passwd='root', db='hive')
cur = conn.cursor()
# 查询
sql = "select NAME,TBL_NAME from TBLS a join DBS b on a.DB_ID=b.DB_ID where a.TBL_TYPE='VIRTUAL_VIEW'"
reCount = cur.execute(sql) # 返回受影响的行数
data = cur.fetchall() # 返回数据,返回的是tuple类型
print(data)
cur.close()
conn.close() from pyhive import hive
import thrift
import sasl
import thrift_sasl
conn = hive.Connection(host='192.168.154.201', port=10000, database='big12',auth='NOSASL')
cursor=conn.cursor()
for a,b in data:
cursor.execute("drop view "+a+"."+b)
conn.close()
寻找hive视图的更多相关文章
- Apache Kylin高级部分之使用Hive视图
本章节我们将介绍为什么须要在Kylin创建Cube过程中使用Hive视图.而假设使用Hive视图.能够带来什么优点.解决什么样的问题.以及须要学会怎样使用视图.使用视图有什么限制等等. 1. ...
- Hive视图如何创建、特点及应用场景
Hive视图特点 View是逻辑存在,Hive暂不支持物化视图(1.0.3) View只读,不支持LOAD/INSERT/ALTER.需要改变View定义,可以是用Alter View View内可能 ...
- 【转】Kylin实践之使用Hive视图
http://blog.csdn.net/yu616568/article/details/50548967 为什么需要使用视图 Kylin在使用的过程中使用hive作为cube的输入,但是有些情况下 ...
- Hive 学习之路(六)—— Hive 视图和索引
一.视图 1.1 简介 Hive 中的视图和RDBMS中视图的概念一致,都是一组数据的逻辑表示,本质上就是一条SELECT语句的结果集.视图是纯粹的逻辑对象,没有关联的存储(Hive 3.0.0引入的 ...
- Hive 系列(六)—— Hive 视图和索引
一.视图 1.1 简介 Hive 中的视图和 RDBMS 中视图的概念一致,都是一组数据的逻辑表示,本质上就是一条 SELECT 语句的结果集.视图是纯粹的逻辑对象,没有关联的存储 (Hive 3.0 ...
- 入门大数据---Hive视图和索引
一.视图 1.1 简介 Hive 中的视图和 RDBMS 中视图的概念一致,都是一组数据的逻辑表示,本质上就是一条 SELECT 语句的结果集.视图是纯粹的逻辑对象,没有关联的存储 (Hive 3.0 ...
- hive视图
简化复杂的查询 员工好.姓名.月薪.年薪.在一个emp表中; 部门名称在dept的表中;并未年薪起了一个名字annlsal 查询视图 视图是一个虚表,是不存数据的
- Yii框架怎么寻找对应视图
render()内容; public function render($view,$data=null,$return=false) { if($this->beforeRender($view ...
- 寻找hive数据倾斜路
前言 一直以来我都是从书上.博客上.别人口中听说数据倾斜,自己也从而指导一些解决数据倾斜的方式或者一些容易出现数据倾斜的场景.但是从来没有认真的去发现过,寻求过,研究过. 正文 我打开了hive官网 ...
随机推荐
- 解决Win7上的连接access数据库的问题
最近做了一个win桌面程序,没有用sql 数据库,而是用access数据库,因为access比sql用起来方便多了,最主要是不要安装sql server,直接放在程序里面,然后创建连接字符就可以了,s ...
- windows环境jar包部署到linux服务器,一键操作(帮助说明)
背景:在上次https://www.cnblogs.com/shexunyu/p/11165282.html发布了第一个版本后,后面增加了相关功能 需求:做下简单的说明文档 下载:https://fi ...
- 第一章 impala的安装
目录 第一章 impala的安装 1.impala的介绍 imala基本介绍 impala与hive的关系 impala的优点 impala的缺点: impala的架构以及查询计划 2.impala的 ...
- 将本地镜像上传到Docker镜像仓库
⒈在Docker Hub(Docker官方镜像仓库)注册自己的用户名. ⒉在Docker中使用docker login命令登录自己的用户名密码. ⒊使用docker push 镜像名称 上传本地镜像到 ...
- PAT A1046 Shortest Distance (20 分)
题目提交一直出现段错误,经过在网上搜索得知是数组溢出,故将数组设置的大一点 AC代码 #include <cstdio> #include <algorithm> #defin ...
- 一些基础的python小程序
1.求下列数奇偶分数: list1 = [1,2,3,4,5,6,7,8,9,10] # 先创建两个空列表 jishu = [] oushu = [] # 使用for循环迭代list1一一取出进行判断 ...
- [POI2012]ROZ-Fibonacci Representation (贪心)
大意: 给定数$n$, 求将$n$划分为最少的斐波那契数的和或差. 每次取相邻$n$的斐波那契数一定最优, 考虑证明. 结论1:存在一个最优解,使得每个斐波那契数使用不超过1次.(考虑$2F_n=F_ ...
- ssh无密登录_集群分发脚本xsync
1.ssh免密登录 ssh ip地址 [root@192 ~]# ssh 192.168.1.102 root@192.168.1.102's password: Last login: Mon Fe ...
- kafka运维填坑
转载自:https://www.jianshu.com/p/d2cbaae38014 前提: 只针对Kafka 0.9.0.1版本; 说是运维,其实偏重于问题解决; 大部分解决方案都是google而来 ...
- Power BI 报表服务器中的行级别安全性 (RLS)
在 Power BI Desktop 中定义角色和规则 你可以在 Power BI Desktop 中定义角色和规则. 发布到 Power BI 时,它还会发布角色定义. 若要定义安全角色,请执行以下 ...