任务描述本关任务:按照要求生成一个带有 map 数据类型的表的视图。相关知识为了完成本关任务你需要掌握:1Hive 动态分区2map 数据类型。Hive 分区Hive 中的表分区比较简单就是将同一组数据放到同一个 HDFS 目录下当查询中过滤条件指定了某一个分区值时候只将该分区对应的目录作为 Input从而减少 MapReduce 的输入数据提高查询效率。创建一个分区的案例如下:CREATE EX
-- 开启动态分区 set hive.exec.dynamic.partition=true; set hive.exec.dynamic.partition.mode=nonstrict;
-- 创建视图 CREATE VIEW children_of_Maria AS SELECT id, name, family['ma'] AS mother, family['fa'] AS father, family['da'] AS daughter, family['son'] AS son FROM person WHERE family['ma'] = 'Maria';
-- 插入数据到分区 INSERT INTO TABLE person PARTITION (family_ma='Maria') SELECT id, name, family FROM children_of_Maria;
-- 删除原数据 DELETE FROM person WHERE family['ma'] = 'Maria';
-- 重命名分区 ALTER TABLE person PARTITION (family_ma='Maria') RENAME TO PARTITION (family_mother='Maria');
-- 查看所有分区 SHOW PARTITIONS person
原文地址: http://www.cveoy.top/t/topic/cHbB 著作权归作者所有。请勿转载和采集!