你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure Synapse 数据资源管理器支持用于引入的数据格式(预览版)
数据引入是将数据添加到表中的过程,可用于在数据资源管理器中进行查询。 对于 ingest-from-query 以外的所有引入方法,数据必须采用下述受支持格式中的一种。 下表列出并说明了数据资源管理器支持用于数据引入的格式。
注意
在引入数据之前,请确保数据的格式正确并定义所需字段。 建议使用首选验证程序来确认格式是否有效。 例如,你可能会发现以下验证程序可用于检查 CSV 或 JSON 文件:
- CSV: http://csvlint.io/
- JSON: https://jsonlint.com/
如需详细了解可能引入失败的原因,请参阅引入失败和数据资源管理器中的引入错误代码。
格式 | 分机 | 说明 |
---|---|---|
ApacheAvro | .avro |
一个支持逻辑类型的 AVRO 格式。 支持以下压缩编解码器:null 、deflate 和 snappy 。 apacheavro 格式的读取器实现基于官方 apacheavro 。 |
Avro | .avro |
基于 .NET 库的 AVRO 格式的旧实现。 支持以下压缩编解码器:null 、deflate (对于 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 分隔的任意数目的属性包。 每个属性包可以分布在多个行上。 此格式优先于 JSON ,除非数据为非属性包。 |
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 日志文件格式。 |
支持的数据压缩格式
可以使用下面的任何压缩算法来压缩 Blob 和文件:
压缩 | 分机 |
---|---|
GZip | .gz |
Zip | .zip |
通过将扩展名追加到 Blob 或文件的名称上来指示压缩。
例如:
MyData.csv.zip
指示格式化为 CSV 且使用 ZIP 进行压缩的 blob 或文件(存档或单个文件)MyData.json.gz
指示格式化为 JSON 且使用 GZip 进行压缩的 blob 或文件。
不包含格式扩展名而只包含压缩名的 Blob 名或文件名(例如 MyData.zip
)也受支持。 在这种情况下,必须将文件格式指定为引入属性,因为不能对它进行推断。
注意
- 某些压缩格式会在压缩的流中记录原始文件扩展名。 在确定文件格式时,通常会忽略此扩展名。 如果不能根据(压缩的)Blob 或文件的名称确定文件格式,则必须通过
format
引入属性指定它。 - 不要与
Parquet
、AVRO
和ORC
格式使用的内部(区块级)压缩编解码器混淆。 内部压缩名称通常在文件格式扩展名之前添加,例如:file1.gz.parquet
、file1.snappy.avro
等。