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

Designing a Userspace Disk I/O Scheduler for Modern Datastores: the ScyllaDB example (Part 2)

Blog post from ScyllaDB

Post Details
Company
Date Published
Author
Glauber Costa
Word Count
4,036
Company Posts That Month
6
Language
English
Hacker News Points
-
Post removed?
No
Summary

In the conclusion of a two-part series, the article examines the Seastar I/O Scheduler used by ScyllaDB to manage disk I/O, focusing on its ability to provide predictable latencies, fairness, and balance among various priority classes. The Seastar scheduler employs a shared-nothing architecture, dividing global resources like I/O depth among shards, and utilizes I/O Queues to facilitate local parallelism and efficient resource allocation. By classifying requests into priority classes with assigned shares, ScyllaDB ensures balanced resource distribution, even under heavy workloads. The scheduler's design allows for dynamic adjustment of shares, maintaining low latencies and efficient disk usage. Future versions may include dynamic share adjustments and support for multiple disk arrays with separate schedulers, enhancing performance and scalability as core numbers increase. The article highlights that relocating the disk I/O scheduler to userspace within a thread-per-core model provides more stable and faster results, showcasing a significant advancement in scalable database performance.

Trends Found in this Post
Trend Post Mentions Total Month Mentions Posts Companies MoM
Real-time 2 106 53 25 -40%
Use This Data

Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.