1 / 86
文档名称:

大数据面试题.doc

格式:doc   大小:1,824KB   页数:86页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

大数据面试题.doc

上传人:今晚不太方便 2017/8/13 文件大小:1.78 MB

下载得到文件列表

大数据面试题.doc

文档介绍

文档介绍:Hive内部表与外部表的区别?
先来说下Hive中内部表与外部表的区别: 
Hive 创建内部表时,会将数据移动到数据仓库指向的路径;若创建外部表,仅记录数据所在的路径, 
不对数据的位置做任何改变。在删除表的时候,内部表的元数据和数据会被一起删除, 
而外部表只删除元数据,不删除数据。这样外部表相对来说更加安全些,数据组织也更加灵活,方便共享源数据。 
需要注意的是传统数据库对表数据验证是 schema on write(写时模式),而 Hive 在load时是不检查数据是否 
符合schema的,hive 遵循的是 schema on read(读时模式),只有在读的时候hive才检查、解析具体的 
数据字段、schema。 
读时模式的优势是load data 非常迅速,因为它不需要读取数据进行解析,仅仅进行文件的复制或者移动。 
写时模式的优势是提升了查询性能,因为预先解析之后可以对列建立索引,并压缩,但这样也会花费要多的加载时间。 
下面来看下 Hive 如何创建内部表: 
1
create table test(userid string);
2
LOAD DATA INPATH '/tmp/result/20121213' INTO TABLE test partition(ptDate='20121213');
这个很简单,不多说了,下面看下外部表: 
01
hadoop fs -ls /tmp/result/20121214
02
Found 2 items
03
-rw-r--r--   3 june supergroup       1240 2012-12-26 17:15 /tmp/result/20121214/part-00000
04
-rw-r--r--   1 june supergroup       1240 2012-12-26 17:58 /tmp/result/20121214/part-00001
05
-- 建表
06
create EXTERNAL table IF NOT EXISTS test (userid string) partitioned by (ptDate string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t';
07
-- 建立分区表,利用分区表的特性加载多个目录下的文件,并且分区字段可以作为where条件,更为重要的是
08
-- 这种加载数据的方式是不会移动数据文件的,这点和 load data 不同,后者会移动数据文件至数据仓库目录。
09
alter table test add partition (ptDate=
'20121214') location '/tmp/result/20121214';
-- 注意目录20121214最后不要画蛇添足加/*,我就是linux shell用多了,加了这玩意,调试了一下午。。。
注意:location后面跟的是目录,不是文件,hive会把整个目录下的文件都加载到表中:
1
create EXTERNAL table IF NOT EXISTS userInfo (id int,sex string, age int, name string, email string,sd string, ed string)  ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' location '/hive/dw';
否则,会报错误:
FAILED: Error in metadata: MetaException(message:Got exception: : Parent path is not a directory: /hive/dw/record_2013-04-
最后提下还有一种方式是建表的时候就指定外部表的数据源路径,
但这样的坏处是只能加载一个数据源了:
CREATE EXTERNAL TABLE sunwg_test09(id INT, name string) 
ROW FORMAT DELIMITED 
FIELDS TERMINATED BY ‘\t’ 
LOCATION ‘/sunwg/test08′; 
上面的语句创建了一张名字为sunwg_test09的外表,该表有id和name两个字段, 
字段的分割符为tab,文件的数据文件夹为/sunwg/t

最近更新

2025年航空服务心理分析与优化策略 58页

2025年腹腔镜手术六步操作指南 26页

2025年律师的委托代理合同 26页

2025年度金融行业客服服务外包与风险管理合同.. 9页

2025年度金融科技合伙人股权协议书 7页

2025年度金融理财产品销售定金合同范本 9页

2025年往事封沉、流年知多少 3页

2025年彩色的雪说明文阅读原文附答案 4页

2025年度酒店客房服务意外伤害免责协议 8页

2025年度酒店厨师技能提升聘用合同协议 9页

2025年度车辆维修厂车辆维修责任免除及维修质.. 8页

2025年肩袖损伤康复护理实战教学手册 35页

花树种群生态学研究-全面剖析 28页

2025年度资产重组背景下公司合并协议 7页

2025年度购物中心商铺租赁合同 8页

电力资产转让合同 6页

2025年肩关节不稳康复训练华裔专家讲座教案 26页

电力行业供需双方购销合同 6页

2025年肝癌PBL3疗法精华解读 24页

2025年异地恋见面了开心的句子 3页

2025年度艺术品居间交易佣金分配与艺术品市场.. 9页

2025年开车三逢三要原则是什么 6页

小学科学教科版五年级下册全册课课练习题(202.. 21页

箱体密封方案 27页

矿泉水销售合同 3页

八年级学情分析道德与法治 2页

化学九年级上册《有关化学式的计算》 20页

最新山西省实施《中华人民共和国道路交通安全.. 40页

首席招商代理合同范本律师整理版 11页

磷酸奥司他韦颗粒的临床应用分析 4页