Python全系列 教程
3567个小节阅读:5930.7k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
当distribute by和sort by后面的字段相同时,可以使用cluster by进行简化。功能是等价的;但是只能使用升序排序,不能指定排序规则为asc或者desc。
xxxxxxxxxx
hive>select * from emp distribute by deptno sort by deptno;
#可以简化为
hive>select * from emp cluster by deptno;
hive>insert overwrite local directory
'/opt/clusterbyresult'
select * from emp cluster by deptno;
按照部门的编号进行分区,在reduce任务内部再按照部门的编号进行升序排序。使用部门编号求hash值%分区的数量 取余数,结果相同的数据被分到一个分区中。
node4上查看结果:
xxxxxxxxxx
[root@node4 distributebyresult]# cd /opt/clusterbyresult/
[root@node4 clusterbyresult]# ll
总用量 8
-rw-r--r-- 1 root root 229 11月 18 11:28 000000_0
-rw-r--r-- 1 root root 0 11月 18 11:28 000001_0
-rw-r--r-- 1 root root 432 11月 18 11:28 000002_0
-rw-r--r-- 1 root root 0 11月 18 11:28 000003_0
[root@node4 clusterbyresult]# cat -A 000000_0
7902^Aford^Aanalyst^A7566^A1981-12-3^A3000.0^A\N^A20$
7788^Ascott^Aanalyst^A7566^A1987-4-19^A3000.0^A\N^A20$
7566^Ajones^Amanager^A7839^A1981-4-2^A2975.0^A\N^A20$
7876^Aadams^Aclerk^A7788^A1987-5-23^A1100.0^A\N^A20$
7369^Asmith^Aclerk^A7902^A1980-12-17^A800.0^A\N^A20$
[root@node4 clusterbyresult]# cat -A 000002_0
7934^Amiller^Aclerk^A7782^A1982-1-23^A1300.0^A\N^A10$
7839^Aking^Apresident^A\N^A1981-11-17^A5000.0^A\N^A10$
7782^Aclark^Amanager^A7839^A1981-6-9^A2450.0^A\N^A10$
7698^Ablake^Amanager^A7839^A1981-5-1^A2850.0^A\N^A30$
7654^Amartin^Asalesman^A7698^A1981-9-28^A1250.0^A1400.0^A30$
7900^Ajames^Aclerk^A7698^A1981-12-3^A950.0^A\N^A30$
7521^Award^Asalesman^A7698^A1981-2-22^A1250.0^A500.0^A30$
7499^Aallen^Asalesman^A7698^A1981-2-20^A1600.0^A300.0^A30$
7844^Aturner^Asalesman^A7698^A1981-9-8^A1500.0^A0.0^A30$