Cómo exportar los resultados de la consulta de Hive a un archivo txt
INSERT OVERWRITE [LOCAL] DIRECTORY directorio1 select_statement1
Exportar la consulta. resultados al archivo local, tengo problemas al intentar cargarlo usando Excel: no sé el delimitador que utiliza la colmena al exportar el archivo. Tengo problemas al intentar cargarlo en Excel: no sé qué delimitadores usa Hive al exportar el archivo,
y abrirlo en un editor de texto también muestra galimatías.
Finalmente, busqué en la documentación oficial y descubrí que Hive usa el símbolo ^A como separador de campos, de la siguiente manera:
Los datos escritos en el sistema de archivos se serializan en texto, y cada columna se separa con ^A
En Python, puedes usar line.split('\x01') para dividir, o usar line.split('\001'), ten en cuenta que es una sola quote
En Java, puedes usar split("\u0001") para dividir
Si realmente necesitas exportar la consulta a un archivo local, es mejor usar Hive comando:
[sql] Ver copia simple en CODE para ver fragmentos de código derivados de mi fragmento de código
bin/hive -e "select * from test" >> res.csv< / p>
o:
bin/ hive -f sql.q >> res.csv
El archivo sql.q contiene la consulta que desea ejecutar Sentencia. p>
También encontrará este problema cuando use la transmisión hql de colmena. Cuando use hql strreaming para escribir la salida directamente en el directorio hdfs, cuando cree una tabla externa de colmena, la salida de colmena se transmitirá El delimitador entre. La clave y el valor se cambian a \001, por lo que cuando se utiliza la transmisión hql para enviar a la tabla externa de Hive, es mejor cambiar el delimitador de la salida final de la transmisión a \001, y el delimitador de la tabla externa de Hive también debe establecerse en \001, nota: no use ^A y \x01, por ejemplo g.
[html]Ver copia simple en CODE para ver fragmentos de código derivados de mi fragmento de código
Crear tabla externa site_user_mapping_info_month(cadena uid, cadena de etiqueta, cadena project_ids, cadena site_interests) PARTICIONADA POR (cadena de año, cadena de mes) FORMATO DE FILA CAMPOS DELIMITADOS TERMINADOS POR ' \001' UBICACIÓN '/project/site_grouping /site_user_mapping_info_month';