-
Notifications
You must be signed in to change notification settings - Fork 6.3k
Platform Requirements
We detail the minimum requirements for compiling RocksDB and optionally RocksJava, and running RocksJava binaries supplied via Maven Central.
- Java: OpenJDK 1.7+ (required only for RocksJava)
- Tools:
- curl (recommended; required only for RocksJava)
- Libraries:
- Architecture: x86 / x86_64 / arm64 / ppc64le / s390x
- C/C++ Compiler: GCC 4.8+ or Clang
- Tools:
- GNU Make or CMake 3.14.5+
- Architecture: x86_64 / arm64 (Apple Silicon)
- OS: macOS 10.12+
- C/C++ Compiler: Apple XCode Clang
- Tools:
- GNU Make or CMake 3.14.5+
- Architecture: x86_64
- OS: Windows 7+
- C/C++ Compiler: Microsoft Visual Studio 2015+
- Java: OpenJDK 1.7+ (required only for RocksJava)
- Tools:
- CMake 3.14.5+
The minimum requirements for running the official RocksJava binaries from Maven Central.
For all platforms the native component of the binaries is statically linked, and so requires very little. The Java component requires OpenJDK 1.7+.
The binaries are built using Docker containers on real hardware, you can find our Docker build containers here: https://github.com/evolvedbinary/docker-rocksjava
For Linux we provide binaries built for either GNU Lib C, or Musl based platforms (since RocksJava 6.5.2).
Architecture | glibc version (minimum) | muslc version (minimum) |
---|---|---|
x86 | 2.12 | 1.1.16 |
x86_64 | 2.12 | 1.1.16 |
aarch64 | 2.17 | 1.1.16 |
ppc64le | 2.17 | 1.1.16 |
s390x (z10) | 2.17 | 1.1.16 |
- Architecture: x86_64
- OS: macOS 10.12+
The Windows binaries are built on Windows Server 2012 with Visual Studio 2015.
- Architecture: x86_64
- OS: Windows 7+
- libc: Microsoft Visual C++ 2015 Redistributable (x64) - 14.0.24215
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