After implementing both APIs — CQL and DynamoDB — we, the Scylla developers, are in a unique position to be able to provide an unbiased technical comparison between the two APIs. The goal of this post is to explain some of the more interesting differences between the two APIs, and how these differences affect users and implementers of these APIs.
This blog post is based on a talk I gave last month at the third annual Scylla Summit in San Francisco. It explains how Scylla ensures that ingestion of data proceeds as quickly as possible, but not quicker. It looks into the existing flow-control mechanism for tables without materialized views, and into the new mechanism for tables with materialized views, which is introduced in Scylla Open Source 3.0. Introduction In this post we look into ingestion of data into a Scylla cluster. What happens when we make a large volume of update (write) requests? We would like the ingestion to […]
This is the second post in a series of four about the different compaction strategies available in Scylla. In the previous post, we introduced the Size-Tiered compaction strategy (STCS) and discussed its most significant drawback – its disk-space waste, a.k.a. space amplification. In this post, we will look at Leveled Compaction Strategy (LCS), the first alternative compaction strategy designed to solve the space amplification problem of STCS, and show that it does solve that problem, but unfortunately introduces a new problem – write amplification. The next post in this series will introduce a new compaction strategy, Hybrid Compaction Strategy, which […]
This is the first post in a series of four about the different compaction strategies available in Scylla. The series will look at the good and the bad properties of each compaction strategy, and how to choose the best compaction strategy for your workload. This first post will focus on Scylla’s default compaction strategy, size-tiered compaction strategy.
Scylla 2.0’s New Feature in-depth: Heat Weighted Load Balancing With time, a Scylla cluster adapts to an application’s behavior. Given a steady read-mostly workload, after an initial warm-up period, all nodes will have their caches populated with a working set, and the workload will see a certain cache hit rate and enjoy a certain performance level (throughput and latency).
The developers of Scylla are working hard so that Scylla will not only have unparalleled performance (see our benchmarks) and reliability, but also have the features that our users want or expect for compatibility with the latest version of Apache Cassandra. The latest of these new features is Materialized Views, which will be an experimental feature in the upcoming Scylla release 2.0. Because this feature is experimental, users are invited to try it in non-production environments. The initial implementation has limitations which are discussed at the end of this blog and will be addressed in later versions of Scylla. The […]
We are excited to be hosting our first Scylla Summit on September 6th in San Jose. Many topics will be covered, including materialized views.
A year ago, we reported (see Researching the Future of the Cloud) that ScyllaDB and eight other industrial and academic partners started the MIKELANGELO research project. MIKELANGELO is a three-year research project sponsored by the European Commission’s Horizon 2020 program. The goal of MIKELANGELO is to make the cloud more useful for a wider range of applications, and in particular make it easier and faster to run high-performance computing (HPC) and I/O-intensive applications in the cloud.