{"id":14988366,"url":"https://github.com/apache/gora","last_synced_at":"2025-04-06T16:11:46.597Z","repository":{"id":17164919,"uuid":"19932015","full_name":"apache/gora","owner":"apache","description":"The Apache Gora open source framework provides an in-memory data model and persistence for big data.","archived":false,"fork":false,"pushed_at":"2024-02-23T13:10:35.000Z","size":11944,"stargazers_count":121,"open_issues_count":34,"forks_count":129,"subscribers_count":25,"default_branch":"master","last_synced_at":"2025-03-30T03:21:51.801Z","etag":null,"topics":["big-data","java","object-to-datastore","persistence"],"latest_commit_sha":null,"homepage":"https://gora.apache.org/","language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"QMUI/QMUI_Web","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-05-19T07:00:07.000Z","updated_at":"2025-02-19T08:45:43.000Z","dependencies_parsed_at":"2024-01-25T23:02:24.508Z","dependency_job_id":"fa98c151-d2c0-4868-b781-9b1df3de47b5","html_url":"https://github.com/apache/gora","commit_stats":{"total_commits":1255,"total_committers":85,"mean_commits":"14.764705882352942","dds":0.7593625498007968,"last_synced_commit":"cc01c182e9fbf839ac79f66142cf9cbd9f1596c5"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fgora","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fgora/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fgora/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fgora/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/gora/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247509223,"owners_count":20950232,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["big-data","java","object-to-datastore","persistence"],"created_at":"2024-09-24T14:16:36.378Z","updated_at":"2025-04-06T16:11:46.573Z","avatar_url":"https://github.com/apache.png","language":"Java","readme":"# Apache Gora Project\n\n\u003cimg src=\"http://gora.apache.org/resources/img/powered-by-gora.png\" align=\"right\" width=\"300\" /\u003e\n\n[![build](https://github.com/apache/gora/workflows/build/badge.svg?branch=master)](https://github.com/apache/gora/actions?query=workflow%3Abuild)\n[![Jenkins](https://ci-builds.apache.org/buildStatus/icon?job=Gora%2Fgora-pipeline%2Fmaster)](https://ci-builds.apache.org/job/Gora/job/gora-pipeline/job/master/)\n[![license](https://img.shields.io/github/license/apache/gora.svg?maxAge=2592000?style=plastic)](http://www.apache.org/licenses/LICENSE-2.0)\n[![Maven Central](https://img.shields.io/maven-central/v/org.apache.gora/gora.svg?maxAge=2592000?style=plastic)](http://search.maven.org/#search|ga|1|g%3A%22org.apache.gora%22)\n[![Twitter URL](https://img.shields.io/twitter/url/http/apachegora.svg?style=social\u0026maxAge=2592000?style=plastic)](https://twitter.com/apachegora)\n \nThe Apache Gora open source framework provides an in-memory data model \nand persistence for big data. Gora supports persisting to column stores, \nkey value stores, document stores and RDBMSs, and analyzing the data \nwith extensive Apache Hadoop MapReduce, Apache Spark, Apache Flink \nand Apache Pig support.  \n\n## Why Gora?\n\nAlthough there are various excellent ORM frameworks for relational\ndatabases, data modeling in NoSQL data stores differ profoundly\nfrom their relational cousins. Moreover, data-model agnostic\nframeworks such as JDO are not sufficient for use cases, where one\nneeds to use the full power of the data models in column stores.\nGora fills this gap by giving the user an easy-to-use ORM framework\nwith data store specific mappings and built in Apache Hadoop support.\n\nThe overall goal for Gora is to become the standard data representation\nand persistence framework for big data. The roadmap of Gora can be\ngrouped as follows.\n\n* Data Persistence : Persisting objects to Column stores such as\n  HBase, Cassandra, Hypertable; key-value stores such as Voldermort,\n  Redis, etc; SQL databases, such as MySQL, HSQLDB, flat files in local\n  file system or Hadoop HDFS.\n\n* Data Access : An easy to use Java-friendly common API for accessing\n  the data regardless of its location.\n\n* Indexing : Persisting objects to Lucene and Solr indexes,\n  accessing/querying the data with Gora API.\n\n* Analysis : Accesing the data and making analysis through adapters for\n  Apache Pig, Apache Hive and Cascading\n\n* MapReduce support : Out-of-the-box and extensive MapReduce (Apache\n  Hadoop) support for data in the data store.\n\n# Background\n\nORM stands for Object Relation Mapping. It is a technology which\nabstacts the persistency layer (mostly Relational Databases) so\nthat plain domain level objects can be used, without the cumbersome\neffort to save/load the data to and from the database. Gora differs\nfrom current solutions in that:\n\n* Gora is specially focussed at NoSQL data stores, but also has limited\n  support for SQL databases.\n\n* The main use case for Gora is to access/analyze big data using Hadoop.\n\n* Gora uses Avro for bean definition, not byte code enhancement or annotations.\n\n* Object-to-data store mappings are backend specific, so that full data\n  model can be utilized.\n\n* Gora is simple since it ignores complex SQL mappings.\n\n* Gora will support persistence, indexing and anaysis of data, using Pig,\n  Lucene, Hive, etc.\n\n\n For the latest information about Gora, please visit our website at:\n \n   http://gora.apache.org\n \n# License\n\nGora is provided under Apache License version 2.0. See LICENSE.txt for more details.\n","funding_links":[],"categories":["数据库开发"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fgora","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Fgora","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fgora/lists"}