En Apache Hive podemos crear tablas para almacenar datos estructurados para luego poder procesarlos. La tabla en la colmena consta de varias columnas y registros. La tabla que creamos en cualquier base de datos se almacenará en el subdirectorio de esa base de datos. La ubicación predeterminada donde se almacena la base de datos en HDFS es /user/hive/warehouse. La forma de crear tablas en la colmena es muy similar a la forma en que creamos tablas en SQL. Podemos realizar las diversas operaciones con estas tablas como uniones, filtrado, etc.
Para realizar la siguiente operación, asegúrese de que su colmena esté funcionando. A continuación se muestran los pasos para iniciar una colmena en su sistema local.
Paso 1: Inicie todo su Hadoop Daemon
start-dfs.sh # this will start namenode, datanode and secondary namenode start-yarn.sh # this will start node manager and resource manager jps # To check running daemons
Paso 2: Inicie Hive desde la terminal
hive
Creando una tabla en Hive
Primero creemos una base de datos para que podamos crear tablas dentro de ella. El comando para crear una base de datos se muestra a continuación.
Sintaxis para crear una base de datos:
CREATE DATABASE <database-name>;
Dominio:
CREATE DATABASE student_detail; # this will create database student_detail SHOW DATABASES; # list down all the available databases
Ahora bien, para tener acceso a esta base de datos tenemos que usarla.
Sintaxis:
USE <database-name>;
Dominio:
USE student_detail;
Sintaxis para crear una tabla en Hive
CREATE TABLE [IF NOT EXISTS] <table-name> ( <column-name> <data-type>, <column-name> <data-type> COMMENT 'Your Comment', <column-name> <data-type>, . . . <column-name> <data-type> ) COMMENT 'Add if you want' LOCATION 'Location On HDFS' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';
Nota:
1. Podemos agregar un comentario a la tabla, así como a cada columna individual.
2. FORMATO DE FILA DELIMITADO muestra que cada vez que se encuentra una nueva línea, se iniciará la nueva entrada de registro.
3. CAMPOS TERMINADOS POR ‘,’ muestra que estamos usando el delimitador ‘,’ para separar cada columna.
4. También podemos anular la ubicación de la base de datos predeterminada con la opción UBICACIÓN .
Así que vamos a crear la tabla student_data en nuestra base de datos student_detail con la ayuda del comando que se muestra a continuación.
CREATE TABLE IF NOT EXISTS student_data( Student_Name STRING COMMENT 'This col. Store the name of student', Student_Rollno INT COMMENT 'This col. Stores the rollno of student', Student_Marks FLOAT) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';
Hemos creado con éxito la tabla student_data en nuestra base de datos student_detail con 3 campos diferentes Student_Name, Student_Rollno, Student_Marks como STRING, INT, FLOAT respectivamente.
Podemos enumerar la tabla disponible en nuestra base de datos con la ayuda del comando que se explica a continuación.
Sintaxis:
SHOW TABLES [IN <database_name>];
Dominio:
SHOW TABLES IN student_detail;
Ahora, finalmente, verifiquemos la ubicación en HDFS donde se crearon nuestra base de datos student_detail y la tabla student_data . Vaya a localhost:50070/ para Hadoop 2 y a localhost:9870/ para Hadoop 3. Luego, Utilidades -> Examine el sistema de archivos y vaya a /user/hive/warehouse , que es una ubicación predeterminada donde se crean las bases de datos de Hive.
En la imagen de arriba, podemos observar que la tabla student_data está disponible en HDFS dentro de student_detail.db .
Publicación traducida automáticamente
Artículo escrito por dikshantmalidev y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA