This week marked the release of DZone's Core Spring Data Refcard. In it, author Oliver Gierke provides a must-have reference for developers who are using or interested in the Spring Data project. As part of the Spring Framework ecosystem, Spring Data offers advanced data access modules for traditional, NoSQL, and big data technologies. Oliver was kind enough to give us some insight into his authorship of the card, as well as his thoughts on the emergence of NoSQL solutions and their relevance to today's developers.
DZone: Tell us a little about your professional background and how it informed your writing of the Spring Data Refcard.
Oliver Gierke: I am working for the Spring Data team at Pivotal (formerly SpringSource), leading the core, JPA and MongoDB modules. About half a year ago, the team wrote a book with O'Reilly about the project. While the book is a good way to explore the individual modules step-by-step, we thought it would be worthwhile to complement it with a more reference-style publication, something DZone Refcardz are well-known and popular for.
DZone: In a couple sentences, describe what readers will be able to do using this Refcard.
Oliver Gierke: The Refcard will give you a short rundown through the core features of the Spring Data project and its most popular projects. Beyond that, it'll be a good fellow in helping you in case you need to look up some mapping annotations or quickly recap how the repository programming model works, for example. It probably has its sweet spot if you start working with the Spring Data modules, but will also be a perfect assistant to quickly look up condensed information about advanced features like the Querydsl and the web layer integration. The most important stuff at a quick glance, right at your desk, right at your screen.
DZone: What types of developers would most likely benefit from downloading this Refcard?
Oliver Gierke: It'll probably be perfect for developers that have seen Spring Data modules already but maybe have taken a quick glance only. It will help you getting started with the core features like the mapping framework, the template APIs, as well as the repository programming model. On the other hand, it's also the perfect introduction in case you're an architect evaluating Spring Data as the technology of choice for your persistence layers.
DZone: This Refcard has a strong emphasis on Spring Data's compatibility with various NoSQL solutions. What are your thoughts on the increase in popularity of NoSQL solutions lately? Why do you think there has been so much buzz around these solutions?
Oliver Gierke: In general, the rise of NoSQL stores has resulted in developers being able to choose the right store for the job and not trying to nail every problem with the SQL hammer. The decision of which store to use is usually driven by two major questions: what kind of data are you going to work with and what are the access patterns for this data. We see a tremendous growth in data currently, especially in the area of unstructured data. Thus, it becomes extremely important to be able to work with the data in a reasonable time so that it's just a logical consequence to prefer dedicated stores.