Skip to content

Latest commit

 

History

History
353 lines (211 loc) · 14.1 KB

NoSQL.md

File metadata and controls

353 lines (211 loc) · 14.1 KB

NoSQL

Alfresco ECMS

CouchDB

  • Apache CouchDB

  • BigCouch is a highly available, fault-tolerant, clustered, mostly api-compliant version of Apache CouchDB.

    While it appears to the end-user as one CouchDB instance, it is in fact one or more nodes in an elastic cluster, acting in concert to store and retrieve documents, index and serve views, and serve CouchApps. BigCouch has been developed and is continually maintained by Cloudant who offer hosted CouchDB as a service.

    Clusters behave according to concepts outlined in Amazon's Dynamo paper, namely that each node can accept requests, data is placed on partitions based on a consistent hashing algorithm, and quorum protocols are for read/write operations.

GT.M, M/DB, M/DB:X

  • GT.M Database Engine with Extreme Scalability and Robustness

    Documentation

  • M/DB is a Free Open Source "plug-compatible" alternative to Amazon's SimpleDB database

  • M/DB:X is a simple, lightweight, yet powerful hybrid JSON/Native XML Database

  • M/Wire

  • Enterprise Web Developer (EWD) is an advanced web application delvelopment technology and Ajax framework

  • PIP includes a JDBC driver and a SQL engine

    This forum thread includes hints how to integrate PIP into an existing GT.M installation

  • Using SimpleDB and Rails in No Time with ActiveResource

  • gtm-rb is a first draft of a Ruby client library for the GT.M database engine through the M/Wire protocol

Caché

  • InterSystems Caché is an advanced but commercial 'successor' of GT.M

    Data stored in Caché can be accessed using JDBC and ODBC.

  • Max Lapshin wrote a related Ruby driver

Java Content Repository (JCR)

See also JCR Links

JCR Implementations

JCR Based Frameworks

  • Apache Sling, Cheatsheet

    Apache Sling is the foundation of

    • Adobe AEM fka Adobe CQ fka Day CQ5 fka Day Communiqué

      …Adobe CQ is the most expensive CMS. Adobe said during their recent partner summit that the average CQ deal is $450,000 in license…

    • Idium Web

    • Sakai 3 (Wiki)

    Publick Apache Sling + Sightly blog engine

    Sling-Stanbol an Apache Sling launcher containing Apache Stanbol and a servlet offering a front-end to the Enhancer to the enhancer services; Apache Stanbol provides a set of reusable components for semantic content management

JCR Tools

Content Management Systems

Lucene + ElasticSearch or Solr

Although Lucene is a search index, and not a database, if your fields are reasonably small, you can ask Lucene to store them in the index.

Ruby on Rails integrations:

ElasticSearch

Lucene

Solr

MongoDB integration

MongoDB could be integrated into ElasticSearch by writing a River that would keep the ES index up to date by following the MongoDB Oplog.

There is a bunch of Python and Ruby code to steal from:

MongoDB

Notes on MongoDB, Why I think Mongo is to Databases what Rails was to Frameworks, MySQL and MongoDB working together in Kanbanery thanks to the awesomeness of DataMapper

GridFS

more resources

Neo4j

  • Neo4j is a graph database. It is an embedded, disk-based, fully transactional Java persistence engine that stores data structured in graphs rather than in tables. A graph (mathematical lingo for a network) is a flexible data structure that allows a more agile and rapid style of development.

  • Neo4j.rb includes a Lucene wrapper.

and

  • InfoGrid is an Internet Graph Database with many additional software components that make the development of REST-ful web applications on a graph foundation easy.

  • Ontopia for building, maintaining, and deploying Topic Maps-based applications.

Use Cases

Persevere

RDF

RethinkDB

Virtuoso