New data access technologies include map-reduce frameworks, non-relational databases and cloud based data services.
Spring Data is an umbrella open source project which contains many subprojects that are specific to a given database.
Future support is planned for Membase, HBase, Cassandra, .NET platform, Android platforms, Grails plugins and Spring Roo add-ons.
Here are some key features of "Spring Data":
- Commons - Provides shared infrastructure for use across various data access projects. Support for cross-database persistence is located here.
- Hadoop - Spring based configuration of Hadoop jobs and a POJO programming model for Map-Reduce jobs
- Key-Value - Integration with Redis and Riak providing several ease features for common cases.
- Document - Integration with CouchDB and MongoDB with basic configuration, mapping, and repository support
- Graph - Integration with Neo4j providing a powerful POJO based programming model.
- Graph Roo AddOn - Roo support for Neo4j
- JDBC Extensions - Support for Oracle RAC, Advanced Queuing, and Advanced datatypes.
- JPA - Simplifies the development of creating a JPA-based data access layer and provides 'cross-store' persistence functionality for JPA managed entities.
- Mapping - Currently hosted on the Grails area of github under the code name 'inconsequential' this provides a database unified object mapping framework that is portable across different databases for Java and Grails.
- Examples - Example applications for document and graph databases. See the SpringSource github page and filter by 'examples'.
- Guidance - High level documentation to help educate and guide you in non-relational data access landscape.