首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何排序项以便更快地插入MapDB BTree?

如何排序项以便更快地插入MapDB BTree?
EN

Stack Overflow用户
提问于 2014-08-27 23:53:38
回答 1查看 1K关注 0票数 2

因此,我有一个大约2000万个键值对的列表,我以不同的方式将数据存储在几个MapDB中,看看它如何影响我的程序性能,为了实验的缘故。

问题是,在mapdb中插入2000万个键值对需要相当长的时间(随机顺序)。因此,我想对我拥有的键值对列表进行排序,这样我就可以更快地插入它们,从而更快地利用它们构建数据库。

那我该怎么做呢?

我想了解如何为MapDB的BTreeSet和BTreeMap,或者使用单键值对的MapDB和一个键具有多个值的MapDB做到这一点。

编辑:我忘了提到,键值对是字符串对象.

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-16 09:48:21

使用内置数据泵创建新的BTreeMap。它具有线性速度和记录数。即使数据不适合内存,它也会对数据进行排序。

代码语言:javascript
运行
复制
Map newMap = db.createTreeMap("map")
    .pumpSource(randomIterator)  //source of data to import
    .pumpBatchSize(1000000)      //sort data from source, batch size must be set so it fits into memory
    .make()
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25538711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档