View
3.048
Download
0
Category
Preview:
Citation preview
Thursday, November 3, 11
Thursday, November 3, 11
Data Grids and Data Caching
Galder ZamarreñoSenior Software Engineer
Red Hat, Inc
3rd October 2011, Soft Shake
Thursday, November 3, 11
Galder Zamarreño
• R&D Engineer, Red Hat Inc.• Infinispan developer• 5+ years exp. with distributed data systems• Twitter: @galderz• Blog: zamarreno.com
Thursday, November 3, 11
Agenda
• What is Infinispan?• Infinispan as in-memory cache• Infinispan as in-memory data grid• Data-as-a-Service with Infinispan• Who uses Infinispan?
Thursday, November 3, 11
Introducing
Thursday, November 3, 11
What is Infinispan?
An in-memory, highly available, elastic, and open source (LGPL) data grid platform
Thursday, November 3, 11
Infinispan can be used as...
Thursday, November 3, 11
Local in-memory cache
Boost performance caching data which is hard to calculate or expensive to retrieve
Thursday, November 3, 11
ConcurrentHashMap ?
Infinispan provides greater concurrency with MVCC, has built-in eviction...etc
Thursday, November 3, 11
Local cache example
Thursday, November 3, 11
A local cache might not be enough...
Thursday, November 3, 11
Clustered caches
Scale up your application and maintain cache consistency
Thursday, November 3, 11
Consistency in a clustered cache...
Thursday, November 3, 11
Invalidation
Thursday, November 3, 11
Invalidation
Thursday, November 3, 11
Invalidation
Thursday, November 3, 11
Cache-oriented operations...
Thursday, November 3, 11
putForExternalRead()put() putForExternalRead()
Use for updating state Use to cache state read from external source
Regular lock acquisition timeout Fail-fast
Could throw an exception Fails quietly
Could cause existing transaction to fail
Will never affect existing transactions
Thursday, November 3, 11
Accessing Infinispan caches
Thursday, November 3, 11
Embedded Access
Thursday, November 3, 11
Infinispan is not just a cache!
Thursday, November 3, 11
In-memory data grid
It’s a Fast, Available, Distributed, Elastic data store, not just a cache!
Thursday, November 3, 11
Invalidation won’t work for data grids!
Thursday, November 3, 11
Data distribution
Thursday, November 3, 11
Replication
Thursday, November 3, 11
Distribution• With number of copies = 2
Thursday, November 3, 11
How is data distributed??
Thursday, November 3, 11
Consistent Hashing
Thursday, November 3, 11
Solving unequal distribution
Thursday, November 3, 11
Virtual Nodes
Thursday, November 3, 11
Accessing Infinispan data grid
Thursday, November 3, 11
Remote Access
• Via protocols :
• REST
• Hot Rod
Thursday, November 3, 11
Hot Rod clients
Thursday, November 3, 11
Infinispan as cloud data store
Thursday, November 3, 11
Traditional 3-tier App
Thursday, November 3, 11
Typical IaaS App
Thursday, November 3, 11
Traditional PaaS App
Thursday, November 3, 11
Where’s your data stored??
Thursday, November 3, 11
Clouds are ephemeral!!
Thursday, November 3, 11
State
Thursday, November 3, 11
Virtualizing Data
Some public services exist (i.e. Amazon RDS), but not all cloud deployments are public!
Thursday, November 3, 11
Build your own Data-as-a-Service!
Thursday, November 3, 11
Characteristics of DaaS
Elastic, scalable and highly available!
Thursday, November 3, 11
DaaS with Infinispan
Thursday, November 3, 11
ArchitectureM
anage and Monitor
Thursday, November 3, 11
Who uses Infinispan?
Thursday, November 3, 11
As a cache...
Hibernate 2nd level cache, Torquebox Rails cache...
Thursday, November 3, 11
As a temporary store...
Http session cache & EJB SFSB cache, in JBoss AS7
Thursday, November 3, 11
As data grid...
Real-time trading app of a well known stock exchange
Thursday, November 3, 11
What’s next?
Thursday, November 3, 11
Towards EDG
Solidifying Infinispan towards integration with Red Hat’s Enterprise Data Grid
Thursday, November 3, 11
Plus more data grid...
Enhancing Hot Rod protocol, Hibernate Object/Grid Mapper ...etc
Thursday, November 3, 11
Summary
Infinispan as fast powerful local cache that can be clustered!
Thursday, November 3, 11
Summary
But also a F.A.D.E. data grid, accessible in embedded or remote fashion
Thursday, November 3, 11
Summary
Build your own Infinispan based Data-as-a-Service in your private cloud!
Thursday, November 3, 11
Questions
infinispan.org - @infinispan
speakerrate.com/galder
More on data grids at 5pm!
Thursday, November 3, 11
Recommended