query fresh log shipping on steroids
play

Query Fresh: Log Shipping on Steroids Tianzheng Wang* Ryan Johnson - PowerPoint PPT Presentation

Query Fresh: Log Shipping on Steroids Tianzheng Wang* Ryan Johnson Ippokratis Pandis *Currently at Simon Fraser University High availability through log shipping Backup(s): Read + Failover Primary: Read + Write Real database Replay


  1. Query Fresh: Log Shipping on Steroids Tianzheng Wang* Ryan Johnson Ippokratis Pandis *Currently at Simon Fraser University

  2. High availability through log shipping Backup(s): Read + Failover Primary: Read + Write “Real” database Replay Network Log Log Widely used in practice 2

  3. Desirable properties Easy impl. & maintenance Safe Fresh High resource Fast primary utilization 3

  4. Strong safety and freshness Synchronous log Fast log replay shipping Primary Commit? Persist + ship + wait ack Committed Ack Ack Sync or async Backup(s) Persist log Replay Time I/O, network and/or replay on the critical path 4

  5. Synchronous log shipping: infeasible • ERMIA* TPC-C, 2-socket, 16 physical cores, 10Gbe * K. Kim, T. Wang, R. Johnson, I. Pandis, ERMIA: Fast Memory-Optimized Database System for Heterogeneous Workloads , SIGMOD 2016 5

  6. Synchronous log shipping: infeasible • ERMIA* TPC-C, 2-socket, 16 physical cores, 10Gbe ba ba s Log rate > BW eads Network + I/O: major bottleneck * K. Kim, T. Wang, R. Johnson, I. Pandis, ERMIA: Fast Memory-Optimized Database System for Heterogeneous Workloads , SIGMOD 2016 6

  7. Reality: asynchronous log shipping → freshness gap Backup(s) Primary Balance Balance 9:41 $0 9:40 $0 9:42 $0 9:41 $50 9:43 $0 Replay … 9:50 $50 Network Log Log Safety and freshness traded for primary speed 7

  8. Query Fresh • Synchronous log shipping: leverage modern hardware • Fast replay: append-only storage + indirection 8

  9. Modern HW: synchronous log shipping possible Non-volatile RAM (NVRAM) Memristor NV-DIMM 3D XPoint 9

  10. Trend: network tracks memory speed Network no longer the biggest bottleneck 10 * https://www.infinibandta.org/infiniband-roadmap/

  11. Modern HW: synchronous log shipping possible NVRAM → Fast persistence Memristor NV-DIMM 3D XPoint High BW network InfiniBand, Converged Ethernet → Fast transfer (56Gbps+) See paper for challenges & soln. RDMA over NVRAM: fast synchronous log shipping 11

  12. Desirable properties Easy impl. & maintenance Safe Fresh High resource Fast primary utilization 12

  13. Sync. Shipping != Fresh Reads • Two durable copies Replay • Create actual tuples The log e “ eal” database • Memory allocation • Many index operations Often serial (esp. secondary indexes) Heavyweight record creation + serial replay = stale 13

  14. Append-only storage: freshness possible • Only keep one durable copy of data – the log • Redo-only logging, log record == data tuple • LSN == position in the log, directly comparable * K. Kim, T. Wang, R. Johnson, I. Pandis, ERMIA: Fast Memory-Optimized Database System for Heterogeneous Workloads , SIGMOD 2016 14

  15. Query Fresh: Log == Database with RDMA + NVRAM Parallel • Sync. commit: safe (see paper) • Log tail in NVRAM Primary Secondary • Indexes: key → RID RID Where? Replay • Queries check both arrays 0 LSN 10 1 LSN 20 • Extract tuple location The log … … • Little memory allocation ( New ) Per-table • No index operation RDMA over replay array (except for inserts) NVRAM Fast sync log shipping + append-only = safe & fresh 15

  16. Query Fresh vs. Existing Query Fresh balances all aspects 16

  17. Evaluation • 8 x 16-core (2-socket) nodes • 1 primary + up to 7 backups • Xeon E5-2650 v2, 64GB RAM, logs in tmpfs • Target NV-DIMM: DRAM as log buffer + CLWB/FLUSH emulation • Network • Query Fresh: 56Gbps Infiniband FDR 4x + RDMA • Other schemes: 10Gbps Ethernet + TCP • Benchmarks in ERMIA • Primary: Full TPC-C, low contention • Backups: StockLevel + OrderStaus 17

  18. Query Fresh: maintains fast primary • 16 workers on primary, 4 replay threads + 12 workers on backups • Utilization = 75% (12 workers out of 16 total) Network saturated 18

  19. Query Fresh: fresh and high utilization • Freshness: backup read view / primary read view * 100% 19

  20. Conclusions • Slow network + Fast OLTP = Stale and Unsafe • Redundant data copies (dual-copy architecture) • Often serial, heavy-weighted log replay Fast, sync, safe • Query Fresh = Fast network + NVRAM + Append-only storage with indirection Fast replay → Fresh reads Find out more in our paper and code repo! https://github.com/ermia-db Thank you! 20

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend