Hive静态分区与动态分区

简介

Hive中的分区就是分文件夹,建立分区的目的就是通过指定的方式来减少扫范围,
进而提高查询效率,Hive中每个分区对应着表很多的子目录,将所有的数据按照分区列放入到不同的子目录中去。

静态分区与动态分区

Hive分区:
	分区:根据插入时是否需要手动指定分区可以分为:
		静态分区:导入数据时需要手动指定分区。(指定特定的文件夹也就是特定的值)
		动态分区:导入数据时,系统可以动态判断目标分区。(不能直接用,要手动指定)
		两者建表是没有任何区别 仅仅只是插入数据时有区别


例如: 按年分区
	建表:
	create table 表名(
	    .........
	    .......字段省略
		)
	partitioned by (year string)
	row format delimited by terminated by "\t"


   静态分区插入数据:
    insert into table 表名(year="2020")
    select 
    	......
    	......字段省略
    from  表名

	
   动态分区插入数据:
    insert into table 表名(year)  --不需要指定
    select 
    	......
    	......字段省略
    from  表名


版权声明:本文为m0_49834705原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。