ScyllaDB Drivers take advantage of the unique ScyllaDB architecture to deliver high performance and low latencies. Join this talk to learn more about our shard-aware drivers, their features, and best practices for working with them. The presentation will go over the new features added in 2023 as wel...
ScyllaDB Drivers take advantage of the unique ScyllaDB architecture to deliver high performance and low latencies. Join this talk to learn more about our shard-aware drivers, their features, and best practices for working with them. The presentation will go over the new features added in 2023 as well as our plans for 2024, including our work on the Rust Driver and how ScyllaDB Drivers will support tablets.
Size: 4.05 MB
Language: en
Added: Jun 19, 2024
Slides: 28 pages
Slide Content
What’s New in ScyllaDB Drivers Piotr Grabowski, Software Team Lead at ScyllaDB
Piotr Grabowski Software Team Leader at ScyllaDB responsible for all ScyllaDB drivers, ScyllaDB Kafka Connectors (ScyllaDB Sink Connector and ScyllaDB CDC Source Connector) Joined ScyllaDB 3 years ago Your photo goes here, smile :)
Drivers 101 ScyllaDB Rust Driver Tablet Support Presentation Agenda
Drivers 101
Drivers 101 Drivers are libraries for different programming languages to connect to ScyllaDB and execute queries Cassandra drivers work out-of-the-box with ScyllaDB For optimal performance and additional features we highly recommend ScyllaDB’s drivers Some of ScyllaDB drivers are forks of Cassandra Drivers Some of ScyllaDB drivers were started from scratch by us (ScyllaDB Rust Driver)
ScyllaDB Drivers Shard aware: sending the query to a correct shard Optimized support for ScyllaDB CDC LWT Optimization: consistently prefer a single replica when executing a LWT query to avoid Paxos conflicts Tablet support Coming soon
Basic Best Practices Use prepared statements Use paged queries (important for large SELECT statements) Use an appropriate retry policy for your workload Use Scylla Monitoring to observe your application “Scylla CQL” dashboard
ScyllaDB Rust Driver The idea was born during a hackathon in 2020 Over the almost last 4 years we continued the development Uses Tokio framework The driver is now mature, supporting many advanced features: Shard awareness Asynchronous interface with support for large concurrency Compression All CQL types Speculative execution TLS support
ScyllaDB Rust Driver 2023 was quite eventful: 9 releases (0.8.0 to 0.11.1) Load Balancing refactor Serialization refactor Rack awareness Continued stabilization of API
ScyllaDB Rust Driver Plans for 2024: Tablet support Performance improvements Stabilizing API for 1.0 release
Tablet Support (coming soon)
Tablet Support in Drivers SELECT column FROM table WHERE partition_key = “R1250GS” hash(“R1250GS”) -> replica nodes
Tablet Support in Drivers
Tablet Support in Drivers Tablet A Table: users.events Start: 0xC00010FF End: 0xDECAFBAD Replicas: Node A shard 3, node B shard 7 Tablet B Table: users.events Start: 0xFEEDC0DE End: 0xFFBADD11 Replicas: Node C shard 8, node D shard 2 …
Tablet Support in Drivers Tablet A Tablet B Tablet C …
Tablet Support in Drivers Tablet A Tablet B ?
Tablet Support in Drivers Tablet A Tablet B ?
Tablet Support in Drivers Tablet A Tablet B ?
Tablet Support in Drivers Tablet A Tablet B Tablet C
Tablet Support in Drivers Tablet A Tablet B Tablet C
Tablet Support in Drivers Tablet A Tablet B Tablet C
Tablet Support in Drivers Tablet A Tablet B Tablet C