在 BerkeleyDB JE 中选择不同的辅助键值

Posted

技术标签:

【中文标题】在 BerkeleyDB JE 中选择不同的辅助键值【英文标题】:Select distinct secondary key values in BerkeleyDB JE 【发布时间】:2013-07-17 15:34:39 【问题描述】:

我有一个使用 DPL 的 Berkeley DB JE 设置。

我有一个辅助键字段,它是一个字符串,我想检索该键的所有不同值。不需要额外的过滤,我只想要所有不同的值。

我可以遍历所有条目并向集合添加值,但这似乎非常低效,因为我从数十万行中获取了大约 10 个值。

【问题讨论】:

【参考方案1】:

如果您只需要不同的键(而不是不同的实体),您可以通过调用 SecondaryIndex.keys 然后调用 EntityCursor.nextNoDup 来遍历唯一值。

我建议将有关 Berkeley DB Java 版的问题发布到其OTN forum。

--标记

【讨论】:

以上是关于在 BerkeleyDB JE 中选择不同的辅助键值的主要内容,如果未能解决你的问题,请参考以下文章

BerkeleyDB JE 随机访问时间非线性增加

在 Berkeley DB Core 和 Berkeley DB JE 之间进行选择

如何使用 berkeleydb je“从 xz WHERE xz.a > value 中选择 COUNT(*)”

向 BerkeleyDB-JE 插入数据越来越慢

Berkeley DB 错误:无法锁定 je.lck 文件

不同的 BerkeleyDB 版本有啥区别,我应该选择哪个?