-
Notifications
You must be signed in to change notification settings - Fork 6.3k
SST File Manager
The SstFileManager
class manages the physical SST file disk space utilization and deletion. It can be configured by the user in Options::sst_file_manager
. This class, even though declared in a public header file, is not extensible and the only way to allocate a new instance is by calling NewSstFileManager()
. One SstFileManager
object can be shared by multiple DB instances. The limits configured in the SstFileManager
would be shared by all the DBs.
SstFileManager
provides various options to control and limit the disk space utilization of SST files in the DB. See Managing Disk Space Utilization for more details.
The other key functionality provided by SstFileManager
is slow deletion (a.k.a rate limited deletion). On SSDs, enabling slow deletion helps reduce the rate of TRIM commands to the SSD, thereby improving read/write latencies. See Slow Deletion for more details.
Contents
- RocksDB Wiki
- Overview
- RocksDB FAQ
- Terminology
- Requirements
- Contributors' Guide
- Release Methodology
- RocksDB Users and Use Cases
- RocksDB Public Communication and Information Channels
-
Basic Operations
- Iterator
- Prefix seek
- SeekForPrev
- Tailing Iterator
- Compaction Filter
- Multi Column Family Iterator (Experimental)
- Read-Modify-Write (Merge) Operator
- Column Families
- Creating and Ingesting SST files
- Single Delete
- Low Priority Write
- Time to Live (TTL) Support
- Transactions
- Snapshot
- DeleteRange
- Atomic flush
- Read-only and Secondary instances
- Approximate Size
- User-defined Timestamp
- Wide Columns
- BlobDB
- Online Verification
- Options
- MemTable
- Journal
- Cache
- Write Buffer Manager
- Compaction
- SST File Formats
- IO
- Compression
- Full File Checksum and Checksum Handoff
- Background Error Handling
- Huge Page TLB Support
- Tiered Storage (Experimental)
- Logging and Monitoring
- Known Issues
- Troubleshooting Guide
- Tests
- Tools / Utilities
-
Implementation Details
- Delete Stale Files
- Partitioned Index/Filters
- WritePrepared-Transactions
- WriteUnprepared-Transactions
- How we keep track of live SST files
- How we index SST
- Merge Operator Implementation
- RocksDB Repairer
- Write Batch With Index
- Two Phase Commit
- Iterator's Implementation
- Simulation Cache
- [To Be Deprecated] Persistent Read Cache
- DeleteRange Implementation
- unordered_write
- Extending RocksDB
- RocksJava
- Lua
- Performance
- Projects Being Developed
- Misc