Bagri - XML/Document DB on top of distributed cache

  •        359

Bagri is a Document Database built on top of distributed cache solution like Hazelcast or Coherence. The system allows to process semi-structured schema-less documents and perform distributed queries on them in real-time. It scales horizontally very well with use of data sharding, when all documents are distributed evenly between distributed cache partitions.

Started as a Native XML DB initially, the system has grown to process any kind of documents with self-describing data format (JSON, for instance) via pluggable parsers API. As a schema-free solution Bagri does not require any meta-data change when processing document formats evolve. An internal XQuery engine used for data querying and transformation provides exceeding flexibility in data processing tasks based on solid foundation of XQuery standards. The XQuery language is still evolving rapidly in answer to market demands which makes it the best candidate for all-in-one tool for processing of any volumes of semi-structured data.

http://bagridb.com/
https://github.com/dsukhoroslov/bagri

Tags
Implementation
License
Platform

   




Related Projects

UnQLite - Transactional Embedded NoSQL Database Engine

  •    C

UnQLite is a in-process software library which implements a self-contained, serverless, zero-configuration, transactional NoSQL database engine. UnQLite is a document store database similar to MongoDB, Redis, CouchDB etc. as well a standard Key/Value store similar to BerkeleyDB, LevelDB, etc.

MongoDB - NoSQL Document Store Database

  •    C++

MongoDB (from "humongous") is a scalable, high-performance, open source, dynamic-schema, document-oriented database. MongoDB bridges the gap between key-value stores (which are fast and highly scalable) and traditional RDBMS systems.

OrientDB - The NoSQL Graph-Document DBMS

  •    Java

OrientDB has the flexibility of the Document databases and the power of the Graph databases to manage relationships. It can work in schema-less mode, schema-full or a mix of both. It can store up to 150,000 records per second on common hardware. OrientDB has been designed to be very fast. It inherits the best features and concepts from the Object Databases, Graph DBMS and the modern NoSQL engines.

LokiJS - A fast, in-memory document-oriented datastore for node.js, browser and cordova

  •    Javascript

LokiJS is a document oriented database, Its purpose is to store javascript objects as documents in a nosql fashion and retrieve them with a similar mechanism. It runs in node (including cordova/phonegap and node-webkit) and the browser. It is ideal for client-side in-memory db is ideal (e.g., a session store), data sets loaded into a browser page and synchronised at the end of the work session etc.

RethinkDB - Distributed JSON database

  •    C++

RethinkDB is built to store JSON documents, and scale to multiple machines with very little effort. It has a pleasant query language that supports really useful queries like table joins and group by, and is easy to setup and learn. It supports JSON data model, Distributed joins, subqueries, aggregation, atomic updates, Hadoop-style map/reduce.


RavenDB - NoSQL Database .NET

  •    CSharp

Raven is an document database for the .NET/Windows platform. Raven offers a flexible data model design to fit the needs of real world systems. Raven stores schema-less JSON documents, allow you to define indexes using Linq queries and focus on low latency and high performance.

RaptorDB - The Document Store

  •    CSharp

NoSql, JSON based, Document store database with compiled .net map functions and automatic hybrid bitmap indexing and LINQ query filters

Aerospike Database Server – Flash-optimized, in-memory, nosql database

  •    C

Aerospike is a distributed, scalable NoSQL database. It provides support to create a high-performance, scalable platform that would meet the needs of today's web-scale applications. It supports operational efficiency, robustness and reliability expected from traditional databases.

WhiteDB - NoSQL Memory Database in C

  •    C

WhiteDB is a lightweight NoSQL database library written in C, operating fully in main memory. There is no server process. Data is read and written directly from/to shared memory, no sockets are used between WhiteDB and the application program. It supports indexes (T-tree), concurrency through locking, persistence through logging and memory dumps, json, CSV and RDF support, easy to use in embedded systems and lot more.

ToroDB Stampede - Provides better analytics on top of MongoDB and make it easier to migrate from MongoDB to SQL

  •    Java

ToroDB helps to transform your NoSQL data from a MongoDB replica set into a relational database in PostgreSQL. There are other solutions that are able to store the JSON document in a relational table using PostgreSQL JSON support, but it doesn't solve the real problem of 'how to really use that data'. ToroDB Stampede replicates the document structure in different relational tables and stores the document data in different tuples using those tables.

TinyDB - Lightweight Document Oriented Database

  •    Python

TinyDB is a lightweight document oriented database optimized for your happiness. It's written in pure Python and has no external dependencies. The target are small apps that would be blown away by a SQL-DB or an external database server. TinyDB neither needs an external server nor any dependencies from PyPI. You can easily extend TinyDB by writing new storages or modify the behaviour of storages with Middlewares.

tiedot - Your NoSQL database powered by Golang

  •    Go

tiedot is a document database engine that uses JSON as document notation; it has a powerful query processor that supports advanced set operations; it can be embedded into your program, or run a stand-alone server using HTTP for an API. It runs on *nix and Windows operating systems.tiedot has fault-tolerant data structures that put your data safety first, while easily scales to 4+ CPU cores.

ArangoDB - The Multi-purpose NoSQL DB

  •    C++

ArangoDB is a multi-purpose open-source database with flexible data model for documents, graphs, and key-values. Build high performance application using a convenient sql-like query language or JavaScript/Ruby extensions. Its key features are Schema-free, Convenient querying using AQL, Extendable through JS, Space efficiency, Supports modern storage hardware, like SSD and large caches and lot more.

Marten - Postgresql as a Document Database and Event Store for .Net Applications

  •    CSharp

The Marten library provides .NET developers with the ability to use the proven PostgreSQL database engine and its fantastic JSON support as a fully fledged document database. The Marten team believes that a document database has far reaching benefits for developer productivity over relational databases with or without an ORM tool.Marten also provides .NET developers with an ACID-compliant event store with user-defined projections against event streams.

Eclipse JNoSQL - Framework which has the goal to help Java developers to create Jakarta EE applications with NoSQL

  •    Java

Eclipse JNoSQL is a Java framework that streamlines the integration of Java applications with NoSQL databases. It defines a set of APIs and provides a standard implementation for most NoSQL databases. This clearly helps to achieve very low coupling with the underlying NoSQL technologies used in applications.

PouchDB - The Javascript Database that Syncs

  •    Javascript

PouchDB is an open-source JavaScript database inspired by Apache CouchDB that is designed to run well within the browser. PouchDB was created to help web developers build applications that work as well offline as they do online. It enables applications to store data locally while offline, then synchronize it with CouchDB and compatible servers when the application is back online, keeping the user's data in sync no matter where they next login.

MonetDB

  •    C

MonetDB is a high-performance SQL- and XQuery- column-store database management system with automatic index management, flexible optimizer infrastructure, and programmable backend functionality.

couchbase-lite-ios - Lightweight, embedded, syncable NoSQL database engine for iOS (and Mac!) apps.

  •    Objective-C

Couchbase Lite is an embedded lightweight, document-oriented (NoSQL), syncable database engine.Latency matters a lot to users, so a local database takes frustration out of the equation. It’s got JSON documents, and the same map/reduce as Couchbase Server, in a pint-sized edition.

SenseiDB - Distributed, Realtime, Semi-Structured Database from LinkedIn

  •    Java

Sensei is a distributed data system that was built to support many product initiatives at LinkedIn, including the real-time faceted search in LinkedIn Signal and the news feed and tabs on the Homepage. Sensei is both a search engine and a database. It is designed to query and navigate through documents that consist of unstructured text and well-formed and structured metadata. Sensei is both a search engine and a database.