SlideShare a Scribd company logo
Media Partner 
Organizers 
Top Media Partner 
General Partner 
Supporters 
Daniel Rezny, Tomi Vanek 
Accenture 
Digital in Space & Time Caching Patterns and Strategies 
October 17, 2014
Copyright © 2014 Accenture All rights reserved. 
2 
Daniel Rezny 
senior technology architect 
daniel.rezny@accenture.com 
@danielrezny 
Tomi Vanek 
senior software architect 
tomas.vanek@accenture.com 
http://tomi.vanek.sk
3 
Data 
Everything what is DIGITAL is DATA.
Copyright © 2014 Accenture All rights reserved. 
4 
Data = Identity & Content 
Time 
Volume 
Identity 
Individual 
Collective 
Content
Copyright © 2014 Accenture All rights reserved. 
5 
Data = Identity & Content 
Time 
Volume 
Identity 
Individual 
Collective
Copyright © 2014 Accenture All rights reserved. 
6
Copyright © 2014 Accenture All rights reserved. 
7 
Good scalability 
Transparency 
Easy to maintain 
Reduced load on source 
Fast recovery after failover
8 
Cache Patterns Read Through Cache
Copyright © 2014 Accenture All rights reserved. 
9 
Read Through 
Source 
Cache 
Client 1 
Cache 
Client 2
Copyright © 2014 Accenture All rights reserved. 
10 
Client 1 
Client 2 
Source 
Read Through 
Cache 
Cache
Copyright © 2014 Accenture All rights reserved. 
11 
Client 1 
Client 2 
Source 
Read Through 
Cache 
Cache
Copyright © 2014 Accenture All rights reserved. 
12 
Client 1 
Client 2 
Source 
Read Through 
Cache 
Cache
Copyright © 2014 Accenture All rights reserved. 
13 
Client 1 
Client 2 
Source 
Read Through 
Cache 
Cache
Copyright © 2014 Accenture All rights reserved. 
14 
Client 1 
Client 2 
Source 
Read Through 
Cache 
Cache
Copyright © 2014 Accenture All rights reserved. 
15 
•Simple, transparent 
•Scalable 
•Faster response time by repeating requests 
•Decreases load to data source 
•Read only 
•Only for repeating requests 
•For data with rare changes 
•Requests for unique data hit data source
Copyright © 2014 Accenture All rights reserved. 
16 
Read Through usage examples 
Content Delivery Network (CDN) 
HTTP reverse proxy 
Browser proxy 
API management tools 
Reusable data closer to consumption
17 
Cache Patterns Write Through / Write behind
Copyright © 2014 Accenture All rights reserved. 
18 
Cache 
Cache 
Write Through / Write behind 
Client 1 
Client 2 
Destination
Copyright © 2014 Accenture All rights reserved. 
19 
Client 1 
Client 2 
Destination 
Write Through / Write behind 
Cache 
Cache
Copyright © 2014 Accenture All rights reserved. 
20 
Client 1 
Client 2 
Destination 
Write Through / Write behind 
Cache 
Cache
Copyright © 2014 Accenture All rights reserved. 
21 
Client 1 
Client 2 
Destination 
Write Through / Write behind 
Cache 
Cache
Copyright © 2014 Accenture All rights reserved. 
22 
•Transparently hide destination systems 
•The only application’s source of data 
•Limit amount of requests to the source 
•Avoid cache misses 
•Database unknown for application 
•Split of responsibilities 
•Does not improve writes speed 
•Possible data inconsistences 
•Cache transaction finish before database’ starts
Copyright © 2014 Accenture All rights reserved. 
23 
Write Through usage examples 
Additional application layer 
API management tools 
Content delivery network 
Lot of writes and reads
24 
Cache Patterns Pre-Fetch / Pre-Caching
Copyright © 2014 Accenture All rights reserved. 
25 
Trigger 
Cache 
Pre-Fetch / Pre-Caching 
Client 
Source
Copyright © 2014 Accenture All rights reserved. 
26 
Trigger 
Cache 
Pre-Fetch / Pre-Caching 
Client 
Source
Copyright © 2014 Accenture All rights reserved. 
27 
Trigger 
Cache 
Pre-Fetch / Pre-Caching 
Client 
Source
Copyright © 2014 Accenture All rights reserved. 
28 
Trigger 
Cache 
Pre-Fetch / Pre-Caching 
Client 
Source
Copyright © 2014 Accenture All rights reserved. 
29 
Trigger 
Cache 
Pre-Fetch / Pre-Caching 
Client 
Source
Copyright © 2014 Accenture All rights reserved. 
30 
•Fast read of non-repetitive data 
•Prepare data for usage in advance 
•Transparent work "behind the scene" 
•Increased load on resources (data source, network, cache size) 
•Redundant data in cache 
•Complex trigger logic
Copyright © 2014 Accenture All rights reserved. 
31 
Pre-Fetch usage examples 
Master-detail pattern (search) 
Asynchronous page refresh 
Database pre-fetch 
Guided navigation 
Preload of web assets 
Automated and manual pre-fetching
32 
Cache Patterns Side Cache
Copyright © 2014 Accenture All rights reserved. 
33 
Cache 
Side Cache 
Source 
Client 
Consumer
Copyright © 2014 Accenture All rights reserved. 
34 
Cache 
Side Cache 
Source 
Client 
Consumer
Copyright © 2014 Accenture All rights reserved. 
35 
Cache 
Side Cache 
Source 
Client 
Consumer
Copyright © 2014 Accenture All rights reserved. 
36 
Cache 
Side Cache 
Source 
Client 
Consumer
Copyright © 2014 Accenture All rights reserved. 
37 
•Lower load to the data source 
•Read Through emulation possible 
•Effectively loads data on demand 
•Data lifecycle management possible 
•Supporting pre-caching might be used 
•Not fully transparent 
•Additional hops to the cache 
•Not good for static data
Copyright © 2014 Accenture All rights reserved. 
38 
Side cache usage examples 
When dynamic data used 
Resource demand is not predictable 
Local storage in browser 
Large amount of data
39 
Cache Patterns Publisher / Refresh Ahead
Copyright © 2014 Accenture All rights reserved. 
40 
Index 
Cache 
Publisher / Refresh Ahead 
Source 
Client 
Publisher
Copyright © 2014 Accenture All rights reserved. 
41 
Index 
Cache 
Publisher / Refresh Ahead 
Source 
Client 
Publisher
Copyright © 2014 Accenture All rights reserved. 
42 
Index 
Cache 
Publisher / Refresh Ahead 
Source 
Client 
Publisher
Copyright © 2014 Accenture All rights reserved. 
43 
Index 
Cache 
Publisher / Refresh Ahead 
Source 
Client 
Publisher
Copyright © 2014 Accenture All rights reserved. 
44 
•Very high scalability 
•Controlled “freshness” of data 
•Distributed 
•Data source does not limit the scaling of the application 
•Read Only 
•Does not reflect frequent changes 
•Snapshot of data in history
Copyright © 2014 Accenture All rights reserved. 
45 
Publisher usage examples 
Good for static data 
Optimized images for responsive design 
Reports, graphs 
Documents in PDF / EPub / Mobi 
Stock amount in Eshop
46 
Data Distribution
Copyright © 2014 Accenture All rights reserved. 
47 
CDN 
•Static files and images 
•Websites 
Front-end 
•HTTP requests and session data 
•User’s data 
Application logic 
•Short-term code results 
•External calls and sessions 
Integration 
•Request to external systems 
•Responses from requests 
Database layer 
•SQL queries and parameters 
•Connection strings and configurations 
CDN 
Frontend 
Application Logic 
Integration 
Database Layer
Copyright © 2014 Accenture All rights reserved. 
48 
Performing 
Application 
DATA 
Right caching pattern 
Application improvements
49 
Daniel Rezny Tomi Vanek

