SlideShare a Scribd company logo
Getting Started with Apache Geode
2© 2014 Pivotal Software, Inc. All rights reserved. 2© 2014 Pivotal Software, Inc. All rights reserved.
Getting Started with
Apache Geode
Spring Boot ^ Spring Data Geode
John Blum
3© 2014 Pivotal Software, Inc. All rights reserved.
Presenter
John Blum
Spring Data Team
Spring Data Geode Lead
Apache Geode Committer
Pivotal Software, Inc.
@john_blum jxblum
4© 2014 Pivotal Software, Inc. All rights reserved.
How do you build an application
that uses Apache Geode?
5© 2014 Pivotal Software, Inc. All rights reserved.
How do you configure and bootstrap
Apache Geode for your application to use?
6© 2014 Pivotal Software, Inc. All rights reserved.
1. Install Apache Geode
2. Use Gfsh to start a Locator
3. Start Pulse
4. Start a Server
5. Create a replicated, persistent Region
6. Manipulate data in a Region and
demonstrate persistence.
7. Examine the effects of replication.
8. Restart the cache servers in parallel.
9. Shutdown the system including your
Locators.
Gfsh>
7© 2014 Pivotal Software, Inc. All rights reserved.
API
8© 2014 Pivotal Software, Inc. All rights reserved.
Gfsh
+
API
9© 2014 Pivotal Software, Inc. All rights reserved.
cache.xml
10© 2014 Pivotal Software, Inc. All rights reserved.
Cluster Configuration
gfsh>start locator ..
gfsh>start server ..
gfsh>create region ..
gfsh>create index ..
gfsh>deploy ..
gfsh>create gateway-sender ..
gfsh>create gateway-receiver ..
gfsh>alter region ..
gfsh>create disk-store ..
gfsh>destroy index ..
gfsh>create async-event-queue ..
gfsh>alter runtime ..
gfsh>configure pdx ..
gfsh>destroy function..
11© 2014 Pivotal Software, Inc. All rights reserved.
App
cache.xml • Geode API
Gfsh
Cluster Config
Bosh
CF-CLI
Pivotal
GemFire
12© 2014 Pivotal Software, Inc. All rights reserved.
Spring XML
13© 2014 Pivotal Software, Inc. All rights reserved.
Spring @Java Config
14© 2014 Pivotal Software, Inc. All rights reserved.
Argh!
 Gfsh
 API
 <cache.xml/>
 Cluster Configuration
 Spring XML
 Spring Java-based Annotation Config @
15© 2014 Pivotal Software, Inc. All rights reserved.
Spring Data GemFire / Geode
1
Apply the Spring Framework’s powerful, non-invasive programming model &
concepts to simplify the configuration and development of highly-scalable,
distributed Spring applications based on Pivotal GemFire or Apache Geode.
Promise
16© 2014 Pivotal Software, Inc. All rights reserved.
Spring Data GemFire / Geode
1
Simplify the OOTB, getting started experience by reducing the friction to get up
& running as quickly and easily as possible.
Promise of 2016…
17© 2014 Pivotal Software, Inc. All rights reserved.
Apps are the currency…
18© 2014 Pivotal Software, Inc. All rights reserved.
19© 2014 Pivotal Software, Inc. All rights reserved.
Maven Artifacts
Spring Data GemFire / Geode
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
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
20© 2014 Pivotal Software, Inc. All rights reserved.
Examples
21© 2014 Pivotal Software, Inc. All rights reserved.
Existing Annotations
 @EnableGemFireFunctions
 @EnableGemFireFunctionExecutions
 @EnableGemFireRepositories
22© 2014 Pivotal Software, Inc. All rights reserved.
More enabling annotations…
 @EnableAuth
 @EnableExpiration
 @EnableHttpService
 @EnableLogging
 @EnableOffHeap (Geode)
 @EnableStatistics
 @WithGemFireProperties
 …
23© 2014 Pivotal Software, Inc. All rights reserved.
What’s Next…
 Annotation Support for GemFire / Geode Callbacks
 Annotation-based Test Framework
 Extensions for Pivotal CloudFoundry (PCF)
