最具影响力的数字化技术在线社区

168大数据

 找回密码
 立即注册

QQ登录

只需一步,快速开始

1 2 3 4 5
打印 上一主题 下一主题
开启左侧

[Hive] hive数据模型中四种表

[复制链接]
跳转到指定楼层
楼主
发表于 2019-1-22 21:24:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多数据大咖,获取更多知识干货,轻松玩转大数据

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Hive包含内部表、外部表、分区表和桶表。


一、内部表


内部表也称为管理表。因为这种表,Hive会或多或少地空值数据的生命周期。Hive默认情况下回将这些表的数据存储在由配置项hive.metastore.warehouse.dir所定义的目录(比如/user/hive/warehouse)的子目录下。


如果我有一个表test,那么在HDFS中会创建/user/hive/warehouse/test目录(这里假定hive.metastore.warehouse.dir配置为/user/hive/warehouse);test表所对应的所有数据都存放在这个目录中。
如果删除这张表,则表在关系数据中存储的元数据以及在warehouse目录下的数据也会被清除掉。


同时管理表不方便与其他工作共享数据。例如我们有一份由Pig或者其他工具创建并且主要由这一工具使用的数据,同时我们还想使用Hive在这份数据上执行一些查询,可是并没有给予Hive对数据的所有权,我们可以创建一个外部表指向这份数据,而并不需要对其具有所有权。


二、外部表


为了避免潜在产生混淆的可能性,如果用户不想使用默认的表路径,那么最好是使用外部表。


外部表可以读取指定目录下的以逗号为分隔的数据:


CREATE EXTERNAL TABLE IF NOT EXISTS stocks(
exchange   STRING,
symbol     STRING,
ymd        STRING,
price_open FLOAT,
price_high FLOAT,
volume     INT,
price_adj_close  FLOAT)
ROW FORMAT DELIMITED FIFLDS TERMINATED BY ',' --逗号分隔文件
LOCATION '/data/stocks'  --指定Hive数据的路径
因为表是外部的,所以Hive并非认为完全拥有这份数据,从而删除该表的时候不会删除这份数据。不过描述表的元数据信息会被删除掉。


三、分区表


分区表用于水平分散压力,将数据从物理上转移到和使用最频繁的用户更近的地方
---------------------
作者:TOMOCAT
来源:CSDN
原文:https://blog.csdn.net/tomocat/article/details/81671831

楼主热帖
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 赞 踩

168大数据 - 论坛版权1.本主题所有言论和图片纯属网友个人见解,与本站立场无关
2.本站所有主题由网友自行投稿发布。若为首发或独家,该帖子作者与168大数据享有帖子相关版权。
3.其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和168大数据的同意,并添加本文出处。
4.本站所收集的部分公开资料来源于网络,转载目的在于传递价值及用于交流学习,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
5.任何通过此网页连接而得到的资讯、产品及服务,本站概不负责,亦不负任何法律责任。
6.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源,若标注有误或遗漏而侵犯到任何版权问题,请尽快告知,本站将及时删除。
7.168大数据管理员和版主有权不事先通知发贴者而删除本文。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

关于我们|小黑屋|Archiver|168大数据 ( 京ICP备14035423号|申请友情链接

GMT+8, 2024-4-20 15:23

Powered by BI168大数据社区

© 2012-2014 168大数据

快速回复 返回顶部 返回列表