Monday, 11 October 2010
Что такое Hadoop?
Всегда думал, что это некий децентрализованный сторадж. Оказалось, нет - это целый комплект утилит и технологий (децентрализованная файловая система, распределенное ключ-ориентированное хранилище, реализация mapreduce, софт по контролю за распределенным инсталляциями и многое другое) для high load / high performance систем: http://hadoop.apache.org/#What+Is+Hadoop%3F
Sunday, 10 October 2010
Настройка iSCSI initiator на Debian 6 Squeeze
Теперь попробуем поставить инициатор и подключиться к нашему устройству:
И добавляем в самый верх конфига:
Следующее (это есть данные для аутентификации на таргете, аутентификацию таргета мы не осуществляем):
И чуточку ниже корректируем настройки запуска для автозапуска (не забывая убрать node.startup = manual):
Подгружаем клиент-демон:
Все, теперь пробуем сделать discovery, чтобы обнаружить наш экспортированный SSD (-p задает IP адрес портала, -m задает тип операции):
Выполняем логин:
После этого в системе появится еще одно блочное устройство:
После этого я с легкостью (как будто это мой диск в компьютере) запустил команду fdisk, создал логический раздел на удаленном устройстве и создал на нем файловую систему.
Для того, чтобы отключить его делаем logout:
О настройке серверной части читайте в другой статье: http://phpsuxx.blogspot.com/2010/10/iscsi-target-debian-5-lenny-x8664.html
Источник initiator: http://wiki.debian.org/SAN/iSCSI/open-iscsi
apt-get install -y open-iscsi
И добавляем в самый верх конфига:
vi /etc/iscsi/iscsid.conf
Следующее (это есть данные для аутентификации на таргете, аутентификацию таргета мы не осуществляем):
discovery.sendtargets.auth.authmethod = CHAP
discovery.sendtargets.auth.username = joe
discovery.sendtargets.auth.password = YourSecurePwd1
node.session.auth.authmethod = CHAP
node.session.auth.username = joe
node.session.auth.password = YourSecurePwd1
И чуточку ниже корректируем настройки запуска для автозапуска (не забывая убрать node.startup = manual):
node.startup = automatic
Подгружаем клиент-демон:
/etc/init.d/open-iscsi start
Все, теперь пробуем сделать discovery, чтобы обнаружить наш экспортированный SSD (-p задает IP адрес портала, -m задает тип операции):
iscsiadm -m discovery -t st -p 127.0.0.1
127.0.0.1:3260,1 iqn.2012-03.ru.fastvps.storage:storage1
xx.yy.zz.kk:3260,1 iqn.2012-03.ru.fastvps.storage:storage1
Выполняем логин:
iscsiadm -m node --targetname "iqn.2012-03.ru.fastvps.storage:storage1" --portal "127.0.0.1:3260" --login
Logging in to [iface: default, target: iqn.2012-03.ru.fastvps.storage:storage1, portal: 127.0.0.1,3260]
Login to [iface: default, target: iqn.2012-03.ru.fastvps.storage:storage1, portal: 127.0.0.1,3260]: successful
После этого в системе появится еще одно блочное устройство:
dmesg | tail -15
[62342.477969] Loading iSCSI transport class v2.0-870.
[62342.484054] iscsi: registered transport (tcp)
[62342.500410] iscsi: registered transport (iser)
[62424.188944] scsi9 : iSCSI Initiator over TCP/IP
[62425.189703] scsi 9:0:0:0: Direct-Access IET VIRTUAL-DISK 0 PQ: 0 ANSI: 4
[62425.189820] sd 9:0:0:0: Attached scsi generic sg11 type 0
[62425.189913] sd 9:0:0:0: [sdd] Very big device. Trying to use READ CAPACITY(16).
[62425.189952] sd 9:0:0:0: [sdd] 23404216320 512-byte logical blocks: (11.9 TB/10.8 TiB)
[62425.189992] sd 9:0:0:0: [sdd] Write Protect is off
[62425.189993] sd 9:0:0:0: [sdd] Mode Sense: 77 00 00 08
[62425.190063] sd 9:0:0:0: [sdd] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[62425.190165] sd 9:0:0:0: [sdd] Very big device. Trying to use READ CAPACITY(16).
[62425.190292] sdd: unknown partition table
[62425.190696] sd 9:0:0:0: [sdd] Very big device. Trying to use READ CAPACITY(16).
[62425.190885] sd 9:0:0:0: [sdd] Attached SCSI disk
После этого я с легкостью (как будто это мой диск в компьютере) запустил команду fdisk, создал логический раздел на удаленном устройстве и создал на нем файловую систему.
Для того, чтобы отключить его делаем logout:
iscsiadm -m node --targetname "iqn.2012-03.ru.fastvps.storage:storage1" --portal "127.0.0.1:3260" --logout
Logging out of session [sid: 1, target: iqn.2012-03.ru.fastvps.storage:storage1, portal: 127.0.0.1,3260]
Logout of [sid: 1, target: iqn.2012-03.ru.fastvps.storage:storage1, portal: 127.0.0.1,3260]: successful
О настройке серверной части читайте в другой статье: http://phpsuxx.blogspot.com/2010/10/iscsi-target-debian-5-lenny-x8664.html
Источник initiator: http://wiki.debian.org/SAN/iSCSI/open-iscsi
Saturday, 9 October 2010
Настройка iSCSI target на Debian 6 Squeeze x86_64
Что такое iSCSI и зачем оно нужно: http://ru.wikipedia.org/wiki/ISCSI
Ставим пакет служебных программ, а также модуль ядра (собирается автоматически при обновлении ядра):
Активируем запуск iSCSI target:
Указываем там следующее:
Я планирую экспортировать по iSCSI блочное устройство /dev/sdc, так что
Теперь открываем главный конфиг-файл:
Теперь в самый низ добавляем следующие строки:
Для начала стоит объяснить, что запись "iqn.2012-03.ru.fastvps.storage" представляет собой уникальное имя iSCSI target. Как можно заметить, в самом начале всегда "iqn", потом год и месяц создания домена и некий сабдомен (допустим, поддомен в домене всех сторадж-серверов), записанный в обратном формате. storage1 просто является дополнительным идентификатором.
IncomingUser предназначен для аутентификации iSCSI инициатора. А OutgoingUser предназначен для аутентификации самого сервера (target) на инициатор. Пароли при этом должны быть ровно 12 символов.
На последней строке идентифицируется устройство, которое мы экспортируем и режим (кроме fileio доступен blockio - прямой ввод/вывод с избежанием страничного кэша, подробнее об их отличиях можно прочесть man ietd.conf).
Все, запускаем:
Убеждаемся, что модуль ядоа зацепился:
А также смотрим dmesg:
Как видим, наш демон забиндился на 3260й порт:
О настройке инициатора (клиентской части) читайте в другом посте: http://phpsuxx.blogspot.com/2010/10/iscsi-initiator-debian-5-lenny.html
Источник target: http://wiki.debian.org/iSCSI/iscsitarget
Ставим пакет служебных программ, а также модуль ядра (собирается автоматически при обновлении ядра):
apt-get install -y iscsitarget iscsitarget-dkms
Активируем запуск iSCSI target:
vi /etc/default/iscsitarget
Указываем там следующее:
ISCSITARGET_ENABLE=true
Я планирую экспортировать по iSCSI блочное устройство /dev/sdc, так что
Теперь открываем главный конфиг-файл:
vi /etc/iet/ietd.conf
Теперь в самый низ добавляем следующие строки:
Target iqn.2012-03.ru.fastvps.storage:storage1
IncomingUser joe YourSecurePwd1
OutgoingUser jim YourSecurePwd2
Lun 0 Path=/dev/sdc,Type=fileio
Для начала стоит объяснить, что запись "iqn.2012-03.ru.fastvps.storage" представляет собой уникальное имя iSCSI target. Как можно заметить, в самом начале всегда "iqn", потом год и месяц создания домена и некий сабдомен (допустим, поддомен в домене всех сторадж-серверов), записанный в обратном формате. storage1 просто является дополнительным идентификатором.
IncomingUser предназначен для аутентификации iSCSI инициатора. А OutgoingUser предназначен для аутентификации самого сервера (target) на инициатор. Пароли при этом должны быть ровно 12 символов.
На последней строке идентифицируется устройство, которое мы экспортируем и режим (кроме fileio доступен blockio - прямой ввод/вывод с избежанием страничного кэша, подробнее об их отличиях можно прочесть man ietd.conf).
Все, запускаем:
/etc/init.d/iscsitarget start
Убеждаемся, что модуль ядоа зацепился:
lsmod|grep iscsi_trgt
iscsi_trgt 69353 4
А также смотрим dmesg:
dmesg|tail -4
[61850.263686] iSCSI Enterprise Target Software - version 1.4.20.2
[61850.263746] iscsi_trgt: Registered io type fileio
[61850.263748] iscsi_trgt: Registered io type blockio
[61850.263749] iscsi_trgt: Registered io type nullio
Как видим, наш демон забиндился на 3260й порт:
netstat -lnpt | grep 3260
tcp 0 0 0.0.0.0:3260 0.0.0.0:* LISTEN 7169/ietd
tcp6 0 0 :::3260 :::* LISTEN 7169/ietd
О настройке инициатора (клиентской части) читайте в другом посте: http://phpsuxx.blogspot.com/2010/10/iscsi-initiator-debian-5-lenny.html
Источник target: http://wiki.debian.org/iSCSI/iscsitarget
FreeBSD 8.1 и ZFS: cannot remove ad14: only inactive hot spares or cache devices can be removed
Имеем вот такой конфиг с 1 slog устройством:
И при попытке удалить slog устройство ad14 получаем:
Судя по рассылке ZFS, форуму OpenSolaris и форуму FreeBSD это баг и единственный вариант избавится от slog`а - это удалить массив.
P.S. log устройства во FreeBSD 8.1 использовать КРАЙНЕ не рекомендуется. Кроме невозможности их удаления есть еще одна неприятность - если log-устройство было создано не как mirror, а как одиночное устройство, то в случае его отказа становится недоступным весь пул с данными и как это исправлять у меня информации нету.
zpool status
pool: backup
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
backup ONLINE 0 0 0
raidz1 ONLINE 0 0 0
ad4 ONLINE 0 0 0
ad6 ONLINE 0 0 0
ad10 ONLINE 0 0 0
logs ONLINE 0 0 0
ad14 ONLINE 0 0 0
errors: No known data errors
И при попытке удалить slog устройство ad14 получаем:
zpool remove backup ad14
cannot remove ad14: only inactive hot spares or cache devices can be removed
Судя по рассылке ZFS, форуму OpenSolaris и форуму FreeBSD это баг и единственный вариант избавится от slog`а - это удалить массив.
P.S. log устройства во FreeBSD 8.1 использовать КРАЙНЕ не рекомендуется. Кроме невозможности их удаления есть еще одна неприятность - если log-устройство было создано не как mirror, а как одиночное устройство, то в случае его отказа становится недоступным весь пул с данными и как это исправлять у меня информации нету.
Механизмы кэширования ZFS: ARC и L2ARC
Я думаю, многим известно, что ZFS отличается очень большим числом крайне интересных функций. Кэширование не стало исключением - тут у ZFS есть в арсенале целых два механизма: ARC и L2ARC.
Почему они так странно называются, ARC? Эти кэши получили свое название в честь алгоритма кэширования, на котором они основаны, алгоритма ARC, кроме него также широко распространен LRU, но ARC считается более производительным.
ARC - это кэш ZFS, расположенный в оперативной памяти, L2ARC - его продолжение (Layer 2, второй уровень), но на более медленном, чем оперативная память носителе (но при этом обладающим бОльшим объемом) и в то же время, более быстром, чем диски самого массива. Обычно, в роли носителей для L2ARC используются SSD диски, так как их скорости чтения/записи с легкостью превосходят последние модели SAS.
Говоря об абстрактных вещах, таких как кэши, тем не менее сложно не оглядываться в практическую сторону - да, SSD диски хороши при чтении данных, это они делают ну очень быстро, но пи этом далеко не у всех SSD носителей хорошо обстоят дела со скоростями записи. Не станет ли при этом запись в кэш тормозить непосредственно чтение? Нет, не будет, запись в кэши в ZFS происходит асинхронно и никак не может повлиять на чтение с ZFS.
Как же это работает на деле?
Наполнение кэша: при чтении, данные, к которым идет наиболее частый доступ, помещаются в ARC кэш, со временем он переполняется и данные из ARC кэша вытесняются в L2ARC кэш до лучших времен и лишь после этого удаляются совсем.
Использование кэша: при попытке прочесть данные с диска, ZFS сначала ищет их в оперативной памяти (ARC), если там необходимые данные отсутствуют, то выполняется попытка найти их в L2ARC кэше и лишь в случае неудачи на этом шаге будет выполнено реальное чтение с физического устройства.
Многие могут заметить - а не проще ли создать огромный ARC кэш, ведь оперативная память крайне дешева? Нет, не проще, крайне проблематично поставить на сервер, скажем, 256 гигабайт памяти под кэш массива тб на 150 :)
Как было сказано выше, в первую очередь эти кэши используется при чтении и как раз при нем дают максимальный эффект, но как быть при записи? Ведь нельзя долго складировать данные в памяти, иначе это чревато их потерей при потере питания (а вот для ZFS это абсолютно безопасно - она не пострадает, просто данные не будут записаны и все, консистеность же файловой системы будет вне угрозы). На этот случай (для ускорения операций записи) в ZFS также имеется технология кэширования (но не данных, а транзакций), которая именуется ZIL. Но об этом я напишу в отдельном посте.
А вот небольшая заметка про реальное увеличение скорости за счет использования L2ARC: http://www.zfsbuild.com/2010/07/30/testing-the-l2arc/ и вот заметка про увеличение скорости работы MySQL: http://blogs.sun.com/cs/entry/improving_mysql_innodb_zfs_read
Источники: http://blogs.sun.com/brendan/entry/test и http://www.zfsbuild.com/2010/04/15/explanation-of-arc-and-l2arc/
Почему они так странно называются, ARC? Эти кэши получили свое название в честь алгоритма кэширования, на котором они основаны, алгоритма ARC, кроме него также широко распространен LRU, но ARC считается более производительным.
ARC - это кэш ZFS, расположенный в оперативной памяти, L2ARC - его продолжение (Layer 2, второй уровень), но на более медленном, чем оперативная память носителе (но при этом обладающим бОльшим объемом) и в то же время, более быстром, чем диски самого массива. Обычно, в роли носителей для L2ARC используются SSD диски, так как их скорости чтения/записи с легкостью превосходят последние модели SAS.
Говоря об абстрактных вещах, таких как кэши, тем не менее сложно не оглядываться в практическую сторону - да, SSD диски хороши при чтении данных, это они делают ну очень быстро, но пи этом далеко не у всех SSD носителей хорошо обстоят дела со скоростями записи. Не станет ли при этом запись в кэш тормозить непосредственно чтение? Нет, не будет, запись в кэши в ZFS происходит асинхронно и никак не может повлиять на чтение с ZFS.
Как же это работает на деле?
Наполнение кэша: при чтении, данные, к которым идет наиболее частый доступ, помещаются в ARC кэш, со временем он переполняется и данные из ARC кэша вытесняются в L2ARC кэш до лучших времен и лишь после этого удаляются совсем.
Использование кэша: при попытке прочесть данные с диска, ZFS сначала ищет их в оперативной памяти (ARC), если там необходимые данные отсутствуют, то выполняется попытка найти их в L2ARC кэше и лишь в случае неудачи на этом шаге будет выполнено реальное чтение с физического устройства.
Многие могут заметить - а не проще ли создать огромный ARC кэш, ведь оперативная память крайне дешева? Нет, не проще, крайне проблематично поставить на сервер, скажем, 256 гигабайт памяти под кэш массива тб на 150 :)
Как было сказано выше, в первую очередь эти кэши используется при чтении и как раз при нем дают максимальный эффект, но как быть при записи? Ведь нельзя долго складировать данные в памяти, иначе это чревато их потерей при потере питания (а вот для ZFS это абсолютно безопасно - она не пострадает, просто данные не будут записаны и все, консистеность же файловой системы будет вне угрозы). На этот случай (для ускорения операций записи) в ZFS также имеется технология кэширования (но не данных, а транзакций), которая именуется ZIL. Но об этом я напишу в отдельном посте.
А вот небольшая заметка про реальное увеличение скорости за счет использования L2ARC: http://www.zfsbuild.com/2010/07/30/testing-the-l2arc/ и вот заметка про увеличение скорости работы MySQL: http://blogs.sun.com/cs/entry/improving_mysql_innodb_zfs_read
Источники: http://blogs.sun.com/brendan/entry/test и http://www.zfsbuild.com/2010/04/15/explanation-of-arc-and-l2arc/
Бойтесь данайцев дары приносящих
Всегда скептически относился к электронным сервисам РЖД, чуя подвох, и всегда забирал реальные (не электронные) билеты за пару дней до поездки, как оказалось, не зря - у РЖД попросту нету инструкций, как быть, если по каким-то причинам откажет оборудование по выдаче взамен электронных тех самых реальных билетов: http://glipatova.livejournal.com/29523.html
Friday, 8 October 2010
FreeBSD: No manual entry for ls
Как бороться с такой напастью? Нужно поставить man страницы. Делается это не совсем тривиально, читаем дальше.
Запускаем sysinstall:
Далее выбираем "Configure Do post-install configuration of FreeBSD", далее "Distributions Install additional distribution sets", далее ставим галочки на "man" и "info" и жмем "Ok". После этого в новом окошке появляется окошко выбора источника установки, выбираем "2 FTP Install from an FTP server", далее выбираем какой-нибудь зеркало из блока "Primary" и нажимаем ок, потом подтверждаем наличие сетевого соединения. Все, ждем пока маны будут установлены и выходим из sysinstall.
Более подробно и с картинками: http://www.cyberciti.biz/tips/howto-install-man-info-pages-and-other-package-set.html
Запускаем sysinstall:
sysinstall
Далее выбираем "Configure Do post-install configuration of FreeBSD", далее "Distributions Install additional distribution sets", далее ставим галочки на "man" и "info" и жмем "Ok". После этого в новом окошке появляется окошко выбора источника установки, выбираем "2 FTP Install from an FTP server", далее выбираем какой-нибудь зеркало из блока "Primary" и нажимаем ок, потом подтверждаем наличие сетевого соединения. Все, ждем пока маны будут установлены и выходим из sysinstall.
Более подробно и с картинками: http://www.cyberciti.biz/tips/howto-install-man-info-pages-and-other-package-set.html
Установка утилиты arcconf для Adaptec 5405 на Debian 5 Lenny Linux
Вполне возможна, даже есть официальные (но минимально протестированные!) сборки StorMan для Debian/Ubuntu: здесь.
Инструкцию по установке:
Отключаем stor agent и выключаем его автозапуск:
Также ставим библиотеку, необходимую для работы arcconf:
Пробуем запустить arcconf:
Инструкцию по установке:
cd /usr/src
wget http://download.adaptec.com/tmp0001/adaptec/asmdeb/asm_debian_x86_x64_v6_50_18570.tgz
tar -xf asm_debian_x86_x64_v6_50_18570.tgz
# 64 бита
dpkg -i storman_6.50-18570_amd64.deb
# 32 бита
dpkg -i storman_6.50-18570_i386.deb
Отключаем stor agent и выключаем его автозапуск:
/etc/init.d/stor_agent stop
update-rc.d -f stor_agent remove
Также ставим библиотеку, необходимую для работы arcconf:
apt-get install -y libstdc++5
Пробуем запустить arcconf:
/usr/StorMan/arcconf getversion 1
Controllers found: 1
Controller #1
==============
Firmware : 5.2-0 (17899)
Staged Firmware : 5.2-0 (17899)
BIOS : 5.2-0 (17899)
Driver : 1.1-5 (2461)
Boot Flash : 5.2-0 (17899)
Command completed successfully.
Возможно ли использование сторонних SSD носителей для подключения к Adaptec MaxIQ кэшу?
Да, если у Вас Adaptec контроллер Q серии (модели начального уровня стоят от $400).
Источник: база знаний Adaptec.
Источник: база знаний Adaptec.
Как получить доступ к сайту, пока DNS еще не обновились?
Если Вы используете Windows 2000 / XP, то необходимо блокнотом открыть файл:
И добавить там строку:
C:\WINDOWS\system32\drivers\etc\hosts
И добавить там строку:
new.ip.addr.es domain.ru
Как очистить DNS кэш в Windows?
ipconfig /flushdns
Что будет с данными, если вдруг откажет MaxIQ SSD кэш диск?
Ничего!
(с) http://www.adaptec.com/en-US/products/CloudComputing/MaxIQ/SSD-Cache-Performance/_resources/SSD_FAQs.htm?nc=/en-US/products/CloudComputing/MaxIQ/SSD-Cache-Performance/_resources/SSD_FAQs.htm
With MaxIQ, all the data gets first written to the RAID rotating media, protecting the data in case the SSD cache pool fails.
(с) http://www.adaptec.com/en-US/products/CloudComputing/MaxIQ/SSD-Cache-Performance/_resources/SSD_FAQs.htm?nc=/en-US/products/CloudComputing/MaxIQ/SSD-Cache-Performance/_resources/SSD_FAQs.htm
Измерение производительности дисковой подсистемы в Linux посредством утилиты fio
Давно ломал голову над вопросом объективного тестирования файловой системы, но никаких адекватных утилит для этого не попадалось. И вот, читая статью про IOPS, наткнулся упоминание утилиты fio. Официальный сайт утилиты находится по адресу: http://freshmeat.net/projects/fio
Как показал беглый осмотр репозиториев (как CentOS, таки Debian), утилиты там нету, поэтому будем собирать из исходников.
Ставим зависимости в случае CentOS:
Или в случае Debian:
Собираем:
В случае FreeBSD 8.1 установка чуть проще:
Все, утилита собрана и теперь ее можно запускать вот так:
Итак, теперь можно потестить свою дисковую подсистему и сравнить с эталонами (ряд значений есть в вики статье: http://en.wikipedia.org/wiki/IOPS).
Попробуем протестировать скорость случайного чтения:
Далее я провожу тесты для пары своих железок, для начала это массив: RAID-10 на Adaptec 5405 из 4x SAS 15k SEAGATE ST3300657SS.
В ответ будет выдано что-то примерно следующее (интересующее нас поле IOPS я выделил):
Если же изменить iodepth до 24 (опять же, это взято с вики), то результаты получатся чуть иные:
А вот тест на рандомную запись на RAID-10 SAS:
Далее тест чтения для одного SSD диска SuperTalent UltraDrive GX SSD STT_FTM28GX25H 128 Gb:
Если же изменить iodepth до 24:
Теперь тест на скорость рандомной записи тоже для SSD (обращаю внимание, данные на носителе при этом тесте будут уничтожены!):
Далее тест чтения для одного SSD диска Corsair CSSD-F12 (Corsair Force Series F120 - CSSD-F120GB2), firmware 1.1:
И тест записи на нем же:
Далее тесты на запись на SATA2 ST31500341AS 7200rpm (данные на диске при этом будут уничтожены!):
Опять же для SATA2 на чтение:
SATA2 на чтение, depth=24:
Программный RAID-1 из SATA дисков, рандомная запись:
Итого, резюмирую:
Более подробное описание параметров и типов теста можно найти в файле HOWTO, он лежит в папке рядом с бинариком.
Как показал беглый осмотр репозиториев (как CentOS, таки Debian), утилиты там нету, поэтому будем собирать из исходников.
Ставим зависимости в случае CentOS:
yum install -y make gcc libaio-devel
Или в случае Debian:
apt-get install -y gcc make libaio-dev
Собираем:
cd /usr/src
wget http://brick.kernel.dk/snaps/fio-2.0.6.tar.gz
tar -xf fio-2.0.6.tar.gz
cd fio-2.0.6
make
В случае FreeBSD 8.1 установка чуть проще:
cd /usr/ports/sysutils/fio
make install clean
rehash
Все, утилита собрана и теперь ее можно запускать вот так:
/usr/src/fio-2.0.6/fio
Итак, теперь можно потестить свою дисковую подсистему и сравнить с эталонами (ряд значений есть в вики статье: http://en.wikipedia.org/wiki/IOPS).
Попробуем протестировать скорость случайного чтения:
/usr/src/fio-1.41/fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 1 -filename /dev/sda -ioengine libaio -direct=1
Далее я провожу тесты для пары своих железок, для начала это массив: RAID-10 на Adaptec 5405 из 4x SAS 15k SEAGATE ST3300657SS.
В ответ будет выдано что-то примерно следующее (интересующее нас поле IOPS я выделил):
iops: (g=0): rw=randread, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [r] [100.0% done] [101K/0K /s] [198/0 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=15183
read : io=2,024KB, bw=101KB/s, iops=202, runt= 20003msec
slat (usec): min=11, max=40, avg=22.55, stdev= 3.29
clat (usec): min=59, max=11,462, avg=4912.37, stdev=1475.76
bw (KB/s) : min= 92, max= 112, per=99.90%, avg=100.90, stdev= 3.60
cpu : usr=0.16%, sys=0.52%, ctx=4049, majf=0, minf=21
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=4047/0, short=0/0
lat (usec): 100=0.10%, 250=0.05%
lat (msec): 2=1.38%, 4=28.19%, 10=70.20%, 20=0.07%
Run status group 0 (all jobs):
READ: io=2,023KB, aggrb=101KB/s, minb=103KB/s, maxb=103KB/s, mint=20003msec, maxt=20003msec
Disk stats (read/write):
sda: ios=4027/2, merge=0/5, ticks=19782/1, in_queue=19783, util=98.70%
Если же изменить iodepth до 24 (опять же, это взято с вики), то результаты получатся чуть иные:
iops: (g=0): rw=randread, bs=512-512/512-512, ioengine=libaio, iodepth=24
Starting 1 process
Jobs: 1 (f=1): [r] [100.0% done] [568K/0K /s] [1K/0 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=15264
read : io=10,035KB, bw=500KB/s, iops=999, runt= 20074msec
slat (usec): min=6, max=97, avg=23.53, stdev= 4.45
clat (usec): min=45, max=968K, avg=23958.61, stdev=37772.28
bw (KB/s) : min= 0, max= 573, per=64.60%, avg=322.34, stdev=242.21
cpu : usr=0.78%, sys=2.87%, ctx=18892, majf=0, minf=24
IO depths : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=99.9%, 32=0.0%, >=64=0.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.1%, 64=0.0%, >=64=0.0%
issued r/w: total=20070/0, short=0/0
lat (usec): 50=0.01%, 100=0.02%, 250=0.03%
lat (msec): 2=0.21%, 4=7.71%, 10=38.74%, 20=22.52%, 50=19.02%
lat (msec): 100=7.61%, 250=3.76%, 500=0.32%, 750=0.04%, 1000=0.01%
Run status group 0 (all jobs):
READ: io=10,035KB, aggrb=499KB/s, minb=511KB/s, maxb=511KB/s, mint=20074msec, maxt=20074msec
Disk stats (read/write):
sda: ios=19947/2, merge=0/5, ticks=475887/21, in_queue=476812, util=99.26%
А вот тест на рандомную запись на RAID-10 SAS:
/usr/src/fio-1.41/fio -name iops -rw=randwrite -bs=512 -runtime=20 -iodepth 1 -filename /dev/sda1 -ioengine libaio -direct=1
iops: (g=0): rw=randwrite, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [w] [100.0% done] [0K/652K /s] [0/1275 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=2815
write: io=12759KB, bw=653202B/s, iops=1275, runt= 20001msec
slat (usec): min=12, max=89, avg=15.77, stdev= 1.01
clat (usec): min=260, max=40079, avg=765.22, stdev=777.73
bw (KB/s) : min= 499, max= 721, per=100.16%, avg=638.00, stdev=33.64
cpu : usr=0.52%, sys=2.02%, ctx=25529, majf=0, minf=25
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=0/25517, short=0/0
lat (usec): 500=47.21%, 750=19.48%, 1000=6.87%
lat (msec): 2=24.44%, 4=1.38%, 10=0.54%, 20=0.07%, 50=0.02%
Run status group 0 (all jobs):
WRITE: io=12758KB, aggrb=637KB/s, minb=653KB/s, maxb=653KB/s, mint=20001msec, maxt=20001msec
Disk stats (read/write):
sda: ios=0/25385, merge=0/0, ticks=0/19604, in_queue=19604, util=98.03%
Далее тест чтения для одного SSD диска SuperTalent UltraDrive GX SSD STT_FTM28GX25H 128 Gb:
/usr/src/fio-1.41/fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 1 -filename /dev/sdd -ioengine libaio -direct=1
iops: (g=0): rw=randread, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [r] [100.0% done] [5602K/0K /s] [11K/0 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=5993
read : io=109399KB, bw=5470KB/s, iops=10939, runt= 20001msec
slat (usec): min=8, max=169, avg= 9.52, stdev= 2.47
clat (usec): min=1, max=375, avg=78.44, stdev= 8.10
bw (KB/s) : min= 5442, max= 5486, per=100.03%, avg=5470.54, stdev= 7.93
cpu : usr=5.98%, sys=13.00%, ctx=218950, majf=0, minf=25
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=218797/0, short=0/0
lat (usec): 2=0.01%, 4=0.01%, 10=0.01%, 20=0.01%, 50=0.14%
lat (usec): 100=98.83%, 250=1.01%, 500=0.01%
Run status group 0 (all jobs):
READ: io=109398KB, aggrb=5469KB/s, minb=5600KB/s, maxb=5600KB/s, mint=20001msec, maxt=20001msec
Disk stats (read/write):
sdd: ios=217551/0, merge=0/0, ticks=16620/0, in_queue=16580, util=82.91%
Если же изменить iodepth до 24:
/usr/src/fio-1.41/fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 24 -filename /dev/sdd -ioengine libaio -direct=1
iops: (g=0): rw=randread, bs=512-512/512-512, ioengine=libaio, iodepth=24
Starting 1 process
Jobs: 1 (f=1): [r] [100.0% done] [14589K/0K /s] [28K/0 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=5999
read : io=284442KB, bw=14221KB/s, iops=28442, runt= 20001msec
slat (usec): min=2, max=336, avg= 6.83, stdev= 5.36
clat (usec): min=264, max=1691, avg=832.82, stdev=129.85
bw (KB/s) : min=14099, max=14300, per=100.00%, avg=14220.82, stdev=35.28
cpu : usr=14.04%, sys=25.98%, ctx=323599, majf=0, minf=28
IO depths : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=100.0%, 32=0.0%, >=64=0.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.1%, 64=0.0%, >=64=0.0%
issued r/w: total=568884/0, short=0/0
lat (usec): 500=0.01%, 750=29.74%, 1000=59.18%
lat (msec): 2=11.07%
Run status group 0 (all jobs):
READ: io=284442KB, aggrb=14221KB/s, minb=14562KB/s, maxb=14562KB/s, mint=20001msec, maxt=20001msec
Disk stats (read/write):
sdd: ios=565467/0, merge=0/0, ticks=469940/0, in_queue=469896, util=99.39%
Теперь тест на скорость рандомной записи тоже для SSD (обращаю внимание, данные на носителе при этом тесте будут уничтожены!):
/usr/src/fio-1.41/fio -name iops -rw=randwrite -bs=512 -runtime=20 -iodepth 1 -filename /dev/sdd -ioengine libaio -direct=1
iops: (g=0): rw=randwrite, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [w] [100.0% done] [0K/1447K /s] [0/2828 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=6006
write: io=28765KB, bw=1438KB/s, iops=2876, runt= 20001msec
slat (usec): min=10, max=151, avg=16.01, stdev= 2.75
clat (usec): min=28, max=4387, avg=326.63, stdev=266.13
bw (KB/s) : min= 1359, max= 1659, per=100.20%, avg=1440.92, stdev=50.97
cpu : usr=2.24%, sys=5.56%, ctx=57682, majf=0, minf=24
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=0/57530, short=0/0
lat (usec): 50=0.25%, 100=0.01%, 250=20.55%, 500=76.71%, 750=0.60%
lat (usec): 1000=0.39%
lat (msec): 2=0.72%, 4=0.77%, 10=0.01%
Run status group 0 (all jobs):
WRITE: io=28765KB, aggrb=1438KB/s, minb=1472KB/s, maxb=1472KB/s, mint=20001msec, maxt=20001msec
Disk stats (read/write):
sdd: ios=0/57207, merge=0/0, ticks=0/18264, in_queue=18264, util=91.33%
Далее тест чтения для одного SSD диска Corsair CSSD-F12 (Corsair Force Series F120 - CSSD-F120GB2), firmware 1.1:
/usr/src/fio-1.41/fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 1 -filename /dev/sda -ioengine libaio -direct=1
iops: (g=0): rw=randread, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [r] [100.0% done] [1728K/0K /s] [3376/0 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=4193
read : io=33676KB, bw=1684KB/s, iops=3367, runt= 20001msec
slat (usec): min=7, max=45, avg=12.74, stdev= 0.58
clat (usec): min=138, max=9325, avg=281.76, stdev=66.69
bw (KB/s) : min= 1655, max= 1691, per=100.07%, avg=1684.26, stdev= 9.71
cpu : usr=1.16%, sys=3.54%, ctx=67374, majf=0, minf=25
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=67352/0, short=0/0
lat (usec): 250=1.35%, 500=98.63%, 750=0.01%
lat (msec): 10=0.01%
Run status group 0 (all jobs):
READ: io=33676KB, aggrb=1683KB/s, minb=1724KB/s, maxb=1724KB/s, mint=20001msec, maxt=20001msec
Disk stats (read/write):
sda: ios=66945/0, merge=0/0, ticks=19392/0, in_queue=19392, util=97.00%
И тест записи на нем же:
/usr/src/fio-1.41/fio -name iops -rw=randwrite -bs=512 -runtime=20 -iodepth 1 -filename /dev/sdc -ioengine libaio -direct=1
iops: (g=0): rw=randwrite, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [w] [100.0% done] [0K/1418K /s] [0/2771 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=4251
write: io=33458KB, bw=1673KB/s, iops=3345, runt= 20001msec
slat (usec): min=12, max=472, avg=13.43, stdev= 1.89
clat (usec): min=1, max=31361, avg=282.93, stdev=347.25
bw (KB/s) : min= 1034, max= 2454, per=100.54%, avg=1680.95, stdev=459.33
cpu : usr=1.98%, sys=5.36%, ctx=66945, majf=0, minf=24
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=0/66915, short=0/0
lat (usec): 2=0.01%, 250=36.63%, 500=59.59%, 750=1.57%, 1000=0.57%
lat (msec): 2=1.50%, 4=0.12%, 10=0.01%, 20=0.01%, 50=0.01%
Run status group 0 (all jobs):
WRITE: io=33457KB, aggrb=1672KB/s, minb=1712KB/s, maxb=1712KB/s, mint=20001msec, maxt=20001msec
Disk stats (read/write):
sda: ios=0/66550, merge=0/0, ticks=0/19080, in_queue=19060, util=95.34%
Далее тесты на запись на SATA2 ST31500341AS 7200rpm (данные на диске при этом будут уничтожены!):
/usr/src/fio-1.41/fio -name iops -rw=randwrite -bs=512 -runtime=20 -iodepth 1 -filename /dev/sdc -ioengine libaio -direct=1
iops: (g=0): rw=randwrite, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [w] [100.0% done] [0K/54K /s] [0/107 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=7118
write: io=1163KB, bw=59542B/s, iops=116, runt= 20001msec
slat (usec): min=14, max=140, avg=16.29, stdev= 3.23
clat (usec): min=449, max=35573, avg=8566.41, stdev=6411.62
bw (KB/s) : min= 44, max= 108, per=99.91%, avg=57.95, stdev=10.26
cpu : usr=0.16%, sys=0.24%, ctx=2335, majf=0, minf=24
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=0/2326, short=0/0
lat (usec): 500=0.26%, 750=12.90%, 1000=6.49%
lat (msec): 2=0.47%, 4=3.44%, 10=37.75%, 20=34.35%, 50=4.34%
Run status group 0 (all jobs):
WRITE: io=1163KB, aggrb=58KB/s, minb=59KB/s, maxb=59KB/s, mint=20001msec, maxt=20001msec
Disk stats (read/write):
sdc: ios=0/2325, merge=0/0, ticks=0/19884, in_queue=19892, util=98.24%
Опять же для SATA2 на чтение:
/usr/src/fio-1.41/fio -name iops -rw=randread -bs=512 -runtime=20 -iodepth 1 -filename /dev/sdc -ioengine libaio -direct=1
iops: (g=0): rw=randread, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [r] [100.0% done] [33K/0K /s] [66/0 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=7130
read : io=662016B, bw=33085B/s, iops=64, runt= 20009msec
slat (usec): min=13, max=125, avg=15.18, stdev= 4.09
clat (msec): min=3, max=30, avg=15.44, stdev= 4.20
bw (KB/s) : min= 28, max= 37, per=99.20%, avg=31.74, stdev= 1.93
cpu : usr=0.22%, sys=0.12%, ctx=1302, majf=0, minf=25
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=1293/0, short=0/0
lat (msec): 4=0.08%, 10=9.20%, 20=76.57%, 50=14.15%
Run status group 0 (all jobs):
READ: io=646KB, aggrb=32KB/s, minb=33KB/s, maxb=33KB/s, mint=20009msec, maxt=20009msec
Disk stats (read/write):
sdc: ios=1290/0, merge=0/0, ticks=19884/0, in_queue=19900, util=98.28%
SATA2 на чтение, depth=24:
/usr/src/fio-1.41/fio -name iops -rw=randread -bs=512 -runtime=20 -iodepth 24 -filename /dev/sdc -ioengine libaio -direct=1
iops: (g=0): rw=randread, bs=512-512/512-512, ioengine=libaio, iodepth=24
Starting 1 process
Jobs: 1 (f=1): [r] [100.0% done] [65K/0K /s] [128/0 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=7135
read : io=1230KB, bw=62274B/s, iops=121, runt= 20217msec
slat (usec): min=2, max=35, avg= 8.72, stdev= 1.28
clat (msec): min=13, max=907, avg=196.69, stdev=126.43
bw (KB/s) : min= 0, max= 67, per=64.52%, avg=38.71, stdev=29.17
cpu : usr=0.40%, sys=0.06%, ctx=2464, majf=0, minf=28
IO depths : 1=0.1%, 2=0.1%, 4=0.2%, 8=0.3%, 16=99.4%, 32=0.0%, >=64=0.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.1%, 64=0.0%, >=64=0.0%
issued r/w: total=2459/0, short=0/0
lat (msec): 20=0.20%, 50=4.15%, 100=19.44%, 250=48.80%, 500=24.68%
lat (msec): 750=2.56%, 1000=0.16%
Run status group 0 (all jobs):
READ: io=1229KB, aggrb=60KB/s, minb=62KB/s, maxb=62KB/s, mint=20217msec, maxt=20217msec
Disk stats (read/write):
sdc: ios=2456/0, merge=0/0, ticks=480380/0, in_queue=481280, util=98.21%
Программный RAID-1 из SATA дисков, рандомное чтение:
/usr/src/fio-1.41/fio -readonly -name iops -rw=randread -bs=512 -runtime=20 -iodepth 1 -filename /dev/md1 -ioengine libaio -direct=1
iops: (g=0): rw=randread, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [r] [100.0% done] [70K/0K /s] [137/0 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=3647
read : io=1,406KB, bw=71,958B/s, iops=140, runt= 20001msec
slat (usec): min=0, max=4,001, avg=31.31, stdev=352.56
clat (usec): min=0, max=204K, avg=7079.63, stdev=5615.73
bw (KB/s) : min= 40, max= 79, per=99.96%, avg=69.97, stdev= 6.46
cpu : usr=0.00%, sys=0.34%, ctx=5624, majf=0, minf=26
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=2811/0, short=0/0
lat (usec): 2=5.80%
lat (msec): 10=77.45%, 20=16.47%, 50=0.18%, 100=0.04%, 250=0.07%
Run status group 0 (all jobs):
READ: io=1,405KB, aggrb=70KB/s, minb=71KB/s, maxb=71KB/s, mint=20001msec, maxt=20001msec
Disk stats (read/write):
md1: ios=2782/0, merge=0/0, ticks=0/0, in_queue=0, util=0.00%, aggrios=0/0, aggrmerge=0/0, aggrticks=0/0, aggrin_queue=0, aggrutil=0.00%
sdb: ios=0/0, merge=0/0, ticks=0/0, in_queue=0, util=nan%
sda: ios=0/0, merge=0/0, ticks=0/0, in_queue=0, util=nan%
Программный RAID-1 из SATA дисков, рандомная запись:
/usr/src/fio-1.41/fio -name iops -rw=randwrite -bs=512 -runtime=20 -iodepth 1 -filename /dev/md0 -ioengine libaio -direct=1
iops: (g=0): rw=randwrite, bs=512-512/512-512, ioengine=libaio, iodepth=1
Starting 1 process
Jobs: 1 (f=1): [w] [100.0% done] [0K/105K /s] [0/205 iops] [eta 00m:00s]
iops: (groupid=0, jobs=1): err= 0: pid=3650
write: io=2,089KB, bw=104KB/s, iops=208, runt= 20004msec
slat (usec): min=0, max=192K, avg=103.42, stdev=3007.66
clat (usec): min=0, max=880K, avg=4680.69, stdev=31246.53
bw (KB/s) : min= 3, max= 243, per=108.77%, avg=113.12, stdev=52.21
cpu : usr=0.06%, sys=0.20%, ctx=8347, majf=0, minf=25
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.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.0%, >=64=0.0%
issued r/w: total=0/4177, short=0/0
lat (usec): 2=27.60%
lat (msec): 4=9.50%, 10=60.14%, 20=2.61%, 1000=0.14%
Run status group 0 (all jobs):
WRITE: io=2,088KB, aggrb=104KB/s, minb=106KB/s, maxb=106KB/s, mint=20004msec, maxt=20004msec
Disk stats (read/write):
md0: ios=0/4130, merge=0/0, ticks=0/0, in_queue=0, util=0.00%, aggrios=0/0, aggrmerge=0/0, aggrticks=0/0, aggrin_queue=0, aggrutil=0.00%
sdb: ios=0/0, merge=0/0, ticks=0/0, in_queue=0, util=nan%
sda: ios=0/0, merge=0/0, ticks=0/0, in_queue=0, util=nan%
Итого, резюмирую:
RAID-10 на Adaptec 5405 из 4x SAS 15k SEAGATE ST3300657SS (2 магнитных диска)
random read, depth=1: 202 IOPS
random read, depth=24: 999 IOPS
random write, depth=1: 1275 IOPS
RAID-10 на LSI MR9260-4i из 4x SAS 15k SEAGATE ST3300657SS (2 магнитных диска)
random read, depth=1: 200 IOPS
random read, depth=24: 1011 IOPS
random write, depth=1: 1148 IOPS
RAID-1 на LSI MR9260-4i из 2x SAS 15k SEAGATE ST3300657SS (2 магнитных диска)
random read, depth=1: 218 IOPS
random read, depth=24: 887 IOPS
random write, depth=1: 624 IOPS
RAID-5 на LSI MR9260-4i из 3x SAS 15k SEAGATE ST3300657SS (2 магнитных диска)
random read, depth=1: 167 IOPS
random read, depth=24: 878 IOPS
random write, depth=1: 631 IOPS
RAID-0 на LSI MR9260-4i из 2x SAS 15k SEAGATE ST3300657SS (2 магнитных диска)
random read, depth=1: 160 IOPS
random read, depth=24: 504 IOPS
random write, depth=1: 987 IOPS
SSD диск SuperTalent UltraDrive GX SSD STT_FTM28GX25H 128 Gb
random read, depth=1: 10939 IOPS
random read, depth=24: 28442 IOPS
random write, depth=1: 2876 IOPS
SATA2 ST31500341AS 7200rpm
random read, depth=1: 64 IOPS
random read, depth=24: 121 IOPS
random write, depth=1: 116 IOPS
VPS
random read, depth=1: 126 IOPS
random write,depth=1: 236 IOPS
Adaptec 5805 RAID 10 8 SATA 3Tb WD Green
random read, depth=1: 87 IOPS
random read, depth=24: 431 IOPS
random write, depth=1: 186 IOPS
random write, depth=24: 193 IOPS
Adaptec 5805 RAID 10 8 SATA 3Tb WD Green over 1Gbps iSCSI without Jumbo frames
random read, depth=1: 60 IOPS
random read, depth=24: 320 IOPS
random write, depth=1: 187 IOPS
random write, depth=24: 192 IOPS
Adaptec 2405 Velociraptor WD1000DHTZ-0 x 2 RAID-1:
random read, depth=1: 160 IOPS
random read, depth=24: 545 IOPS
random write, depth=1: 140 IOPS
random write, depth=24: 140 IOPS
Adaptec 2405 Seagate ST3600057SS 15000 600Gb (4 магнитных диска) x 2 RAID-1:
random read, depth=1: 205 IOPS
random read, depth=24: 650 IOPS
random write, depth=1: 375 IOPS
random write, depth=24: 385 IOPS
Более подробное описание параметров и типов теста можно найти в файле HOWTO, он лежит в папке рядом с бинариком.
Subscribe to:
Posts
(
Atom
)
