Home / Companies / ScyllaDB / Blog / Post Details
Content Deep Dive

Inside ScyllaDB Rust Driver 1.0: A Fully Async Shard-Aware CQL Driver Using Tokio

Blog post from ScyllaDB

Post Details
Company
Date Published
Author
Wojciech Przytuła
Word Count
3,576
Language
English
Hacker News Points
-
Summary

The ScyllaDB Rust Driver 1.0 is a fully asynchronous, shard-aware CQL driver, developed using the Tokio framework, that brings significant enhancements over its predecessors. Originally conceived during a 2021 hackathon, this driver was crafted to offer a native Rust implementation compatible with Apache Cassandra, while incorporating ScyllaDB-specific optimizations. The 1.0 release emphasizes improved error handling, a refined module structure, and the removal of unstable dependencies from the public API for better stability and maintainability. New features include support for Rustls for TLS connections, offering users more flexibility and reducing dependency on system libraries like OpenSSL. The design has also focused on better performance metrics handling, with opt-in features to prevent unnecessary resource usage. The driver introduces changes to enhance API stability, better ecosystem compatibility, and support for multiple dependency versions simultaneously. The new release also marks significant improvements in serialization and deserialization processes, query paging, and the introduction of a lock-free metric collection approach, all aimed at enhancing performance and user experience. Looking forward, the team plans further optimizations and encourages community engagement to shape the driver's future development.