再谈H2的MVStore与MVMap
2024-08-26 20:56:15
对H2的[MVStore]: http://www.cnblogs.com/simoncook/p/5188105.html 这篇文章的补充。
概述
我们通常用的map,比如HashMap LinkedHashMap ConcurrentHashMap这些基本能力是用来存储kv,并能按key获取,支持泛型,提供对整个map进行迭代(含entryset迭代),有些还提供顺序放入功能,有些还提供并发存和取的能力。
那么h2的MVMap多提供了哪些特殊的能力?
MVMap提供的能力
- 与
MVStore
配合支持持久化,且此特性具有开关 - 对put的数据有版本的概念,支持打开一个过去版本(旧版本)的
MVMap
的实例,并且支持旧版本的个数可以设置。
MVStore提供的能力
同样从 TestMVStore
测试用例着手分析:
- 支持开启一个命名的
MVMap
,支持命名map的rename。 - 支持 commit与rollback操作。
回滚操作不仅支持MVMap
的put动作 还支持从MVStore
中remove map的操作等。但是remove map的操作进行rollback时 仅仅能将map rollback回来,map中的数据不能回滚回来了。 支持命名map的rename的动作回滚。 - 通过
MVMap
的isVolatile
标识,支持对管理的MVMap可选持久化。 - 支持压缩与高压缩比压缩。
- 通过
MVMap
的能力打开指定版本的数据。 - 支持文件存储,支持堆外存储。
- 支持commit动作的延时时间设置。
- 支持存储加密。
最新文章
- DPA 9.1.85 升级到DPA 10.0.352流程
- HNU 12868 Island (简单题)
- 剑指Offer 二进制中1的个数
- Linux ThunderBird Exchange 过期
- Less使用——让老司机带你飞
- LR(1)表生成算法演示程序
- java 获取随机数的三种方法
- Set下面HashSet,TreeSet和LinkedHashSet的区别
- m,mm,mmm的用法
- 1441: Min
- 自己写编程语言-m语言
- Spring Mvc和Spring Boot读取Profile方式
- PHP异常处理、错误捕获和自动加载的一些总结
- 特殊篮子问题——C语言暴力破解
- Lambda表达式select()和where()的区别
- stardict dict url
- c++ 11开始语言本身和标准库支持并发编程
- HTML5 Canvas游戏开发(二)高级功能
- GridView的点击事件冲突解决
- js当前页面刷新并且清空文本内容的方法
热门文章
- mitmproxy抓包软件在mac上边的安装
- Java中super关键字的作用与用法
- 【js类库AngularJs】学习angularJs的指令(包括常见表单验证,隐藏等功能)
- SQL Server 2016,2014 “无法找到数据库引擎启动句柄”
- Python +selenium之设置元素等待
- AutoIt上传非input控件方式的文件脚本
- 洛谷 P2038 无线网络发射器选址
- jquery的uploadify插件实现的批量上传V3.2.1版
- [论文理解] Rapid-Object-Detection-using-a-Boosted-cascade-of-simple-features
- python-下拉框