SlideShare a Scribd company logo
Spring Data and In-Memory
Data Management in Action
John Blum • Luke Shannon
@john_blum • @lukewshannon
Agenda
• Brief Apache Geode Overview
• Apache Geode in Spring
• Spring with Apache Geode in Action:
• Caching in [Pivotal] CloudFoundry
• Events with Continuous Query
• Data Access with Repositories
• New Improvements
• Roadmap
• *Bonus Feature
• QA
3
Apache Geode Pivotal GemFire
4
~
5
Distributed
Linearly Scalable
High Throughput
Low/Predictable Latency
Highly Available
Consistent
Durable
In-Memory
Resilient/Fault Tolerant
Shared Nothing Architecture
Partitioned
Real-Time Big/Fast Data
Events/Continuous Query
Functions
Transactions
Queries/Indexes
Multi-Cluster
Client/Server
P2P
Persistent
Replication
Cloud
Secure
Serialization
Spring Data GemFire / Geode
7
1. Use the Spring Framework’s powerful, non-invasive programming model
and concepts to simplify the configuration and development of highly-
scalable, distributed Spring applications based on Pivotal GemFire or
Apache Geode.
1. Integration with the Spring portfolio…
Purpose
Spring Data GemFire / Geode
8
+ +
Using Pivotal GemFire or Apache Geode
With Spring’s Transaction Management and Spring Data GemFire/Geode
To support both Local (Cache) & Global (JTA) Transactions
Spring Framework
Spring Data GemFire / Geode
9
+ +
Using Pivotal GemFire or Apache Geode
With Spring’s Cache Abstraction and Spring Data GemFire/Geode
To serve as a JCache (JSR-107) caching provider
Spring Framework
Spring Data GemFire / Geode
10
Spring Data Commons
+
Using Pivotal GemFire or Apache Geode
With SD Commons Repository Infrastructure and SD GemFire/Geode
To rapidly build Data Access Objects (CRUD + Mapping + Querying)
|
Spring Data GemFire / Geode
11
Spring Data REST & Spring HATEOAS
+
Using Pivotal GemFire or Apache Geode
With SDC Repositories, Spring Data REST and Spring HATEAOS
To easily create mature, hypermedia-driven REST web services
| +
Spring Data GemFire
12
Spring Integration
+
Using Pivotal GemFire with Spring Integration
For Inbound (Cache Events & CQ) and Outbound Channel Adapters,
Message Store, Lock Registry, Metadata Store
Spring Data GemFire
13
Spring XD
+
Using Pivotal GemFire with Spring XD (CQ, source & sink)
To simplify Big Data applications
Performing Ingest, Analytics, Batch Jobs and Data Export
Spring Data GemFire
14
Spring Session
+
Using Pivotal GemFire with Spring Session (Data GemFire)
To simplify (HTTP) Session State Management
+
Spring Data GemFire
15
Spring Boot
+
Using Pivotal GemFire with Spring Boot
To get up and running as quickly as possible
+
Spring Data GemFire
16
Spring Cloud
+
Use Spring Cloud (Connectors)
To build Cloud Native Applications and Microservices
Using Pivotal GemFire
Examples
17
Spring Data GemFire / Geode
18
Spring Data GemFire
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-gemfire</artifactId>
<version>1.8.2.RELEASE</version>
</dependency>
Spring Data Geode
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-geode</artifactId>
<version>1.0.0.APACHE-GEODE-INCUBATING-M2</version>
</dependency>
Pivotal
GemFire
Maven Artifacts
http://search.maven.org/#artifactdetails%7Corg.springframework.data%7Cspring-data-
gemfire%7C1.8.2.RELEASE%7Cjar
http://search.maven.org/#artifactdetails%7Corg.springframework.data%7Cspring-data-
geode%7C1.0.0.APACHE-GEODE-INCUBATING-M2%7Cjar
Spring Data GemFire / Geode
19
Spring Data GemFire
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-gemfire</artifactId>
<version>1.4.0.RELEASE</version>
</dependency>
Pivotal
GemFire
Spring Boot Maven Artifact
http://search.maven.org/#artifactdetails%7Corg.springframework.data%7Cspring-data-
gemfire%7C1.8.2.RELEASE%7Cjar
Roadmap – Annotation Support for Callbacks
20
@Component
public class ExampleApplicationCallbacks {
@CacheListener(region = “EventSource”)
public void afterCreate(EntryEvent<K, V> event) {
..
}
@CacheLoader(region = “DataSink”)
public void load(LoaderHelper<K, V> helper) {
..
}
@CacheWriter(region = “DataSource”)
public void beforeUpdate(EntryEvent<K, V> event) {
..
}
}
Spring Data GemFire / Geode
 Spring Data GemFire 2.0
 Java 8
 Spring Framework 5.0
 GemFire 9.0
 Projections; Java 8 Types (Optional<T>, Stream<T>); Reactive Support (?)
 Codebase re-organization
 Test Framework support
21
Just around the corner…
Spring Boot
22
PR #6224 – Auto-configuration support for SDG Repositories
interface CustomerRepository extends Repository<Customer, Long> {
}
@Region(“Customers”)
class Customer {
}
compile “org.springframework.boot:spring-boot-starter-data-gemfire:1.5.0.M1”
No longer necessary…
@SpringBootApplication
@EnableGemfireRepositories
class ExampleSpringBootApplication {
}
Spring Boot
23
PR #5445 – Spring Boot Starter Data Geode
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-geode</artifactId>
<version>???</version>
</dependency>`
Spring Session
24
PR #366 – Spring Session Data Geode
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-data-geode</artifactId>
<version>???</version>
</dependency>`
References
25
 Spring Data GemFire (SDG) project page
 SDG GitHub source code
 SDG Reference Guide
 SDG API
 SDG Wiki page
 SDG Examples
 SDG JIRA Issue Tracking
 SDG StackOverflow spring-data-gemfire tag
 spring-data Gitter IM Channel
Learn More. Stay Connected.
Oliver Gierke
Advanced Spring Data REST
11:00 – 12:15 PM
@springcentral
spring.io/blog
@pivotal
pivotal.io/blog
@pivotalcf
http://engineering.pivotal.io
Questions
27
Answers
Thank You
28
Safe Harbor Statement
• The following is intended to outline the general direction of Pivotal's offerings. It
is intended for information purposes only and may not be incorporated into any
contract. Any information regarding pre-release of Pivotal offerings, future
updates or other planned modifications is subject to ongoing evaluation by
Pivotal and is subject to change. This information is provided without warranty
or any kind, express or implied, and is not a commitment to deliver any material,
code, or functionality, and should not be relied upon in making purchasing
decisions regarding Pivotal's offerings. These purchasing decisions should only
be based on features currently available. The development, release, and timing
of any features or functionality described for Pivotal's offerings in this
presentation remain at the sole discretion of Pivotal. Pivotal has no obligation to
update forward looking information in this presentation.
29

More Related Content

What's hot

Intro to GKE and app deployment with Kubernetes
Intro to GKE and app deployment with KubernetesIntro to GKE and app deployment with Kubernetes
Intro to GKE and app deployment with Kubernetes
GDG Cloud Bengaluru
 
How to Live in a Post-Spring-Cloud-Netflix World - Olga Maciaszek-Sharma & Ja...
How to Live in a Post-Spring-Cloud-Netflix World - Olga Maciaszek-Sharma & Ja...How to Live in a Post-Spring-Cloud-Netflix World - Olga Maciaszek-Sharma & Ja...
How to Live in a Post-Spring-Cloud-Netflix World - Olga Maciaszek-Sharma & Ja...
VMware Tanzu
 
Gdsc muk - innocent
Gdsc   muk - innocentGdsc   muk - innocent
Gdsc muk - innocent
junaidhasan17
 
Spring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsugSpring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsug
Toshiaki Maki
 
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
InfluxData
 
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes WorkloadsAWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
AWS Summits
 
Build bundles in the cloud - How Cloudyle PaaS+ helps creating OSGi applicati...
Build bundles in the cloud - How Cloudyle PaaS+ helps creating OSGi applicati...Build bundles in the cloud - How Cloudyle PaaS+ helps creating OSGi applicati...
Build bundles in the cloud - How Cloudyle PaaS+ helps creating OSGi applicati...
mfrancis
 
Simplifying Apache Geode with Spring Data
Simplifying Apache Geode with Spring DataSimplifying Apache Geode with Spring Data
Simplifying Apache Geode with Spring Data
VMware Tanzu
 
Openstack days sv building highly available services using kubernetes (preso)
Openstack days sv   building highly available services using kubernetes (preso)Openstack days sv   building highly available services using kubernetes (preso)
Openstack days sv building highly available services using kubernetes (preso)
Allan Naim
 
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1tServerless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
Toshiaki Maki
 
Short Lived Tasks in Cloud Foundry #cfdtokyo
Short Lived Tasks in Cloud Foundry #cfdtokyoShort Lived Tasks in Cloud Foundry #cfdtokyo
Short Lived Tasks in Cloud Foundry #cfdtokyo
Toshiaki Maki
 
