您的当前位置:首页正文

hive的动态分区加载数据和静态分区加载数据

来源:要发发知识网

静态分区static partition:手动输入数据分区名称。
动态分区dynamic partition:通过数据来判断数据分区名称。
开启动态分区:set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nostrict;
set hive.exec.max.dynamic.partitions.pernode=1000;

                       
                        个country和state变量中,即动态分区是通过位置来对应分区值的。原始表select出来的值和输出partition的值
                        。
                        INSERT OVERWRITE TABLE employees

                        PARTITION (country, state)

                        SELECT ...,  se.st

                        FROM staged_employees se;
                        
                        只要位置正确,你可以混用动态分区和静态分区值设定。
                        INSERT OVERWRITE TABLE employees

                        PARTITION (country = 'china', state)

                        SELECT ...,  se.st FROM staged_employees se

                        WHERE  = 'china';