Saga de la Fundación de Desarrollo de Hadoop Big Data: Nueve, HiveQL

En primer lugar, lo que HiveQL?

1.HiveQL general
Colmena es un sistema de análisis de almacenamiento de datos, hablamos antes, se trata principalmente de la consulta SQL para completar el proceso de MapReduce
En HiveQL esencia es una especie de SQL. Colmena a consulta por el análisis de contenido HiveSQL necesidad de hacer que no están familiarizados con los usuarios de MapReduce también puede utilizar simplemente SQL para consultar, agregar y analizar datos.
2.HiveQL características y Colmena
(1) con una base de datos relacional SQL es un poco diferente, pero el apoyo de la inmensa mayoría de los estados, como DDL, DML y funciones agregadas comunes consulta de combinación, las condiciones de la consulta.
(2) la colmena no es adecuado para en línea, no proporcionan la función de consulta en tiempo real.
Es más adecuado para su uso en un gran número de trabajos por lotes en base a los datos inmutables. Como HiveQL no admite la actualización no soporta indexación y asuntos, y sus sub-consulta y unirse a las operaciones son muy limitados, ya que depende de la plataforma Hadoop que subyace a esa decisión, pero algunas de sus características es que SQL no puede igualar.
(3) Colmena escalable, soporte de cluster Hadoop añadiendo dinámicamente dispositivo, las características de tolerancia escalables y de fallo
 
A continuación, una breve introducción a las operaciones más comunes:
 

En segundo lugar, crear tablas y tablas de borrado

1. Crear una tabla

    
    
  1. CREAR [① TEMPORAL ] [② EXTERNO ] TABLA [③ SI NO EXISTE ] [database] nombre_tabla 
  2.     [(Col_name data_type) [⑨ COMENTARIO col_comment], ... [constraint_sepecification]]
  3.     [ CÓMO table_comment]
  4.     [④PARTITIONED POR (col_name data_type) [ COMENTARIO col_comment], ...)]
  5.     [⑤CLUSTERED POR (col_name1, col_name2, ...) [⑩SORTED POR (col_name [ ASC | DESC ], ...)] EN num_buckets BUCKETS]
  6.     [sesgada POR (col_name, col_name, ...)]
  7.         EN ((col_value, col_value, ...), (col_value, col_value, ...), ...)
  8.         [ STORED AS directorios]
  9.     [
  10.     [⑥ FILA FORMATO ROW_FORMAT]
  11.     [⑦ STORED AS file_format]
  12.         | GUARDADO POR '' [ CON SERDEPROPERTIES (...)]
  13.     ]
  14.     [Hdfs_path LOCALIZACIÓN]
  15.     ...... (más parámetros se pueden encontrar en la documentación oficial)
  16. CREAR [ TEMPORAL ] [ EXTERNO ] TABLA [ SI NO EXISTE ] [database] nombre_tabla
  17.     ⑧ COMO  existing_table_or_view_name
  18.     [Hdfs_path LOCALIZACIÓN]

Las siguientes palabras clave se explican

①TEMPORARY
Crear una tabla temporal, tabla temporal sólo tienen efecto una vez que la sesión actual, la tabla se elimina automáticamente después del final de la sesión.
Nota: No es compatible con campo de partición y crear un índice.
 
②EXTERNAL
Crear una tabla externa, la vía de desarrollo (UBICACIÓN) un puntero a los datos reales al mismo tiempo la construcción de la tabla, crear una tabla externa, grabación único camino a la ubicación en los datos, no a los datos para hacer cualquier cambio. Cuando se elimina la tabla, sólo se elimina la tabla externa de metadatos, no los datos de borrado.
Utilizar la ubicación con hdfs_name
 
③IF NO EXISTE
Crear una tabla con el nombre especificado. Si el mismo nombre de la tabla ya existe, se produce una excepción, el usuario puede utilizar la opción existe si no pasar por alto esta excepción.
 
POR ④PARTITIONED
Una tabla puede tener una o más particiones, cada partición por separado en la presencia de un directorio.
 
POR ⑤CLUSTERED
Puntos barril; puntos de barriles por dos razones, la primera es consulta más eficiente, el segundo es el muestreo más eficiente.
Físicamente, cada cubo es una tabla de particiones o archivos, cada archivo corresponde a la partición de salida de la bañera de MapReduce.
 
FORMATO ⑥ROW
Se utiliza para configurar la tabla creada en el momento de la carga de datos, soporte separador de columnas.
 
⑦STORED AS
[File_format como se almacena]
Se utiliza para especificar el formato de archivo almacenado en la colmena (mencionado en el apartado anterior tiene) . Típicamente vinculante [formato de fila] utilizado.
 
⑧LIKE
Ayudar a las tablas existentes, crear una mesa vacía .
 
⑨COMMENT
Declaración a los comentarios de efecto
 
POR ⑩SORTED
Designado ordenados según la cual la columna.
 
GATOS
person2 crear tabla como seleccionar * de la persona;
Insertar datos al crear una tabla, generar una nueva tabla.
 
