• Stars
    star
    4,879
  • Rank 8,607 (Top 0.2 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created over 12 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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.

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

More Repositories

1

JDBM3

Embedded Key Value Java Database
Java
364
star
2

mapdb-hz-offheap

Provides off-heap storage for in-memory datagrid build in Turkey
Java
50
star
3

elsa

Java serialization, faster and space efficient version of ObjectOutputStream
Java
45
star
4

mapdb-site

mapdb.org website
HTML
24
star
5

asterope-scala-legacy

Astronomy charting, observation planning, ephemeris and image processing app.
Java
8
star
6

HEALPix

Astronomical sphere pixelization improved with range trees.
Java
7
star
7

idea-font-size-auto-change

Idea plugin, changes font size if retina display is detected
Java
6
star
8

mapdb-redis

Implements Redis protocol in pure java with MapDB as backend.
Kotlin
6
star
9

mapdb-benchmarks

Benchmarks related to MapDB database engine.
Kotlin
6
star
10

solarized-dark-gtk

Solarized Dark color theme for GTK2 and GTK3
CSS
5
star
11

JDBM4

JDBM4 was renamed to MapDB
5
star
12

log-prototype

Prototype for LSM key value store
Kotlin
4
star
13

asterope-kotlin-prototype

Asterope is astronomical application for skycharting, observation planning and image processing.
Java
3
star
14

mapdb-unsafe

Provides in-memory store which uses sun.misc.Unsafe for 10% boost.
Java
3
star
15

talk-save-java-memory

Materials for my talk: Save Java Memory
Java
3
star
16

astro-projections

Astronomical projection and WCS library from Skyview
Java
3
star
17

Pixy2

Astronomical image examination and object identification.
Java
3
star
18

asterope

Skychart generator
Java
2
star
19

mapdb-junk

Various stuff for mapdb
2
star
20

mapdb-jcache

JCache (jsr107) provider for MapDB database engine
Java
2
star
21

mapdb-snappy

Snappy compression for MapDB
Java
2
star
22

mdb4-prototype

throw away proof of concepts for mdb4, it implements SortedMap<Long,Long> with Java8 Streams, spliterators and data pumps.
1
star
23

mapdb-microbenchmarks

Tests various algos which could be possibly usable on mapdb
Java
1
star
24

JDBM3-performance-test

Compares JDBM3 performance to other databases such as LevelDB, H2 and Derby
1
star
25

mapdb-extra

Extra stuff for MapDB, which would not fit into main package for some reasons.
Java
1
star