OrientDB

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
OrientDB
300px
Developer(s) OrientDB Ltd
Initial release 2010; 15 years ago (2010)
Stable release 2.2 GA / May 18, 2016; 8 years ago (2016-05-18)[1]
Development status Active
Written in Java
Operating system Cross-platform
Type Document-oriented database, Graph database, Multi-model database
License Apache 2 License
Website orientdb.com

OrientDB is an open source NoSQL database management system written in Java. It is a multi-model database, supporting graph, document, key/value, and object models,[2] but the relationships are managed as in graph databases with direct connections between records. It supports schema-less, schema-full and schema-mixed modes. It has a strong security profiling system based on users and roles and supports querying with Gremlin along with SQL extended for graph traversal. OrientDB uses several indexing mechanisms based on B-tree and Extendible hashing , the last one is known as "hash index", there are plans to implement LSM-tree and Fractal tree index based indexes. Each record has Surrogate key wich indicates position of record inside of Array list , links between records are stored either as single value of record's position stored inside of referrer or as B-tree of record positions (so-called record IDs or RIDs) which allows fast traversal (with O(1) complexity) of ony-to-many relationsips and fast additon/removal of new links.

Features

  • Fully transactional: supports ACID transactions guaranteeing that all database transactions are processed reliably and in the event of a crash all pending documents are recovered and committed.
  • Graph structured data model: native management of graphs. Fully compliant with the Apache TinkerPop Gremlin (previously known as Blueprints) open source graph computing framework.
  • SQL: supports SQL queries with extensions to handle relationships without SQL join, manage trees, and graphs of connected documents.
  • Web technologies: natively supports HTTP, RESTful protocol, and JSON additional libraries or components.
  • Distributed: full support for multi-master replication including geographically distributed clusters.
  • Run anywhere: implemented using pure Java allowing it to be run on Linux, OS X, Windows, or any system with a compliant JVM.
  • Embeddable: local mode to use the database bypassing the Server. Perfect for scenarios where the database is embedded.
  • Apache 2 License: always free for any usage. No fees or royalties required to use it.
  • Lightweight: a full server has a footprint of about 1 MB.
  • Commercial support is available from Orient Technologies.

History

OrientDB was originally authored by Luca Garulli in 2010. Luca wrote it as a Java rewrite of the fast persistent layer of Orient ODBMS database, which was originally written in C++. During 2012-2014 years storage engine was redeveloped by Andrey Lomakin and got new name "plocal" which stands for "paginated local", this name implies that new storage engine is based on the concept of a splitting of data files by pages, as a single atomic unit of change. Since 2012, the project is been sponsored by Orient Technologies LTD, a for-profit company with Luca as its CEO and founder. In 2013 Andrey Lomakin has joined the company as R&D lead engineer and company's co-owner.

See also

References

<templatestyles src="Reflist/styles.css" />

Cite error: Invalid <references> tag; parameter "group" is allowed only.

Use <references />, or <references group="..." />

External links


<templatestyles src="Asbox/styles.css"></templatestyles>

  1. OrientDB releases
  2. Lua error in package.lua at line 80: module 'strict' not found.