VK Cloud logo

Производительность дисков VK Cloud

В системе хранения данных на платформе VK Cloud используются диски различных типов:

  • HDD;
  • SSD;
  • High-IOPS SSD;
  • Low Latency NVME.

Подробнее — в статье Обзор сервиса VK Cloud Servers.

Для каждого типа диска гарантируются определенные характеристики производительности.

Значение задержки (latency) гарантируется только для дисков Low Latency NVME.
Для остальных типов дисков величина задержки является приблизительной и указана для справки.

Тип диска
(название в API)
Чтение, IOPS
мин.—макс.
Чтение,
IOPS/ГБ
Запись, IOPS
мин.—макс.
Запись,
IOPS/ГБ
Задержка, мс
макс.
HDD Ceph
(ceph-hdd)
300–2400
1
150–800
1
20
SSD Ceph
(ceph-ssd)
1000–16000
30
500–8000
15
3
SSD High-IOPS
(high-iops)
10000–45000
30
5000–30000
25
1
Low Latency NVME
(ef-nvme)
10000–75000
70
5000–50000
35
0,5

Производительность диска зависит от его объема. В некоторых случаях для увеличения скорости обработки данных достаточно увеличить размер диска.

HDD

Подробные характеристики производительности для сетевых HDD разного объема:

HDD 10 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
300
1
150
1
64K
300
9
150
5
1M
300
38
150
19
HDD 50 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
300
1
150
1
64K
300
9
150
5
1M
300
38
150
19
HDD 100 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
300
1
150
1
64K
300
9
150
5
1M
300
38
150
19
HDD 250 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
300
1
250
1
64K
300
9
250
8
1M
300
38
250
31
HDD 500 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
500
2
500
2
64K
500
16
500
16
1M
500
63
500
63
HDD 1000 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
1000
4
800
3
64K
1000
31
800
25
1M
1000
125
800
100
HDD 1500 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
1500
6
800
3
64K
1500
47
800
25
1M
1500
188
800
100
HDD 2000 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
2000
8
800
3
64K
2000
63
800
25
1M
2000
250
800
100

SSD

Подробные характеристики производительности для сетевых SSD разного объема:

SSD 10 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
1000
4
500
2
64K
1000
31
500
16
1M
1000
125
500
63
SSD 50 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
1500
6
750
3
64K
1500
47
750
23
1M
1500
188
750
94
SSD 100 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
3000
12
1500
6
64K
3000
94
1500
47
1M
3000
375
1500
188
SSD 250 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
7500
29
3750
15
64K
7500
234
3750
117
1M
7500
400
3750
400
SSD 500 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
15000
59
7500
29
64K
15000
400
7500
234
1M
15000
400
7500
400
SSD 1000 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
16000
63
8000
31
64K
16000
400
8000
250
1M
16000
400
8000
400
SSD 1500 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
16000
63
8000
31
64K
16000
400
8000
250
1M
16000
400
8000
400
SSD 2000 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
16000
63
8000
31
64K
16000
400
8000
250
1M
16000
400
8000
400

High-IOPS SSD

Подробные характеристики производительности для сетевых High-IOPS SSD разного объема:

High-IOPS SSD 10 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
10000
39
5000
20
64K
10000
313
5000
156
1M
10000
500
5000
500
High-IOPS SSD 50 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
10000
39
5000
20
64K
10000
313
5000
156
1M
10000
500
5000
500
High-IOPS SSD 100 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
10000
39
5000
20
64K
10000
313
5000
156
1M
10000
500
5000
500
High-IOPS SSD 250 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
10000
39
6250
24
64K
10000
313
6250
195
1M
10000
500
6250
500
High-IOPS SSD 500 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
15000
59
12500
49
64K
15000
469
12500
391
1M
15000
500
12500
500
High-IOPS SSD 1000 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
30000
117
25000
98
64K
30000
500
25000
500
1M
30000
500
25000
500
High-IOPS SSD 1500 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
45000
176
30000
117
64K
45000
500
30000
500
1M
45000
500
30000
500
High-IOPS SSD 2000 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
45000
176
30000
117
64K
45000
500
30000
500
1M
45000
500
30000
500

Low Latency NVME

Подробные характеристики производительности для локальных Low Latency NVME разного объема:

