Formatos de datos compatibles con la inteligencia en tiempo real
La ingesta de datos es el proceso por el que se agregan datos a una tabla y se ponen a disposición para su consulta en la inteligencia en tiempo real. En el caso de los métodos de ingesta que no sean la ingesta desde consulta, los datos deben tener uno de los formatos admitidos. En la siguiente tabla se enumeran y describen los formatos que admite la inteligencia en tiempo real para la ingesta de datos.
Nota:
Antes de ingerir datos, asegúrese de que tengan el formato correcto y de que definan los campos esperados. Se recomienda usar el validador de su elección para confirmar que el formato sea válido. Por ejemplo, puede encontrar útiles los siguientes validadores para comprobar archivos CSV y JSON:
- CSV: http://csvlint.io/
- JSON: https://jsonlint.com/
Para obtener más información sobre por qué podría producirse un error en la ingesta, consulte Errores de ingesta.
Format | Extensión | Descripción |
---|---|---|
ApacheAvro | .avro |
Formato Avro compatible con tipos lógicos. Se admiten los siguientes códecs de compresión: null , deflate y snappy . La implementación del lector del formato apacheavro se basa en la apacheavro . Para obtener información sobre la ingesta de archivos Capture Avro de Event Hubs, consulte asignación de esquemas para archivos Avro de captura de Event Hubs. |
Avro | .avro |
Una implementación heredada del formato AVRO basada en la biblioteca de .NET. Se admiten los siguientes codecs de compresión: null y deflate (para snappy , utilice el formato de datos ApacheAvro ). |
CSV | .csv |
Un archivo de texto con valores separados por comas (, ). Consulte RFC 4180: Formato común y tipo MIME para archivos de valores separados por comas (CSV). |
JSON | .json |
Un archivo de texto con objetos JSON delimitados por \n o \r\n . Consulte JSON Lines (JSONL). |
MultiJSON | .multijson |
Un archivo de texto con una matriz JSON de contenedores de propiedades (cada uno de los cuales representa un registro) o cualquier número de contenedores de propiedades delimitados por espacios en blanco, \n o \r\n . Cada contenedor de propiedades se puede distribuir en varias líneas. Este formato se prefiere a JSON , salvo que los datos sean contenedores sin propiedades. |
ORC | .orc |
Un archivo ORC. |
Parquet | .parquet |
Un archivo Parquet. |
PSV | .psv |
Un archivo de texto con valores separados por barras verticales (| ). |
RAW | .raw |
Un archivo de texto cuyo contenido completo es un valor de cadena único. |
SCsv | .scsv |
Un archivo de texto con valores separados por punto y coma (; ). |
SOHsv | .sohsv |
Un archivo de texto con valores separados por SOH. (SOH es un punto de código ASCII 1; este formato lo usa Hive en HDInsight). |
TSV | .tsv |
Un archivo de texto con valores separados por tabulaciones (\t ). |
TSVE | .tsv |
Un archivo de texto con valores separados por tabulaciones (\t ). Se utiliza un carácter de barra diagonal inversa (\ ) para el escape. |
TXT | .txt |
Un archivo de texto con líneas delimitadas por \n . Se omiten las líneas vacías. |
W3CLOGFILE | .log |
Formato de archivo de registro web normalizado por W3C. |
Nota:
- No se admite la ingesta desde sistemas de almacenamiento de datos que proporcionan funcionalidad ACID sobre los archivos de formato Parquet normales (por ejemplo, Apache Iceberg o Apache Hudi).
- No se admite Avro sin esquema
Formatos de compresión de datos admitidos
Tanto los blobs como los archivos se pueden comprimir con cualquiera de los siguientes algoritmos de compresión:
Compresión | Extensión |
---|---|
GZip | .gz |
Zip | .zip |
Indique la compresión anexando la extensión al nombre del blob o archivo.
Por ejemplo:
MyData.csv.zip
indica un blob o archivo con formato CSV, comprimido con ZIP (varios archivos o uno archivo).MyData.json.gz
indica un blob o un archivo con formato JSON, comprimido con GZip.
Los nombres de blobs o archivos que no incluyen extensiones de formato y solo incluyen la compresión (por ejemplo, MyData.zip
) también se admiten. En este caso, el formato de archivo se debe especificar como una propiedad de la ingesta, ya que no se puede deducir.
Nota:
- Algunos formatos de compresión mantienen un seguimiento de la extensión de archivo original como parte del flujo de compresión. Normalmente, esta extensión se omite para determinar el formato de archivo. Si este no se puede determinar a partir del nombre de archivo o blob (comprimido), debe especificarse mediante la propiedad de ingesta
format
. - No se debe confundir con el códec de compresión interno (nivel de fragmento) utilizado por los formatos
Parquet
,AVRO
yORC
. El nombre de la compresión interna normalmente se agrega al nombre de archivo antes de la extensión de formato de archivo, por ejemplo:file1.gz.parquet
,file1.snappy.avro
, etc.