More Related Content

PPTX
Security implementation on hadoop
PDF
Nl HUG 2016 Feb Hadoop security from the trenches
PDF
Hadoop Security and Compliance - StampedeCon 2016
PDF
Keeping your Enterprise’s Big Data Secure by Owen O’Malley at Big Data Spain ...
PPTX
Combat Cyber Threats with Cloudera Impala & Apache Hadoop
PPTX
Implementing Security on a Large Multi-Tenant Cluster the Right Way
DOCX
John Zuniga Resume
PPTX
Ranger admin dev overview
Security implementation on hadoop
Nl HUG 2016 Feb Hadoop security from the trenches
Hadoop Security and Compliance - StampedeCon 2016
Keeping your Enterprise’s Big Data Secure by Owen O’Malley at Big Data Spain ...
Combat Cyber Threats with Cloudera Impala & Apache Hadoop
Implementing Security on a Large Multi-Tenant Cluster the Right Way
John Zuniga Resume
Ranger admin dev overview

What's hot (20)

PPTX
Security needs in Hadoop’s Current and Future – How Apache Ranger can help?
PPTX
An Approach for Multi-Tenancy Through Apache Knox
PPTX
Risk Management for Data: Secured and Governed
PPTX
Seeking Cybersecurity--Strategies to Protect the Data
PDF
Distilling Hadoop Patterns of Use and How You Can Use Them for Your Big Data ...
PDF
History of Privacera
PPTX
Hadoop in the Cloud - The what, why and how from the experts
PDF
Securing Data in Hybrid on-premise and Cloud Environments Using Apache Ranger
PPTX
Open Source Security Tools for Big Data
PPTX
Multi-Tenant Operations with Cloudera 5.7 & BT
PPTX
Securing Data in Hybrid on-premise and Cloud Environments using Apache Ranger
PDF
Hadoop Security: Overview
PPTX
PDF
Hadoop & Security - Past, Present, Future
PPTX
Hybrid Data Platform
PPTX
Apache Knox - Hadoop Security Swiss Army Knife
PPTX
Cloudera Federal Forum 2014: Hadoop-Powered Solutions for Cybersecurity
PPTX
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...
PPTX
What the Enterprise Requires - Business Continuity and Visibility
PPTX
Hadoop security @ Philly Hadoop Meetup May 2015
Security needs in Hadoop’s Current and Future – How Apache Ranger can help?
An Approach for Multi-Tenancy Through Apache Knox
Risk Management for Data: Secured and Governed
Seeking Cybersecurity--Strategies to Protect the Data
Distilling Hadoop Patterns of Use and How You Can Use Them for Your Big Data ...
History of Privacera
Hadoop in the Cloud - The what, why and how from the experts
Securing Data in Hybrid on-premise and Cloud Environments Using Apache Ranger
Open Source Security Tools for Big Data
Multi-Tenant Operations with Cloudera 5.7 & BT
Securing Data in Hybrid on-premise and Cloud Environments using Apache Ranger
Hadoop Security: Overview
Hadoop & Security - Past, Present, Future
Hybrid Data Platform
Apache Knox - Hadoop Security Swiss Army Knife
Cloudera Federal Forum 2014: Hadoop-Powered Solutions for Cybersecurity
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...
What the Enterprise Requires - Business Continuity and Visibility
Hadoop security @ Philly Hadoop Meetup May 2015
Ad

