Welcome to the Apache Gora project!

The Apache Gora™ open source framework provides an in-memory data model and persistence for big data. Gora supports persisting to column stores, key value stores, document stores, distributed in-memory key/value stores, in-memory data grids, in-memory caches, distributed multi-model stores, and hybrid in-memory architectures.

Gora also enables analysis of data with extensive Apache Hadoop MapReduce™, Apache Spark™, Apache Flink™ and Apache Pig™ support. Gora uses the Apache Software License v2.0. Gora graduated from the Apache Incubator in January 2012 to become a top-level Apache project. You can find the Gora DOAP here.

News

The Apache Gora Release management team is pleased to announce the immediate availability of Apache Gora 0.9.

This release addresses 48 issues, for a breakdown please see the release report. Drop by our mailing lists and ask questions for information on any of the above.

Gora 0.9 provides support for the following projects:

Gora is released as both source code downloads for which can be found at our downloads page, as well as Maven artifacts which can be found on Maven central.

The Apache Gora team are pleased to announce the immediate availability of Apache Gora 0.8.

This release addresses 35 issues, for a breakdown please see the release report. Drop by our mailing lists and ask questions for information on any of the above.

Gora 0.8 provides support for the following projects:

Gora is released as both source code downloads for which can be found at our downloads page, as well as Maven artifacts which can be found on Maven central.

The Apache Gora team are pleased to announce the immediate availability of Apache Gora 0.7.

This release addresses 80 issues, for a breakdown please see the release report. Drop by our mailing lists and ask questions for information on any of the above.

Gora 0.7 provides support for the following projects:

Gora is released as both source code, downloads for which can be found at our downloads page, as well as Maven artifacts which can be found on Maven central.

The Apache Gora team are pleased to announce the immediate availability of Apache Gora 0.6.1.

This release addresses a modest 21 issues with many improvements and bug fixes for the gora-mongodb module, resolution of a major bug whilst flushing data to Apache Solr, a gora-gradle plugin and our Gora Spark backend support. Drop by our mailing lists and ask questions for information on any of the above.

We provide Gora support for the following projects:

  • Apache Avro 1.7.6
  • Apache Hadoop 1.2.1 and 2.5.2
  • Apache HBase 0.98.8-hadoop2 (although also tested with 1.X)
  • Apache Cassandra 2.0.2
  • Apache Solr 4.10.3
  • MongoDB 2.6.X
  • Apache Accumlo 1.5.1
  • Apache Spark 1.4.1

Gora is released as both source code, downloads for which can be found at our downloads page as well as Maven artifacts which can be found on Maven central.

The Apache Gora team are pleased to announce the immediate availability of Apache Gora 0.6.

This release addresses a modest 47 issues with some being major improvements, new functionality and dependency upgrades. Most notably the release involves key upgrades to Hadoop, HBase and Solr dependencies as well as some extremely important bug fixes for the MongoDB module.

Suggested Gora database support is as follows:

  • Apache Avro 1.7.6
  • Apache Hadoop 1.2.1 and 2.5.2
  • Apache HBase 0.98.8-hadoop2
  • Apache Cassandra 2.0.2
  • Apache Solr 4.10.3
  • MongoDB 2.6.X
  • Apache Accumulo 1.5.1

Gora is released as both source code, downloads for which can be found at our downloads page as well as Maven artifacts which can be found on Maven central.

Today our Jira issue GORA-375 was resolved with the result that the Gora community can now upgrade their systems to operate on Hadoop 2.X and HBase 0.98.

Specifically the versions which we recommend are as follows:

  • Apache Hadoop 2.5.2
  • Apache HBase 0.98.8-hadoop2

Best efforts have also been made to retain backwards compatibility for Hadoop 1.X users, therefore we have upgraded to, and still support Hadoop 1.2.1 via the addition of our Shim layers. For further details on our Shim layers and pluggable Hadoop support please see Jira issue GORA-346. Additional documentation for the use of Shim layers within Gora will soon be documented and linked to from our current documentation.

The Apache Gora team are pleased to announce the immediate availability of Apache Gora 0.5.

This release addresses no fewer than 44 issues with many being improvements and new functionality. Most notably the release includes the addition of a new module for MongoDB, Shim functionality to support multiple Hadoop versions, improved authentication for Accumulo, better documentation for many modules, and pluggable solrj implementations supporting a default value of http for HttpSolrServer.

Suggested Gora database support is as follows:

  • Apache Avro 1.7.6
  • Apache Hadoop 1.0.1 and 2.4.0
  • Apache HBase 0.94.14
  • Apache Cassandra 2.0.2
  • Apache Solr 4.8.1
  • MongoDB 2.6
  • Apache Accumulo 1.5.1

Gora is released as both source code, downloads for which can be found at our downloads page as well as Maven artifacts which can be found on Maven central.

Open Catalog Logo

Gora now features within the Defense Advanced Research Projects Agency (DARPA) Open Catalog as part of ongoing participation in the XDATA Program.

