问题标签 [mapdb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
153 浏览

java - MapDB treemap.clear() 需要永远

我在 mapdb 中有包含 150K 条目的树形图。调用 treemap.clear() 需要几分钟。我怎样才能快速做到这一点?创建一个新的

给出崩溃 org.mapdb.DBException$WrongConfiguration:命名记录已存在:pageCache。我怎样才能在合理的时间内清除收集?

谢谢。

0 投票
0 回答
279 浏览

java - 如何使用 HTreeMap 填充列表

我正在尝试使用 mapDB 中的 HTreeMap 来填充 CSV 文件中的百万条目列表,但是每次我将数据插入列表时,HTreeMap 的前一个条目都会被覆盖。

避免在最终值列表中覆盖 HTreeMap 的唯一方法是创建另一个哈希图的数据库连接,但是使用此解决方案,Java 堆大小存在异常。

有没有一种巧妙的方法来使用 HTreeMap 读取一百万多条记录并将其添加到列表而不复制数据?

执行上述代码时报出的异常如下。
PS:utility.CSVHandler.fn_ReadCSV_GapListHTMap 是我设计的自定义类。

0 投票
2 回答
487 浏览

java - MapDB 列表类型?

我正在使用 mapdb 3.0.7

我在这里看到了各种散列图和树图存储类型。

但是我有一个需要将 aList<String>持久化到 mapdb 的用例。

这个版本的 mapDB 甚至支持这个吗?

0 投票
1 回答
575 浏览

java - Java缓存库mapdb过期最大大小

我想使用mapdb库来缓存 max n 对象。我写了这样的东西:

我的预期结果应该是:

但我得到了(并不总是按这个顺序):

我确信这只是我对使用这个库的误解,所以有人可以告诉我我做错了什么吗?

0 投票
1 回答
176 浏览

java - 同步数组列表中的竞争条件

我在同步块中包含对象列表的处理,但最终处于竞争状态。我错误地使用了同步块还是我的代码有任何其他问题?该列表实际上是用 mapdb 实例化的。

我期望一个对象仅由一个线程处理。如果第二个线程尝试分派它,则状态条件应该失败。但是我得到了输出,因为所有线程都处理了很少的消息。

在此处提供示例输出。

ID 为 222 的消息由所有 3 个线程处理。我应该怎么做才能确保同步?

0 投票
1 回答
641 浏览

java - 为什么 MapDB 不能与 kotlin 一起使用,但可以与 Java 一起使用?

我是 Kotlin 的新手。我不明白为什么 Map DB 不适用于 kotlin。我试过谷歌,但没有帮助。

毕业典礼

文件.kt

错误:(7, 13) Kotlin:类型不匹配:推断的类型是字符串但什么都没有?预料之中。投影类型 HTreeMap 限制使用 public open fun put(key: K?, value: V?): V? 在 org.mapdb.HTreeMap 中定义

错误:(7, 18) Kotlin:类型不匹配:推断类型是字符串但什么都没有?预料之中。投影类型 HTreeMap 限制使用 public open fun put(key: K?, value: V?): V? 在 org.mapdb.HTreeMap 中定义

但这适用于 Java。

0 投票
0 回答
441 浏览

java - mapDb 将列表对象存储在堆外或文件中

我想使用 mapDb 明智地存储 List 对象语法,不会引发任何错误,但在获取地图数据后获取类强制转换异常。但我确实在 Eclipse 中看到了以下警告:此行的多个标记

  • 类型安全:HTreeMap 类型的表达式需要未经检查的
    转换才能符合 ConcurrentMap>。
  • 类型安全:GroupSerializer 类型的表达式需要未经检查的
    转换才能符合 Serializer。
  • 类型安全:DB 类型的泛型方法 hashMap(String, Serializer, Serializer) 的未经检查的调用 hashMap(String, GroupSerializer, GroupSerializer)。

下面是代码。

不要在我做错的地方使用,您的输入将很有价值

0 投票
0 回答
89 浏览

kotlin - 地图数据库 | 分批阅读

如何从 MapDB 中批量读取记录,而不是一次全部读取?

我有一个通过 MapDB 保存在磁盘上的 1,000 条记录的列表。

我能够一次阅读所有这些记录。

但是,我想在内存中一次仅读取 100 个块/批次(即不一次获取内存中的全部 1000 条记录)?

0 投票
1 回答
489 浏览

mapdb - map.clear() 方法后未删除 MapDB 文件

我将 MapDB 用于键值数据库以获得更好的性能。在 map.clear() 之后,我的文件没有在磁盘中删除。我需要在 remove() 或 clear() 方法之后回收磁盘空间。下面是我的代码片段。

map.clear() 后我的测试数据库文件大小未回收 - clear() 后大小相同。

0 投票
0 回答
409 浏览

java - Java MapDB:如何处理“已经打开”的异常?

我是在 Java 中使用 MapDB 的新手。

如果程序在“某些代码”中崩溃,那么 make() 会抛出异常。

我该如何处理?必须有一种方法可以使程序崩溃,并且我可以解锁 MapDB 而不删除它(在不同的程序启动之间以及不同的 foo 调用之间)。

问题不在于异常处理和避免崩溃!在某些情况下,DB 不会安全关闭(例如 poweroff、kernel、JVM,...)。

谢谢!