mapdb

MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap-memory. It is a fast and easy to use embedded Java database engine.

  • 所有者: jankotek/mapdb
  • 平台:
  • 许可证: Apache License 2.0
  • 分类:
  • 主题:
  • 喜欢:
    0
      比较:

Github星跟踪图

MapDB: database engine

Build Status
Maven Central
Join the chat at https://gitter.im/jankotek/mapdb

MapDB combines embedded database engine and Java collections.
It is free under Apache 2 license. MapDB is flexible and can be used in many roles:

  • Drop-in replacement for Maps, Lists, Queues and other collections.
  • Off-heap collections not affected by Garbage Collector
  • Multilevel cache with expiration and disk overflow.
  • RDBMs replacement with transactions, MVCC, incremental backups etc…
  • Local data processing and filtering. MapDB has utilities to process huge quantities of data in reasonable time.

Hello world

Maven snippet, VERSION is Maven Central

<dependency>
    <groupId>org.mapdb</groupId>
    <artifactId>mapdb</artifactId>
    <version>VERSION</version>
</dependency>

Hello world:

//import org.mapdb.*
DB db = DBMaker.memoryDB().make();
ConcurrentMap map = db.hashMap("map").make();
map.put("something", "here");

You can continue with quick start or refer to the documentation.

Support

More details.

Development

MapDB is written in Kotlin, you will need IntelliJ Idea.

You can use Gradle to build MapDB.

MapDB is extensively unit-tested.
By default, only tiny fraction of all tests are executed, so build finishes under 10 minutes.
Full test suite has over million test cases and runs for several hours/days.
To run full test suite, set -Dmdbtest=1 VM option.

Longer unit tests might require more memory. Use this to increase heap memory assigned to unit tests: -DtestArgLine="-Xmx3G"

By default unit tests are executed in 3 threads. Thread count is controlled by -DtestThreadCount=3 property

On machine with limited memory you can change fork mode so unit test consume less RAM, but run longer: -DtestReuseForks=false

主要指标

概览
名称与所有者jankotek/mapdb
主编程语言Java
编程语言Java (语言数: 2)
平台
许可证Apache License 2.0
所有者活动
创建于2012-08-17 15:28:54
推送于2024-06-04 19:19:49
最后一次提交2023-03-19 17:53:58
发布数88
最新版本名称mapdb-3.1.0 (发布于 2024-01-10 08:38:23)
第一版名称jdbm-4.001-alpha (发布于 2012-10-20 22:49:31)
用户参与
星数5k
关注者数308
派生数881
提交数2.2k
已启用问题?
问题数936
打开的问题数189
拉请求数71
打开的拉请求数7
关闭的拉请求数46
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?