H2 Database MVStore 初始化
作用
MVStore(multi-version store):
H2 的默认存储子系统,支持多版本,持久化的、日志结构 的 键值存储。
功能
Maps
每个 store 包含多个 mvMaps,可以通过 java.util.Map 接口访问
Versions
支持多版本
Transactions
支持事务(并发事务&两阶段提交)
Concurrent Operations and Caching
支持并发读写
Log Structured Storage
日志结构化存储
支持文件存储和内存操作
支持可插拔
文件存储格式
# 文件存储格式
[ file header 1 ] [ file header 2 ] [ chunk ] [ chunk ] ... [ chunk ]
# chunk 存储格式
[ header ] [ page ] [ page ] ... [ page ] [ footer ]
结构
File Header 文件头
Chunk Format 块
Page Format 页
Metadata Map 元数据
FileHeader
文件头有两个 file header 1 和 file header 2,内容完全相同。
file header 1: