automatingquerycachingwith data grids · amazon aurora rds, redshift. use cases. 12 uses real-time...

17
Automating Query Caching with Data Grids Roland Lee VP of Product

Upload: others

Post on 10-Oct-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

Automating Query Caching withData Grids

Roland LeeVP of Product

Page 2: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

2

• Intro to Database Proxy concept

• Query caching

• Other use cases

• Demo

Agenda

Page 3: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

3

• Database Proxies:

• Improves SQL read/write performance and reliability

• Deployment requires no application changes

Executive Summary

Page 4: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

4

Feature ProxySQL

Automated Failover

Read/Write split

Database Vendor Neutral

Automated Cache invalidation

Reduces network latency

Database Proxy Vendors

Page 5: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

5

Amazon ElastiCache

• Best scale & performance

• Greenfield applications

• Requires code changes

• May be “good enough”

• Existing applications, small dev

• No code changes

ProxySQL

IMDG vs. Database Proxies

Page 6: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

Transparent Database ProxyClick to add text

Page 7: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

7

Application

Heimdall Data Proxy

Vendor Database Driver

Application Server

Runs as an agent

Application

Heimdall Data JDBC

Vendor JDBC Driver

JDBC driver, .jar file

Application Server

Any JDBC data source

Software Package Options

Page 8: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

8

QUERY CACHING

AUTOMATED FAILOVER

BATCH PROCESSING

CONNECTION POOLING

READ/WRITE SPLITS

ACTIVE DIRECTORY

HEIMDALL DATABASE PROXY PLATFORM

APPLICATION

Aurora, RDS, Redshift

Database Proxy Platform

Page 9: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

9

Heimdall DB Proxy

Application ServerApplication

Heimdall DB Proxy

Database Proxy Tier

SQL

Application

Application ServerHeimdall Central Console

Heimdall DB Proxy

Heimdall Centralized Deployment

Page 10: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

10

Application ServerApplication Heimdall

Data

Heimdall Distributed Deployment

Application Servers

Application ServerApplication Heimdall

DataApplication ServerApplication

Heimdall Database

Proxy

Application ServerHeimdall Central Console ElastiCache

SQL Analytics Audit Logging

Amazon Aurora RDS, Redshift

Page 11: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

Use Cases

Page 12: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

12

Uses real-time analysis and statistics on:• Query frequency and variability

• Relative performance of Cache vs. Database

Provides:• Auto-cache only if there is a performance benefit• Cache recommendations and benefits

How Caching Works

Page 13: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

13

L2 Cache

Heimdall DB Proxy

Local Cache

ApplicationSQL SQL

Heimdall DB ProxyApplication

SQL SQL

Local Cache

App VM 1

App VM 2

Write

Read 1

Read 2

Caching and Read/Write Splits

Page 14: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

14

Very cacheable. 700 µs per query

SQL Analytics

Page 15: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

DemoClick to add text

Page 16: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

16

Amazon ElastiCache

• Best scale & performance

• Greenfield applications

• Requires code changes

• Good enough

• Existing applications, small dev

• No code changes

ProxySQL

IMDG vs. Database Proxies

Page 17: AutomatingQueryCachingwith Data Grids · Amazon Aurora RDS, Redshift. Use Cases. 12 Uses real-time analysis and statistics on: •Query frequency and variability •Relative performance

17