14.03.2025 15:10
Иногда очень не хочется возиться с установкой Oracle на хост, который однозначно не годится для базы данных, однако, руководство требует конкретных цифр, почему это дерьмо называете дерьмом. Решение достаточно простое - прогнать синтетику, в нашем случае - fio.
Конфиг, который эмулирует не очень нагруженную базу данных - ниже. Понятно, что синтетика и есть синтетика, тем не менее, общее представление о хранилке можно получить.

Код:
[global]
ioengine=libaio      # Использование асинхронного ввода-вывода
direct=1             # Прямой доступ к диску (без кэширования ОС)
size=10G             # Размер файла для тестирования (10 ГБ)
filename=/path/to/testfile  # Путь к тестовому файлу (замените на свой)
runtime=300          # Время выполнения теста (300 секунд)
ramp_time=10         # Время "разогрева" перед тестом (10 секунд)
numjobs=4            # Количество параллельных потоков
group_reporting=1    # Группировка результатов для всех потоков
[random-read]
bs=8k                # Размер блока (8 КБ, как в Oracle)
rw=randread          # Случайное чтение
iodepth=64           # Глубина очереди (32)
rwmixread=70         # 70% операций чтения
[random-write]
bs=8k                # Размер блока (8 КБ)
rw=randwrite         # Случайная запись
iodepth=64           # Глубина очереди (32)
rwmixread=70         # 70% операций чтения (30% записи)
14.03.2025 15:31
На всякий случай приведу пример вывода для моего домашнего компа 15-летней давности, где я поднял виртуалку для теста
Код:
random-read: (g=0): rw=randread, bs=(R) 8192B-8192B, (W) 8192B-8192B, (T) 8192B-8192B, ioengine=libaio, iodepth=64
...
random-write: (g=0): rw=randwrite, bs=(R) 8192B-8192B, (W) 8192B-8192B, (T) 8192B-8192B, ioengine=libaio, iodepth=64
...
fio-3.35
Starting 8 processes
random-read: Laying out IO file (1 file / 10240MiB)
Jobs: 8 (f=8): [r(4),w(4)][26.6%][r=107MiB/s,w=104MiB/s][r=13.7k,w=13.2k IOPS][eta 03m:16s]  
random-read: (groupid=0, jobs=8): err= 0: pid=6383: Fri Mar 14 15:18:15 2025
  read: IOPS=20.7k, BW=162MiB/s (169MB/s)(9696MiB/60017msec)
    slat (usec): min=2, max=543195, avg=68.02, stdev=1733.20
    clat (usec): min=48, max=1090.4k, avg=12310.68, stdev=24014.87
     lat (usec): min=56, max=1090.4k, avg=12378.70, stdev=24139.37
    clat percentiles (usec):
     |  1.00th=[  1004],  5.00th=[  1958], 10.00th=[  2540], 20.00th=[  3392],
     | 30.00th=[  4178], 40.00th=[  5014], 50.00th=[  5866], 60.00th=[  7046],
     | 70.00th=[  9110], 80.00th=[ 14615], 90.00th=[ 28967], 95.00th=[ 45876],
     | 99.00th=[ 81265], 99.50th=[108528], 99.90th=[291505], 99.95th=[541066],
     | 99.99th=[557843]
   bw (  KiB/s): min= 3712, max=365787, per=100.00%, avg=166115.84, stdev=21606.44, samples=476
   iops        : min=  464, max=45723, avg=20764.24, stdev=2700.81, samples=476
  write: IOPS=21.1k, BW=165MiB/s (173MB/s)(9893MiB/60018msec); 0 zone resets
    slat (usec): min=2, max=543563, avg=53.25, stdev=1165.72
    clat (usec): min=3, max=1091.4k, avg=12078.05, stdev=23777.57
     lat (usec): min=114, max=1091.4k, avg=12131.31, stdev=23814.02
    clat percentiles (usec):
     |  1.00th=[  1287],  5.00th=[  2212], 10.00th=[  2769], 20.00th=[  3523],
     | 30.00th=[  4228], 40.00th=[  4883], 50.00th=[  5604], 60.00th=[  6587],
     | 70.00th=[  8160], 80.00th=[ 12518], 90.00th=[ 31065], 95.00th=[ 47449],
     | 99.00th=[ 80217], 99.50th=[103285], 99.90th=[274727], 99.95th=[541066],
     | 99.99th=[549454]
   bw (  KiB/s): min= 3264, max=345872, per=100.00%, avg=169630.80, stdev=21307.03, samples=476
   iops        : min=  408, max=43234, avg=21203.76, stdev=2663.37, samples=476
  lat (usec)   : 4=0.01%, 50=0.01%, 100=0.01%, 250=0.02%, 500=0.16%
  lat (usec)   : 750=0.20%, 1000=0.33%
  lat (msec)   : 2=3.77%, 4=22.91%, 10=46.95%, 20=11.03%, 50=10.47%
  lat (msec)   : 100=3.61%, 250=0.46%, 500=0.04%, 750=0.07%, 1000=0.01%
  lat (msec)   : 2000=0.01%
  cpu          : usr=1.49%, sys=3.53%, ctx=567695, majf=0, minf=291
  IO depths    : 1=0.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=100.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.1%, >=64=0.0%
     issued rwts: total=1240890,1266082,0,0 short=0,0,0,0 dropped=0,0,0,0
     latency   : target=0, window=0, percentile=100.00%, depth=64

Run status group 0 (all jobs):
   READ: bw=162MiB/s (169MB/s), 162MiB/s-162MiB/s (169MB/s-169MB/s), io=9696MiB (10.2GB), run=60017-60017msec
  WRITE: bw=165MiB/s (173MB/s), 165MiB/s-165MiB/s (173MB/s-173MB/s), io=9893MiB (10.4GB), run=60018-60018msec

Disk stats (read/write):
    dm-0: ios=1536475/1566876, merge=0/0, ticks=15416935/15054332, in_queue=30471267, util=99.93%, aggrios=1536661/1566977, aggrmerge=0/10, aggrticks=15361246/15019793, aggrin_queue=30381044, aggrutil=80.31%
  vda: ios=1536661/1566977, merge=0/10, ticks=15361246/15019793, in_queue=30381044, util=80.31%
Часовой пояс GMT +3, время: 16:18.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.