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

ScyllaDB Developer Hackathon: Rust Driver

Blog post from ScyllaDB

Post Details
Company
Date Published
Author
Piotr Sarna
Word Count
1,352
Language
English
Hacker News Points
-
Summary

ScyllaDB's internal hackathon led to the development of a new shard-aware Rust driver for CQL, aiming to fulfill rigorous expectations such as asynchronicity, token-aware routing, and shard-aware routing specifically optimized for ScyllaDB. Existing Rust drivers like cdrs and cassandra-rs did not meet these standards, prompting the creation of an async CQL driver in pure Rust, free from unsafe code. The driver, built using Rust's async/await mechanism and the Tokio framework, supports establishing CQL sessions, executing queries, and fetching cluster topology information, enhancing performance by directing requests to the appropriate nodes and CPU cores. During the development, a bug in the murmur3 hashing algorithm was intentionally replicated to ensure compatibility with Apache Cassandra. Benchmarks indicate superior performance compared to other drivers like GoCQL and cdrs. As the project progresses, a team from the University of Warsaw will continue development, focusing on features like CQL authentication and TLS support, while the official roadmap outlines future enhancements such as CQL tracing and speculative execution.