XDATA is developing an open source software library for big data to help overcome the challenges of effectively scaling to modern data volume and characteristics. The program is developing the tools and techniques to process and analyze large sets of imperfect, incomplete data. Its programs and publications focus on the areas of analytics, visualization, and infrastructure to efficiently fuse, analyze and disseminate these large volumes of data.

Gora is being used by the Jet Propulsion Laboratory team to execute extract-transform-load-type tasks for mapping and integration of source heterogeneous data to and from target NoSQL solutions.

MongoDB Logo

The Gora community is proud to announce support for MongoDB amongst our growing datastore support arsenal. MongoDB is an open-source document database, and the leading NoSQL database. Written in C++, MongoDB features:

  • Document-Oriented Storage
  • Full Index Support
  • Replication & High Availability
  • Auto-Sharding
  • Querying
  • Fast In-Place Updates
  • MapReduce
  • GridFS

The current supported version of MongoDB is 2.6 with client version support at 2.12.2.

Apache Camel Logo

We recently heard some excellent news that Gora is now implemented as a Camel Component within Camel trunk.

Apache Camel is a rule-based routing and mediation engine which provides a Java object based implementation of the Enterprise Integration Patterns using an API (or declarative Java Domain Specific Language) to configure routing and mediation rules.

You can use this module with the following Maven configuration:

        <dependency>
          <groupId>org.apache.camel</groupId>
          <artifactId>camel-gora</artifactId>
          <version>x.x.x</version>
          <!-- use the same version as your Camel core version -->
        </dependency>
      

You can find more information on the history of the development on the relevant Jira ticket. You can also view the gora-camel documentation.

HBase London Meetup

Keeping in trend with our continual drive to build the Gora community, Gora is featuring in this month's HBase London Meetup.

The meetup is focused on data types in HBASE c.f. HBASE-8693 HBASE-8089 with the second half of the meetup being dedicated to discussion and presentation on where Gora/gora-hbase fits in the mix!

Open Source Delivers

Gora has become the first Apache project to feature on Black Duck Software's Open Source Blog with an article titled What does it really take to build a community around code?.

The article focuses on Gora's journey through the Apache Incubator and tells the story of how the community has evolved and grown over time and software releases.

A huge thank you goes to our friends at Black Duck Software for reviewing and publishing our story.

The Apache Gora team are proud to announce the release of Gora 0.4. This release addresses no fewer than 60 issues. Major improvements within the release scope comprise a complete upgrade to Apache Avro 1.7.X and overhaul of the Gora persistency API (such improvements enable Gora to be used to map much more expressive and complicated data structures than previously available), upgrades to Apache HBase 0.94.13, Apache Cassandra 2.0.X and Apache Accumulo 1.5.X. Users can also benefit from using Gora + Solr for object-to-datastore mapping with the addition of the new Solr module which uses Solr 4.X. A full list of changes in this release can be seen in 0.4-CHANGES.txt. You can grab the maven release artifacts from Maven Central and can also get the Gora sources from our downloads page.

Apache Giraph

After a successful Google Summer of Code 2013 project, Gora has been adopted as a core persistence abstraction for the popular graph processing library in use at companies such as Facebook, Twitter, Linkedin and many more.

The integration of these two awesome Apache projects has as main motivation the possibility of turning Gora-supported-NoSQL data stores into Giraph-processable graphs, and to provide Giraph the ability to store its results into different data stores, letting users focus on the processing itself. For more information please see the Giraph-Gora documentation.

A number of the Gora team were at ApacheCon this year spreading the word about the project and presenting on several topics. This included Renato's presentation on Turning NoSQL data into Graphs - Playing with Apache Giraph and Apache Gora and Lewis' presentation on Deploying Apache Gora as a Query Broker.

Please see below for the presentation slides and audio.

TCube Logo
To further promote this years GSoC project, this years student (Apostolos Giannakidis) and mentor (Lewis McGibbney) will present Apache Gora and the Oracle NoSQL database at TCube in the beautiful city of Dublin. To say we are looking forward to this one may possibly be the understatement of 2013. Looking forward to seeing some familiar faces and new ones as we continue to promote Gora to the masses. Please see slides and video links below enjoy!

GSoC2013 Logo
The jury has been out, the results are in and we are extremely proud to announce that the Apache Gora support for Oracle NoSQL datastore project has come out on top in this years Google Summer of Code 2013. Another long, hard summers worth of work has resulted in another successful project and code contribution, again extending datastore support within Apache Gora. A huge congratulations to this years student Apostolos Giannakidis for his work over the summer, as a community we look forward to your continued presence within the project and beyond.
Adding to the success of this project, the bloggershpere has been endorsing and promoting the project wholeheartedly. On his own website, Apostolos has made various posts documenting and sharing his experiences through the summer. Corbinian, Inc. have also been talking about the project. Additionally Apostolos was recognized by the University of Birmingham where he obtained his masters degree in Computer Science. Finally, the project featured as part of a Veteran Organization post on Google's Open Source Blog.
For links to more documentation and even more blog posts covering this project, as well as the final report, please see the GORA-217 issue on our issue tracker.

