Anzeige

How Development Teams Cut Costs with ScyllaDB.pdf

ScyllaDB
ScyllaDB
29. Mar 2023
Anzeige

Más contenido relacionado

Similar a How Development Teams Cut Costs with ScyllaDB.pdf(20)

Anzeige

Más de ScyllaDB(20)

Anzeige

How Development Teams Cut Costs with ScyllaDB.pdf

  1. How Development Teams Cut Costs with ScyllaDB Tzach Livyatan, VP Product at ScyllaDB
  2. Poll Where are you in your NoSQL adoption?
  3. Tzach Livyatan + ScyllaDB, VP Product + Tzach has a 20 year career in development, system engineering and product management. + He has worked in the Telecom domain, focusing on carrier grade systems, signalling, policy and charging applications for Oracle and others. 3
  4. Agenda ■ Introduction to ScyllaDB ■ Why is ScyllaDB Less Expensive? ■ How is ScyllaDB Less Expensive? ■ Using ScyllaDB Workload Prioritization to Reduce Costs ■ Summary
  5. + NoSQL, OLTP Distributed NoSQL Database + Founded by designers of KVM Hypervisor: Avi Kivity and Dor Laor + Resolves challenges of legacy NoSQL databases + >5x higher throughput + >20x lower latency + >75% TCO savings + DBaaS/Cloud, Enterprise and Open Source solutions + Compatible with Apache Cassandra and Amazon DynamoDB The Database Built for Gamechangers 5 “ScyllaDB stands apart...It’s the rare product that exceeds my expectations.” – Martin Heller, InfoWorld contributing editor and reviewer “For 99.9% of applications, ScyllaDB delivers all the power a customer will ever need, on workloads that other databases can’t touch – and at a fraction of the cost of an in-memory solution.” – Adrian Bridgewater, Forbes senior contributor
  6. 6 +400 Gamechangers Leverage ScyllaDB Seamless experiences across content + devices Fast computation of flight pricing Corporate fleet management Real-time analytics 2,000,000 SKU -commerce management Video recommendation management Threat intelligence service using JanusGraph Real time fraud detection across 6M transactions/day Uber scale, mission critical chat & messaging app Network security threat detection Power ~50M X1 DVRs with billions of reqs/day Precision healthcare via Edison AI Inventory hub for retail operations Property listings and updates Unified ML feature store across the business Cryptocurrency exchange app Geography-based recommendations Global operations- Avon, Body Shop + more Predictable performance for on sale surges GPS-based exercise tracking Serving dynamic live streams at scale Powering India's top social media platform Personalized advertising to players Distribution of game assets in Unreal Engine
  7. (No)SQL - By Availability vs Consistency 7 Pick Two Availability Partition Tolerance Consistency
  8. NoSQL - By Data Model Key / Value Redis, Aerospike, RocksDB Document store MongoDB, Couchbase Wide column store Scylla, Apache Cassandra, HBase, DynamoDB Graph Neo4j, JanusGraph Complexity 8
  9. 9 Satish Chandra Gupta https://towardsdatascience.com/datastore-choices- sql-vs-nosql-database-ebec24d NoSQL - By Data Model
  10. Active/Active, replicated, auto-sharded 10 Tunable, Eventual Consistency App App App App App App CL= Local Quorum CL= One
  11. 11 Scylla Architecture Source: https://code.kiwi.com/nonstop-operations-with-scylla-even-through-the-ovhcloud-fire-4c0191e43ba1
  12. Why is ScyllaDB Less Expensive?
  13. Why is ScyllaDB Less Expensive? Higher Throughput Lower Consistent Latency Easier Administration
  14. $$$ $$ $ Higher Throughput -> Less HW -> Lower Cost
  15. Cassandra 4.0 vs. ScyllaDB + ScyllaDB can maintain 2x - 5x throughput + ScyllaDB adds nodes 3x faster
  16. ScyllaDB vs Google Bigtable ScyllaDB vs DynamoDB ScyllaDB vs Cassandra 1/7th the cost 26x performance in real-life scenario 4 ScyllaDB nodes vs 40 Cassandra nodes 2.5X less expensive 1/5th cost in real-life scenario Higher Throughput -> Less HW -> Lower Cost
  17. Lower Consistent Latency -> Higher Revenue insideline.com site to reduce load times from nine seconds to 1.4 seconds, ad revenue increased three percent, and page views-per-session went up 17 percent. https://www.thinkwithgoogle.com/future-of-marketing/digital-transformation/the-google- gospel-of-speed-urs-hoelzle/ https://www.globaldots.com/resources/blog/latency-is-having-a-huge-negative-impact-on-ecommerce-c ompanies https://www.fastcompany.com/1825005/how-one-second-could-cost-amazon-16-billion-sales
  18. Source: The ultimate guide to proper use of animation in UX https://uxdesign.cc/the-ultimate-guide-to-proper-use-of-animation-in-ux-10bd98614fa9 Lower Consistent Latency -> Higher Revenue Super Fast 1ms
  19. Tail Latency - Why You Should Care Refresh User App Business Logic DB API Calls DB Calls Slowest 1% DB responses dominated UX latency
  20. 20 Consistent, Low Latencies European Ecommerce Platform + 14,000,000 monthly users + Maintenance operations in Cassandra → latency spikes + P99 comparison + 7X lower response times with ScyllaDB + “Usable” P99 latencies
  21. 21 ScyllaDB vs. Cassandra 4.0: Latency vs Throughput + Cassandra 4.0 cannot maintain useable low latencies except at very low throughput (≤30-40k ops) + ScyllaDB can maintain low latencies for far greater throughputs (≤170-180k ops)
  22. + 50% reads, 50% writes + Hotspot distribution + Goal Throughput: 100K which is 70% of ScyllaDB max capacity Use Case Comparison Latency Measured Throughput Yearly Cost Mean Read Mean Update P99 Read P99 Update ScyllaDB Cloud 1.93 1.57 4.739 3.593 100.5K 29,172 $ Amazon DynamoDB 5.51 6.59 37.695 41.951 100.K (provisioned 120K) 278,172 $
  23. Do the math yourself! https://www.scylladb.com/product/scylla-cloud/get-pricing/? writes=500000&reads=500000&storage=10&itemSize=1&re plication=3
  24. ScyllaDB reduces complexity in many ways: + Smaller footprint: Less to manage, less to fail Less Complexity 24 MTBF = ∑ (start of downtime – start of uptime) number of failures
  25. ScyllaDB reduces complexity in many ways: + Smaller footprint: Less to manage, less to fail + No JVM tuning: No Java Less Complexity 25
  26. 26 Replacing a Node + ScyllaDB can heal clusters far faster than Cassandra 4.0 by spinning nodes up and rebalancing data + ~3x - 4x faster
  27. ScyllaDB reduces complexity in many ways: + Smaller footprint: Less to manage, less to fail + No JVM tuning: No Java + Self-optimizing: No tuning Less Complexity SELF-OPTIMIZING 27
  28. Deployment Options Install in Your Datacenter ➔ ScyllaDB Open Source ➔ ScyllaDB Enterprise Install at a Cloud Provider ➔ ScyllaDB Open Source ➔ ScyllaDB Enterprise Database as a Service ➔ Fully managed ScyllaDB clusters ➔ 24*7 maintenance and support. On-Prem Cloud Hosted ScyllaDB Cloud 28
  29. Why is ScyllaDB Less Expensive? Higher Throughput -> Less HW -> Lower Cost Lower Consistent Latency -> Higher Revenue Easier Administration -> Better Sleep
  30. Poll Which of the following is most important to you?
  31. How is ScyllaDB Less Expensive?
  32. 32
  33. Non Uniform Memory Access (NUMA) 33
  34. What Happened? 34 + Per thread performance plateaued + Cores: 1 ⟶ 256, NUMA + RAM: 2GB ⟶ 2TB + Disk space: 10GB ⟶ 10TB + Disk seek time: 10-20ms ⟶ 20µs + Network throughput: 1Gbps ⟶ 100Gbps This year: 64/128 cores/threads/cpu, 400Gbps NIC, Disk 10µs latency, 1.5TB/device, DDR5 2TB/DIMM AWS u-24tb1.metal: 224 cores, 448 threads, 24TB RAM
  35. Horizontal & Vertical Scaling Deep Technical Advancements Built in C++ (no Java overhead) System and Data Center Aware Sharding Per Core Shard-Aware Drivers Auto-Performance Tuning Network Processor NUMA Storage 35 Unique Close-to-Metal Architecture
  36. ScyllaDB Design Decisions 1 2 All Things Async 3 Shard per Core 4 Unified Cache 5 I/O Scheduler 6 Autonomous C++ instead of Java
  37. ScyllaDB Design Decisions 1 2 All Things Async 3 Shard per Core 4 Unified Cache 5 I/O Scheduler 6 Autonomous C++ instead of Java
  38. ScyllaDB Design Decisions Threads Shards 1 C++ instead of Java 2 All Things Async 3 Shard per Core 4 Unified Cache 5 I/O Scheduler 6 Autonomous
  39. ScyllaDB Design Decisions Legacy NoSQL ScyllaDB Key cache Row cache On-heap / Off-heap Linux page cache SSTables Unified cache SSTables Complex Tuning 1 2 All Things Async 3 Shard per Core 4 Unified Cache 5 I/O Scheduler 6 Autonomous C++ instead of Java
  40. ScyllaDB Design Decisions Legacy NoSQL ScyllaDB Key cache Row cache On-heap / Off-heap Linux page cache SSTables Unified cache SSTables App thread Kernel SSD Page fault Suspend thread Initiate I/O Context switch I/O completes Interrupt Context switch Map page Resume thread Page fault 1 2 All Things Async 3 Shard per Core 4 Unified Cache 5 I/O Scheduler 6 Autonomous C++ instead of Java
  41. https://db.cs.cmu.edu/papers/2022/ cidr2022-p13-crotty.pdf
  42. ScyllaDB Design Decisions Query Commitlog Compaction Userspace I/O Scheduler Disk Max useful disk concurrency I/O queued in FS/device No queues Queue Queue Queue 1 2 All Things Async 3 Shard per Core 4 Unified Cache 5 I/O Scheduler 6 Autonomous C++ instead of Java
  43. ScyllaDB Design Decisions Memtable Seastar Scheduler Compaction Query Repair Commitlog SSD Compaction Backlog Monitor Memory Monitor Adjust priority Adjust priority WAN CPU 1 2 All Things Async 3 Shard per Core 4 Unified Cache 5 I/O Scheduler 6 Autonomous C++ instead of Java
  44. Scheduler Safety Area
  45. I4i NVMe Storage
  46. Latest Results I3 vs I4 - 3 Node Cluster Big thanks to Michał Chojnowski for benchmarking all the new AWS instances types! I3.16xlarge vs i4.16xlarge (64 vCPU servers) 50% Reads / 50% Writes Latency tests with 50% of the max throughput 67% better price/performance!
  47. Deep dive into Low Latency Engineering https://www.p99conf.io/
  48. Workload Prioritization
  49. Different Types of Loads ■ OLTP ● Small work items ● Latency sensitive ● involves narrow portion of the data ■ OLAP ● Large work items ● Throughput oriented ● Performed on large amounts of data
  50. Enterprise Only: Workload Prioritization 50 100 shares Ratio = 100:100 (1:1) means equal shares of processing/resources to complete tasks Ratio = 100:50 (2:1) means 2X as many shares of processing/resources for Analytics to complete tasks compared to Transactions 100 shares 100 shares 50 shares OLAP OLTP Which Task to Run
  51. How Does it Work?
  52. Summary
  53. 53 962 C* nodes to 78! 60% TCO 95% latency
  54. 54 <1ms P99 Zero downtime TCO From Redis + Elasticsearch to ScyllaDB
  55. Out-of-order solved 55 Real-time workloads on 3 AWS nodes “No one even realizes we are processing the entirety of Zillow’s property and listings data.” – Dan Podhola, Principle Engineer Process all Zillow data in <1 day with no performance hit to real-time
  56. 56 operational complexity operational costs (for 1,000+ dbs!) app throughput “It was comparable to the solution with Kafka, and we didn’t have to add, manage, and maintain another data product in our ecosystem.” – Daniel Belenky, Palo Alto Networks
  57. 57 1000% throughput 90% EC2 costs Rapiddeployment “ScyllaDB turned out to be a game-changer in terms of performance and the types of analysis our application is able to do effortlessly.” – Krishna Palati, DevOps Engineering
  58. 58 “It’s been a quiet, well-behaved database (it’s okay to say this because I’m not on-call this week). We’re not having weekend-long firefights, nor are we juggling nodes in the cluster to attempt to preserve uptime. It’s a much more efficient database.” - Bo Ingram, Discord Trillions of messages 60% fewer nodes 5msp99 Gamechangers https://thenewstack.io/how-discord-migrated-trillions-of-message s-to-scylladb/
  59. Summary + ScyllaDB is compatible with Apache Cassandra, Amazon DynamoDB and can run on multiple platforms + ScyllaDB is less expensive and has lower tail latency + You can migrate to ScyllaDB without downtime
  60. What a Difference a Database Makes ScyllaDB vs. DynamoDB 1/5th cost 20x higher throughput ScyllaDB vs. Google Bigtable 1/5th the cost 26x higher throughput ScyllaDB vs. Cassandra 5x higher throughput 2-20x lower latency
  61. Q&A Get Started with ScyllaDB Cloud Free Trial: scylladb.com/cloud
  62. Thank you for joining us today. @scylladb scylladb/ slack.scylladb.com @scylladb company/scylladb/ scylladb/
Anzeige