问题标签 [berkeley-db-je]

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 投票
3 回答
338 浏览

java - 从 berkeley db 中删除主索引

我使用 BerkeleyDB 的 java 版本,DPL。

在将数据解析到 BerkeleyDB 时,我将一些时间信息存储在特定的 PrimaryIndex 中。这个 PrimaryIndex 占用大量空间,我想删除存储在那里的所有数据并释放 HD 上使用的空间。

最简单的方法是什么?

谢谢。

0 投票
1 回答
273 浏览

java - 如何在 BerkeleyDB 的 StoredMap 中允许重复?

SortedMap的文档中,它提到以某种方式允许重复。但我无法理解如何。有人可以给我一个例子吗?谢谢

0 投票
1 回答
660 浏览

java - 在 BerkeleyDB JE 中手动创建序列

我想在 BerkeleyDB 中创建一个序列,我可以手动操作,但我不知道该怎么做。我想要一些类似于 SQL 序列对象的东西。我在 API 文档中找到了一个类,但不清楚如何创建一个。

任何帮助是极大的赞赏!

0 投票
0 回答
660 浏览

database - 比较 Berkeley DB 和 H2 DB

我正在比较 Berkeley DB 和 H2 DB 之间的读写性能。进行这种比较的正确方法是什么?目前,我的测试代码检查进行 10000 次放置和 10000 次获取以及 H2 db 10000 插入和 10000 选择所花费的时间。插入的数据大小大致相同,但时间差太大。

0 投票
1 回答
104 浏览

database - 迭代伯克利数据库 JE 中的环境

我试图在 Berkeley DB Java 版的给定实例中列出所有现有的数据库环境(com.sleepycat.je.Environment)。找不到与此相关的任何 API 或文档。

扫描包含所有环境的子目录似乎有点难看。有谁知道如何正确地做到这一点?

0 投票
4 回答
1126 浏览

java - Berkeley DB(Java 版)在应用程序运行之间不是持久的

我正在使用 Berkeley DB 来存储我正在构建的网络爬虫的信息。但是,我的数据库信息都没有在会话之间保存!

当我启动应用程序时,每个 DB 上的 count() 返回 0。在会话结束时,在退出之前,我打印每个 DB 的 count(),它已经适当地改变了,但是当我运行程序时它是“重置”的再次......为什么会这样?

另外,我选择不使用事务,因为我是单个用户,并且不会在多线程环境中运行程序。

0 投票
2 回答
2024 浏览

java - Berkeley DB JE 5.0.x 在 Maven Central 中的坐标是什么?

Berkeley DB JE 5.0.x在 Maven Central(或其他一些 repo)中的坐标是什么?

0 投票
1 回答
406 浏览

web-crawler - Berkeley DB (JE) 越来越失控

我用 Java 编写了一个网络爬虫,我正在使用 Berkeley DB 来保存我爬取的页面(用于以后的索引等)。我将每个页面存储为一个网页对象,该对象具有以下实例字段:

最大的字段是 String docString,它是整个 HTML 内容(通常即使在大页面上也不超过 500KB),stringLinks 为页面上的每个出站链接保留一个 String。这不应该太大,最多是 100 个长度约 70 的字符串(甚至不是几 KB)。

我的爬行速度比每秒一页快一点,有时每秒 2 页,我看到伯克利数据库增长到每页大约 2-3MB,考虑到存储的数据,这绝对是疯狂的。数据库将网页存储在 EntityStore 中,我会定期同步它。无论我改变什么,我都无法让磁盘使用率下降!

这是一个相当大的问题,因为如果我运行多个爬虫实例(我已经将它构建为分布式),它们每个实例都会很快使用大量磁盘空间。如果这是线性增加,我可能会没事,但没有办法判断这个空间正在膨胀的函数是什么。我只知道它是实际数据空间的许多倍。

关于EntityStore,我有什么遗漏吗?

需要注意的一件事是,我既要从数据库中读取又要从数据库中写入,因此我无法设置任何标志以使其仅写入或其他内容。而且我不希望过多增加缓存大小,因为这是一个对堆空间敏感的环境。

0 投票
2 回答
1426 浏览

java - Oracle Berkeley DB Java 版中的重复键

我正在使用带有键/值格式的表的 Oracle Berkeley DB Java 版。我正在尝试插入重复的键,但不断收到 SecondaryIntegrityException。根据 Oracle,如果 setSortedDuplicates() 设置为 true,则允许重复。这在我的情况下不起作用。下面是一些 key=bob, value=smith 的代码。我第一次运行它,它按预期运行。如果我第二次只更改 value=johnson 运行它,我会得到 SecondaryIntegrityException。有什么我做错了吗?谢谢。

0 投票
2 回答
1640 浏览

java - crawler4j CrawelController 类中的 NoSuchMethodError

我正在使用此处给出的示例并包含来自[此处](http://code.google.com/p/crawler4j/downloads/list)的必要文件(crawler4j-3.3.zip &crawler4j-3.x-dependencies.zip)我的构建路径和运行路径。

我收到此错误:

Exception in thread "main" java.lang.NoSuchMethodError: com.sleepycat.je.EnvironmentConfig.setAllowCreate(Z)Lcom/sleepycat/je/EnvironmentConfig; at edu.uci.ics.crawler4j.crawler.CrawlController.<init>(CrawlController.java:90) at edu.uci.ics.crawler4j.examples.basic.BasicCrawlController.main(BasicCrawlController.java:100) log4j:WARN No appenders could be found for logger (org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager). log4j:WARN Please initialize the log4j system properly. .

我无法理解错误原因,因为此文件中有必需的功能,请参见第 75 行。

请帮帮我。我在 Java 方面没有太多专业知识。难道这个问题和这个有关。如果是,如何解决。