Improve Application Performance with SQL Auto-Caching, No Code - - PowerPoint PPT Presentation

improve application performance with sql auto caching no
SMART_READER_LITE
LIVE PREVIEW

Improve Application Performance with SQL Auto-Caching, No Code - - PowerPoint PPT Presentation

Improve Application Performance with SQL Auto-Caching, No Code changes Roland Lee Heimdall Data Agenda 1) Database Proxy Introduction 2) Demo 2 Web scale Challenges More users and applications implies Higher data volumes More


slide-1
SLIDE 1

Improve Application Performance with SQL Auto-Caching, No Code changes

Roland Lee Heimdall Data

slide-2
SLIDE 2

2

Agenda

1) Database Proxy Introduction 2) Demo

slide-3
SLIDE 3

3

Web scale Challenges

More users and applications implies

  • Higher data volumes
  • More tables, changes to schema
  • Higher latency responses
slide-4
SLIDE 4

4

Feature

ProxySQL Automated Failover SQL Read/Write Splitting Automated Cache invalidation Reduces network latency

✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓

Database Proxy Vendors

slide-5
SLIDE 5

5

Amazon ElastiCache

  • Best scale & performance
  • Greenfield applications
  • Requires code changes
  • Good scalability & performance
  • Existing applications, small dev
  • No code changes

IMDG or Database Proxy

slide-6
SLIDE 6

6

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

Heimdall Data Software Options

slide-7
SLIDE 7

7

Removes network latency Auto-caching Auto-invalidation

  • 1. Heimdall is installed on each application instance
  • 2. Direct Heimdall to the grid-cache of your choice (e.g. Redis, Hazelcast)
  • 3. Heimdall will auto-cache and auto-invalidate SQL results to the look-aside cache

Heimdall Data Distributed Proxy

slide-8
SLIDE 8

8

Use case Customer Benefit

SQL Results Caching

  • Auto-caching / Auto-invalidate
  • NO code changes

Automated failover

  • Faster failover for MySQL & SQL Server AlwaysOn
  • PGPool-II Replacement

Batch Processing

  • Improves write performance
  • Batches singleton DML operations
  • Removes Commit overhead

Auditing for Privacy Compliance

  • Logs data access: Who, what, when
  • GDPR, SOX, PCI, HIPPA

Heimdall Data Uses Cases

slide-9
SLIDE 9

9

Application Server

Application

Heimdall Data

Application Servers

Application Server

Application

Heimdall Data

Application Server

Application

Heimdall Data

Application Server

Heimdall Central Console

  • You choose the storage
  • Heimdall auto-caches
  • Heimdall auto-invalidates

Automated DB Failover

ElastiCache

SQL Analytics Audit Logging

Heimdall Data Architecture

slide-10
SLIDE 10

10

Heimdall Data

Application

Heimdall Data

Micro service Micro service Micro service

Microservice Application Hosts

Application

Heimdall Data

Micro service

Heimdall Data Solution DB Failover Connection Pooling Caching SQL Analytics Audit logging

Micro service Micro service

Heimdall Data

Application

Heimdall Data

Micro service Heimdall Data Micro service Micro service

Heimdall Data for Microservices

slide-11
SLIDE 11

11

L2 Cache

Heimdall DB Proxy

Removes network latency Application Server

Local Cache Application

SQL SQL

Elasticache

  • Heimdall auto-caches
  • 2-Tier Look-aside SQL cache
  • Not a write-through cache
  • Not a read-through cache
  • Auto-invalidation

Application Side – SQL Caching

slide-12
SLIDE 12

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

What to Cache?

slide-13
SLIDE 13

13

Heimdall Query Analytics

Very cacheable. 700 µs per query

slide-14
SLIDE 14

14

Heimdall Cache Rules Analytics

After: Cached response in 70 µs per query. Reduced database load. Before: Query response time 700 µs per query. Significant repetitive database load.

slide-15
SLIDE 15

Other use cases

slide-16
SLIDE 16

Other use cases

slide-17
SLIDE 17

17

  • 1. Automate use of read replicas (read/write splits)
  • 1. Replication lag detection to ensure data freshness
  • 2. Scale out the database with no application changes!

Application Server

Application Heimdall Data Read 1 Read 2 Read 3 Application Server

Use Case #1: Read / Write Splitting

slide-18
SLIDE 18

18 4 3 2 1

Data Generator DML Request

Spoofed Success on Queue Insert

6 5 4 3 2 1

Queue

Batch Size 4 7 8 START TRANSACTION; DML 1; DML 2; DML 3; DML 4; COMMIT;

Exceptions are logged, removed from batch, and transaction restarted Benefits:

  • Lower CPU overhead due to fewer commits
  • Improved application response time
  • Improved DML scale

#1 #2 #3 #4 #5

Use Case #2: Async DML Batching

slide-19
SLIDE 19

19

Heimdall DB Proxy

Application Server

Application

SQL

Heimdall Central Console

Identifies performance bottleneck

  • Application?
  • Database?
  • Network?

Use Case #3: SQL Analytics

slide-20
SLIDE 20

20

Demo

slide-21
SLIDE 21

Thank you

Roland Lee Heimdall Data