Apache Cassandra

  1. The Cassandra Storage Engine
    1. The Write Path
      1. Write Request Flow
        1. Client Request Processing
          1. Coordinator Node Selection
            1. Replica Node Identification
            2. The Commit Log
              1. Purpose and Structure
                1. Write-Ahead Logging
                  1. Crash Recovery
                    1. Commit Log Segments
                      1. Commit Log Archiving
                      2. The Memtable
                        1. In-Memory Storage
                          1. Data Structure
                            1. Flushing Triggers
                              1. Size Thresholds
                                1. Time Thresholds
                                  1. Manual Flushing
                                2. Flushing to SSTables
                                  1. Write-Ahead Process
                                    1. SSTable Creation
                                      1. Flush Process
                                      2. Write Acknowledgment
                                        1. Consistency Level Enforcement
                                          1. Response Coordination
                                        2. The Read Path
                                          1. Read Request Flow
                                            1. Client Request Processing
                                              1. Coordinator Node Selection
                                                1. Read Repair Process
                                                2. Row Cache
                                                  1. Purpose and Configuration
                                                    1. Cache Hit Optimization
                                                      1. Memory Management
                                                      2. Key Cache
                                                        1. Purpose and Configuration
                                                          1. Partition Key Caching
                                                            1. Performance Impact
                                                            2. Bloom Filter
                                                              1. False Positive Reduction
                                                                1. Memory Usage
                                                                  1. Filter Effectiveness
                                                                  2. Partition Index and Summary
                                                                    1. Index Structure
                                                                      1. Lookup Process
                                                                        1. Memory Footprint
                                                                        2. Reading from Memtable and SSTables
                                                                          1. Read Coordination
                                                                            1. Merging Results
                                                                              1. Timestamp Resolution
                                                                              2. Read Repair
                                                                                1. Background Read Repair
                                                                                  1. Blocking Read Repair
                                                                                    1. Repair Probability
                                                                                  2. SSTables
                                                                                    1. Immutability
                                                                                      1. Benefits of Immutable Files
                                                                                        1. Write-Once Semantics
                                                                                        2. Structure of an SSTable
                                                                                          1. Data File
                                                                                            1. Index File
                                                                                              1. Filter File
                                                                                                1. Summary File
                                                                                                  1. Statistics File
                                                                                                    1. Compression Information
                                                                                                      1. TOC File
                                                                                                      2. SSTable Versions
                                                                                                        1. Format Evolution
                                                                                                          1. Backward Compatibility
                                                                                                        2. Compaction
                                                                                                          1. Purpose of Compaction
                                                                                                            1. Space Reclamation
                                                                                                              1. Read Performance Optimization
                                                                                                                1. Tombstone Removal
                                                                                                                2. Compaction Strategies
                                                                                                                  1. SizeTieredCompactionStrategy
                                                                                                                    1. Algorithm Description
                                                                                                                      1. Use Cases
                                                                                                                        1. Configuration Options
                                                                                                                          1. Pros and Cons
                                                                                                                          2. LeveledCompactionStrategy
                                                                                                                            1. Algorithm Description
                                                                                                                              1. Use Cases
                                                                                                                                1. Configuration Options
                                                                                                                                  1. Pros and Cons
                                                                                                                                  2. TimeWindowCompactionStrategy
                                                                                                                                    1. Algorithm Description
                                                                                                                                      1. Use Cases
                                                                                                                                        1. Configuration Options
                                                                                                                                          1. Pros and Cons
                                                                                                                                          2. DateTieredCompactionStrategy
                                                                                                                                            1. Algorithm Description
                                                                                                                                              1. Use Cases
                                                                                                                                                1. Configuration Options
                                                                                                                                                  1. Pros and Cons
                                                                                                                                                2. Compaction Process
                                                                                                                                                  1. Triggering Compaction
                                                                                                                                                    1. Compaction Throttling
                                                                                                                                                      1. Compaction Monitoring
                                                                                                                                                        1. Compaction Interruption
                                                                                                                                                        2. Compaction Tuning
                                                                                                                                                          1. Strategy Selection
                                                                                                                                                            1. Parameter Optimization
                                                                                                                                                              1. Performance Monitoring
                                                                                                                                                            2. Tombstones
                                                                                                                                                              1. The Deletion Process
                                                                                                                                                                1. Marking Data for Deletion
                                                                                                                                                                  1. Tombstone Creation
                                                                                                                                                                    1. Grace Period
                                                                                                                                                                    2. Types of Tombstones
                                                                                                                                                                      1. Row Tombstones
                                                                                                                                                                        1. Range Tombstones
                                                                                                                                                                          1. Cell Tombstones
                                                                                                                                                                            1. Collection Tombstones
                                                                                                                                                                            2. Impact on Performance
                                                                                                                                                                              1. Read Latency
                                                                                                                                                                                1. Storage Overhead
                                                                                                                                                                                  1. Compaction Overhead
                                                                                                                                                                                  2. Managing Tombstones
                                                                                                                                                                                    1. Tombstone Collection
                                                                                                                                                                                      1. Grace Period Tuning
                                                                                                                                                                                        1. Monitoring Tombstone Ratios