University of StuttgartUniversitätsstr. 3870569 StuttgartGermany
Phone +49-711-685 88337 Fax +49-711-685 88472
ResearchResearch
Santiago Gómez Sáez, Vasilios Andrikopoulos, Frank Leymann, and Steve StrauchInstitute of Architecture of Application Systems
{gomez-saez, andrikopoulos, leymann, strauch}@iaas.uni-stuttgart.de
Evaluating Caching Strategies for Cloud Data Access using an
Enterprise Service Bus
IEEE IC2E 2014
Rese
arc
h
© Santiago Gómez Sáez 2
Agenda
Motivating Scenario CDASMix Architecture & Realization Evaluation Conclusion and Future Work
33
Rese
arc
h
© Santiago Gómez Sáez
Motivating Scenario
Presentation Layer
Application
Business Layer
SQL
Data Access Layer
SQL
Data Access LayerCloud-Enabled Data Access Layer
SQL
Registry
Public Cloud Public CloudTraditional
Application Layers
DeploymentModels
Assumptions Database layer has already been
migrated Focus on Relational Databases
44
Rese
arc
h
© Santiago Gómez Sáez
CDASMix - Architecture
Presentation
BusinessLogic
Resources
Web Service API
Configuration Registry Manager
Tenant Registry Manager
Service Registry Manager
JBI Container Manager
Service Assembly Manager
Service RegistryDatabase Cluster
ConfigurationRegistry Database
JBI ContainerInstance Cluster
Access Layer
Web UI
Tenant RegistryDatabase
Message Broker
(1) Strauch et al.: Transparent Access to Relational Databases in the Cloud Using a Multi-tenant ESB. CLOSER’14 (2) ESBMT Project: www.iaas.uni-stuttgart.de/esbmt/
55
Rese
arc
h
© Santiago Gómez Sáez
CDASMix – Cloud Data Access ESB Instance
OSGi Environment
JBI Environment
Standardized Interfaces for Service Engines
Standardized Interfaces for Binding Components
Normalized Message Router
External Application
SMX-Camel-mt
MySQL Proxy
SMX-Camel
Camel cdasmixJDBC
Backend Cloud Data Store Provider
Legend
Message Flow
OSGi Component
JBI Component
NMR API
Cache ClusterInstance
1Instance
1Instance
1
• Ehcache 2.6.0• LRU, LFU & FIFO• Multi-tenancy
Awareness
66
Rese
arc
h
© Santiago Gómez Sáez
Evaluation – Methodology & Data Set Measure how caching mitigates the performance degradation
when accessing data through CDASMix Analyze the optimal cache eviction algorithm (in tandem with the
MySQL instances) Cache Hit rate in % and throughput in Req./s TPC-H 1 GB data distributed in 8 tables Discrete uniform (1/N) generated workload from 5 adapted TPC-H
queries -> read intensive (2.5 MB per query) constituted by 100 queries from initial sample of 9 queries
Generated Load publicly available at https://santiago.studiforge.informatik.uni-stuttgart.de/svn/publications/IC2E14/queries4Load/generatedLoad 5-100.csv
77
Rese
arc
h
© Santiago Gómez Sáez
Evaluation Setup
VM0 (Flexiscale)
Apache JMeter 2.9 CDASMix
MySQL 5.1
TPC-H
Amazon RDSMySQL 5.1 instance
VM1 (Amazon EC2)
MySQL 5.1
D1D2 D3E3 E2 E1
Legend
Message Flow
Measurement PointThroughput andTransfer Rate
Built-in Cache
E
TPC-H
TPC-H
QueryGen.sh
load.csv
MySQL & Ehcache cache size 16MB
88
Rese
arc
h
© Santiago Gómez Sáez
Evaluation – MySQL in IaaS Flexiscale & AWS EC2
Flexiscale AWS EC2
-51%
-14%
-10%
+17%
-39%
+21%
+30%
+16%
99
Rese
arc
h
© Santiago Gómez Sáez
Evaluation – MySQL in IaaS Flexiscale & AWS EC2
Flexiscale AWS EC2
-51%
+43%
+46%
+42%
-39%
+50%
+53%
+48%
1212
Rese
arc
h
© Santiago Gómez Sáez
Evaluation – CDASMix Cache Hit Ratio
Flexiscale AWS EC2 AWS RDS
1313
Rese
arc
h
© Santiago Gómez Sáez
Conclusion & Future Work
Design and realization of CDASMix, a multi-tenant aware ESB solution that enables transparent data access
Caching support for ameliorating the performance Evaluation based on
different database deployment scenarios the utilization of different caching eviction algorithms
Extend CDASMix towards supporting PostgreSQL CDASMix horizontal scalability & distributed caching Further evaluation
+ Caching Eviction Algorithms Different workloads