Scale DB Transactional Shared Disk storage engine for
Scale. DB Transactional Shared Disk storage engine for My. SQL Moshe Shadmon, Founder, CTO
The product DBMS/Apps My. SQL-Scale. DB Interface Storage Engine Storage Layer
Scale. DB Benefits § Enables open source DBMS (eg: My. SQL) to operate as clustered, high end database § Scales applications in cloud environments § No need to change the applications § Provides high performance § Provides unified data store
Shared Disk vs. Shared Nothing Masters Slaves Shared Nothing Shared Disk SQL Server DB 2 (Unix) My. SQL Postgre. SQL Oracle RAC IBM - DB 2, IMS (MF) Scale. DB
Shared Disk vs Shared Nothing Shared Disk Storage Per DBMS machine Shared storage (NAS/SAN) Scalability By data partitioning By adding CPU Scaling complexity High Low High Availability Master-Slave Multi-Masters HA complexity High Low Implemented By My. SQL Postgre. SQL Server DB 2 (Unix) Oracle RAC IBM on mainframe (DB 2/IMS) Scale. DB Shared disk provides “out of the box” scalability and availability Currently available with the high end commercial databases only
The Virtualized Cloud Database OSS DBMS Storage Engine Server 2 Server 1 My. SQL Server VM VM VM OSS OSS DBMS OSS DBMS Scale. DB Local Disk Shared Nothing Shared Storage Shared Disk
Deploying Scale. DB Application Layer Database Layer (Physical or VM nodes) Scale. DB Application Node 1 Node 2 DBMS Scale. DB Node N … Scale. DB Cluster Manager Standby Cluster Manager Storage Layer Shared Storage DBMS Shared Storage
Benefits of Scale. DB Technology § High Availability – No single point of failure § If a node fails – a different node takes over § If the cluster manager fails – the standby cluster manager is initiated to manage the cluster § Scalability § No limit on the number of nodes that can join the cluster § Algorithms to minimize the need to communicate § Performance § Innovative, high performance, general purpose indexing
Scale. DB’s Internal Architecture Applications Scale. DB Cluster Manager Global Buffer Manager Global Lock Manager Global Recovery Manager XML Scale. DB API Transaction Manager Lock Manager Local Lock Manager Global Lock Coordinator Index Manager Data Manager Buffer Manager Log Manager Recovery Manager Storage Manager File System Storage Devices Scale. DB Node
Distributed Lock Manager Scale. DB Cluster Manager H List DBMS X H List Table Y H List Block Z W List Scale. DB Node 1 R/W Node 2 R/W Read Customer Info Node 1 R/W Node 2 R/W Index translates logical id to Row ID Node 1 R Node 2 R Shared DBMS lock Shared Table lock Shared Row lock Node 2 R/W File System Storage Devices
Shared Disk in the Cloud § Cloud provides Scalability and HA § Scalability - Enables dynamic allocation of computing and storage § Availability – Multiple servers over the same physical data § High performance § Reduces Management Overhead § Reduced tuning and partitioning support § No manual slave promotion or replication
Performance / Scalability § Benchmarks § Join operations using Multi-Table index § Sysbench § TPCC § Example multiple My. SQL + Scale. DB nodes on Amazon EC 2 § Demo
Benchmark multi-table index
Sysbench Performance on EC 2 2303 TPS Transactions Per Second 2033 1764 1494 Other Engine 1224 Scale. DB 954 775 TPS 685 415 1 1 2 3 4 5 Number of Nodes 6 7 8
Current & Future Work § Optimizing TPCC – soon to be published § Integrating with other environments § GA – later this year § Demo
- Slides: 15