对比
Parquet vs JSON
Parquet 是面向分析的二进制列式格式;JSON 是用于交换结构化数据的文本格式。大型分析数据集常用 Parquet,API 和配置中则常见 JSON。
应该选择哪种格式?
分析系统需要反复读取大型数据集中的选定列时,可考虑 Parquet。API 或需要可读文本表示的数据交换可选 JSON。
适用于 Parquet
为分析保存结构化表格
- 只需读取部分列的大型数据集
适用于 JSON
Web API、配置文件和数据交换
- 传递结构化数据
基本信息
| 项目 | Parquet | JSON |
|---|---|---|
| 扩展名 | .parquet | .json |
| MIME 类型 | application/vnd.apache.parquet | application/json |
| 常见用途 | 为分析保存结构化表格 | Web API、配置文件和数据交换 |
| 打开方式 | 使用支持 Parquet 的工具检查模式、列类型、行数和值。 | 可使用文本编辑器、IDE或支持JSON的查看器打开。 |
| 导出或转换 | 从 CSV 等格式转换时,检查类型、空值、时间戳、编码、分区和行数。 | 可使用应用程序或转换工具将其转换为CSV等格式。 |
按用途选择
只需读取部分列的大型数据集
为分析保存结构化表格
Parquet传递结构化数据
Web API、配置文件和数据交换
JSON关键点 1
Parquet 按列组织数据,并通过模式和列块支持分析读取。
进一步了解差异关键点 2
JSON 用文本表示对象和数组,广泛用于 API 与配置文件。
进一步了解差异进一步了解差异
Parquet 通常需要兼容的库或分析工具;JSON 可直接作为文本查看。处理大型 JSON 工作负载时,应测量存储和解析成本。
- 转换可能改变类型、空值、时间戳、数值精度和嵌套结构的表示方式。
- 应根据访问模式和接收工具选择,不能假设任何一种格式总是更小或更快。
常见问题
JSON 能在分析中替代 Parquet 吗?
某些工作负载可以使用 JSON,但 Parquet 专为列式分析读取设计。请用代表性数据测试存储、查询性能和工具支持。