首页 / 科技百科 / 正文

行式存储和列式存储的区别 

行式存储和列式存储的主要区别如下:

1. 存储方式:行式存储是以行为单位进行存储,将一整行数据作为一个存储单元,数据是按行存储的。而列式存储是以列为单位进行存储,将每个字段独立存储。

2. 写性能:行式存储在写性能方面性能较高,因为写入是一次完成的。而列式存储由于需要把一行记录拆分成单列保存,所以写入次数明显比行存储多,效率较低。

3. 读性能:行式存储在读取整行数据时,性能较高,因为按存储顺序依次读取即可。而列式存储在读取少数几列时,性能高,因为不需要读取无关列。但在读取整行时,需要分别读取所有列,并且拼装成行,所以性能低。

4. 数据压缩:行式存储由于一行中数据有多种类型,所以压缩效果较差。而列式存储由于同一列的数据类型是相同的,所以对压缩算法友好,压缩效率高。

5. 适用场景:行式存储适合读取整行数据的场景,如在线事务处理系统。而列式存储适合大规模数据分析场景,如数据仓库、商业智能。

6. 存储典型代表:行式存储的典型代表是TextFile、SequenceFile,而列式存储的典型代表是ORC、Parquet。

如有侵权请及时联系我们处理,转载请注明出处来自