System requirements and recommendations
This section provides recommendations for deploying YDB.
The number of servers and disks is determined by the fault-tolerance requirements. For more information, see Topology.
A YDB server can only run on x86-64 processors with AVX2 instruction support: Intel Haswell (4th generation) and later, AMD EPYC and later.
The ARM architecture is currently not supported.
We recommend using error-correcting code (ECC) memory to protect against hardware failures.
A YDB server can run on servers with any disk type (HDD/SSD/NVMe). However, we recommend using SSD/NVMe disks for better performance.
For YDB to work efficiently, we recommend using physical (not virtual) disks larger than 800 GB as block devices.
The minimum disk size is 80 GB, otherwise the YDB node won't be able to use the device. Correct and uninterrupted operation with minimum-size disks is not guaranteed. We recommend using such disks exclusively for informational purposes.
Configurations with disks less than 800 GB or any types of storage system virtualization cannot be used for production services or system performance testing.
YDB does not use a file system to store data and accesses disk volumes directly. Don't mount a file system or perform other operations with a partition that uses YDB. We also do not recommend sharing the block device with other processes because this can lead to significant performance degradation.
YDB health and performance weren't tested on any types of virtual or network storage devices.
When planning space, remember that YDB uses some disk space for its own internal needs. For example, on a medium-sized cluster of 8 nodes, you can expect approximately 100 GB to be consumed for a static group on the whole cluster. On a large cluster with >1500 nodes, this will be about 200 GB. There are also logs of 25.6 GB on each Pdisk and a system area on each Pdisk. Its size depends on the size of the Pdisk, but is no less than 0.2 GB.
A YDB server can be run on servers running a Linux operating system with kernel 4.19 and higher and libc 2.30 (Ubuntu 20.04, Debian 11, Fedora34).
MacOS and Windows operating systems are currently not supported.