Java NoSQL数据库, OrientDB 2.0 正式发布

jopen 9年前

OrientDB是一个NoSQL数据库管理系统,在普通硬件上每秒可以存储15万份文档。它是一个基于文档的数据库,关系在图形数据库中管理,与记录之间直接连接。你可以在几毫秒内遍历树和图的记录的全部或部分。它支持 schema-less, schema-full, 和schema-mixed 模式,具有一个基于用户和角色,很强的安全性分析系统。支持SQL查询语言。

OrientDB 2.0 正式发布,可用于生产环境!

OrientDB 2.0 比 OrientDB 1.7 更快(很多用户都注意到有 40% 的性能提升),特别是在多个服务器分布式使用的时候,性能提升很大。OrientDB 使用新的二进制协议压缩,数据库大小占用文件系统的空间更少,I/O 吞吐量更高!



  • Avoids rebuilding of indexes if working in Transactional mode

  • New Schema Driver Serialization avoids writing field names for records with Schema resulting in 20% performance improvement

  • New RW-Locks to speed-up internal parallelism

  • In-Memory database uses off-heap cache now

  • Disabled SNAPPY compression by default

  • Improved schema concurrency using immutable instances

  • Added strategies to manage conflict: by content and auto-merge. Furthermore can be injected custom strategy via Java API

  • Cache, removed 2nd level cache and improved 1st level cache

  • Cluster selection strategy now can decide on the input document content

  • Clusters can be detached (offline) and re-attached (online)

  • Better automatic allocation of Heap and Disk-Cache

  • Fetch-Plan: support for wildcards

  • Using SIGTRAP (kill -5) to dump OrientDB information

  • Logged database name on server and embedded messages

  • Removed a couple of internal layers on Document API to speedup and simplify implementation. Added also ODocument.fromMap() and ODocument.toMap()

  • Merged in core commons and native-os modules

  • On first run, the server asks for the root password. Blank means auto-generate (like before)

  • Global settings are copied in database at creation time and can be update

  • Lucene plugin for Full-Text and Spatial indexes is now in bundle with default distribution

### Distributed

  • 3x performance improvement

  • New asynchronous replication

  • On first run, ask for node name. Blank means auto-generate (like before)

  • Unified script and config files with stand-alone server

### Javascript

  • Invoking of JS functions is now 10x faster due to caching of the JVM Script engine

### Network

  • Support for stateless requests using Token

### Graph API

  • Disabled light-weight edges by default

  • New OGraphBatchInsertBasic and OGraphBatchInsert API for massive insertion on graphs: 13x faster than Blueprints

  • New SQL MOVE VERTEX command to refactor portion of graphs and to move vertices between distributed nodes

  • Improved OrientGraphFactory performance reducing recycling time. Added central config of generated graphs in Factory

  • Creation of edges can be set to avoid updating both vertices

### Security

  • Added configurable SSL to HTTP and binary connections

### SQL

  • New UUID() function to generate Unique IDs

  • New statistic functions: mode(), variance(), stddev(), median(), percentile()

  • Rewritten implementation of shortestPath() function to be much faster

  • Improvement for “order by @rid desc” to browse results in opposite direction without use an index or RAM

  • Added UNSAFE to CREATE PROPERTY command to avoid slow checks auto conversion from map when working on EMBEDDED types

### Tools

  • Studio: New Layout, new Graph Editor, new Security panel (Users and Roles management)

  • New ETL module to import data from JDBC, CVS and JSON input sources