Граф знанийНастройки

Обновлено: 2 мая 2026 г. в 15:20

RAM и хранилище

средний

Как выбирать между RAM, SSD и HDD: рабочий набор, уровни хранения, хвостовые задержки и цена инфраструктуры.

Глава про RAM и хранилище важна тем, что показывает не просто разные носители, а резкие ступени в цене задержки, объёме и долговечности данных.

В реальной работе это помогает осмысленно проектировать горячий и холодный пути: понимать, что держать в памяти, что переносить на SSD или HDD и как это меняет API, кэши и пользовательский опыт.

В интервью и архитектурных обсуждениях материал делает разговор о хранении конкретным: через хвостовые задержки, долговечность данных и инфраструктурный бюджет.

Практическая польза главы

Иерархия памяти

Помогает проектировать горячий и холодный пути с учётом реальной разницы в задержках и стоимости.

Размещение данных

Учит, что держать в RAM, что на SSD или HDD, и как это влияет на API и пользовательский опыт.

Стабильность под нагрузкой

Показывает, как избежать деградации при росте рабочего набора и давлении на кэш.

Компромиссы на интервью

Усиливает объяснение компромиссов между скоростью доступа, долговечностью и бюджетом инфраструктуры.

Источник

Random-access memory

Устройство RAM и ключевые свойства оперативной памяти.

Перейти на сайт

RAM и — это не конкуренты, а разные ступени одной иерархии. RAM даёт минимальную для горячих данных, а SSD и HDD дают объём, цену и .

На практике решение почти всегда начинается с понимания и : насколько велик , какую роль играет , где система упирается в , а где — в .

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

RAM и хранилище: в чём разница

Как устроена RAM

  • DRAM организована в матрицы ячеек, к которым обращается контроллер памяти.
  • Доступ произвольный, но чтение в пределах одной строки обычно быстрее благодаря буферу строки.
  • Память требует периодического обновления ячеек, поэтому часть времени уходит на фоновые операции.
  • Процессор работает через кэши L1/L2/L3 и частично скрывает задержку доступа к RAM.

Как устроено хранилище

  • Данные читаются и записываются блоками и страницами.
  • У HDD к задержке добавляется механическое позиционирование, а SSD работает с NAND-страницами и блоками стирания.
  • Производительность зависит от очередей ввода-вывода, уровня параллелизма и размера блока.
  • Файловые системы и СУБД строят поверх этого журналы, индексы и стратегии компакции.

RAM

  • Энергозависима: данные исчезают при отключении питания.
  • Даёт минимальную задержку доступа и очень высокую скорость чтения и записи.
  • Лучше всего подходит для горячих данных, индексов и кэшей.
  • Заметно дороже хранилища в пересчёте на гигабайт.

Хранилище

  • Не теряет данные при отключении питания.
  • Доступ к данным на порядки медленнее, чем у RAM.
  • Даёт гораздо большую доступную ёмкость.
  • Хранение на гигабайт обходится заметно дешевле.

Динамическая визуализация: калькулятор объёма и уровней хранения

Упрощённый калькулятор показывает, как данные распределятся между RAM, SSD и HDD после учёта репликации и сжатия.

Дневной объём данных

600 ГБ/день

Срок хранения

30 дней

Репликация

x3

Сжатие

2.0x

Горячий слой данных

20%

Доля тёплого слоя на SSD

60%

Дополнительный объём индексов

35%

Результат калькулятора ёмкости

Общий объём данных

26.37 TB

RAM для горячего набора

3780 GB

Объём SSD

12.66 TB

Объём HDD

8.44 TB

Распределение по уровням хранения

Горячий слой 20% (5.27 ТБ)Тёплый слой / SSD 48%Холодный слой / HDD 32%

Покрытие горячего слоя RAM-контуром: 70%

Оценка ежемесячной стоимости: $13781 (~$165372/год).

Источник

Solid-state drive

Базовые характеристики SSD и причины низкой задержки относительно HDD.

Перейти на сайт

Динамическая визуализация: калькулятор задержек

Меняйте профиль нагрузки и смотрите, как доля попаданий в кэш, случайный ввод-вывод и глубина очереди меняют 95-й перцентиль (p95) для разных слоёв хранения.

Доля попаданий в кэш

85%

Случайный ввод-вывод

70%

Глубина очереди

16

Целевые операции ввода-вывода (IOPS)

50,000

Целевой уровень сервиса по 95-му перцентилю (p95)

15 ms

RAM

p95: 0.10 us

Только устройство: 0.10 us

