SlideShare a Scribd company logo
1 of 49
Download to read offline
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

What's hot

Security needs in Hadoop’s Current and Future – How Apache Ranger can help?
Security needs in Hadoop’s Current and Future – How Apache Ranger can help?Security needs in Hadoop’s Current and Future – How Apache Ranger can help?
Security needs in Hadoop’s Current and Future – How Apache Ranger can help?DataWorks Summit
 
Risk Management for Data: Secured and Governed
Risk Management for Data: Secured and GovernedRisk Management for Data: Secured and Governed
Risk Management for Data: Secured and GovernedCloudera, Inc.
 
Seeking Cybersecurity--Strategies to Protect the Data
Seeking Cybersecurity--Strategies to Protect the DataSeeking Cybersecurity--Strategies to Protect the Data
Seeking Cybersecurity--Strategies to Protect the DataCloudera, Inc.
 
Distilling Hadoop Patterns of Use and How You Can Use Them for Your Big Data ...
Distilling Hadoop Patterns of Use and How You Can Use Them for Your Big Data ...Distilling Hadoop Patterns of Use and How You Can Use Them for Your Big Data ...
Distilling Hadoop Patterns of Use and How You Can Use Them for Your Big Data ...Hortonworks
 
History of Privacera
History of PrivaceraHistory of Privacera
History of PrivaceraPrivacera
 
Hadoop in the Cloud - The what, why and how from the experts
Hadoop in the Cloud - The what, why and how from the expertsHadoop in the Cloud - The what, why and how from the experts
Hadoop in the Cloud - The what, why and how from the expertsDataWorks Summit/Hadoop Summit
 
Securing Data in Hybrid on-premise and Cloud Environments Using Apache Ranger
Securing Data in Hybrid on-premise and Cloud Environments Using Apache RangerSecuring Data in Hybrid on-premise and Cloud Environments Using Apache Ranger
Securing Data in Hybrid on-premise and Cloud Environments Using Apache RangerDataWorks Summit
 
Open Source Security Tools for Big Data
Open Source Security Tools for Big DataOpen Source Security Tools for Big Data
Open Source Security Tools for Big DataRommel Garcia
 
Multi-Tenant Operations with Cloudera 5.7 & BT
Multi-Tenant Operations with Cloudera 5.7 & BTMulti-Tenant Operations with Cloudera 5.7 & BT
Multi-Tenant Operations with Cloudera 5.7 & BTCloudera, Inc.
 
Securing Data in Hybrid on-premise and Cloud Environments using Apache Ranger
Securing Data in Hybrid on-premise and Cloud Environments using Apache RangerSecuring Data in Hybrid on-premise and Cloud Environments using Apache Ranger
Securing Data in Hybrid on-premise and Cloud Environments using Apache RangerDataWorks Summit
 
Hadoop Security: Overview
Hadoop Security: OverviewHadoop Security: Overview
Hadoop Security: OverviewCloudera, Inc.
 
Hadoop & Security - Past, Present, Future
Hadoop & Security - Past, Present, FutureHadoop & Security - Past, Present, Future
Hadoop & Security - Past, Present, FutureUwe Printz
 
Apache Knox - Hadoop Security Swiss Army Knife
Apache Knox - Hadoop Security Swiss Army KnifeApache Knox - Hadoop Security Swiss Army Knife
Apache Knox - Hadoop Security Swiss Army KnifeDataWorks Summit
 
Cloudera Federal Forum 2014: Hadoop-Powered Solutions for Cybersecurity
Cloudera Federal Forum 2014: Hadoop-Powered Solutions for CybersecurityCloudera Federal Forum 2014: Hadoop-Powered Solutions for Cybersecurity
Cloudera Federal Forum 2014: Hadoop-Powered Solutions for CybersecurityCloudera, Inc.
 
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...DataWorks Summit
 
What the Enterprise Requires - Business Continuity and Visibility
What the Enterprise Requires - Business Continuity and VisibilityWhat the Enterprise Requires - Business Continuity and Visibility
What the Enterprise Requires - Business Continuity and VisibilityCloudera, Inc.
 
Hadoop security @ Philly Hadoop Meetup May 2015
Hadoop security @ Philly Hadoop Meetup May 2015Hadoop security @ Philly Hadoop Meetup May 2015
Hadoop security @ Philly Hadoop Meetup May 2015Shravan (Sean) Pabba
 

What's hot (20)

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

Viewers also liked

Evaluation question 3
Evaluation question 3Evaluation question 3
Evaluation question 3TLeon11
 
Like media portfolio stuff
Like media portfolio stuffLike media portfolio stuff
Like media portfolio stuffTLeon11
 
Media analysis
Media analysisMedia analysis
Media analysisTLeon11
 
Media poster drafting
Media poster draftingMedia poster drafting
Media poster draftingTLeon11
 
Java coding pitfalls
Java coding pitfallsJava coding pitfalls
Java coding pitfallstomi vanek
 
Final stuff
Final stuffFinal stuff
Final stuffTLeon11
 
Media analysis
Media analysisMedia analysis
Media analysisTLeon11
 
Classification of Web Applications
Classification of Web ApplicationsClassification of Web Applications
Classification of Web Applicationstomi vanek
 
JavaScript code generator with Yeoman
JavaScript code generator with YeomanJavaScript code generator with Yeoman
JavaScript code generator with Yeomantomi vanek
 
Media magazine
Media magazineMedia magazine
Media magazineTLeon11
 
василь стефаник камінний хрест
василь стефаник камінний хрествасиль стефаник камінний хрест
василь стефаник камінний хрестRoman_xD
 
Case study of artists
Case study of artistsCase study of artists
Case study of artistsTLeon11
 
Poster and teaser poster analysis
Poster and teaser poster analysisPoster and teaser poster analysis
Poster and teaser poster analysisTLeon11
 
Application patterns
Application patternsApplication patterns
Application patternstomi vanek
 
Spring Batch in Code - simple DB to DB batch applicaiton
Spring Batch in Code - simple DB to DB batch applicaitonSpring Batch in Code - simple DB to DB batch applicaiton
Spring Batch in Code - simple DB to DB batch applicaitontomi vanek
 
The Twelve Factor Apps
The Twelve Factor AppsThe Twelve Factor Apps
The Twelve Factor Appstomi vanek
 
життєвий і творчий шлях в.стефаника
життєвий і творчий шлях в.стефаникажиттєвий і творчий шлях в.стефаника
життєвий і творчий шлях в.стефаникаRoman_xD
 

Viewers also liked (17)

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

Similar to Digital Caching Patterns and Strategies Presentation

Strata NY 2014 - Architectural considerations for Hadoop applications tutorial
Strata NY 2014 - Architectural considerations for Hadoop applications tutorialStrata NY 2014 - Architectural considerations for Hadoop applications tutorial
Strata NY 2014 - Architectural considerations for Hadoop applications tutorialhadooparchbook
 
Couchbase usage at Symantec
Couchbase usage at SymantecCouchbase usage at Symantec
Couchbase usage at Symantecgauravchandna
 
Coherence Overview - OFM Canberra July 2014
Coherence Overview - OFM Canberra July 2014Coherence Overview - OFM Canberra July 2014
Coherence Overview - OFM Canberra July 2014Joelith
 
Hadoop Application Architectures tutorial at Big DataService 2015
Hadoop Application Architectures tutorial at Big DataService 2015Hadoop Application Architectures tutorial at Big DataService 2015
Hadoop Application Architectures tutorial at Big DataService 2015hadooparchbook
 
Architecting application with Hadoop - using clickstream analytics as an example
Architecting application with Hadoop - using clickstream analytics as an exampleArchitecting application with Hadoop - using clickstream analytics as an example
Architecting application with Hadoop - using clickstream analytics as an examplehadooparchbook
 
Architectural considerations for Hadoop Applications
Architectural considerations for Hadoop ApplicationsArchitectural considerations for Hadoop Applications
Architectural considerations for Hadoop Applicationshadooparchbook
 
Creating An Enterprise Storage Strategy for Healthcare
Creating An Enterprise Storage Strategy for Healthcare  Creating An Enterprise Storage Strategy for Healthcare
Creating An Enterprise Storage Strategy for Healthcare DataCore Software
 
Strata EU tutorial - Architectural considerations for hadoop applications
Strata EU tutorial - Architectural considerations for hadoop applicationsStrata EU tutorial - Architectural considerations for hadoop applications
Strata EU tutorial - Architectural considerations for hadoop applicationshadooparchbook
 
Hadoop Application Architectures tutorial - Strata London
Hadoop Application Architectures tutorial - Strata LondonHadoop Application Architectures tutorial - Strata London
Hadoop Application Architectures tutorial - Strata Londonhadooparchbook
 
Application Architectures with Hadoop
Application Architectures with HadoopApplication Architectures with Hadoop
Application Architectures with Hadoophadooparchbook
 
大数据数据治理及数据安全
大数据数据治理及数据安全大数据数据治理及数据安全
大数据数据治理及数据安全Jianwei Li
 
Intuitive Real-Time Analytics with Search
Intuitive Real-Time Analytics with SearchIntuitive Real-Time Analytics with Search
Intuitive Real-Time Analytics with SearchCloudera, Inc.
 
Application Architectures with Hadoop
Application Architectures with HadoopApplication Architectures with Hadoop
Application Architectures with Hadoophadooparchbook
 
Application Architectures with Hadoop | Data Day Texas 2015
Application Architectures with Hadoop | Data Day Texas 2015Application Architectures with Hadoop | Data Day Texas 2015
Application Architectures with Hadoop | Data Day Texas 2015Cloudera, Inc.
 
IW14 Session: webMethods World
IW14 Session: webMethods WorldIW14 Session: webMethods World
IW14 Session: webMethods WorldSoftware AG
 
Unbundling the Modern Streaming Stack With Dunith Dhanushka | Current 2022
Unbundling the Modern Streaming Stack With Dunith Dhanushka | Current 2022Unbundling the Modern Streaming Stack With Dunith Dhanushka | Current 2022
Unbundling the Modern Streaming Stack With Dunith Dhanushka | Current 2022HostedbyConfluent
 
Cassandra Summit 2014: Internet of Complex Things Analytics with Apache Cassa...
Cassandra Summit 2014: Internet of Complex Things Analytics with Apache Cassa...Cassandra Summit 2014: Internet of Complex Things Analytics with Apache Cassa...
Cassandra Summit 2014: Internet of Complex Things Analytics with Apache Cassa...DataStax Academy
 
The Future of Data Management: The Enterprise Data Hub
The Future of Data Management: The Enterprise Data HubThe Future of Data Management: The Enterprise Data Hub
The Future of Data Management: The Enterprise Data HubCloudera, Inc.
 
Simplifying Real-Time Architectures for IoT with Apache Kudu
Simplifying Real-Time Architectures for IoT with Apache KuduSimplifying Real-Time Architectures for IoT with Apache Kudu
Simplifying Real-Time Architectures for IoT with Apache KuduCloudera, Inc.
 

Similar to Digital Caching Patterns and Strategies Presentation (20)

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

Recently uploaded

PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 

Recently uploaded (20)

PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 

Digital Caching Patterns and Strategies Presentation

  • 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