引入支持的数据格式

适用于:✅Azure 数据资源管理器

数据引入会将数据添加到表,并使其可用于查询。 对于 ingest-from-query 以外的所有引入方法,数据必须采用下述受支持格式中的一种。 下表列出了数据引入支持的格式。

注意

在引入数据之前,请确保数据的格式正确并定义所需字段。 建议使用首选验证程序来确认格式是否有效。 例如,你可能会发现以下验证程序可用于检查 CSV 或 JSON 文件:

若要了解引入失败的原因,请参阅 引入失败

Azure 数据资源管理器中的“引入”错误代码

Format 分机 说明
ApacheAvro .avro 支持逻辑类型Avro格式。 支持的压缩编解码器: nulldeflatesnappy。 格式的 apacheavro 读取器实现基于官方 Apache Avro 库。 有关处理事件中心捕获 Avro 文件的详细信息,请参阅 处理事件中心捕获 Avro 文件
Avro .avro 基于 .NET 库Avro 格式的旧实现。 支持的压缩编解码器: nulldeflate。 若要使用 snappy,请使用 ApacheAvro 数据格式。
CSV .csv 一个采用逗号分隔值 (,) 的文本文件。 请参阅 RFC 4180:Common Format and MIME Type for Comma-Separated Values (CSV) Files(RFC 4180:逗号分隔值 (CSV) 文件的常见格式和 MIME 类型)。
JSON .json 一个文本文件,其中包含使用 \n\r\n 分隔的 JSON 对象。 请参阅 JSON Lines (JSONL)
MultiJSON .multijson 一个文本文件,其中包含属性包的 JSON 数组(每个属性包表示一条记录),或者用空格分隔的任意数量的属性包, \n或者 \r\n。 每个属性包可以跨越多行。
ORC .orc 一个 ORC 文件
Parquet .parquet 一个 Parquet 文件
PSV .psv 一个采用竖线分隔值 (|) 的文本文件。
RAW .raw 一个文本文件,其整个内容都是单个字符串值。
SCsv .scsv 一个采用分号分隔值 (;) 的文本文件。
SOHsv .sohsv 一个采用 SOH 分隔值的文本文件。 (SOH 为 ASCII 代码点 1;此格式由 Hive on HDInsight 使用。)
TSV .tsv 一个采用制表符分隔值 (\t) 的文本文件。
TSVE .tsv 一个采用制表符分隔值 (\t) 的文本文件。 反斜杠字符 (\) 用于转义。
TXT .txt 一个文本文件,使用 \n 分隔的行。 空行将被跳过。
W3CLOGFILE .log 符合 W3C 标准的 Web 日志文件格式。

注意

  • 不支持从在常规 Parquet 格式文件之上提供 ACID 功能的数据存储系统(例如 Apache Iceberg、Apache Hudi 和 Delta Lake)进行数据引入。
  • 不支持无架构 Avro。

有关使用 jsonmultijson 格式引入数据的详细信息,请参阅 引入 JSON 格式

支持的数据压缩格式

使用以下算法压缩 Blob 和文件:

压缩 分机
gzip .gz
zip .zip

可以通过把扩展名追加到 Blob 或文件名来标识压缩。

例如:

  • MyData.csv.zip 指示格式化为 CSV 的 blob 或文件,使用 zip(存档或单个文件)进行压缩。
  • MyData.json.gz 指示格式化为 JSON 的 blob 或文件,使用 gzip 进行压缩。

还支持仅包含压缩扩展名(例如) MyData.zip的 Blob 或文件名。 在这种情况下,请将文件格式指定为引入属性,因为它无法推断。

注意

  • 某些压缩格式将原始文件扩展名存储在压缩流中。 确定文件格式时,请忽略此扩展名。 如果无法从压缩 blob 或文件名中确定文件格式,请使用format 引入属性指定文件格式。
  • 不要将这些与ParquetAVROORC格式所使用的内部块级压缩编解码器混淆。 内部压缩名称通常在文件扩展名(例如,file1.gz.parquetfile1.snappy.avro)之前添加。
  • 不支持 Deflate64/增强的 Deflate zip 压缩方法。 Windows 内置 zip 压缩器可以在大于 2 GB 的文件上使用此方法。