Нагрузка: 0.20x

Укладывается в целевой уровень сервиса

NVMe SSD

p95: 46 us

Только устройство: 306 us

Нагрузка: 0.20x

Укладывается в целевой уровень сервиса

SATA SSD

p95: 313 us

Только устройство: 2.08 ms

Нагрузка: 0.71x

Укладывается в целевой уровень сервиса

HDD

p95: 1084.1 ms

Только устройство: 7227.2 ms

Нагрузка: 142.86x

Не укладывается в целевой уровень сервиса

Рекомендуемый основной слой: NVMe SSD

Текущие параметры укладываются в заданный целевой уровень сервиса при выбранном профиле кэш-хитов.

Где лучше подходит RAM, SSD и HDD

Выберите профиль нагрузки и баланс между производительностью и стоимостью. Калькулятор предложит, какой долей RAM, SSD и HDD разумно пользоваться.

Приоритет стоимости

45%

0 = сначала производительность, 100 = сначала стоимость

Годовой рост нагрузки

+35%

Целевой 99-й перцентиль (p99)

6 ms

Целевые IOPS

120,000

Рекомендуемая доля по уровням хранения

RAM40%
SSD55%
HDD / холодный слой5%

Прогноз по приёму данных: 540 ГБ/день -> общий объём контура: 23.73 ТБ

Риск: проверьте рост нагрузки и глубину очередей, чтобы не получить скрытую деградацию в пике.

Какой контур выбрать под эту нагрузку

  • Держать агрессивный RAM-кэш для горячих ключей и индексов.
  • Сделать SSD основным рабочим слоем для чтения и записи под целевой уровень сервиса.
  • Холодный слой будет небольшим: здесь важнее задержка, чем цена хранения.

Источник

Hard disk drive

Механический диск и особенности случайного и последовательного доступа.

Перейти на сайт

HDD и SSD: сравнение

Для API с большим числом ветвлений и транзакционных нагрузок случайный ввод-вывод почти всегда требует SSD. HDD остаётся ценным слоем для архивов, исторических выборок и долгого хранения, когда минимальная задержка не критична.

HDD

  • Механические компоненты и вращающиеся пластины.
  • Высокая задержка при случайном доступе из-за позиционирования головок.
  • Большая ёмкость и низкая цена за ТБ.
  • Подходит для холодных данных, бэкапов и архивов.

SSD

  • Флеш-память без движущихся частей.
  • Низкая задержка и высокий уровень операций ввода-вывода в секунду (IOPS) по сравнению с HDD.
  • Сильно лучше подходит для случайного доступа.
  • Ресурс записи ограничен, поэтому важны понятный жизненный цикл данных и мониторинг.

Частые ошибки

Держать весь набор данных только на SSD

Без многоуровневого хранения стоимость быстро растёт, а холодные данные продолжают занимать дорогой быстрый слой.

Игнорировать рабочий набор

Если горячий рабочий набор не помещается в RAM, 95-й и 99-й перцентили быстро деградируют.

Смотреть только на среднюю задержку

Для хранилища важны хвосты распределения: 95-й и 99-й перцентили (p95, p99) и поведение системы при росте очередей.

Не управлять жизненным циклом данных

Без автоматического перевода данных из RAM на SSD, а затем на HDD система теряет предсказуемость по цене и задержке.

Практические рекомендации

Многоуровневое хранение по профилю доступа

Горячие ключи и индексы держите в RAM, рабочий слой — на SSD, архив и длинный хвост — на HDD или в объектном хранилище.

Планирование ёмкости с запасом

Сразу учитывайте репликацию, сжатие, дополнительный объём индексов и годовой рост нагрузки.

Сначала целевой уровень сервиса, потом носитель

Сначала фиксируйте 99-й и 95-й перцентили (p99, p95) и целевое число операций ввода-вывода в секунду (IOPS), затем подбирайте RAM, SSD и HDD, и только потом оптимизируйте цену.

Наблюдаемость контура хранения

Следите за долей попаданий в кэш, глубиной очередей, задержкой вызова fsync и насыщением каждого слоя хранения.

Практический вывод

Выбор между RAM, SSD и HDD — это не бинарное решение, а проектирование многоуровневого контура хранения. Сначала фиксируйте целевой уровень сервиса и профиль нагрузки, затем планируйте объём, а уже после этого оптимизируйте стоимость через распределение данных по уровням хранения и понятный жизненный цикл.

Связанные главы

Чтобы отмечать прохождение, включи трекинг в Настройки