Viewers also liked (17)

PPTX
Evaluation question 3
PPTX
Like media portfolio stuff
PPTX
Media analysis
PPTX
Media poster drafting
PDF
Java coding pitfalls
PPTX
Final stuff
PPTX
Media analysis
PPTX
Classification of Web Applications
PPTX
JavaScript code generator with Yeoman
PPTX
Media magazine
PPTX
василь стефаник камінний хрест
PPTX
Case study of artists
PPTX
Poster and teaser poster analysis
PDF
Application patterns
PDF
Spring Batch in Code - simple DB to DB batch applicaiton
PDF
The Twelve Factor Apps
PPT
життєвий і творчий шлях в.стефаника
Evaluation question 3
Like media portfolio stuff
Media analysis
Media poster drafting
Java coding pitfalls
Final stuff
Media analysis
Classification of Web Applications
JavaScript code generator with Yeoman
Media magazine
василь стефаник камінний хрест
Case study of artists
Poster and teaser poster analysis
Application patterns
Spring Batch in Code - simple DB to DB batch applicaiton
The Twelve Factor Apps
життєвий і творчий шлях в.стефаника
Ad

Similar to Caching Patterns (20)

PDF
Strata NY 2014 - Architectural considerations for Hadoop applications tutorial
PPTX
Couchbase usage at Symantec
PPTX
Coherence Overview - OFM Canberra July 2014
PDF
Hadoop Application Architectures tutorial at Big DataService 2015
PDF
Architecting application with Hadoop - using clickstream analytics as an example
PDF
Architectural considerations for Hadoop Applications
PPTX
Creating An Enterprise Storage Strategy for Healthcare
PDF
Strata EU tutorial - Architectural considerations for hadoop applications
PDF
Hadoop Application Architectures tutorial - Strata London
PDF
Application Architectures with Hadoop
PDF
大数据数据治理及数据安全
PPTX
Intuitive Real-Time Analytics with Search
PDF
Application Architectures with Hadoop | Data Day Texas 2015
PDF
Application Architectures with Hadoop
PDF
IW14 Session: webMethods World
PPTX
Spark+flume seattle
PDF
Unbundling the Modern Streaming Stack With Dunith Dhanushka | Current 2022
PDF
Cassandra Summit 2014: Internet of Complex Things Analytics with Apache Cassa...
PDF
The Future of Data Management: The Enterprise Data Hub
PPTX
Simplifying Real-Time Architectures for IoT with Apache Kudu
Strata NY 2014 - Architectural considerations for Hadoop applications tutorial
Couchbase usage at Symantec
Coherence Overview - OFM Canberra July 2014
Hadoop Application Architectures tutorial at Big DataService 2015
Architecting application with Hadoop - using clickstream analytics as an example
Architectural considerations for Hadoop Applications
Creating An Enterprise Storage Strategy for Healthcare
Strata EU tutorial - Architectural considerations for hadoop applications
Hadoop Application Architectures tutorial - Strata London
Application Architectures with Hadoop
大数据数据治理及数据安全
Intuitive Real-Time Analytics with Search
Application Architectures with Hadoop | Data Day Texas 2015
Application Architectures with Hadoop
IW14 Session: webMethods World
Spark+flume seattle
Unbundling the Modern Streaming Stack With Dunith Dhanushka | Current 2022
Cassandra Summit 2014: Internet of Complex Things Analytics with Apache Cassa...
The Future of Data Management: The Enterprise Data Hub
Simplifying Real-Time Architectures for IoT with Apache Kudu