Microservices with Spring and Cloud Foundry
Microservices with Spring and Cloud FoundryMicroservices with Spring and Cloud Foundry
Microservices with Spring and Cloud Foundry
Alain Sahli
 
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Roberto Pérez Alcolea
 
Weave GitOps Core Overview (Free GitOps Workshop)
Weave GitOps Core Overview (Free GitOps Workshop)Weave GitOps Core Overview (Free GitOps Workshop)
Weave GitOps Core Overview (Free GitOps Workshop)
Weaveworks
 
12 Factor App
12 Factor App12 Factor App
12 Factor App
Erkan Erol
 
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2UCloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
Sufyaan Kazi
 
Big data on google cloud
Big data on google cloudBig data on google cloud
Big data on google cloud
Tu Pham
 
Rehosting apps between k8s clusters and automating deployment using crane c...
Rehosting apps between k8s clusters and automating deployment using crane   c...Rehosting apps between k8s clusters and automating deployment using crane   c...
Rehosting apps between k8s clusters and automating deployment using crane c...
LibbySchulze
 
An Early Evaluation of Running Spark on Kubernetes
An Early Evaluation of Running Spark on KubernetesAn Early Evaluation of Running Spark on Kubernetes
An Early Evaluation of Running Spark on Kubernetes
DataWorks Summit
 
Kubernetes: від знайомства до використання у CI/CD
Kubernetes: від знайомства до використання у CI/CDKubernetes: від знайомства до використання у CI/CD
Kubernetes: від знайомства до використання у CI/CD
Stfalcon Meetups
 

What's hot (20)

Intro to GKE and app deployment with Kubernetes
Intro to GKE and app deployment with KubernetesIntro to GKE and app deployment with Kubernetes
Intro to GKE and app deployment with Kubernetes
 
How to Live in a Post-Spring-Cloud-Netflix World - Olga Maciaszek-Sharma & Ja...
How to Live in a Post-Spring-Cloud-Netflix World - Olga Maciaszek-Sharma & Ja...How to Live in a Post-Spring-Cloud-Netflix World - Olga Maciaszek-Sharma & Ja...
How to Live in a Post-Spring-Cloud-Netflix World - Olga Maciaszek-Sharma & Ja...
 
Gdsc muk - innocent
Gdsc   muk - innocentGdsc   muk - innocent
Gdsc muk - innocent
 
Spring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsugSpring Cloud Function & Project riff #jsug
Spring Cloud Function & Project riff #jsug
 
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
 
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes WorkloadsAWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
AWS Summit Singapore 2019 | Autoscaling Your Kubernetes Workloads
 
Build bundles in the cloud - How Cloudyle PaaS+ helps creating OSGi applicati...
Build bundles in the cloud - How Cloudyle PaaS+ helps creating OSGi applicati...Build bundles in the cloud - How Cloudyle PaaS+ helps creating OSGi applicati...
Build bundles in the cloud - How Cloudyle PaaS+ helps creating OSGi applicati...
 
Simplifying Apache Geode with Spring Data
Simplifying Apache Geode with Spring DataSimplifying Apache Geode with Spring Data
Simplifying Apache Geode with Spring Data
 
Openstack days sv building highly available services using kubernetes (preso)
Openstack days sv   building highly available services using kubernetes (preso)Openstack days sv   building highly available services using kubernetes (preso)
Openstack days sv building highly available services using kubernetes (preso)
 
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1tServerless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
 
Short Lived Tasks in Cloud Foundry #cfdtokyo
Short Lived Tasks in Cloud Foundry #cfdtokyoShort Lived Tasks in Cloud Foundry #cfdtokyo
Short Lived Tasks in Cloud Foundry #cfdtokyo
 
Microservices with Spring and Cloud Foundry
Microservices with Spring and Cloud FoundryMicroservices with Spring and Cloud Foundry
Microservices with Spring and Cloud Foundry
 
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
Leveraging Gradle @ Netflix (Madrid GUG Feb 2, 2021)
 
Weave GitOps Core Overview (Free GitOps Workshop)
Weave GitOps Core Overview (Free GitOps Workshop)Weave GitOps Core Overview (Free GitOps Workshop)
Weave GitOps Core Overview (Free GitOps Workshop)
 
12 Factor App
12 Factor App12 Factor App
12 Factor App
 
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2UCloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
 
Big data on google cloud
Big data on google cloudBig data on google cloud
Big data on google cloud
 
Rehosting apps between k8s clusters and automating deployment using crane c...
Rehosting apps between k8s clusters and automating deployment using crane   c...Rehosting apps between k8s clusters and automating deployment using crane   c...
Rehosting apps between k8s clusters and automating deployment using crane c...
 