HadoopSphere Logo
Gora recently featured a two-part guest post in HadoopSphere. The first post, entitled In memory data model with Apache Gora simply introduces Gora to the HadoopSphere reader base. The second post, entitled Amazon DynamoDB datastore for Gora brings the 0.3 release to the forefront of attention, focusing on important improvements within Gora 0.3 and of course the DynamoDB datastore which hails as the keynote of the 0.3 release. Happy Reading!!!.

CassandraSummit Logo
C* Summit is the premier global conference for the Apache Cassandra community and yee ha, Gora is going along for the ride. Renato and Lewis are presenting Taking Bytes from Cassandra Clients; a technical discussion and overview of current development on implementing a pluggable Cassandra client infrastructure (Hector-client, Datastax java-driver, Netflix Astyanax, intravert-ug, etc) adapted specifically for the gora-cassandra module. The presentation kicks off at 3:30-4:30pm in Track 4 in the Marina Room Conference Center. Check out the full schedule for a taste of whats going on. You can follow the news on #Cassandra13. See the slides and video below.

The Apache Gora team are proud to announce the release of Gora 0.3. This point release offers users significant improvements to a number of modules including a number of bug fixes, however of significant interest to the DynamoDB community will be the addition of a gora-dynamodb datastore for mapping and persisting objects to Amazon's DynamoDB [0]. Additionally the release includes various improvements to the gora-core and gora-cassandra modules as well as a new Web Services API implementation which enables users to extend Gora to any cloud storage platform. A full list of changes in this release can be seen in 0.3-CHANGES.txt. You can grab the maven release artifacts from Maven Central and can also get the Gora sources from our [downloads page](/downloads.html).

ApacheCon Logo
After an absence of several years, the Apache Software Foundation is pleased to announce that ApacheCon is returning to Europe in 2012! ApacheCon EU Community Edition 2012 will be held between the 5th and 8th of November, at the Rhein-Neckar-Arena in Sinsheim, Germany... and guess what? Gora is coming along for the ride! The proposal entitled From Incubation to Continuous Ingestion - The Story of Apache Gora has been included in the Big Data track. We look forward to seeing you in November in Germany.

GSoC2012 Logo
The jury has been out, the results are in and we are extremely proud to announce that the Gora - Amazon DynamoDB datastore for Gora project has come out on top in this years Google Summer of Code. We can now bear the fruits of success in this years program as it marks a first for Gora and will surely reap long term benefits for the community as a whole. A huge congratulations to this years student Renato Javier Marroqui­n Mogrovejo for his work over the summer, as a community we look forward to your continued presence within the project and beyond.

The Apache Gora team are proud to announce the release of Gora 0.2.1. This point-oh! release offers users large improvements within the gora-cassandra module including a number of bug fixes, significant upgrades to Apache Cassandra and Hector Client API usage and a number of improvements to the gora-core API. The Maven artifacts for the project are published to Maven Central. See the 0.2-CHANGES.txt file for a full list of changes in this release or alternatively the Jira release report.

The Apache Gora team are proud to announce the release of Gora 0.2, our first since graduating from the Apache Incubator. This release boasts an assortment of over 50 improvements over our previous incubating release with artifacts available both within Maven Central and from official Apache mirrors. The Maven artifacts for the project are published to Maven Central. See the 0.2-CHANGES.txt file for a full list of changes in this release.

The Apache Gora team are very happy to announce confirmation that the green light has been given for a Gora Amazon Dynamo DB project within the remit of this years Google Summer of Code. See the official project proposal here.

The biggest event within Apache Gora's history was revealed on 24/01/2012 when it was announced that Apache Gora was to be established as a Top Level Project entity within the Apache Software Foundation. This is excellent news for the Gora community and we are looking forward to tackling the benefits and challenges brought by our new Top Level status.

Some time ago, the Apache Gora development team made the decision to support Hector as the primary Apache Cassandra client. This decision enables Gora to build on the expressiveness offered by the Hector API, some features include:

  • high level, simple object oriented interface to Cassandra.
  • failover behavior on the client side.
  • connection pooling for improved performance and scalability.
  • JMX counters for monitoring and management.
  • configurable and extensible load balancing (round robin (the default), least active, and a phi-accrural style response time detector).
  • complete encapsulation of the underlying Thrift API and structs.
  • automatic retry of downed hosts.
  • automatic discovery of additional hosts in the cluster.
  • suspension of hosts for a short period of time after several timeouts.
  • simple ORM layer that works.
  • a type-safe approach to dealing with Apache Cassandra's data model.
As an Apache community we value community over code, this move is definitely a step in the right direction towards bringing together two diverse communities, whilst during process undoubtedly making both Apache Gora and Hector better technologies. Here at Gora we look forward to working with the Hector community.

The Apache Gora project made its second incubating release. This release improves the Maven artifacts for the project and publishes them in useable form to Maven Central. See the CHANGES.txt file for a full list of changes in this release.

The Apache Gora project made its first incubating release. See the CHANGES.txt file for a full list of changes in this release.

Gora has been accepted to the Apache Incubator and started it's life as a candidate Apache project.