Recently uploaded (20)

PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
System and Network Administration Chapter 2
PPTX
Introduction to Artificial Intelligence
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
System and Network Administraation Chapter 3
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
medical staffing services at VALiNTRY
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PPTX
Transform Your Business with a Software ERP System
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
Nekopoi APK 2025 free lastest update
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PPTX
L1 - Introduction to python Backend.pptx
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Odoo Companies in India – Driving Business Transformation.pdf
How Creative Agencies Leverage Project Management Software.pdf
System and Network Administration Chapter 2
Introduction to Artificial Intelligence
How to Choose the Right IT Partner for Your Business in Malaysia
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
System and Network Administraation Chapter 3
Internet Downloader Manager (IDM) Crack 6.42 Build 41
medical staffing services at VALiNTRY
VVF-Customer-Presentation2025-Ver1.9.pptx
Transform Your Business with a Software ERP System
How to Migrate SBCGlobal Email to Yahoo Easily
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Nekopoi APK 2025 free lastest update
Softaken Excel to vCard Converter Software.pdf
Wondershare Filmora 15 Crack With Activation Key [2025
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
L1 - Introduction to python Backend.pptx
Odoo POS Development Services by CandidRoot Solutions
Odoo Companies in India – Driving Business Transformation.pdf

Caching Patterns

  • 1. Media Partner Organizers Top Media Partner General Partner Supporters Daniel Rezny, Tomi Vanek Accenture Digital in Space & Time Caching Patterns and Strategies October 17, 2014
  • 2. Copyright © 2014 Accenture All rights reserved. 2 Daniel Rezny senior technology architect daniel.rezny@accenture.com @danielrezny Tomi Vanek senior software architect tomas.vanek@accenture.com http://tomi.vanek.sk
  • 3. 3 Data Everything what is DIGITAL is DATA.
  • 4. Copyright © 2014 Accenture All rights reserved. 4 Data = Identity & Content Time Volume Identity Individual Collective Content
  • 5. Copyright © 2014 Accenture All rights reserved. 5 Data = Identity & Content Time Volume Identity Individual Collective
  • 6. Copyright © 2014 Accenture All rights reserved. 6
  • 7. Copyright © 2014 Accenture All rights reserved. 7 Good scalability Transparency Easy to maintain Reduced load on source Fast recovery after failover
  • 8. 8 Cache Patterns Read Through Cache
  • 9. Copyright © 2014 Accenture All rights reserved. 9 Read Through Source Cache Client 1 Cache Client 2
  • 10. Copyright © 2014 Accenture All rights reserved. 10 Client 1 Client 2 Source Read Through Cache Cache
  • 11. Copyright © 2014 Accenture All rights reserved. 11 Client 1 Client 2 Source Read Through Cache Cache
  • 12. Copyright © 2014 Accenture All rights reserved. 12 Client 1 Client 2 Source Read Through Cache Cache
  • 13. Copyright © 2014 Accenture All rights reserved. 13 Client 1 Client 2 Source Read Through Cache Cache
  • 14. Copyright © 2014 Accenture All rights reserved. 14 Client 1 Client 2 Source Read Through Cache Cache
  • 15. Copyright © 2014 Accenture All rights reserved. 15 •Simple, transparent •Scalable •Faster response time by repeating requests •Decreases load to data source •Read only •Only for repeating requests •For data with rare changes •Requests for unique data hit data source
  • 16. Copyright © 2014 Accenture All rights reserved. 16 Read Through usage examples Content Delivery Network (CDN) HTTP reverse proxy Browser proxy API management tools Reusable data closer to consumption
  • 17. 17 Cache Patterns Write Through / Write behind
  • 18. Copyright © 2014 Accenture All rights reserved. 18 Cache Cache Write Through / Write behind Client 1 Client 2 Destination
  • 19. Copyright © 2014 Accenture All rights reserved. 19 Client 1 Client 2 Destination Write Through / Write behind Cache Cache
  • 20. Copyright © 2014 Accenture All rights reserved. 20 Client 1 Client 2 Destination Write Through / Write behind Cache Cache
  • 21. Copyright © 2014 Accenture All rights reserved. 21 Client 1 Client 2 Destination Write Through / Write behind Cache Cache
  • 22. Copyright © 2014 Accenture All rights reserved. 22 •Transparently hide destination systems •The only application’s source of data •Limit amount of requests to the source •Avoid cache misses •Database unknown for application •Split of responsibilities •Does not improve writes speed •Possible data inconsistences •Cache transaction finish before database’ starts
  • 23. Copyright © 2014 Accenture All rights reserved. 23 Write Through usage examples Additional application layer API management tools Content delivery network Lot of writes and reads
  • 24. 24 Cache Patterns Pre-Fetch / Pre-Caching
  • 25. Copyright © 2014 Accenture All rights reserved. 25 Trigger Cache Pre-Fetch / Pre-Caching Client Source
  • 26. Copyright © 2014 Accenture All rights reserved. 26 Trigger Cache Pre-Fetch / Pre-Caching Client Source
  • 27. Copyright © 2014 Accenture All rights reserved. 27 Trigger Cache Pre-Fetch / Pre-Caching Client Source
  • 28. Copyright © 2014 Accenture All rights reserved. 28 Trigger Cache Pre-Fetch / Pre-Caching Client Source
  • 29. Copyright © 2014 Accenture All rights reserved. 29 Trigger Cache Pre-Fetch / Pre-Caching Client Source
  • 30. Copyright © 2014 Accenture All rights reserved. 30 •Fast read of non-repetitive data •Prepare data for usage in advance •Transparent work "behind the scene" •Increased load on resources (data source, network, cache size) •Redundant data in cache •Complex trigger logic
  • 31. Copyright © 2014 Accenture All rights reserved. 31 Pre-Fetch usage examples Master-detail pattern (search) Asynchronous page refresh Database pre-fetch Guided navigation Preload of web assets Automated and manual pre-fetching
  • 32. 32 Cache Patterns Side Cache
  • 33. Copyright © 2014 Accenture All rights reserved. 33 Cache Side Cache Source Client Consumer
  • 34. Copyright © 2014 Accenture All rights reserved. 34 Cache Side Cache Source Client Consumer
  • 35. Copyright © 2014 Accenture All rights reserved. 35 Cache Side Cache Source Client Consumer
  • 36. Copyright © 2014 Accenture All rights reserved. 36 Cache Side Cache Source Client Consumer
  • 37. Copyright © 2014 Accenture All rights reserved. 37 •Lower load to the data source •Read Through emulation possible •Effectively loads data on demand •Data lifecycle management possible •Supporting pre-caching might be used •Not fully transparent •Additional hops to the cache •Not good for static data
  • 38. Copyright © 2014 Accenture All rights reserved. 38 Side cache usage examples When dynamic data used Resource demand is not predictable Local storage in browser Large amount of data
  • 39. 39 Cache Patterns Publisher / Refresh Ahead
  • 40. Copyright © 2014 Accenture All rights reserved. 40 Index Cache Publisher / Refresh Ahead Source Client Publisher
  • 41. Copyright © 2014 Accenture All rights reserved. 41 Index Cache Publisher / Refresh Ahead Source Client Publisher
  • 42. Copyright © 2014 Accenture All rights reserved. 42 Index Cache Publisher / Refresh Ahead Source Client Publisher
  • 43. Copyright © 2014 Accenture All rights reserved. 43 Index Cache Publisher / Refresh Ahead Source Client Publisher
  • 44. Copyright © 2014 Accenture All rights reserved. 44 •Very high scalability •Controlled “freshness” of data •Distributed •Data source does not limit the scaling of the application •Read Only •Does not reflect frequent changes •Snapshot of data in history
  • 45. Copyright © 2014 Accenture All rights reserved. 45 Publisher usage examples Good for static data Optimized images for responsive design Reports, graphs Documents in PDF / EPub / Mobi Stock amount in Eshop
  • 47. Copyright © 2014 Accenture All rights reserved. 47 CDN •Static files and images •Websites Front-end •HTTP requests and session data •User’s data Application logic •Short-term code results •External calls and sessions Integration •Request to external systems •Responses from requests Database layer •SQL queries and parameters •Connection strings and configurations CDN Frontend Application Logic Integration Database Layer
  • 48. Copyright © 2014 Accenture All rights reserved. 48 Performing Application DATA Right caching pattern Application improvements
  • 49. 49 Daniel Rezny Tomi Vanek