Расчет полезной емкости диска

Чтобы узнать, сколько данных может храниться в кластере Arenadata DB, необходимо вычислить доступную емкость диска на одном сегменте, а затем умножить на количество сегментов в кластере.

Следует начать с необработанной емкости физических дисков на хосте сегмента, которые доступны для хранилища данных (RawCapacity):

\[DiskSize * NumberOfDisks\]

Также необходимо учесть потери из-за форматирования файловой системы (примерно 10%) и уровень используемого RAID. Например, если используется RAID-10, расчет следующий:

\[(RawCapacity * 0.9) / 2 = FormattedDiskSpace\]

Для обеспечения оптимальной производительности не стоит полностью заполнять диски. Оптимальный уровень загрузки составляет около 70%. В итоге, необходимо рассчитать доступное место, учитывая оптимальный уровень загрузки, следующим образом:

\[FormattedDiskSpace * 0.7 = UsableDiskSpace\]

После форматирования массивов RAID-дисков и определения максимальной рекомендуемой емкости (UsableDiskSpace) необходимо вычислить доступное пространство для пользовательских данных (\(U\)). Использование зеркалирования сегментов для избыточности данных приводит к удвоению размера пользовательских данных (\(2 * U\)).

Архитектура ADB также требует, чтобы было зарезервировано место для рабочей области по активным запросам. Рабочее пространство должно составлять примерно одну треть от размера пользовательских данных (\(U / 3\)):

С зеркалами: \((2 * U) + U / 3 = UsableDiskSpace\)

Без зеркал: \(U + U / 3 = UsableDiskSpace\)

Данные рекомендации предполагают типичную аналитическую нагрузку. Большое число одновременно работающих запросов, а также запросы, требующие большого объема временных файлов, потребуют большего свободного пространства. Как правило, общая пропускная способность системы может быть увеличена путем уменьшения использования рабочего пространства за счет надлежащего управления рабочей нагрузкой. Кроме того, пространство для временного хранения и пространство пользователя могут быть изолированы друг от друга.