2. Eliminar la tabla
(1) Tabla de Delete
[TABLE nombre_tabla DROP]
    Incluyendo la definición y la lista de objetos de mesa eliminación asociada (índice de reglas, aproximadamente, disparadores, claves primarias, y similares). Obviamente, una vez que se elimina la tabla, la tabla contiene todos serán borrados juntos las filas de datos.   
(2) Tabla de truncado
[TABLE nombre_tabla TRUNCATE]
    comando truncado es simplemente borra todas las filas de datos en la tabla. Estructura y toda la tabla de índice sigue existiendo, con destino a pronunciarse sobre la columna, el valor por defecto, la restricción vinculante continúa, y el gatillo es todavía activo. Hasta que se introduce el comando para eliminar una tabla (como se describe más arriba).
 

En tercer lugar, modificar la tabla

1. Cambiar el nombre de la tabla
ALTER TABLE nombre_tabla new_table_name Renombrar para;
 
2. Modificar la tabla de atributos
ALTER TABLE nombre_tabla SET TBLPROPERTIES table_properties;
Notas a la Tabla de modificación, mesa de edición serde separador de columna, y otros cambios en la tabla Sede
 
3. Modificar la tabla de particiones:
(1) nueva partición
ALTER TABLE table_name ADD [IF NOT EXISTS] PARTITION 指定分区 [LOCATION ‘location1’];
    
    

(2) Cambiar nombre partición ALERT TABLA (especificado en la tabla de particiones)

ALTER TABLE table_name ADD [IF NOT EXISTS] PARTITION 指定分区 [LOCATION ‘location1’];
  
  

(3) partición de recuperación automático (el sistema automáticamente partición divide de acuerdo con la estructura de directorios) MSCK

MSCK REPAIR TABLE table_name;
    
    

(4) eliminar la partición

ALTER TABLE table_name DROP [IF EXISTS] PARTITION 指定分区(例:(y='WT0228',m='201501'));
    
    

4. Modificar el nombre de la columna cambio nomCol


    
    
  1. ALTER TABLE nombre_tabla [ PARTITION partition_spec] CAMBIO [ COLUMNA ] col_oldname col_newname tipo_col
  2.     [ CÓMO col_col_comment];

5. Añadir columnas o reemplazo de la columna


    
    
  1. ALTER TABLE nombre_tabla TABLE_NAME
  2.      Añadir | REPLACE COLUMNAS (col_name data_type, ......)

En cuarto lugar, la vista

La vista 1.Hive características:
(1) sólo es una vista lógico, no se materializó vista (es decir, tabla física, materializado vista de datos en sí se almacena)
(2) sólo vista de consulta, no puede cargar / Insertar / Actualizar / Borrar datos
(3) Teniendo en cuenta el tiempo de creación, sólo para salvar a un metadatos cuando la consulta de vista, la vista comenzó a ejecutar a los sub-consultas correspondientes;
 
2. Funcionamiento de vista
(1) crear

    
    
  1. CREAR VISTA [ SI NO EXISTE ] [nombre_base_de_datos.] 
  2.     AS SELECT ...;

(2) modificar

ALTER VIEW [db_name.] view_name SET TBLPROPERTIES table_properties;
    
    

(3) Eliminar

DROP VIEW [IF NOT EXISTS] [db_name.] view_name;
    
    

V. Índice

(1) crear

    
    
  1. CREAR ÍNDICE index_name
  2.     EN TABLA  base_table_name
  3.     AS index_type;

(2) borrado

DROP INDEX [IF EXISTS] index_name ON table_name;
    
    

(3) Modificar

ALTER INDEX index_name ON table_name [PARTITION partition_spec] REBUILD;
    
    

En sexto lugar, la información en pantalla

1. Lista de todas las bibliotecas
VER bases de datos;
 
2. La siguiente tabla muestra todas las bibliotecas
VER EN TABLAS nombre_basedatos;
 
3. Lista de todos los puntos de vista
Muestran vistas [en / desde database_name]
 
Tabla 4. Lista de partición
DEMOSTRACIÓN DE REPARTO nombre_tabla;
 
El índice de visualización
DEMOSTRACIÓN (índice) | ÍNDICES DE table_with_index [(DE | EN) nombre_base_de_datos]; 
 
6. Toda la información columna de la lista de visualización
VER COLUMNAS (DE | EN) nombre_tabla [(DE | EN) nombre_base_de_datos];
 
7. Función de visualización (función personalizada) Información
VER FUNCIONES "a *.";
 
La tabla de bloqueo de pantalla (añadido a la mesa de lectura y escritura) información
DEMOSTRACIÓN DE SEGUROS <nombre_tabla>
 

Siete funciones definidas por el usuario UFD

Hay tres Colmena UDF
1.UDF:
Operando en una sola línea de datos, la conversión de una
2.UDAF:
función de agregado acepta una pluralidad de datos de entrada, genera varias funciones de salida
UDAF implementación personalizada se consigue UDAF herencia de clases.
El paquete frasco añadido al servidor colmena, crear la función
3.UDTF:
Fila de datos en varias filas utilizando la función de
Publicado 18 artículos originales · ganado elogios 0 · Vistas 443

En primer lugar, lo que HiveQL?

Supongo que te gusta

Origin blog.csdn.net/weixin_45678149/article/details/104943527
Recomendado
Clasificación