Skip to content

scireum/sirius-db

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sirius Build Status

Welcome to the database module of the SIRIUS OpenSource framework created by scireum GmbH. To learn more about what SIRIUS is please refer to documentation of the kernel module.

SIRIUS Database Module

Provides access to popular databases like JDBC/SQL, MongoDB, Redis or Elasticsearch.

For each database a low level interface is provided which combines configuration, monitoring, metrics and debugging with best performance possible.

Additionally a mapping layer is provided for JDBC, MongoDB and Elasticsearch, which is called Mixing.

If you want to use sirius-db in a web environment (in conjunction with sirius-web) have a look at sirius-biz which provides a lot of helpers for that scenario.

Features

  • Database independent mapping framework which can be extended by user code
  • Mixins which can extend existing model classes and be enabled within customizations
  • Wrappers for efficient calls into JDBC databases, Redis and MongoDB with automatic connection management
  • Automatic schema and index generation for all managed databases - note that sirius-biz provides a UI for this
  • Metrics and Monitoring of all database operations - note that sirius-web provides a UI to display these stats and timings
  • Automatic reporting for slow or inefficient database opertions

Important files of this module:

Frameworks

  • Mixing
    Provides a database independent mapping framework which can be extended by user code.
  • JDBC
    Provides a both, a low-level interface which adds configuration- and resource management to JDBC while still delivering its raw performance. Also a high-level mapper based on Mixing is provided.
  • ES
    Provides a HTTP based client for Elasticsearch which utilizes Mixing to provide a high-level API.
  • Mongo
    Provides a both, a low-level interface which adds configuration- and resource management to the plain MongoDB driver whil still delivering its raw performance. Also a high-level mapper based on Mixing is provided.
  • Redis
    Contains a helper framework which provides configuration- and resource management when talking to one or more Redis servers.