Hive 配置单元静态分区加载所有记录

Hive 配置单元静态分区加载所有记录,hive,hiveql,Hive,Hiveql,我试图基于dept of employee记录执行配置单元静态分区,当我执行load命令将数据插入分区表时,它会根据我在load data命令中指定的分区值更改所有dept值 我在hdfs中的数据如下所示: 1,adi,Admin,50000,A 2,Gokul,Admin,50000,B 3,Janet,Sales,60000,A 4,Hari,Admin,50000,C 5,Sanker,Admin,50000,C 6,Margaret,Tech,12000,A 7,Nirmal,Tech,

我试图基于dept of employee记录执行配置单元静态分区,当我执行load命令将数据插入分区表时,它会根据我在load data命令中指定的分区值更改所有dept值

我在hdfs中的数据如下所示:

1,adi,Admin,50000,A
2,Gokul,Admin,50000,B
3,Janet,Sales,60000,A
4,Hari,Admin,50000,C
5,Sanker,Admin,50000,C
6,Margaret,Tech,12000,A
7,Nirmal,Tech,12000,B
8,jinju,Engineer,45000,B
9,Nancy,Admin,50000,A
10,Andrew,Manager,40000,A
11,Arun,Manager,40000,B
12,Harish,Sales,60000,B
13,Robert,Manager,40000,A
14,Laura,Engineer,45000,A
15,Anju,Ceo,100000,B
16,Aarathi,Manager,40000,B
17,Parvathy,Engineer,45000,B
18,Gopika,Admin,50000,B
19,Steven,Engineer,45000,A
20,Michael,Ceo,100000,A
我的分区表如下所示:

create table employee(
id string,
name string,
role string,
salary string)
partitioned by (dept string)
row format delimited
fields terminated by ','
lines terminated by '\n'
stored as textfile;

load command
load data inpath '/user/adithyan/employee.txt' overwrite into table employee partition (dept='A');
我已经给出了上面和执行后的输入数据,该命令记录已从hdfs插入到配置单元,但它加载了由“A”更改的部门的所有记录

输出:

employee.id employee.name   employee.degree employee.salary employee.dept
1   adi Admin   50000   A
2   Gokul   Admin   50000   A
3   Janet   Sales   60000   A
4   Hari    Admin   50000   A
5   Sanker  Admin   50000   A
6   Margaret    Tech    12000   A
7   Nirmal  Tech    12000   A
8   jinju   Engineer    45000   A
9   Nancy   Admin   50000   A
10  Andrew  Manager 40000   A
11  Arun    Manager 40000   A
12  Harish  Sales   60000   A
13  Robert  Manager 40000   A
14  Laura   Engineer    45000   A
15  Anju    Ceo 100000  A
16  Aarathi Manager 40000   A
17  Parvathy    Engineer    45000   A
18  Gopika  Admin   50000   A
19  Steven  Engineer    45000   A
20  Michael Ceo 100000  A
所有部门都改成了一个错误的部门。
有人能帮我把分区数据插入我的表吗?

看来加载数据不适合这项工作

加载操作当前是移动的纯复制/移动操作 将数据文件放入配置单元表对应的位置

然而,您可以使用外部表来实现您的目标

create external table employee_ext
(
    id      string
   ,name    string
   ,role    string
   ,salary  string
   ,dept    string
)
row format delimited
fields terminated by ','
lines terminated by '\n'
stored as textfile
location '/user/adithyan/'
;




似乎加载数据不适合该作业

加载操作当前是移动的纯复制/移动操作 将数据文件放入配置单元表对应的位置

然而,您可以使用外部表来实现您的目标

create external table employee_ext
(
    id      string
   ,name    string
   ,role    string
   ,salary  string
   ,dept    string
)
row format delimited
fields terminated by ','
lines terminated by '\n'
stored as textfile
location '/user/adithyan/'
;



select * from employee
;
+-------------+---------------+---------------+-----------------+---------------+
| employee.id | employee.name | employee.role | employee.salary | employee.dept |
+-------------+---------------+---------------+-----------------+---------------+
|           1 | adi           | Admin         |           50000 | A             |
|           3 | Janet         | Sales         |           60000 | A             |
|           6 | Margaret      | Tech          |           12000 | A             |
|           9 | Nancy         | Admin         |           50000 | A             |
|          10 | Andrew        | Manager       |           40000 | A             |
|          13 | Robert        | Manager       |           40000 | A             |
|          14 | Laura         | Engineer      |           45000 | A             |
|          19 | Steven        | Engineer      |           45000 | A             |
|          20 | Michael       | Ceo           |          100000 | A             |
|           2 | Gokul         | Admin         |           50000 | B             |
|           7 | Nirmal        | Tech          |           12000 | B             |
|           8 | jinju         | Engineer      |           45000 | B             |
|          11 | Arun          | Manager       |           40000 | B             |
|          12 | Harish        | Sales         |           60000 | B             |
|          15 | Anju          | Ceo           |          100000 | B             |
|          16 | Aarathi       | Manager       |           40000 | B             |
|          17 | Parvathy      | Engineer      |           45000 | B             |
|          18 | Gopika        | Admin         |           50000 | B             |
|           4 | Hari          | Admin         |           50000 | C             |
|           5 | Sanker        | Admin         |           50000 | C             |
+-------------+---------------+---------------+-----------------+---------------+