📊 大数据文件格式对比器

Parquet / ORC / Avro / TextFile / JSON / SequenceFile 全方位对比

全部对比
ETL数仓
流式写入
机器学习
冷归档
特性 📦 Parquet 📦 ORC 📦 Avro 📄 TextFile (CSV) 📄 JSON 📦 SequenceFile
数据模型 列式 列式 行式 行式 行式 行式(KV)
压缩比 极高(3-10x) 极高(3-10x) 中等(2-5x) 低(1-2x) 低(1-2x) 中等(2-4x)
读性能 极快(列裁剪) 极快(列裁剪) 中等(全行读取) 慢(全量解析) 慢(全量解析) 中等
写性能 中等 中等
Schema演化 支持(向后兼容) 有限支持 优秀(完整演化) 不支持 无Schema 不支持
嵌套类型 支持(Map/List/Struct) 支持(Map/Array/Struct) 支持(Record/Array/Map) 不支持 原生支持 可序列化
Predicate Pushdown 支持 支持 不支持 不支持 不支持 不支持
列裁剪 支持 支持 不支持 不支持 不支持 不支持
Splitable 需BZip2/LZO 需BZip2
Hive兼容 ✅(Hive原生) ✅(需SerDe) ✅(需SerDe) 需InputFormat
Spark兼容 ✅(默认格式) 需特殊API
Kafka兼容 需转换 需转换 ✅(原生) 需解析 不适合
人类可读 ❌(二进制) ❌(二进制) ❌(二进制) ❌(二进制)
压缩算法 Snappy/GZIP/ZSTD/LZ4 ZLIB/Snappy/LZO/ZSTD Snappy/Deflate/BZip2 GZIP/BZip2/LZO/Snappy GZIP/BZip2 取决于Codec
最佳场景 分析查询、数仓 Hive数仓、ORC向量化 消息传递、Schema演化 数据导入、调试 半结构化、API MR中间数据

💡 场景推荐