Formatos de dados suportados por Real-Time Intelligence
A ingestão de dados é o processo pelo qual os dados são adicionados a uma tabela e disponibilizados para consulta em Inteligência em Tempo Real. Para todos os métodos de ingestão, exceto ingest-from-query, os dados devem estar em um dos formatos suportados. A tabela a seguir lista e descreve os formatos que o Real-Time Intelligence suporta para ingestão de dados.
Nota
Antes de ingerir dados, certifique-se de que os dados estão formatados corretamente e define os campos esperados. Recomendamos usar o seu validador preferido para confirmar que o formato é válido. Por exemplo, você pode achar os seguintes validadores úteis para verificar arquivos CSV ou JSON:
- CSV: http://csvlint.io/
- JSON: https://jsonlint.com/
Para obter mais informações sobre por que a ingestão pode falhar, consulte Falhas de ingestão.
Formato | Extensão | Description |
---|---|---|
ApacheAvro | .avro |
Um formato AVRO com suporte para tipos lógicos. Os seguintes codecs de compressão são suportados: null , deflate e snappy . A implementação do apacheavro formato pelo leitor é baseada na biblioteca oficial Apache Avro. Para obter informações sobre como ingerir arquivos Avro de captura de Hubs de Eventos, consulte Mapeamento de esquema para arquivos Avro de captura de Hubs de Eventos. |
Avro | .avro |
Uma implementação herdada para o formato AVRO baseado na biblioteca .NET. Os seguintes codecs de compressão são suportados: null , deflate (for snappy - use ApacheAvro o formato de dados). |
CSV | .csv |
Um arquivo de texto com valores separados por vírgulas (, ). Consulte RFC 4180: Common Format and MIME Type for Comma-Separated Values (CSV) Files. |
JSON | .json |
Um arquivo de texto com objetos JSON delimitados por \n ou \r\n . Consulte Linhas JSON (JSONL). |
MultiJSON | .multijson |
Um arquivo de texto com uma matriz JSON de pacotes de propriedades (cada um representando um registro), ou qualquer número de pacotes de propriedades delimitado por espaço em branco, \n ou \r\n . Cada saco de propriedade pode ser espalhado em várias linhas. Este formato é preferível ao JSON , a menos que os dados não sejam sacos de propriedade. |
ORC | .orc |
Um arquivo ORC. |
Parquet | .parquet |
Um arquivo Parquet. |
PSV | .psv |
Um arquivo de texto com valores separados por pipe (| ). |
CRU | .raw |
Um arquivo de texto cujo conteúdo inteiro é um único valor de cadeia de caracteres. |
SCsv | .scsv |
Um arquivo de texto com valores separados por ponto-e-vírgula (; ). |
SOHsv | .sohsv |
Um arquivo de texto com valores separados por SOH. (SOH é o ponto de código ASCII 1; este formato é usado pelo Hive no HDInsight.) |
TSV | .tsv |
Um arquivo de texto com valores separados por tabulações (\t ). |
TSVE | .tsv |
Um arquivo de texto com valores separados por tabulações (\t ). Um caractere de barra invertida (\ ) é usado para escapar. |
TXT | .txt |
Um arquivo de texto com linhas delimitadas por \n . Linhas vazias são ignoradas. |
W3CLOGFILE | .log |
Formato de arquivo de log da Web padronizado pelo W3C. |
Nota
- A ingestão de sistemas de armazenamento de dados que fornecem funcionalidade ACID em cima de arquivos de formato Parquet regulares (por exemplo, Apache Iceberg, Apache Hudi) não é suportada.
- Avro sem esquema não é suportado
Formatos de compressão de dados suportados
Blobs e arquivos podem ser compactados através de qualquer um dos seguintes algoritmos de compactação:
Compressão | Extensão |
---|---|
GZip | .gz |
Código Postal | .zip |
Indique a compactação anexando a extensão ao nome do blob ou arquivo.
Por exemplo:
MyData.csv.zip
indica um blob ou um arquivo formatado como CSV, compactado com ZIP (arquivo ou um único arquivo)MyData.json.gz
indica um blob ou um arquivo formatado como JSON, compactado com GZip.
Blob ou nomes de arquivo que não incluem as extensões de formato, mas apenas compactação (por exemplo, MyData.zip
) também são suportados. Nesse caso, o formato de arquivo deve ser especificado como uma propriedade de ingestão porque não pode ser inferido.
Nota
- Alguns formatos de compressão mantêm o controle da extensão de arquivo original como parte do fluxo compactado. Esta extensão é geralmente ignorada para determinar o formato de arquivo. Se o formato de arquivo não puder ser determinado a partir do blob (compactado) ou nome de arquivo, ele deverá ser especificado por meio da
format
propriedade ingestion. - Não deve ser confundido com codec de compressão interno (nível de bloco) usado por
Parquet
,AVRO
eORC
formatos. O nome de compressão interna é geralmente adicionado a um nome de arquivo antes da extensão do formato de arquivo, por exemplo:file1.gz.parquet
,file1.snappy.avro
, etc.