/Kundera

A JPA 2.1 compliant Polyglot Object-Datastore Mapping Library for NoSQL Datastores.Please subscribe to:

Primary LanguageJavaApache License 2.0Apache-2.0

[![Join the chat at https://gitter.im/impetus-opensource/Kundera](https://badges.gitter.im/impetus-opensource/Kundera.svg)](https://gitter.im/impetus-opensource/Kundera?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Follow us on Twitter](http://i.imgur.com/wWzX9uB.png)](https://twitter.com/kundera_impetus)

Overview ========= Kundera is a "Polyglot Object Mapper" with a JPA interface. The idea behind Kundera is to make working with NoSQL Databases drop-dead simple and fun. Kundera is being developed with following objectives: * To make working with NoSQL as simple as working with SQL * To serve as JPA Compliant mapping solution for NoSQL Datastores. * To help developers, forget the complexity of NoSQL stores and focus on Domain Model. * To make switching across data-stores as easy as changing a configuration.

Latest

Supported Datastores

Kundera currently supports following data stores :

  • Cassandra
  • MongoDB
  • HBase
  • Redis
  • OracleNoSQL
  • Neo4j
  • Couchdb
  • Kudu
  • Relational databases
  • Apache Spark

You can find the list of data stores(specific versions) supported by Kundera [here] (https://github.com/impetus-opensource/Kundera/wiki/Datastores-Supported).

Getting Started

The latest stable release of Kundera is 3.6. It is a maven based project . You can either download it directly from github and build using following command :

mvn clean install -Dfile src/pom.xml

Or it can be directly added as maven dependency in your project in the following manner :

  • Add the following repository to pom.xml :
 <repository>
     <id>sonatype-nexus</id>
     <name>Kundera Public Repository</name>
     <url>https://oss.sonatype.org/content/repositories/releases</url>
    <releases>
        <enabled>true</enabled>
    </releases>
    <snapshots>
        <enabled>false</enabled>
    </snapshots>
 </repository>
  • Add the data store specific Kundera module as a dependency (e.g. Cassandra below) :
  <dependency>
        <groupId>com.impetus.kundera.client</groupId>
        <artifactId>kundera-cassandra</artifactId>
        <version>${kundera.version}</version>
  </dependency>

Build your project with the above changes to your pom.xml and start using Kundera !

Important Links

Contribution

About Us

Kundera is backed by Impetus Labs - iLabs. iLabs is a R&D consulting division of Impetus Technologies (http://www.impetus.com). iLabs focuses on innovations with next generation technologies and creates practice areas and new products around them. iLabs is actively involved working on High Performance computing technologies, ranging from distributed/parallel computing, Erlang, grid softwares, GPU based software, Hadoop, Hbase, Cassandra, CouchDB and related technologies. iLabs is also working on various other Open Source initiatives.

Follow us on [Twitter] (https://twitter.com/kundera_impetus).