An Early Evaluation of Running Spark on Kubernetes
An Early Evaluation of Running Spark on KubernetesAn Early Evaluation of Running Spark on Kubernetes
An Early Evaluation of Running Spark on Kubernetes
 
Kubernetes: від знайомства до використання у CI/CD
Kubernetes: від знайомства до використання у CI/CDKubernetes: від знайомства до використання у CI/CD
Kubernetes: від знайомства до використання у CI/CD
 

Viewers also liked

075 - The Names You Know, The People You Don't - James Douglas Ogilby (Tank T...
075 - The Names You Know, The People You Don't - James Douglas Ogilby (Tank T...075 - The Names You Know, The People You Don't - James Douglas Ogilby (Tank T...
075 - The Names You Know, The People You Don't - James Douglas Ogilby (Tank T...Derek Tustin
 
Laparoscopy-assisted distal gastrectomy with D1+β compared with D1+α lymph no...
Laparoscopy-assisted distal gastrectomy with D1+β compared with D1+α lymph no...Laparoscopy-assisted distal gastrectomy with D1+β compared with D1+α lymph no...
Laparoscopy-assisted distal gastrectomy with D1+β compared with D1+α lymph no...Goto Pablo
 
Connections
ConnectionsConnections
Connections
Malik Vaughan
 
J.W. Crane Biography
J.W. Crane BiographyJ.W. Crane Biography
J.W. Crane BiographyDerek Tustin
 
Thesis Project - Prodega Volume One: Through the Lens of the Individual
Thesis Project - Prodega Volume One: Through the Lens of the IndividualThesis Project - Prodega Volume One: Through the Lens of the Individual
Thesis Project - Prodega Volume One: Through the Lens of the Individual
Chisun Rees
 
FEA - Simple Analysis example
FEA - Simple Analysis exampleFEA - Simple Analysis example
FEA - Simple Analysis exampleMichael Davis
 
023 - Aqua Latin 101 (Tank Talk 35-04 - December 2007)
023 - Aqua Latin 101 (Tank Talk 35-04 - December 2007)023 - Aqua Latin 101 (Tank Talk 35-04 - December 2007)
023 - Aqua Latin 101 (Tank Talk 35-04 - December 2007)Derek Tustin
 
Классификация логотипов
Классификация логотиповКлассификация логотипов
Классификация логотипов
Артур Хазеев
 
deloitte-uk-cf-aldt-q1-2016
deloitte-uk-cf-aldt-q1-2016deloitte-uk-cf-aldt-q1-2016
deloitte-uk-cf-aldt-q1-2016Julien Le Guern
 
Casos Clinics Homeopàtics de Qualitat
Casos Clinics Homeopàtics de QualitatCasos Clinics Homeopàtics de Qualitat
Casos Clinics Homeopàtics de Qualitat
Maria Àngels Carrera
 
TrainingCoursesfullpage5_7_15
TrainingCoursesfullpage5_7_15TrainingCoursesfullpage5_7_15
TrainingCoursesfullpage5_7_15Marcus Lawson
 
Weerstand teen teksgebonde navorsing: 'n bydrae tot 'n omgekeerde benadering ...
Weerstand teen teksgebonde navorsing: 'n bydrae tot 'n omgekeerde benadering ...Weerstand teen teksgebonde navorsing: 'n bydrae tot 'n omgekeerde benadering ...
Weerstand teen teksgebonde navorsing: 'n bydrae tot 'n omgekeerde benadering ...
1guestupington
 
Basel III - Implications of Implementation
Basel III - Implications of ImplementationBasel III - Implications of Implementation
Basel III - Implications of Implementation
David Kyson
 
Sondeo exploratorio
Sondeo exploratorioSondeo exploratorio
Sondeo exploratorio
raisarueda
 
Entorno para compartir recurso
Entorno para compartir                recursoEntorno para compartir                recurso
Entorno para compartir recurso
kevin-alexander69
 

Viewers also liked (20)

075 - The Names You Know, The People You Don't - James Douglas Ogilby (Tank T...
075 - The Names You Know, The People You Don't - James Douglas Ogilby (Tank T...075 - The Names You Know, The People You Don't - James Douglas Ogilby (Tank T...
075 - The Names You Know, The People You Don't - James Douglas Ogilby (Tank T...
 
Laparoscopy-assisted distal gastrectomy with D1+β compared with D1+α lymph no...
Laparoscopy-assisted distal gastrectomy with D1+β compared with D1+α lymph no...Laparoscopy-assisted distal gastrectomy with D1+β compared with D1+α lymph no...
Laparoscopy-assisted distal gastrectomy with D1+β compared with D1+α lymph no...
 
Connections
ConnectionsConnections
Connections
 
J.W. Crane Biography
J.W. Crane BiographyJ.W. Crane Biography
J.W. Crane Biography
 
Thesis Project - Prodega Volume One: Through the Lens of the Individual
Thesis Project - Prodega Volume One: Through the Lens of the IndividualThesis Project - Prodega Volume One: Through the Lens of the Individual
Thesis Project - Prodega Volume One: Through the Lens of the Individual
 
FEA - Simple Analysis example
FEA - Simple Analysis exampleFEA - Simple Analysis example
FEA - Simple Analysis example
 
023 - Aqua Latin 101 (Tank Talk 35-04 - December 2007)
023 - Aqua Latin 101 (Tank Talk 35-04 - December 2007)023 - Aqua Latin 101 (Tank Talk 35-04 - December 2007)
023 - Aqua Latin 101 (Tank Talk 35-04 - December 2007)
 
Классификация логотипов
Классификация логотиповКлассификация логотипов
Классификация логотипов
 
Tatuajes
TatuajesTatuajes
Tatuajes
 
Adhir Kumar Shukla Resume.
Adhir Kumar Shukla Resume.Adhir Kumar Shukla Resume.
Adhir Kumar Shukla Resume.
 
deloitte-uk-cf-aldt-q1-2016
deloitte-uk-cf-aldt-q1-2016deloitte-uk-cf-aldt-q1-2016
deloitte-uk-cf-aldt-q1-2016
 
Casos Clinics Homeopàtics de Qualitat
Casos Clinics Homeopàtics de QualitatCasos Clinics Homeopàtics de Qualitat
Casos Clinics Homeopàtics de Qualitat
 
CV
CVCV
CV
 
Jerry Resume
Jerry ResumeJerry Resume
Jerry Resume
 
TrainingCoursesfullpage5_7_15
TrainingCoursesfullpage5_7_15TrainingCoursesfullpage5_7_15
TrainingCoursesfullpage5_7_15
 
Weerstand teen teksgebonde navorsing: 'n bydrae tot 'n omgekeerde benadering ...
Weerstand teen teksgebonde navorsing: 'n bydrae tot 'n omgekeerde benadering ...Weerstand teen teksgebonde navorsing: 'n bydrae tot 'n omgekeerde benadering ...
Weerstand teen teksgebonde navorsing: 'n bydrae tot 'n omgekeerde benadering ...
 
Basel III - Implications of Implementation
Basel III - Implications of ImplementationBasel III - Implications of Implementation
Basel III - Implications of Implementation
 
Sondeo exploratorio
Sondeo exploratorioSondeo exploratorio
Sondeo exploratorio
 
Essential-Drugs-Company-Limited
Essential-Drugs-Company-LimitedEssential-Drugs-Company-Limited
Essential-Drugs-Company-Limited
 
Entorno para compartir recurso
Entorno para compartir                recursoEntorno para compartir                recurso
Entorno para compartir recurso
 

Similar to Spring Data and In-Memory Data Management in Action

CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQueryCodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
Márton Kodok
 
Spring Data (GemFire) Overview
Spring Data (GemFire) OverviewSpring Data (GemFire) Overview
Spring Data (GemFire) Overview
John Blum
 
Gimel at Dataworks Summit San Jose 2018
Gimel at Dataworks Summit San Jose 2018Gimel at Dataworks Summit San Jose 2018
Gimel at Dataworks Summit San Jose 2018
Romit Mehta
 
Dataworks | 2018-06-20 | Gimel data platform
Dataworks | 2018-06-20 | Gimel data platformDataworks | 2018-06-20 | Gimel data platform
Dataworks | 2018-06-20 | Gimel data platform
Deepak Chandramouli
 
QCon 2018 | Gimel | PayPal's Analytic Platform
QCon 2018 | Gimel | PayPal's Analytic PlatformQCon 2018 | Gimel | PayPal's Analytic Platform
QCon 2018 | Gimel | PayPal's Analytic Platform
Deepak Chandramouli
 
Gimel and PayPal Notebooks @ TDWI Leadership Summit Orlando
Gimel and PayPal Notebooks @ TDWI Leadership Summit OrlandoGimel and PayPal Notebooks @ TDWI Leadership Summit Orlando
Gimel and PayPal Notebooks @ TDWI Leadership Summit Orlando
Romit Mehta
 
Building Effective Apache Geode Applications with Spring Data GemFire
Building Effective Apache Geode Applications with Spring Data GemFireBuilding Effective Apache Geode Applications with Spring Data GemFire
Building Effective Apache Geode Applications with Spring Data GemFire
John Blum
 
Azure Data Factory v2
Azure Data Factory v2Azure Data Factory v2
Azure Data Factory v2
inovex GmbH
 
Big Data Ready Enterprise
Big Data Ready Enterprise Big Data Ready Enterprise
Big Data Ready Enterprise
DataWorks Summit/Hadoop Summit
 
#GeodeSummit - Spring Data GemFire API Current and Future
#GeodeSummit - Spring Data GemFire API Current and Future#GeodeSummit - Spring Data GemFire API Current and Future
#GeodeSummit - Spring Data GemFire API Current and Future
PivotalOpenSourceHub
 
#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...
#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...
#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...
PivotalOpenSourceHub
 
Pivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan
Pivoting Spring XD to Spring Cloud Data Flow with Sabby AnandanPivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan
Pivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan
PivotalOpenSourceHub
 
SpringBoot and Spring Cloud Service for MSA
SpringBoot and Spring Cloud Service for MSASpringBoot and Spring Cloud Service for MSA
SpringBoot and Spring Cloud Service for MSA
Oracle Korea
 
How a distributed graph analytics platform uses Apache Kafka for data ingesti...
How a distributed graph analytics platform uses Apache Kafka for data ingesti...How a distributed graph analytics platform uses Apache Kafka for data ingesti...
How a distributed graph analytics platform uses Apache Kafka for data ingesti...
HostedbyConfluent
 
Best practices for developing your Magento Commerce on Cloud
Best practices for developing your Magento Commerce on CloudBest practices for developing your Magento Commerce on Cloud
Best practices for developing your Magento Commerce on Cloud
Oleg Posyniak
 
Integrating Google Cloud Dataproc with Alluxio for faster performance in the ...
Integrating Google Cloud Dataproc with Alluxio for faster performance in the ...Integrating Google Cloud Dataproc with Alluxio for faster performance in the ...
Integrating Google Cloud Dataproc with Alluxio for faster performance in the ...
Alluxio, Inc.
 
Microservices with kubernetes @190316
Microservices with kubernetes @190316Microservices with kubernetes @190316
Microservices with kubernetes @190316
Jupil Hwang
 
PayPal datalake journey | teradata - edge of next | san diego | 2017 october ...
PayPal datalake journey | teradata - edge of next | san diego | 2017 october ...PayPal datalake journey | teradata - edge of next | san diego | 2017 october ...
PayPal datalake journey | teradata - edge of next | san diego | 2017 october ...
Deepak Chandramouli
 
Voxxed Days Cluj - Powering interactive data analysis with Google BigQuery
Voxxed Days Cluj - Powering interactive data analysis with Google BigQueryVoxxed Days Cluj - Powering interactive data analysis with Google BigQuery
Voxxed Days Cluj - Powering interactive data analysis with Google BigQuery
Márton Kodok
 
Geode Meetup Apachecon
Geode Meetup ApacheconGeode Meetup Apachecon
Geode Meetup Apachecon
upthewaterspout
 

Similar to Spring Data and In-Memory Data Management in Action (20)

CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQueryCodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
 
Spring Data (GemFire) Overview
Spring Data (GemFire) OverviewSpring Data (GemFire) Overview
Spring Data (GemFire) Overview
 
Gimel at Dataworks Summit San Jose 2018
Gimel at Dataworks Summit San Jose 2018Gimel at Dataworks Summit San Jose 2018
Gimel at Dataworks Summit San Jose 2018
 
Dataworks | 2018-06-20 | Gimel data platform
Dataworks | 2018-06-20 | Gimel data platformDataworks | 2018-06-20 | Gimel data platform
Dataworks | 2018-06-20 | Gimel data platform
 
QCon 2018 | Gimel | PayPal's Analytic Platform
QCon 2018 | Gimel | PayPal's Analytic PlatformQCon 2018 | Gimel | PayPal's Analytic Platform
QCon 2018 | Gimel | PayPal's Analytic Platform
 
Gimel and PayPal Notebooks @ TDWI Leadership Summit Orlando
Gimel and PayPal Notebooks @ TDWI Leadership Summit OrlandoGimel and PayPal Notebooks @ TDWI Leadership Summit Orlando
Gimel and PayPal Notebooks @ TDWI Leadership Summit Orlando
 
Building Effective Apache Geode Applications with Spring Data GemFire
Building Effective Apache Geode Applications with Spring Data GemFireBuilding Effective Apache Geode Applications with Spring Data GemFire
Building Effective Apache Geode Applications with Spring Data GemFire
 
Azure Data Factory v2
Azure Data Factory v2Azure Data Factory v2
Azure Data Factory v2
 
Big Data Ready Enterprise
Big Data Ready Enterprise Big Data Ready Enterprise
Big Data Ready Enterprise
 
#GeodeSummit - Spring Data GemFire API Current and Future
#GeodeSummit - Spring Data GemFire API Current and Future#GeodeSummit - Spring Data GemFire API Current and Future
#GeodeSummit - Spring Data GemFire API Current and Future
 
#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...
#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...
#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...
 
Pivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan
Pivoting Spring XD to Spring Cloud Data Flow with Sabby AnandanPivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan
Pivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan
 
SpringBoot and Spring Cloud Service for MSA
SpringBoot and Spring Cloud Service for MSASpringBoot and Spring Cloud Service for MSA
SpringBoot and Spring Cloud Service for MSA
 
How a distributed graph analytics platform uses Apache Kafka for data ingesti...
How a distributed graph analytics platform uses Apache Kafka for data ingesti...How a distributed graph analytics platform uses Apache Kafka for data ingesti...
How a distributed graph analytics platform uses Apache Kafka for data ingesti...
 
Best practices for developing your Magento Commerce on Cloud
Best practices for developing your Magento Commerce on CloudBest practices for developing your Magento Commerce on Cloud
Best practices for developing your Magento Commerce on Cloud
 
Integrating Google Cloud Dataproc with Alluxio for faster performance in the ...
Integrating Google Cloud Dataproc with Alluxio for faster performance in the ...Integrating Google Cloud Dataproc with Alluxio for faster performance in the ...
Integrating Google Cloud Dataproc with Alluxio for faster performance in the ...
 
Microservices with kubernetes @190316
Microservices with kubernetes @190316Microservices with kubernetes @190316
Microservices with kubernetes @190316
 
PayPal datalake journey | teradata - edge of next | san diego | 2017 october ...
PayPal datalake journey | teradata - edge of next | san diego | 2017 october ...PayPal datalake journey | teradata - edge of next | san diego | 2017 october ...
PayPal datalake journey | teradata - edge of next | san diego | 2017 october ...
 
Voxxed Days Cluj - Powering interactive data analysis with Google BigQuery
Voxxed Days Cluj - Powering interactive data analysis with Google BigQueryVoxxed Days Cluj - Powering interactive data analysis with Google BigQuery
Voxxed Days Cluj - Powering interactive data analysis with Google BigQuery
 
Geode Meetup Apachecon
Geode Meetup ApacheconGeode Meetup Apachecon
Geode Meetup Apachecon
 

Recently uploaded

How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Anthony Dahanne
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 

Recently uploaded (20)

How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 

Spring Data and In-Memory Data Management in Action

  • 1. Spring Data and In-Memory Data Management in Action John Blum • Luke Shannon @john_blum • @lukewshannon
  • 2. Agenda • Brief Apache Geode Overview • Apache Geode in Spring • Spring with Apache Geode in Action: • Caching in [Pivotal] CloudFoundry • Events with Continuous Query • Data Access with Repositories • New Improvements • Roadmap • *Bonus Feature • QA 3
  • 3. Apache Geode Pivotal GemFire 4 ~
  • 4. 5 Distributed Linearly Scalable High Throughput Low/Predictable Latency Highly Available Consistent Durable In-Memory Resilient/Fault Tolerant Shared Nothing Architecture Partitioned Real-Time Big/Fast Data Events/Continuous Query Functions Transactions Queries/Indexes Multi-Cluster Client/Server P2P Persistent Replication Cloud Secure Serialization
  • 5. Spring Data GemFire / Geode 7 1. Use the Spring Framework’s powerful, non-invasive programming model and concepts to simplify the configuration and development of highly- scalable, distributed Spring applications based on Pivotal GemFire or Apache Geode. 1. Integration with the Spring portfolio… Purpose
  • 6. Spring Data GemFire / Geode 8 + + Using Pivotal GemFire or Apache Geode With Spring’s Transaction Management and Spring Data GemFire/Geode To support both Local (Cache) & Global (JTA) Transactions Spring Framework
  • 7. Spring Data GemFire / Geode 9 + + Using Pivotal GemFire or Apache Geode With Spring’s Cache Abstraction and Spring Data GemFire/Geode To serve as a JCache (JSR-107) caching provider Spring Framework
  • 8. Spring Data GemFire / Geode 10 Spring Data Commons + Using Pivotal GemFire or Apache Geode With SD Commons Repository Infrastructure and SD GemFire/Geode To rapidly build Data Access Objects (CRUD + Mapping + Querying) |
  • 9. Spring Data GemFire / Geode 11 Spring Data REST & Spring HATEOAS + Using Pivotal GemFire or Apache Geode With SDC Repositories, Spring Data REST and Spring HATEAOS To easily create mature, hypermedia-driven REST web services | +
  • 10. Spring Data GemFire 12 Spring Integration + Using Pivotal GemFire with Spring Integration For Inbound (Cache Events & CQ) and Outbound Channel Adapters, Message Store, Lock Registry, Metadata Store
  • 11. Spring Data GemFire 13 Spring XD + Using Pivotal GemFire with Spring XD (CQ, source & sink) To simplify Big Data applications Performing Ingest, Analytics, Batch Jobs and Data Export
  • 12. Spring Data GemFire 14 Spring Session + Using Pivotal GemFire with Spring Session (Data GemFire) To simplify (HTTP) Session State Management +
  • 13. Spring Data GemFire 15 Spring Boot + Using Pivotal GemFire with Spring Boot To get up and running as quickly as possible +
  • 14. Spring Data GemFire 16 Spring Cloud + Use Spring Cloud (Connectors) To build Cloud Native Applications and Microservices Using Pivotal GemFire
  • 16. Spring Data GemFire / Geode 18 Spring Data GemFire <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-gemfire</artifactId> <version>1.8.2.RELEASE</version> </dependency> Spring Data Geode <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-geode</artifactId> <version>1.0.0.APACHE-GEODE-INCUBATING-M2</version> </dependency> Pivotal GemFire Maven Artifacts http://search.maven.org/#artifactdetails%7Corg.springframework.data%7Cspring-data- gemfire%7C1.8.2.RELEASE%7Cjar http://search.maven.org/#artifactdetails%7Corg.springframework.data%7Cspring-data- geode%7C1.0.0.APACHE-GEODE-INCUBATING-M2%7Cjar
  • 17. Spring Data GemFire / Geode 19 Spring Data GemFire <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-gemfire</artifactId> <version>1.4.0.RELEASE</version> </dependency> Pivotal GemFire Spring Boot Maven Artifact http://search.maven.org/#artifactdetails%7Corg.springframework.data%7Cspring-data- gemfire%7C1.8.2.RELEASE%7Cjar
  • 18. Roadmap – Annotation Support for Callbacks 20 @Component public class ExampleApplicationCallbacks { @CacheListener(region = “EventSource”) public void afterCreate(EntryEvent<K, V> event) { .. } @CacheLoader(region = “DataSink”) public void load(LoaderHelper<K, V> helper) { .. } @CacheWriter(region = “DataSource”) public void beforeUpdate(EntryEvent<K, V> event) { .. } }
  • 19. Spring Data GemFire / Geode  Spring Data GemFire 2.0  Java 8  Spring Framework 5.0  GemFire 9.0  Projections; Java 8 Types (Optional<T>, Stream<T>); Reactive Support (?)  Codebase re-organization  Test Framework support 21 Just around the corner…
  • 20. Spring Boot 22 PR #6224 – Auto-configuration support for SDG Repositories interface CustomerRepository extends Repository<Customer, Long> { } @Region(“Customers”) class Customer { } compile “org.springframework.boot:spring-boot-starter-data-gemfire:1.5.0.M1” No longer necessary… @SpringBootApplication @EnableGemfireRepositories class ExampleSpringBootApplication { }
  • 21. Spring Boot 23 PR #5445 – Spring Boot Starter Data Geode <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-geode</artifactId> <version>???</version> </dependency>`
  • 22. Spring Session 24 PR #366 – Spring Session Data Geode <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-geode</artifactId> <version>???</version> </dependency>`
  • 23. References 25  Spring Data GemFire (SDG) project page  SDG GitHub source code  SDG Reference Guide  SDG API  SDG Wiki page  SDG Examples  SDG JIRA Issue Tracking  SDG StackOverflow spring-data-gemfire tag  spring-data Gitter IM Channel
  • 24. Learn More. Stay Connected. Oliver Gierke Advanced Spring Data REST 11:00 – 12:15 PM @springcentral spring.io/blog @pivotal pivotal.io/blog @pivotalcf http://engineering.pivotal.io
  • 27. Safe Harbor Statement • The following is intended to outline the general direction of Pivotal's offerings. It is intended for information purposes only and may not be incorporated into any contract. Any information regarding pre-release of Pivotal offerings, future updates or other planned modifications is subject to ongoing evaluation by Pivotal and is subject to change. This information is provided without warranty or any kind, express or implied, and is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions regarding Pivotal's offerings. These purchasing decisions should only be based on features currently available. The development, release, and timing of any features or functionality described for Pivotal's offerings in this presentation remain at the sole discretion of Pivotal. Pivotal has no obligation to update forward looking information in this presentation. 29