Search code examples
cassandracassandra-2.0kunderahibernate-ogm

What is the difference between Hibernate OGM and Kundera


I am evaluating what might be the best framework option between kundera and Hibernate OGM. My Situation: Existing project uses hibernate ORM for contacting Mysql data store. Now i want to read/write to cassandra(2.1.9) data store in the same project. I want to know the pros and cons of using kundera or Hibernate OGM.

Hibernate OGM road map states that "Getting the Cassandra mapping store data in natural Cassandra persistence patterns." will be available from 5.0. what am i actually missing if i don't have this feature and does kundera have this feature.


Solution

  • I would use Kundera!

    My reasons:

    Why not Hibernate OGM?

    • Hibernate OGM added support for Cassandra only in the recent release (4.2) and has many things not yet supported
    • Hibernate OGM's support for Cassandra is in "tech preview" state at this moment
    • Support for clustering is not yet supported
    • No proper documentation yet

    Why Kundera?

    • Kundera's support for Cassandra is pretty mature and has decent documentation
    • Easy to use (JPA compliant)
    • Support for clustering and many other Cassandra specific features
    • Supports Polyglot Persistence out-of-the-box
    • Supports indexing of data on Elasticsearch for adhoc querying, usually not supported by a NoSQL datastore

    References: