A deep dive and comparison of Python drivers for Cassandra and Scylla
summary
Compares Python drivers for Cassandra and Scylla with concrete changes: a fork implements token->shard routing and opens one connection per core per node, detects Scylla via server options, and computes shard id locally; moving the shard-id computation into native code cuts its overhead by ~7x. Result: production shows 15–25% lower max latency, more open connections and slightly higher CPU, and an unexpected halve in required pod replicas; implementation is optimistic until Scylla 4.3’s deterministic source-port algorithm.
AI-written summary · about
chapters (7)
- 0:00Introduction and speaker intro
- 2:34Cassandra and Scylla ring architectures
- 7:47Token-aware client routing
- 11:41Extending to Scylla shard awareness
- 13:53Python driver implementation details
- 19:32Performance results and expectations
- 24:25Q&A and closing remarks
related talks
41mPerformance & Fault Tolerance: Building a Modern Database
44mScyllaDB where Cassandra meets Redis!
35mHow to Save on Scaling by Moving from Cassandra to Scylla DB
01h 02mBreak Out of Redis
25mCache? Where we're going, we don't need cache!
21mDatabase Drivers: Performance Perspectives
40mLatency, Throughput & Fault Tolerance: Building a Modern Database
26mDesigning a Query Queue for ScyllaDB
