Directorio de artículos
- 5. Manipulación de datos DML
-
- 5.1 Importación de datos
-
- 5.1.1 Cargar datos en la tabla (Cargar)
- 5.1.2 Inserte datos en la tabla a través de la declaración de consulta (Insertar)
- 5.1.3 Cree una tabla y cargue datos en la declaración de la consulta (como seleccione)
- 5.1.4 Especifique la ruta de carga de datos a través de la ubicación al crear una tabla
- 5.1.5 Importar datos a la tabla de Hive especificada
- 5.2 Exportación de datos
- 5.3 Borrar datos en la tabla (Truncar)
5. Manipulación de datos DML
5.1 Importación de datos
5.1.1 Cargar datos en la tabla (Cargar)
- gramática
hive> load data [local] inpath '路径' [overwrite] into table 表名 [partition (partcol1=val1,…)];
(1) cargar datos: cargar datos
(2) local: significa cargar datos de local a la tabla de colmena; de lo contrario, cargar datos de HDFS a la tabla de colmena
(3) inpath: indica la ruta para cargar datos
(4) sobrescribir: significa sobrescribir los datos existentes en la tabla, de lo contrario significa agregar
(5) en la mesa: en qué mesa cargar
(6) Nombre de la tabla: indica la tabla específica
(7) partición: significa subir a la partición especificada
5.1.2 Inserte datos en la tabla a través de la declaración de consulta (Insertar)
- Caso
Inserción básica
insert into table student partition(month='201709') values(1,'wangwu');
insert overwrite table student partition(month='201708') select id, name from student where month='201709';
Inserción múltiple
from dept_partition
insert overwrite table dept_partition partition(month='201707')
select deptno,dname,loc where month='201709'
insert overwrite table dept_partition partition(month='201706')
select deptno,dname,loc where month='201709';
5.1.3 Cree una tabla y cargue datos en la declaración de la consulta (como seleccione)
Cree una tabla basada en el resultado de la consulta (el resultado de la consulta se agregará a la tabla recién creada)
create table if not exists student3 as select id, name from student;
5.1.4 Especifique la ruta de carga de datos a través de la ubicación al crear una tabla
Cree una tabla y especifique la ubicación en hdfs
create table if not exists student5(
id int, name string)
row format delimited fields terminated by '\t'
location '/user/hive/warehouse/student5';
Subir datos a hdfs
dfs -put /opt/datas/student.txt /opt/hive/warehouse/student5;
5.1.5 Importar datos a la tabla de Hive especificada
Nota: Primero utilice exportar para exportar y luego importe los datos.
import table student2 partition(month='201709') from '/opt/hive/warehouse/export/student';
5.2 Exportación de datos
5.2.1 Insertar exportación
1. Exportar resultados de consultas a local
insert overwrite local directory '/opt/datas' select * from dept_partition;
2. Dar formato y exportar los resultados de la consulta a local
insert overwrite local directory '/opt/datas/dept1'
row format delimited
fields terminated by '|'
select * from dept_partition;
3. Exportar los resultados de la consulta a HDFS (no local)
insert overwrite directory '/opt/datas/dept'
row format delimited
fields terminated by '|'
select * from dept_partition;
5.2.2 Exportar comandos de Hadoop a local
dfs -get /opt/hive/warehouse/employee/employee.txt /opt/datas/dept2/dept.txt;
5.2.3 Exportación de comandos de Hive Shell
Sintaxis básica: (colmena -f / -e ejecutar instrucción o script> archivo)
hive -e 'select * from hivetest.dept_partition;' > /opt/datas/dept3/dept.txt;
Nota: Debe ejecutarse en la ventana de shell, el nombre de la biblioteca, el nombre de la tabla es obligatorio y la carpeta local debe existir.
5.2.4 Exportar a HDFS
export table hivetest.dept_partition to '/opt/datas/dept2';
5.2.5 Exportación de Sqoop
Seguimiento
5.3 Borrar datos en la tabla (Truncar)
Nota: Truncar solo puede eliminar tablas de administración, no datos en tablas externas
truncate table student;