This is an automated email from the ASF dual-hosted git repository.

brads pushed a commit to branch CASSANDRA-19640
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 132b5311d523c1404560e07864681842473ff1e3
Author: Brad Schoening <bscho...@gmail.com>
AuthorDate: Sat May 18 04:29:39 2024 -0400

    Added summary to storage-engine doc
---
 doc/modules/cassandra/pages/architecture/storage-engine.adoc | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/doc/modules/cassandra/pages/architecture/storage-engine.adoc 
b/doc/modules/cassandra/pages/architecture/storage-engine.adoc
index 51e6f6e9dc..abb31cbd60 100644
--- a/doc/modules/cassandra/pages/architecture/storage-engine.adoc
+++ b/doc/modules/cassandra/pages/architecture/storage-engine.adoc
@@ -1,6 +1,14 @@
 = Storage Engine
 
-{cassandra} processes data at several stages on the write path, starting with 
the immediate logging of a write and ending in with a write of data to disk:
+The {Cassandra} storage engine is optimized for high performance, 
write-oriented workloads.  It employs Log Structured Merge (LSM) trees, which 
utilize an append-only approach instead of the traditional relational database 
design with B-trees. This creates a write path free of read lookups and 
bottlenecks.
+
+While the write path is highly optimized, it comes with tradeoffs in terms of 
read performance and write amplification. To enhance read operations, Cassandra 
uses Bloom filters when accessing data from stables. Bloom filters are 
remarkably efficient, leading to a generally balanced performance for both 
reads and writes. 
+
+Compaction is a necessary background activity required by the ‘merge’ 
component of Log Structured Merge trees. Compaction creates write amplification 
when several small SSTables on disk are read, merged, updates and deletes 
processed, and a new ssstable is re-written. Every write of data in Cassandra 
is re-written multiple times, known as write amplification, and this adds 
background I/O to the database workload.
+
+The storage engine consists of memtables for in-memory data and immutable 
SSTables (Sorted String Tables) on disk.  Additionally, a write-ahead log 
(WAL), referred to as the commit log, ensures  resiliency for crash and 
transaction recovery.
+
+The stages in the write path:
 
 * Logging data in the commit log
 * Writing data to the memtable


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to