LL NVME 10 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
10000
39,0625
5000
19,53125
64K
10000
350
5000
200
1M
10000
500
5000
500
LL NVME 50 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
10000
39,0625
5000
19,53125
64K
10000
350
5000
200
1M
10000
500
5000
500
LL NVME 100 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
10000
39,0625
5000
19,53125
64K
10000
350
5000
250
1M
10000
500
5000
500
LL NVME 250 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
18750
73,2421875
8750
34,1796875
64K
18750
350
8750
250
1M
18750
585,9375
8750
500
LL NVME 500 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
37500
146,484375
17500
68,359375
64K
37500
585,9375
17500
500
1M
37500
1171,875
17500
546,875
LL NVME 1000 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
75000
292,96875
35000
136,71875
64K
75000
1171,875
35000
546,875
1M
75000
1200
35000
900
LL NVME 2000 ГБ
Размер блокаЧтение, IOPSЧтение, МБ/сЗапись, IOPSЗапись, МБ/с
4K
75000
292,96875
50000
195,3125
64K
75000
1171,875
50000
781,25
1M
75000
1200
50000
900

Тестирование производительности дисков

  1. Перед тестированием убедитесь, что выполняются условия:

    • диск является незагрузочным;
    • отсутствует нагрузка на диск со стороны операционной системы.

    При выполнении этих условий результаты измерений IOPS должны соответствовать следующим значениям:

    Тип тестированияРезультат, IOPS
    Чтение/запись блоками по 4 КБ в 32 потока
    Соответствует SLA
    Чтение/запись блоками по 8 КБ в 32 потока
    Не менее 75% от SLA
    Чтение/запись блоками по 16 КБ в 32 потока
    Не менее 50% от SLA
  2. Протестируйте диск.

    Чтобы измерить IOPS при чтении и записи, используйте утилиты DiskSpd или FIO.

    Результаты измерений, полученные с помощью DiskSpd и FIO, могут отличаться. DiskSpd — утилита, созданная и рекомендованная Microsoft для тестирования дисков в ОС Windows.

    DiskSpd

    1. Запустите командную строку от имени администратора.

    2. Создайте каталог temp и пустой файл размером не менее 10 ГБ:

      1md C:\temp
      2fsutil file createnew C:\temp\test.bin 10485760000
    3. Загрузите утилиту и распакуйте в нужный каталог.

    4. Перейдите в каталог amd64 распакованной утилиты.

    5. Выполните команду diskspd с параметрами, соответствующими типу теста:

      • -w — процент операций записи, -w0 для теста чтения, -w100 для теста записи;
      • -b — размер блока в байтах.

      Подробное описание всех параметров команды diskspd — в официальной документации.

      • Тест случайной записи блоками по 4 КБ:

        diskspd -Suw -b4K -o1 -t32 -r -w100 C:\temp\test.bin > C:\temp\random_write_results.txt
      • Тест случайного чтения блоками по 4 КБ:

        diskspd -Suw -b4K -o1 -t32 -r -w0 C:\temp\test.bin > C:\temp\random_read_results.txt

    FIO

    1. Скачайте и установите FIO.

    2. Выполните команду fio с параметрами, соответствующими типу теста:

      • --rwrandread или randwrite.
      • --bs — размер блока.
      • --filename — имя тестового файла.
      • --rate_iops — целевое значение IOPS (опционально). Используйте этот параметр, чтобы при тестировании целевого значения IOPS получить более точную величину задержки (latency).

      Подробное описание всех параметров команды — в документации FIO.

      • Тест случайной записи блоками по 4 КБ:

        Не указывайте в параметре filename имя файла с нужными данными! При тестах записи содержимое этого файла будет перезаписано.

        1fio `
        2   --name=randwrite `
        3   --iodepth=32 `
        4   --rw=randwrite `
        5   --bs=4k `
        6   --direct=1 `
        7   --size=10G `
        8   --numjobs=1 `
        9   --runtime=240 `
        10   --group_reporting `
        11   --filename=C:\Users\ADMIN\test
      • Тест случайного чтения блоками по 4 КБ:

        1fio `
        2   --name=randread `
        3   --iodepth=32 `
        4   --rw=randread `
        5   --bs=4k `
        6   --direct=1 `
        7   --size=10G `
        8   --numjobs=1 `
        9   --runtime=240 `
        10   --group_reporting `
        11   --filename=C:\Users\ADMIN\test
  3. Если при выполнении всех условий результаты теста не соответствуют указанным значениям, обратитесь в техническую поддержку.

После завершения тестирования и обработки результатов удалите тестовые файлы большого размера, чтобы освободить место на диске.