OrientDB is the most versatile DBMS supporting Graph, Document, Reactive, Full-Text, Geospatial and Key-Value models in one Multi-Model product. OrientDB can run distributed (Multi-Master), supports SQL, ACID Transactions, Full-Text indexing and Reactive Queries. OrientDB Community Edition is Open Source using a liberal Apache 2 license.
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update ISSUE_TEMPLATE.md Nov 30, 2018
.mvn updates mvnw to 3.5.3 Jun 16, 2018
_base removed old leftover base ant build Sep 14, 2017
client Compilation failures after merge are fixed. Nov 28, 2018
core Fix nested projections to support `*:{*}` Jan 17, 2019
crashtests made sure that the page size configuration can be load from the conte… Nov 9, 2018
distributed-v2 minor fix for disable old wait for online in new distributed environment Jan 18, 2019
distributed Fix SELECT from index with composite key Jan 16, 2019
distribution-tp2 restored original TP2 distribution scripts Dec 19, 2018
distribution version bumped to 3.1.0-SNAPSHOT Oct 5, 2018
etl test to execute in build dir Oct 22, 2018
graphdb Package refactor for OHttpGraphRespons Dec 27, 2018
javassist version bumped to 3.0.0-SNAPSHOT Dec 18, 2017
jdbc Fix NullPointerException on JDBC getByte() and getBoolean() Nov 26, 2018
lucene TX aware space management is implemented for clusters. Nov 28, 2018
object upgraded to the latest version of java assist Oct 22, 2018
server minor fix for disable old wait for online in new distributed environment Jan 18, 2019
test-commons version bumped to 3.1.0-SNAPSHOT Oct 5, 2018
tests Compilation failures after merge are fixed. Nov 28, 2018
tools Add checks to avoid wrong db drop from console Dec 6, 2018
.gitignore updates gitignore: linux, mac, windows, eclipse, idea, gradle, maven May 9, 2017
.travis.yml tests enabled Dec 16, 2015
Jenkinsfile disable QA tests for now (fixing testcontainers) Jun 20, 2018
Jenkinsfile-crash.groovy refactors Jenkins files Dec 29, 2016
Jenkinsfile-distributed.groovy increase timeout to 240 mins Dec 30, 2016
Jenkinsfile.PREV refactors Jenkins files Dec 29, 2016
OrientDB_logo.svg Official Logo Sep 27, 2018
README.md edit OrientDB license info so that GitHub recognizes it Jun 9, 2018
findbugs_filter.xml toglle x flag off fo txt files Feb 17, 2016
history.txt update history for v 3.1.0 M2 Oct 4, 2018
license.txt edit OrientDB license info so that GitHub recognizes it Jun 9, 2018
mvnw adds mvn wrapper Jun 16, 2018
mvnw.cmd adds mvn wrapper Jun 16, 2018
pom.xml add distributed version 2 module to parent pom Jan 3, 2019
readme.txt updates readme and history for 3.0.0 Feb 23, 2017
upgrade.txt Revert "remove redundant file" Nov 13, 2014



License Develop branch: Build Status 2.2.x branch: Build Status Chat with the community: Gitter chat

What is OrientDB?

OrientDB is an Open Source Multi-Model NoSQL DBMS with the support of Native Graphs, Documents Full-Text, Reactivity, Geo-Spatial and Object Oriented concepts. It's written in Java and it's amazingly fast: it can store 220,000 records per second on common hardware. No expensive run-time JOINs, connections are managed as persistent pointers between records. You can traverse thousands of records in a few milliseconds. Supports schema-less, schema-full and schema-mixed modes. Has a strong security profiling system based on user and roles and supports SQL amongst the query languages. Thanks to the SQL layer it's straightforward to use for people skilled in the Relational world.

Get started with OrientDB.

Is OrientDB a Relational DBMS?

No. OrientDB adheres to the NoSQL movement even though it supports ACID Transactions and SQL as query language. In this way it's easy to start using it without having to learn too much new stuff.

Scalability: the database is the bottleneck of most applications

The most common reason applications scale out badly is, very often, the database. The database is the bottleneck of most applications. OrientDB scales out very well on multiple machines, thanks to the Multi-Master replication where there is no single bottleneck on writes like with Master-Slave replication. The database can be up to 302,231,454,903,657 billion (2^78) records for the maximum capacity of 19,807,040,628,566,084 Terabytes of data on a single server or multiple nodes.

I can't believe it! Why is it so fast?

OrientDB has been designed to be very fast. It inherits the best features and concepts from Object Databases, Graph DBMS and modern NoSQL engines. OrientDB manages relationships without the run-time costly join operation, but rather with direct pointers (links) between records. No matters if you have 1 or 1,000 Billion of records, the traversing cost remains constant. Download the Benchmark PDF XGDBench: A Benchmarking Platform for Graph Stores in Exascale Clouds by Tokyo Institute of Technology and IBM Research.

How does it compare with other products?

As Multi-Model DBMS, OrientDB could work as an extended Document Database and an extended Graph Database. Take a look at OrientDB vs MongoDB for Document Databases and OrientDB vs Neo4j to have a comparison with a popular Graph Database.

Easy to install and use

Yes. OrientDB is totally written in Java and can run on any platform without configuration and installation. The full Server distribution is a few MBs without the demo database. Do you develop with a language different than Java? No problem, look at the Programming Language Binding.

Professional services

OrientDB Community Edition is free for any use (Apache 2 license). If you are in production don't miss the Enterprise Edition and professional support service. For courses and training look at the on-line course catalog.

Main References

Get started with OrientDB.


OrientDB is licensed by OrientDB LTD under the Apache 2 license. OrientDB relies on the following 3rd party libraries, which are compatible with the Apache license:



YourKit supports open source projects with its full-featured Java Profiler. YourKit, LLC is the creator of YourKit Java Profiler and YourKit .NET Profiler, innovative and intelligent tools for profiling Java and .NET applications.

security status | stability status