Descripción general de la partición dinámica en Hive

En este artículo, analizaremos la descripción general de Hive y nos centraremos en el particionamiento dinámico y, finalmente, concluiremos con las operaciones en el particionamiento dinámico en Hive. Discutámoslo uno por uno.

Descripción general:
Hive es un sistema de almacenamiento desarrollado por Facebook, es básicamente un sistema de almacenamiento de datos que realiza operaciones en datos estructurados. Se utiliza principalmente para realizar operaciones como análisis y trabajos de MapReduce. También proporciona la funcionalidad de leer, escribir y administrar grandes conjuntos de datos. Hive es principalmente popular porque puede servir como una alternativa al enfoque tradicional de las operaciones de base de datos. Hive utiliza la indexación que ayuda internamente a que las consultas sean eficientes, también puede operar con datos comprimidos que se almacenan en el ecosistema de Hadoop.

Tipos de particionamiento:
Hay dos tipos de particionamiento que son los siguientes.

  1. Particionamiento estático
  2. Particionamiento dinámico

Particionamiento dinámico:
el particionamiento dinámico es el enfoque estratégico para cargar los datos de la tabla no particionada donde la única inserción en la tabla de partición se denomina partición dinámica. En el particionamiento dinámico, los valores de las tablas particionadas existen de forma predeterminada, por lo que no es necesario pasar el valor de esas columnas manualmente.

Características del Particionamiento Dinámico:
Algunas de las características del Particionamiento Dinámico son las siguientes.

  • Para manejar grandes cantidades de datos que se almacenan en almacenamiento distribuido en ese caso, la partición dinámica es la mejor opción.
  • El particionamiento dinámico se puede realizar en la tabla externa de Hive y en la tabla administrada.
  • En el particionamiento dinámico, no hay ningún requisito de la cláusula where.
  • Si desea realizar una partición en las tablas sin saber el número de columnas, en ese caso puede usar la partición dinámica.

Operaciones de particionamiento dinámico:
ahora realicemos algunas de las operaciones de particionamiento dinámico. Puede preferir ubuntu, que sería rápido, ya que las operaciones son las siguientes.

Paso-1: 
En primer lugar, necesitamos crear una base de datos en la que desee realizar la operación de creación de una tabla.

hive>Create database dynamic_Demo;
hive>use dynamic_demo //here we have selected the above created database.

Paso 2: 
después de la selección de la base de datos de la lista disponible. Ahora habilitaremos la partición dinámica usando los siguientes comandos son los siguientes.

hive> set hive.exec.dynamic.partition=true;    
hive> set hive.exec.dynamic.partition.mode=nonstrict;  

Paso 3: 
Cree cualquier tabla con un nombre de tabla adecuado para almacenar los datos.

hive>CREATE TABLE food_prices (
series_reference string,
Period string,
data_value int,
status string,
units string,
subject string,
product string,
series_title string,
year string
)ROW FORMAT DELIMITED  
fields terminated by ','
TBLPROPERTIES ("skip.header.line.count"="1");

Paso 4: 
ahora, en el siguiente paso, carguemos los datos que hemos creado con el siguiente comando.

hive>load data local inpath '/home/bigdata/Downloads/food_prices.csv' 
     into table food_prices;

Paso 5:  
Para crear una tabla particionada, debemos seguir el siguiente comando.

create table partitioned_food_prices
 (
 series_reference string,
 Period string,
 data_value int,
 status string,
 units string,
 subject string,
 product string,
 series_title string
 )partitioned by (year string);

Paso 6: 
ahora cargaremos los datos en la tabla particionada usando el siguiente comando.

hive> insert overwrite table partitioned_food_prices  partition(year) 
select *  from default.food_prices;

Paso 7: 
realicemos algunas operaciones de consulta.

hive>select * partitioned_food_prices limit 5

Paso 8: 
el paso final es eliminar la columna de partición dinámica.

hive>alter table partioned_food_prices drop partition (year = '2019')

Publicación traducida automáticamente

Artículo escrito por manasmohapatra y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *