porta microsoft management azure azure-data-lake u-sql

microsoft - ¿Cómo preprocesar y descomprimir el archivo.gz en Azure Data Lake store?



porta azure (2)

De acuerdo con el artículo principal de EXTRACT , el método EXTRACT U-SQL reconoce automáticamente el formato GZip, por lo que no necesita hacer nada especial.

Extracción de datos comprimidos

En general, los archivos se pasan como están al UDO. Una excepción es que EXTRACT reconocerá los archivos comprimidos de GZip con la extensión de archivo .gz y los descomprimirá automáticamente como parte del proceso de extracción. El UDO real verá los datos sin comprimir. Para cualquier otro esquema de compresión, los usuarios tendrán que escribir su propio extractor personalizado. Tenga en cuenta que U-SQL tiene un límite superior de 4 GB en un archivo comprimido GZip. Si aplica su expresión EXTRACTO a un archivo mayor que este límite, se generará el error E_RUNTIME_USER_MAXCOMPRESSEDFILESIZE durante la compilación del trabajo.

Parece que esta característica ha estado disponible por un tiempo, pero se actualizó en noviembre de 2016 para introducir el límite de 4 GB. Mira aquí .

Aquí hay un ejemplo simple que convierte un archivo descomprimido y separado por comas en separados por canalización:

DECLARE @file1 string = @"/input/input.csv.gz"; @file = EXTRACT col1 string, col2 string, col3 string FROM @file1 USING Extractors.Csv(silent : true); @output = SELECT * FROM @file; OUTPUT @output TO "/output/output.txt" ORDER BY col1 //FETCH 500 ROWS USING Outputters.Text(quoting : false, delimiter : ''|'');

¿Admitirá USQL para comprimir y descomprimir un archivo?

Me gustaría descomprimir un archivo comprimido para realizar algunas validaciones y, una vez que se pasan, me gustaría comprimir los datos en un nuevo archivo.