Formato de fila de Hive y SerDe
La serialización es el proceso de convertir un objeto en una secuencia de bytes.
La serialización es el proceso de restaurar una secuencia de bytes a un objeto.
La serialización de objetos tiene dos propósitos principales: la persistencia de objetos, es decir, convertir objetos en secuencias de bytes y guardarlos en archivos y la transmisión en red de datos de objetos.
Además de los dos puntos anteriores, la serialización de Hive también incluye: la deserialización de Hive consiste en deserializar la clave/valor en los valores de cada columna de la tabla de Hive. Hive puede cargar datos fácilmente en tablas sin conversión de datos, lo que puede ahorrar mucho tiempo al procesar datos masivos.
SerDe explica cómo Hive procesa un registro, incluyendo dos funciones: Serializar/deserizar. Serialize convierte los objetos Java utilizados por Hive en secuencias de bytes que se pueden escribir en HDFS u otros archivos continuos que el sistema puede reconocer. Deserilize convierte una cadena o un flujo binario en un objeto Java que Hive puede reconocer. Por ejemplo, la instrucción select usará el objeto Serialize para analizar datos HDFS; la instrucción Insert usará Deserilize y los datos se escribirán en el sistema HDFS y deberán serializarse.
Al leer archivos HDFS, se ignorarán las partes críticas. Al escribir archivos HDFS, la clave es siempre una constante y los datos generales de la fila se almacenan en el valor.
Se puede utilizar Serde definido por el usuario o Serde nativo al crear una tabla. Si no se especifica ROW FORMAT o se especifica RowFormat Defined, se utiliza el Serde nativo. Hive ha implementado muchos Serde personalizados, que también se cubrieron cuando presentamos el almacenamiento anterior:
Utilice la regularización para serializar datos de filas, como se muestra en el siguiente ejemplo:
En formato json para guardar archivos de texto.
Los archivos de texto se almacenan en formato CSV/TSV.
Formato de fila
' org . Apache . hive . opencsvserde '
Almacenado como archivo de texto
ejemplo Crear un archivo tsv. Por defecto es el delimitador de archivos csv.
CSVSerde de Hive se implementa en base a csv-serde.
Finalmente, aquí está la explicación de serde de la conferencia de usuarios de Facebook Hive en agosto de 2009.