加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 键值存储建议

发布时间:2020-12-14 05:02:40 所属栏目:Java 来源:网络整理
导读:我需要一个非常基本的key-value存储为 java.我开始使用HashMap,但似乎HashMap有些空间无效(我正在存储大约2000万条记录,似乎需要?6GB的RAM). 该映射是Map Integer,String等等,因此我正在考虑使用GNU Trove TIntObjectHashMap byte [],并将映射值作为ascii字
我需要一个非常基本的key-value存储为 java.我开始使用HashMap,但似乎HashMap有些空间无效(我正在存储大约2000万条记录,似乎需要?6GB的RAM).

该映射是Map< Integer,String>等等,因此我正在考虑使用GNU Trove TIntObjectHashMap< byte []>,并将映射值作为ascii字节数组而不是String存储.

作为一个替代方案,是否有一个键值存储,只需要添加jar文件,不会立即将整个地图保存在RAM中,并且仍然相当快?

解决方法

使用 Berkeley DB.

Berkeley DB stores object graphs,objects in collections,or simple binary key/value data directly in an a btree on disk. This simple,highly efficient approach removes all the unnecessary overhead in ORM solutions. Using the Direct Persistence Layer (DPL) Java developers annotate classes with storage information,much like JPA. This approach is familiar,efficient,and fast. The DPL reduces the complexity of data storage while not sacrificing speed.

这绝对会给你带来巨大的记忆和速度,而不会增加你的应用程序的复杂性.请享用!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读