24© 2014 Pivotal Software, Inc. All rights reserved.
Annotations for Callbacks
@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) {
..
}
}
25© 2014 Pivotal Software, Inc. All rights reserved.
Annotation-based Test Framework
@RunWith(SpringRunner.class)
@SpringBootTest
@ClientServerIntegrationTest
public class ExampleClientServerTests {
}
@RunWith(SpringRunner.class)
@SpringBootTest
@PeerIntegrationTest
public class ExamplePeerMemberTests {
}
26© 2014 Pivotal Software, Inc. All rights reserved.
Other Things Brewing…
27© 2014 Pivotal Software, Inc. All rights reserved.
Spring Boot
2
PR #5445 – Spring Boot Starter Data Geode
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-geode</artifactId>
<version>???</version>
</dependency>`
28© 2014 Pivotal Software, Inc. All rights reserved.
Spring Boot
2
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 {
}
29© 2014 Pivotal Software, Inc. All rights reserved.
Try It Out…
Spring Data GemFire
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-gemfire</artifactId>
<version>1.9.0.M1</version>
</dependency>
Spring Data Geode
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-geode</artifactId>
<version>
1.0.0.APACHE-GEODE-INCUBATING-M3-SNAPSHOT
</version>
</dependency>
Pivotal
GemFire
https://repo.spring.io/libs-snapshot/org/springframework/data/spring-data-
gemfire/1.9.0.M1/spring-data-gemfire-1.9.0.M1.jar
https://repo.spring.io/libs-snapshot/org/springframework/data/spring-data-geode/1.0.0.APACHE-
GEODE-INCUBATING-M3-SNAPSHOT/spring-data-geode-1.0.0.APACHE-GEODE-INCUBATING-
M3-SNAPSHOT.jar
30© 2014 Pivotal Software, Inc. All rights reserved.
References
Slides @ http://www.slideshare.net/john_blum/getting-started-with-apache-geode
Examples @ https://github.com/SpringOnePlatform2016/spring-data-gemfire-in-action
31© 2014 Pivotal Software, Inc. All rights reserved. 31© 2014 Pivotal Software, Inc. All rights reserved.
Questions
Answers
Getting Started with Apache Geode
Ad

More Related Content

What's hot (19)

Pulsar summit-keynote-final
Pulsar summit-keynote-finalPulsar summit-keynote-final
Pulsar summit-keynote-final
Karthik Ramasamy
 
Apache Hadoop YARN: state of the union
Apache Hadoop YARN: state of the unionApache Hadoop YARN: state of the union
Apache Hadoop YARN: state of the union
DataWorks Summit
 
Apache Accumulo Overview
Apache Accumulo OverviewApache Accumulo Overview
Apache Accumulo Overview
Bill Havanki
 
Apache Ambari BOF - APIs - Hadoop Summit 2013
Apache Ambari BOF - APIs - Hadoop Summit 2013Apache Ambari BOF - APIs - Hadoop Summit 2013
Apache Ambari BOF - APIs - Hadoop Summit 2013
Hortonworks
 
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
 
Double Your Hadoop Hardware Performance with SmartSense
Double Your Hadoop Hardware Performance with SmartSenseDouble Your Hadoop Hardware Performance with SmartSense
Double Your Hadoop Hardware Performance with SmartSense
Hortonworks
 
Apache Ambari: Past, Present, Future
Apache Ambari: Past, Present, FutureApache Ambari: Past, Present, Future
Apache Ambari: Past, Present, Future
Hortonworks
 
Hortonworks technical workshop operations with ambari
Hortonworks technical workshop   operations with ambariHortonworks technical workshop   operations with ambari
Hortonworks technical workshop operations with ambari
Hortonworks
 
Accelerating query processing
Accelerating query processingAccelerating query processing
Accelerating query processing
DataWorks Summit
 
Splunk Ninjas: New Features, Pivot and Search Dojo
Splunk Ninjas: New Features, Pivot and Search DojoSplunk Ninjas: New Features, Pivot and Search Dojo
Splunk Ninjas: New Features, Pivot and Search Dojo
Splunk
 
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDevTriple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Werner Keil
 
Hadoop & devOps : better together
Hadoop & devOps : better togetherHadoop & devOps : better together
Hadoop & devOps : better together
Maxime Lanciaux
 
Running a container cloud on YARN
Running a container cloud on YARNRunning a container cloud on YARN
Running a container cloud on YARN
DataWorks Summit
 
Apache Slider
Apache SliderApache Slider
Apache Slider
Shivaji Dutta
 
What s new in spark 2.3 and spark 2.4
What s new in spark 2.3 and spark 2.4What s new in spark 2.3 and spark 2.4
What s new in spark 2.3 and spark 2.4
DataWorks Summit
 
Apache Ambari - What's New in 2.4
Apache Ambari - What's New in 2.4 Apache Ambari - What's New in 2.4
Apache Ambari - What's New in 2.4
Hortonworks
 
What is new in Apache Hive 3.0?
What is new in Apache Hive 3.0?What is new in Apache Hive 3.0?
What is new in Apache Hive 3.0?
DataWorks Summit
 
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Alexandre Dutra
 
Apache Spark Operations
Apache Spark OperationsApache Spark Operations
Apache Spark Operations
Cloudera, Inc.
 
Pulsar summit-keynote-final
Pulsar summit-keynote-finalPulsar summit-keynote-final
Pulsar summit-keynote-final
Karthik Ramasamy
 
Apache Hadoop YARN: state of the union
Apache Hadoop YARN: state of the unionApache Hadoop YARN: state of the union
Apache Hadoop YARN: state of the union
DataWorks Summit
 
Apache Accumulo Overview
Apache Accumulo OverviewApache Accumulo Overview
Apache Accumulo Overview
Bill Havanki
 
Apache Ambari BOF - APIs - Hadoop Summit 2013
Apache Ambari BOF - APIs - Hadoop Summit 2013Apache Ambari BOF - APIs - Hadoop Summit 2013
Apache Ambari BOF - APIs - Hadoop Summit 2013
Hortonworks
 
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
 
Double Your Hadoop Hardware Performance with SmartSense
Double Your Hadoop Hardware Performance with SmartSenseDouble Your Hadoop Hardware Performance with SmartSense
Double Your Hadoop Hardware Performance with SmartSense
Hortonworks
 
Apache Ambari: Past, Present, Future
Apache Ambari: Past, Present, FutureApache Ambari: Past, Present, Future
Apache Ambari: Past, Present, Future
Hortonworks
 
Hortonworks technical workshop operations with ambari
Hortonworks technical workshop   operations with ambariHortonworks technical workshop   operations with ambari
Hortonworks technical workshop operations with ambari
Hortonworks
 
Accelerating query processing
Accelerating query processingAccelerating query processing
Accelerating query processing
DataWorks Summit
 
Splunk Ninjas: New Features, Pivot and Search Dojo
Splunk Ninjas: New Features, Pivot and Search DojoSplunk Ninjas: New Features, Pivot and Search Dojo
Splunk Ninjas: New Features, Pivot and Search Dojo
Splunk
 
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDevTriple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Werner Keil
 
Hadoop & devOps : better together
Hadoop & devOps : better togetherHadoop & devOps : better together
Hadoop & devOps : better together
Maxime Lanciaux
 
Running a container cloud on YARN
Running a container cloud on YARNRunning a container cloud on YARN
Running a container cloud on YARN
DataWorks Summit
 
What s new in spark 2.3 and spark 2.4
What s new in spark 2.3 and spark 2.4What s new in spark 2.3 and spark 2.4
What s new in spark 2.3 and spark 2.4
DataWorks Summit
 
Apache Ambari - What's New in 2.4
Apache Ambari - What's New in 2.4 Apache Ambari - What's New in 2.4
Apache Ambari - What's New in 2.4
Hortonworks
 
What is new in Apache Hive 3.0?
What is new in Apache Hive 3.0?What is new in Apache Hive 3.0?
What is new in Apache Hive 3.0?
DataWorks Summit
 
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Alexandre Dutra
 
Apache Spark Operations
Apache Spark OperationsApache Spark Operations
Apache Spark Operations
Cloudera, Inc.
 

Viewers also liked (20)

Microservice Architecuture with Event Sourcing @ Sydney JVM Meetup
Microservice Architecuture with Event Sourcing @ Sydney JVM MeetupMicroservice Architecuture with Event Sourcing @ Sydney JVM Meetup
Microservice Architecuture with Event Sourcing @ Sydney JVM Meetup
Boris Kravtsov
 
Geode on Docker
Geode on DockerGeode on Docker
Geode on Docker
Apache Geode
 
Connections
ConnectionsConnections
Connections
Malik Vaughan
 
10 things to know before visiting South Africa
10 things to know before visiting South Africa10 things to know before visiting South Africa
10 things to know before visiting South Africa
1guestupington
 
White Genocide In South Africa - Here Are The Names
White Genocide In South Africa - Here Are The NamesWhite Genocide In South Africa - Here Are The Names
White Genocide In South Africa - Here Are The Names
1guestupington
 
CV
CVCV
CV
SUNIL CHAUHAN 08171358358
 
Epoca precolombina tema 1
Epoca precolombina tema 1Epoca precolombina tema 1
Epoca precolombina tema 1
JuancamiloLAIGNELET78
 
Adhir Kumar Shukla Resume.
Adhir Kumar Shukla Resume.Adhir Kumar Shukla Resume.
Adhir Kumar Shukla Resume.
ADHIR KUMAR SHUKLA
 
Steps to the college process
Steps to the college processSteps to the college process
Steps to the college process
Heidi Wilson
 
Balancing the Distribution of Income: Factors Affecting Decision Making with ...
Balancing the Distribution of Income: Factors Affecting Decision Making with ...Balancing the Distribution of Income: Factors Affecting Decision Making with ...
Balancing the Distribution of Income: Factors Affecting Decision Making with ...
David Kyson
 
Tatuajes
TatuajesTatuajes
Tatuajes
Eva Santos
 
FEA - Simple Analysis example
FEA - Simple Analysis exampleFEA - Simple Analysis example
FEA - Simple Analysis example
Michael Davis
 
About Specilization
About SpecilizationAbout Specilization
About Specilization
Valera Valera
 
System Modeling
System ModelingSystem Modeling
System Modeling
Michael Davis
 
White Genocide In South Africa - Here Are The Names
White Genocide In South Africa - Here Are The NamesWhite Genocide In South Africa - Here Are The Names
White Genocide In South Africa - Here Are The Names
1guestupington
 
La memoria
La memoriaLa memoria
La memoria
Karina Lopez
 
Corporate gifts india
Corporate gifts indiaCorporate gifts india
Corporate gifts india
CorporateIndia
 
16634-19010-1-PB
16634-19010-1-PB16634-19010-1-PB
16634-19010-1-PB
Dorcas Eyinla
 
Prospective clinical trial of traction device-assisted endoscopic submucosal ...
Prospective clinical trial of traction device-assisted endoscopic submucosal ...Prospective clinical trial of traction device-assisted endoscopic submucosal ...
Prospective clinical trial of traction device-assisted endoscopic submucosal ...
Goto Pablo
 
Microservice Architecuture with Event Sourcing @ Sydney JVM Meetup
Microservice Architecuture with Event Sourcing @ Sydney JVM MeetupMicroservice Architecuture with Event Sourcing @ Sydney JVM Meetup
Microservice Architecuture with Event Sourcing @ Sydney JVM Meetup
Boris Kravtsov
 
10 things to know before visiting South Africa
10 things to know before visiting South Africa10 things to know before visiting South Africa
10 things to know before visiting South Africa
1guestupington
 
White Genocide In South Africa - Here Are The Names
White Genocide In South Africa - Here Are The NamesWhite Genocide In South Africa - Here Are The Names
White Genocide In South Africa - Here Are The Names
1guestupington
 
Steps to the college process
Steps to the college processSteps to the college process
Steps to the college process
Heidi Wilson
 
Balancing the Distribution of Income: Factors Affecting Decision Making with ...
Balancing the Distribution of Income: Factors Affecting Decision Making with ...Balancing the Distribution of Income: Factors Affecting Decision Making with ...
Balancing the Distribution of Income: Factors Affecting Decision Making with ...
David Kyson
 
FEA - Simple Analysis example
FEA - Simple Analysis exampleFEA - Simple Analysis example
FEA - Simple Analysis example
Michael Davis
 
White Genocide In South Africa - Here Are The Names
White Genocide In South Africa - Here Are The NamesWhite Genocide In South Africa - Here Are The Names
White Genocide In South Africa - Here Are The Names
1guestupington
 
Prospective clinical trial of traction device-assisted endoscopic submucosal ...
Prospective clinical trial of traction device-assisted endoscopic submucosal ...Prospective clinical trial of traction device-assisted endoscopic submucosal ...
Prospective clinical trial of traction device-assisted endoscopic submucosal ...
Goto Pablo
 
Ad

Similar to Getting Started with Apache Geode (20)

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
 
#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
 
Cloudify Orchestration for Chef Users
Cloudify Orchestration for Chef UsersCloudify Orchestration for Chef Users
Cloudify Orchestration for Chef Users
Cloudify Community
 
Pivotal CenturyLink Cloud Platform Seminar Presentations: Architecture & Oper...
Pivotal CenturyLink Cloud Platform Seminar Presentations: Architecture & Oper...Pivotal CenturyLink Cloud Platform Seminar Presentations: Architecture & Oper...
Pivotal CenturyLink Cloud Platform Seminar Presentations: Architecture & Oper...
VMware Tanzu
 
Sst hackathon express
Sst hackathon expressSst hackathon express
Sst hackathon express
Aeshan Wijetunge
 
Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0
Diego Zuluaga
 
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
VMware Tanzu
 
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
VMware Tanzu
 
The Platform for Building Great Software
The Platform for Building Great SoftwareThe Platform for Building Great Software
The Platform for Building Great Software
Platform CF
 
Pivotal One: The Platform For Building Great Software
Pivotal One: The Platform For Building Great Software Pivotal One: The Platform For Building Great Software
Pivotal One: The Platform For Building Great Software
VMware Tanzu
 
Introducing Apache Geode and Spring Data GemFire
Introducing Apache Geode and Spring Data GemFireIntroducing Apache Geode and Spring Data GemFire
Introducing Apache Geode and Spring Data GemFire
John Blum
 
Cloud native Microservices using Spring Boot
Cloud native Microservices using Spring BootCloud native Microservices using Spring Boot
Cloud native Microservices using Spring Boot
Sufyaan Kazi
 
SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014
mharkus
 
Cloud Roundtable | Pivoltal: Agile platform
Cloud Roundtable | Pivoltal: Agile platformCloud Roundtable | Pivoltal: Agile platform
Cloud Roundtable | Pivoltal: Agile platform
Codemotion
 
Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209
minseok kim
 
Architecture & Operations
Architecture & OperationsArchitecture & Operations
Architecture & Operations
VMware Tanzu
 
What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6
dektlong
 
Removing Barriers Between Dev and Ops
Removing Barriers Between Dev and OpsRemoving Barriers Between Dev and Ops
Removing Barriers Between Dev and Ops
VMware Tanzu
 
Pivotal CF 소개
Pivotal CF 소개 Pivotal CF 소개
Pivotal CF 소개
seungdon Choi
 
GCP App Engine with Spring boot Deployment.pptx
GCP App Engine with Spring boot Deployment.pptxGCP App Engine with Spring boot Deployment.pptx
GCP App Engine with Spring boot Deployment.pptx
Knoldus Inc.
 
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
 
#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
 
Cloudify Orchestration for Chef Users
Cloudify Orchestration for Chef UsersCloudify Orchestration for Chef Users
Cloudify Orchestration for Chef Users
Cloudify Community
 
Pivotal CenturyLink Cloud Platform Seminar Presentations: Architecture & Oper...
Pivotal CenturyLink Cloud Platform Seminar Presentations: Architecture & Oper...Pivotal CenturyLink Cloud Platform Seminar Presentations: Architecture & Oper...
Pivotal CenturyLink Cloud Platform Seminar Presentations: Architecture & Oper...
VMware Tanzu
 
Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0
Diego Zuluaga
 
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
VMware Tanzu
 
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
VMware Tanzu
 
The Platform for Building Great Software
The Platform for Building Great SoftwareThe Platform for Building Great Software
The Platform for Building Great Software
Platform CF
 
Pivotal One: The Platform For Building Great Software
Pivotal One: The Platform For Building Great Software Pivotal One: The Platform For Building Great Software
Pivotal One: The Platform For Building Great Software
VMware Tanzu
 
Introducing Apache Geode and Spring Data GemFire
Introducing Apache Geode and Spring Data GemFireIntroducing Apache Geode and Spring Data GemFire
Introducing Apache Geode and Spring Data GemFire
John Blum
 
Cloud native Microservices using Spring Boot
Cloud native Microservices using Spring BootCloud native Microservices using Spring Boot
Cloud native Microservices using Spring Boot
Sufyaan Kazi
 
SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014SAP Inside Track Singapore 2014
SAP Inside Track Singapore 2014
mharkus
 
Cloud Roundtable | Pivoltal: Agile platform
Cloud Roundtable | Pivoltal: Agile platformCloud Roundtable | Pivoltal: Agile platform
Cloud Roundtable | Pivoltal: Agile platform
Codemotion
 
Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209
minseok kim
 
Architecture & Operations
Architecture & OperationsArchitecture & Operations
Architecture & Operations
VMware Tanzu
 
What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6
dektlong
 
Removing Barriers Between Dev and Ops
Removing Barriers Between Dev and OpsRemoving Barriers Between Dev and Ops
Removing Barriers Between Dev and Ops
VMware Tanzu
 
GCP App Engine with Spring boot Deployment.pptx
GCP App Engine with Spring boot Deployment.pptxGCP App Engine with Spring boot Deployment.pptx
GCP App Engine with Spring boot Deployment.pptx
Knoldus Inc.
 
Ad

Recently uploaded (20)

Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
How To Develop A Cryptocurrency Exchange - Slideshare.pptx
How To Develop A Cryptocurrency Exchange - Slideshare.pptxHow To Develop A Cryptocurrency Exchange - Slideshare.pptx
How To Develop A Cryptocurrency Exchange - Slideshare.pptx
laravinson24
 
Download MathType Crack Version 2025???
Download MathType Crack  Version 2025???Download MathType Crack  Version 2025???
Download MathType Crack Version 2025???
Google
 
Navigating EAA Compliance in Testing.pdf
Navigating EAA Compliance in Testing.pdfNavigating EAA Compliance in Testing.pdf
Navigating EAA Compliance in Testing.pdf
Applitools
 
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game DevelopmentBest Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Juego Studios
 
Autodesk Inventor Crack (2025) Latest
Autodesk Inventor    Crack (2025) LatestAutodesk Inventor    Crack (2025) Latest
Autodesk Inventor Crack (2025) Latest
Google
 
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
saimabibi60507
 
Streamline Your Manufacturing Data. Strengthen Every Operation.
Streamline Your Manufacturing Data. Strengthen Every Operation.Streamline Your Manufacturing Data. Strengthen Every Operation.
Streamline Your Manufacturing Data. Strengthen Every Operation.
Aparavi
 
Why Tapitag Ranks Among the Best Digital Business Card Providers
Why Tapitag Ranks Among the Best Digital Business Card ProvidersWhy Tapitag Ranks Among the Best Digital Business Card Providers
Why Tapitag Ranks Among the Best Digital Business Card Providers
Tapitag
 
Meet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Meet the New Kid in the Sandbox - Integrating Visualization with PrometheusMeet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Meet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Eric D. Schabell
 
Gojek Clone App for Multi-Service Business
Gojek Clone App for Multi-Service BusinessGojek Clone App for Multi-Service Business
Gojek Clone App for Multi-Service Business
XongoLab Technologies LLP
 
The Elixir Developer - All Things Open
The Elixir Developer - All Things OpenThe Elixir Developer - All Things Open
The Elixir Developer - All Things Open
Carlo Gilmar Padilla Santana
 
How to avoid IT Asset Management mistakes during implementation_PDF.pdf
How to avoid IT Asset Management mistakes during implementation_PDF.pdfHow to avoid IT Asset Management mistakes during implementation_PDF.pdf
How to avoid IT Asset Management mistakes during implementation_PDF.pdf
victordsane
 
AI in Business Software: Smarter Systems or Hidden Risks?
AI in Business Software: Smarter Systems or Hidden Risks?AI in Business Software: Smarter Systems or Hidden Risks?
AI in Business Software: Smarter Systems or Hidden Risks?
Amara Nielson
 
Wilcom Embroidery Studio Crack 2025 For Windows
Wilcom Embroidery Studio Crack 2025 For WindowsWilcom Embroidery Studio Crack 2025 For Windows
Wilcom Embroidery Studio Crack 2025 For Windows
Google
 
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
OnePlan Solutions
 
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
Imma Valls Bernaus
 
Building Apps for Good The Ethics of App Development
Building Apps for Good The Ethics of App DevelopmentBuilding Apps for Good The Ethics of App Development
Building Apps for Good The Ethics of App Development
Net-Craft.com
 
Innovative Approaches to Software Dev no good at all
Innovative Approaches to Software Dev no good at allInnovative Approaches to Software Dev no good at all
Innovative Approaches to Software Dev no good at all
ayeshakanwal75
 
A Deep Dive into Odoo CRM: Lead Management, Automation & More
A Deep Dive into Odoo CRM: Lead Management, Automation & MoreA Deep Dive into Odoo CRM: Lead Management, Automation & More
A Deep Dive into Odoo CRM: Lead Management, Automation & More
SatishKumar2651
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
How To Develop A Cryptocurrency Exchange - Slideshare.pptx
How To Develop A Cryptocurrency Exchange - Slideshare.pptxHow To Develop A Cryptocurrency Exchange - Slideshare.pptx
How To Develop A Cryptocurrency Exchange - Slideshare.pptx
laravinson24
 
Download MathType Crack Version 2025???
Download MathType Crack  Version 2025???Download MathType Crack  Version 2025???
Download MathType Crack Version 2025???
Google
 
Navigating EAA Compliance in Testing.pdf
Navigating EAA Compliance in Testing.pdfNavigating EAA Compliance in Testing.pdf
Navigating EAA Compliance in Testing.pdf
Applitools
 
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game DevelopmentBest Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Juego Studios
 
Autodesk Inventor Crack (2025) Latest
Autodesk Inventor    Crack (2025) LatestAutodesk Inventor    Crack (2025) Latest
Autodesk Inventor Crack (2025) Latest
Google
 
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
saimabibi60507
 
Streamline Your Manufacturing Data. Strengthen Every Operation.
Streamline Your Manufacturing Data. Strengthen Every Operation.Streamline Your Manufacturing Data. Strengthen Every Operation.
Streamline Your Manufacturing Data. Strengthen Every Operation.
Aparavi
 
Why Tapitag Ranks Among the Best Digital Business Card Providers
Why Tapitag Ranks Among the Best Digital Business Card ProvidersWhy Tapitag Ranks Among the Best Digital Business Card Providers
Why Tapitag Ranks Among the Best Digital Business Card Providers
Tapitag
 
Meet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Meet the New Kid in the Sandbox - Integrating Visualization with PrometheusMeet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Meet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Eric D. Schabell
 
How to avoid IT Asset Management mistakes during implementation_PDF.pdf
How to avoid IT Asset Management mistakes during implementation_PDF.pdfHow to avoid IT Asset Management mistakes during implementation_PDF.pdf
How to avoid IT Asset Management mistakes during implementation_PDF.pdf
victordsane
 
AI in Business Software: Smarter Systems or Hidden Risks?
AI in Business Software: Smarter Systems or Hidden Risks?AI in Business Software: Smarter Systems or Hidden Risks?
AI in Business Software: Smarter Systems or Hidden Risks?
Amara Nielson
 
Wilcom Embroidery Studio Crack 2025 For Windows
Wilcom Embroidery Studio Crack 2025 For WindowsWilcom Embroidery Studio Crack 2025 For Windows
Wilcom Embroidery Studio Crack 2025 For Windows
Google
 
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
OnePlan Solutions
 
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
Imma Valls Bernaus
 
Building Apps for Good The Ethics of App Development
Building Apps for Good The Ethics of App DevelopmentBuilding Apps for Good The Ethics of App Development
Building Apps for Good The Ethics of App Development
Net-Craft.com
 
Innovative Approaches to Software Dev no good at all
Innovative Approaches to Software Dev no good at allInnovative Approaches to Software Dev no good at all
Innovative Approaches to Software Dev no good at all
ayeshakanwal75
 
A Deep Dive into Odoo CRM: Lead Management, Automation & More
A Deep Dive into Odoo CRM: Lead Management, Automation & MoreA Deep Dive into Odoo CRM: Lead Management, Automation & More
A Deep Dive into Odoo CRM: Lead Management, Automation & More
SatishKumar2651
 

Getting Started with Apache Geode

  • 2. 2© 2014 Pivotal Software, Inc. All rights reserved. 2© 2014 Pivotal Software, Inc. All rights reserved. Getting Started with Apache Geode Spring Boot ^ Spring Data Geode John Blum
  • 3. 3© 2014 Pivotal Software, Inc. All rights reserved. Presenter John Blum Spring Data Team Spring Data Geode Lead Apache Geode Committer Pivotal Software, Inc. @john_blum jxblum
  • 4. 4© 2014 Pivotal Software, Inc. All rights reserved. How do you build an application that uses Apache Geode?
  • 5. 5© 2014 Pivotal Software, Inc. All rights reserved. How do you configure and bootstrap Apache Geode for your application to use?
  • 6. 6© 2014 Pivotal Software, Inc. All rights reserved. 1. Install Apache Geode 2. Use Gfsh to start a Locator 3. Start Pulse 4. Start a Server 5. Create a replicated, persistent Region 6. Manipulate data in a Region and demonstrate persistence. 7. Examine the effects of replication. 8. Restart the cache servers in parallel. 9. Shutdown the system including your Locators. Gfsh>
  • 7. 7© 2014 Pivotal Software, Inc. All rights reserved. API
  • 8. 8© 2014 Pivotal Software, Inc. All rights reserved. Gfsh + API
  • 9. 9© 2014 Pivotal Software, Inc. All rights reserved. cache.xml
  • 10. 10© 2014 Pivotal Software, Inc. All rights reserved. Cluster Configuration gfsh>start locator .. gfsh>start server .. gfsh>create region .. gfsh>create index .. gfsh>deploy .. gfsh>create gateway-sender .. gfsh>create gateway-receiver .. gfsh>alter region .. gfsh>create disk-store .. gfsh>destroy index .. gfsh>create async-event-queue .. gfsh>alter runtime .. gfsh>configure pdx .. gfsh>destroy function..
  • 11. 11© 2014 Pivotal Software, Inc. All rights reserved. App cache.xml • Geode API Gfsh Cluster Config Bosh CF-CLI Pivotal GemFire
  • 12. 12© 2014 Pivotal Software, Inc. All rights reserved. Spring XML
  • 13. 13© 2014 Pivotal Software, Inc. All rights reserved. Spring @Java Config
  • 14. 14© 2014 Pivotal Software, Inc. All rights reserved. Argh!  Gfsh  API  <cache.xml/>  Cluster Configuration  Spring XML  Spring Java-based Annotation Config @
  • 15. 15© 2014 Pivotal Software, Inc. All rights reserved. Spring Data GemFire / Geode 1 Apply the Spring Framework’s powerful, non-invasive programming model & concepts to simplify the configuration and development of highly-scalable, distributed Spring applications based on Pivotal GemFire or Apache Geode. Promise
  • 16. 16© 2014 Pivotal Software, Inc. All rights reserved. Spring Data GemFire / Geode 1 Simplify the OOTB, getting started experience by reducing the friction to get up & running as quickly and easily as possible. Promise of 2016…
  • 17. 17© 2014 Pivotal Software, Inc. All rights reserved. Apps are the currency…
  • 18. 18© 2014 Pivotal Software, Inc. All rights reserved.
  • 19. 19© 2014 Pivotal Software, Inc. All rights reserved. Maven Artifacts Spring Data GemFire / Geode 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 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
  • 20. 20© 2014 Pivotal Software, Inc. All rights reserved. Examples
  • 21. 21© 2014 Pivotal Software, Inc. All rights reserved. Existing Annotations  @EnableGemFireFunctions  @EnableGemFireFunctionExecutions  @EnableGemFireRepositories
  • 22. 22© 2014 Pivotal Software, Inc. All rights reserved. More enabling annotations…  @EnableAuth  @EnableExpiration  @EnableHttpService  @EnableLogging  @EnableOffHeap (Geode)  @EnableStatistics  @WithGemFireProperties  …
  • 23. 23© 2014 Pivotal Software, Inc. All rights reserved. What’s Next…  Annotation Support for GemFire / Geode Callbacks  Annotation-based Test Framework  Extensions for Pivotal CloudFoundry (PCF)
  • 24. 24© 2014 Pivotal Software, Inc. All rights reserved. Annotations for Callbacks @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) { .. } }
  • 25. 25© 2014 Pivotal Software, Inc. All rights reserved. Annotation-based Test Framework @RunWith(SpringRunner.class) @SpringBootTest @ClientServerIntegrationTest public class ExampleClientServerTests { } @RunWith(SpringRunner.class) @SpringBootTest @PeerIntegrationTest public class ExamplePeerMemberTests { }
  • 26. 26© 2014 Pivotal Software, Inc. All rights reserved. Other Things Brewing…
  • 27. 27© 2014 Pivotal Software, Inc. All rights reserved. Spring Boot 2 PR #5445 – Spring Boot Starter Data Geode <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-geode</artifactId> <version>???</version> </dependency>`
  • 28. 28© 2014 Pivotal Software, Inc. All rights reserved. Spring Boot 2 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 { }
  • 29. 29© 2014 Pivotal Software, Inc. All rights reserved. Try It Out… Spring Data GemFire <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-gemfire</artifactId> <version>1.9.0.M1</version> </dependency> Spring Data Geode <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-geode</artifactId> <version> 1.0.0.APACHE-GEODE-INCUBATING-M3-SNAPSHOT </version> </dependency> Pivotal GemFire https://repo.spring.io/libs-snapshot/org/springframework/data/spring-data- gemfire/1.9.0.M1/spring-data-gemfire-1.9.0.M1.jar https://repo.spring.io/libs-snapshot/org/springframework/data/spring-data-geode/1.0.0.APACHE- GEODE-INCUBATING-M3-SNAPSHOT/spring-data-geode-1.0.0.APACHE-GEODE-INCUBATING- M3-SNAPSHOT.jar
  • 30. 30© 2014 Pivotal Software, Inc. All rights reserved. References Slides @ http://www.slideshare.net/john_blum/getting-started-with-apache-geode Examples @ https://github.com/SpringOnePlatform2016/spring-data-gemfire-in-action
  • 31. 31© 2014 Pivotal Software, Inc. All rights reserved. 31© 2014 Pivotal Software, Inc. All rights reserved. Questions Answers

Editor's Notes

  • #18: In a Cloud (Native Java) context with Microservices