# mapdb **Repository Path**: mirrors/mapdb ## Basic Information - **Project Name**: mapdb - **Description**: MapDB是一个快速、易用的嵌入式Java数据库引擎,它提供了基于磁盘或者堆外(off-heap允许Java直接操作内存空间, 类似于C的malloc和free)存储的并发的Map - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 24 - **Forks**: 0 - **Created**: 2017-07-17 - **Last Updated**: 2024-03-02 ## Categories & Tags **Categories**: database-service **Tags**: None ## README MapDB: database engine ======================= [![Build Status](https://travis-ci.org/jankotek/mapdb.svg?branch=master)](https://travis-ci.org/jankotek/mapdb) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.mapdb/mapdb/badge.svg)](https://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.mapdb%22%20AND%20a%3Amapdb) [![Join the chat at https://gitter.im/jankotek/mapdb](https://badges.gitter.im/jankotek/mapdb.svg)](https://gitter.im/jankotek/mapdb?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) 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](https://maven-badges.herokuapp.com/maven-central/org.mapdb/mapdb/badge.svg)](https://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.mapdb%22%20AND%20a%3Amapdb) ```xml org.mapdb mapdb VERSION ``` Hello world: ```java //import org.mapdb.* DB db = DBMaker.memoryDB().make(); ConcurrentMap map = db.hashMap("map").make(); map.put("something", "here"); ``` You can continue with [quick start](https://jankotek.gitbooks.io/mapdb/content/quick-start/) or refer to the [documentation](https://jankotek.gitbooks.io/mapdb/). Support ------------ More [details](http://www.mapdb.org/support/). 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`