SQL.RU
 client/server technologies
 
 Главная | Документация | Статьи | Книги | Форум | Опросы | Рассылка | Работа | Поиск | FAQ |

Добро пожаловать в форум, Guest  >>  Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик  Ответить
Топик располагается на нескольких страницах: 1 2 3 4 5 6   вперед  Ctrl      [все]
 Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
Добрый день,
возник следующий вопрос:
Покупаем новую внешную дисковую систему 2шт. (очень хорошую, HDS AMS 5000).
Администраторы предлогают делать 1 большой RAID 10 на 28 дисков, и на нем уже организовывать логические LUN, так сказать размазанные по этому большому RAID. Аргументируют лучшим быстродействием.

Я же склонен к разбивке на несколько RAID 10, отдельно под данные, индексы, лог, tempdb. В последствии откладывать архивные секционированные таблицы на дополнительные RAID. Что бы получить большее количество независемых шпинделей.

Вот тут мы и разошлись во мнениях.

Система закупается из-за большоего прироста в данных.

Нагрузку эмулировать на тестовом, пусть даже и таком по мощьности сервере невозвожно, так как сейчас имеем 500 паралельных подключений + различной конформации запросы, пестрота которых просто порожает.

Что вы думаете по данному поводу?
Приведите какие нить рекомендации из собственного опыта или ссылки.
2 ноя 05, 14:52    [2031392] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Glory
Member

Откуда: Estonia
Сообщений: 69093
Я же склонен к разбивке на несколько RAID 10, отдельно под данные, индексы, лог, tempdb
Если система внешняя, то доступ будет все равно по одному "шлангу". И "рулить" будет внутренний контроллер внешнего устройства.
2 ноя 05, 14:57    [2031432] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
В пропускной способности "шланга" вопросов нет.
Превысить 2GBit FC думаю не сможем.
Очень много мелких транзакций на запись.
Вы об этом?
2 ноя 05, 15:01    [2031459] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Glory
Member

Откуда: Estonia
Сообщений: 69093
aleksey_fomchenko
В пропускной способности "шланга" вопросов нет.
Превысить 2GBit FC думаю не сможем.
Очень много мелких транзакций на запись.
Вы об этом?

Я о том, что обращения sql-я к разным логическим дискам будут передаваться через один шланг одному же внешнему контроллеру. И именно он будет решать что и когда читать.
2 ноя 05, 15:03    [2031483] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
Вопрос по более высокому быстродействию при записи (мы же пишем одновременно и в файл данных и в файл лога).
Какая конфигурация может выигрывать?
При одном большом RAID у нас же фактически 1 логический шпиндель (головки то двигаются синхронно). И следовательно могут возникать очереди.
А при нескольких RAID у нас несколько логических шпинделей (головки двигаются независимо).

Верны ли мои разсуждения?
2 ноя 05, 15:13    [2031565] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
Glory
Я же склонен к разбивке на несколько RAID 10, отдельно под данные, индексы, лог, tempdb
Если система внешняя, то доступ будет все равно по одному "шлангу". И "рулить" будет внутренний контроллер внешнего устройства.

Не совсем так. В стойках подобного уровня обычно 2-4 порта для подключения серверов напрямую. Поэтому - ставьте в сервер несколько НВА и вперед ;-)

Далее, судя по описанию у автора 2-я стойка будет JBOD, т.е. контроллеры только на 1-й стойке. Хотя, возможно, я ошибаюсь.

ИМХО, "метод админов" предпочтительнее - нагрузка на диски будет равномерно распределяться...
2 ноя 05, 15:14    [2031577] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Glory
Member

Откуда: Estonia
Сообщений: 69093
aleksey_fomchenko
При одном большом RAID у нас же фактически 1 логический шпиндель (головки то двигаются синхронно). И следовательно могут возникать очереди.
А при нескольких RAID у нас несколько логических шпинделей (головки двигаются независимо).

Верны ли мои разсуждения?

С чего это физические головки начнут при разных логических устройствах двигаться по разному ? Это уж контроллер будет решать

В можете при настройке массива точно задать что из 28 дисков одно логическое устройство располагается строго на первых 14 дисках, а второе логическое устройство - строго на вторых 14ти ?
2 ноя 05, 15:17    [2031602] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
aleksey_fomchenko
При одном большом RAID у нас же фактически 1 логический шпиндель (головки то двигаются синхронно). И следовательно могут возникать очереди.
...
Верны ли мои разсуждения?

Думаю, что ошибаетесь.
То, что вам предлагают админы: сделать несколько "хостов", каждый из которых будет использовать все диски, но использовать только некий %% их емкости.
2 ноя 05, 15:20    [2031619] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Брюлик
Member

Откуда:
Сообщений: 691
>Вопрос по более высокому быстродействию при записи (мы же пишем >одновременно и в файл данных и в файл лога).
>Какая конфигурация может выигрывать?

RAID1&0 with multiple ,mirroed copies
LOG :Separate,physical RAID-1 devices with multiple ,mirroed copies
2 ноя 05, 15:25    [2031645] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
to Glory
Я же посылаю запрос, я и решаю, что читать, если мне нужно одновременно читать и данные с одного RAID и индексы к другого RAID (лежат они например отдельнл).

То есть Glory вы имеете ввиду, что имею 1 RAID 10 на 28 дисках, я могу сконфигурировать 2 LUN на разных дисках, и утилизироваться они будут независимо? И головки будуть двигаться независимо?
Что то не совсем понятно.

to Сергей Тихонов
Контроллер только в одной полке.
Ме необходимо не нагрузку распределить, а повысить быстродействие, как можно лучше.

автор
Думаю, что ошибаетесь.
То, что вам предлагают админы: сделать несколько "хостов", каждый из которых будет использовать все диски, но использовать только некий %% их емкости.


Поясните, непонятно.
2 ноя 05, 15:25    [2031649] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Prolog
Member

Откуда: Москва
Сообщений: 2417
А как вариант можно рассмотреть, что файлы журнала транзакций и tempdb остаются на внутренних дисках сервера, если, конечно, позволяет емкость.
2 ноя 05, 15:25    [2031653] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
to Prolog
Невозможно, внешнее хранилище обеспечивает надежность хранение данных.
TempDB неважно, там вставка кешируется.
2 ноя 05, 15:28    [2031683] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
aleksey_fomchenko
to Сергей Тихонов
Контроллер только в одной полке.
Ме необходимо не нагрузку распределить, а повысить быстродействие, как можно лучше.
...
Поясните, непонятно.

Почему вы думаете, что если массив 1, то конкурентность будет ниже? Контроллеры в стойках достаточно интеллектуальные...

По поводу "хостов": тут все просто, "говорим" стойке -
1. Хочу raid-10
2. Хочу на таких-то дисках.
3. У каждого диска (например, 146ГБ) взять под массив 80 ГБ (например)
Все. Оставшееся пространство на дисках можно под другие массивы юзать. Такое не только в стойках есть, но и в продвинутых raid-контроллерах.
2 ноя 05, 15:34    [2031716] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
Я наоборот говорю, что если 1 RAID 10 то конкуренция за доступ будет выше, чем несколько 10 RAID.

Про конфигурацию пока неговорим.

И зачем мне несколько LUN вешать на 1 RAID, они же толкаться за доступ будут.
2 ноя 05, 15:39    [2031732] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Prolog
Member

Откуда: Москва
Сообщений: 2417
aleksey_fomchenko
to Prolog
Невозможно, внешнее хранилище обеспечивает надежность хранение данных.
TempDB неважно, там вставка кешируется.
RAID1 для журнала в корпусе сервера тоже обеспечивает надежность. К тому же скорость работы с ним будет выше, к тому можно обеспечить, что на этом диске будет расположен только один журнал транзакций, что также положительно скажется на скорости.
А как решили настроить режимы cache: write back - wrrite trough?
Сам cache с зеркалированием?
2 ноя 05, 15:42    [2031754] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
Нет, у нас кластер разворачивается.
Только на внешнем хранилище.

Вернемся к нашим вопросам: какая конфигурация выигрывает по производительности?
2 ноя 05, 15:46    [2031787] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
Как показывают все TPC тесты - базы на RAID 10, логи на отдельный RAID 0.
Для пущей скорости - можно и индексы вынести на отдельный RAID.

В чем я ошибаюсь?
2 ноя 05, 15:59    [2031907] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
RAID-0 для логов - это действительно только для тестов...
2 ноя 05, 16:37    [2032219] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Cовершенно бессмысленное дело объединять весь дисковый массив в один RAID10!
возмите любой тест дисковой подсистемы и замерте, как производительность меняется при увеличении числа дисков в RAID0. Окажется, что в один массив нет смысла набивать больше 4-х, 5-ти дисков...
Кроме того, SQL Server намного лучше дисковых контроллеров балансирует нагрузку по файлам на разных дисках. Поэтому, лучше будет покрошить диски на множество массивов RAID10 или ещё лучше на RAID0, а критичные для жизни системы файлы помещать на RAID10 или RAID5 (журналы транзакций и системные базы).
После этого, уже можно на созданные массивы размещать файлы баз данных, разделяя каждую базу на число файлов, сопоставимое с числом процессоров. На одном диске может т.о. помещаться несколько файлов от разных баз данных, например, пользовательской и tempdb.
Очень рекомендую воспользоваться утилитой SQLIO для оценки производительности получившейся дисковой подсистемы, а также для подбора наиболее оптимальных параметров запуска SQL Server.
2 ноя 05, 16:39    [2032239] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
to Александр Гладченко
А можно привести реальные примеры публикаций в инете?

Вопрос:
Как зависит быстродействие от количества фпайлов и CPU, можно где нить об этом подробно почитать? Я не использую паралелизм. Инетерует как на низком уровне этот вариант выигрывает?

Пробовал SQLIO, достаточно сумбурный результат.
Подскажи с какими ключами ты ее запускаеш? Влияет ли размер базы на которой запускать этот тест? Как вообще эта утилита генерирует нагрузку, исходя из чего?
2 ноя 05, 16:49    [2032301] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
Александр Гладченко
Кроме того, SQL Server намного лучше дисковых контроллеров балансирует нагрузку по файлам на разных дисках.

Ой, не соглашусь... Как БД разложишь по дискам / массивам, так баллансировать и будет ;-) Тут человеческий фактор + время. ИМХО.

ЗЫ
Наверное, действительно не имеет смысла делать один массив из дисков, которые в разных стойках находятся. Но страйпинг пока только raid-5 мешал, и то по записи.
Т.е., из двух вариантов:
1. из 12 дисков одной стойки делаем два массива raid-10 по 6 дисков в каждом.
2. делаем два массива raid-10 из всех 12 дисков, но используем половину пространства диска для каждого массива
Я больше склоняюсь ко второму. Страйпинг - есть страйпинг.
2 ноя 05, 17:13    [2032503] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
Так чем он лучше, еже ли мне одновременно необходимо писать в одну половину RAID (LUN1) данные и в другую половину RAID логи (LUN2),
они же все равно на одних шпинделях крутятся! Количество же операций ввода-вывода не увеличится из за размазывания хоть 4-х LUN по одному RAID!

А Spripe хороше при большем патоке чтения или записи, а у меня много мелких транзакций!

Не понимаю хода вашей мысли. Или это у вас практика такое показывает?
Уточните.
2 ноя 05, 17:22    [2032601] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
Кроме скорости "шпинделей" есть еще такая вещь, как кеш контроллера и его интеллектуальность. Вы про кеширование записи когда-нибуть слышали?
Далее, почему вы думаете, что на 2-х массивах одновременно будет идти или запись, или чтение одинаковой нагрузки?
2 ноя 05, 17:32    [2032664] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
to Сергей Тихонов
Естественно слышал про кеш записи.
автор
Далее, почему вы думаете, что на 2-х массивах одновременно будет идти или запись, или чтение одинаковой нагрузки?


Запутанно вы говорите, но предположу что я вас понял.

Конечно нагрузка будет разная, так как на один данные валятся в хаотичные места, а на другой логи - то есть последовательная запись (очередей нет (это очень критично)).

А то что SQL Server по стандарту (WAL) посылая команду записать в лог, не идет в контексте этого сеединения далее к следующей транзакции пока не получит подтверждающий ответ. Это то и говорит за использование отдельного массива.
А на общем массиве в этом случае возможны очереди.

Что то мы не понимаем друг-друга.

Еще аргументы...
2 ноя 05, 17:46    [2032765] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
aleksey_fomchenko
А то что SQL Server по стандарту (WAL) посылая команду записать в лог, не идет в контексте этого сеединения далее к следующей транзакции пока не получит подтверждающий ответ. Это то и говорит за использование отдельного массива.
А на общем массиве в этом случае возможны очереди.

Все так, но: MSSQL понятия не имеет, как сконфигурированы массивы, какие там кеши и контроллеры. СУБД видит только диски на уровне ОС. При вкл. кешировании по записи контроллер (стойки или обычный raid) моментально ответит ОС, что данные записаны. А собственно запись на диски контроллер будет делать тогда, когда посчитает это нужным, при этом оптимизировав эту запись (про интеллектуальность контроллеров я уже писал).
2 ноя 05, 17:53    [2032815] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Сергей Тихонов
Кроме скорости "шпинделей" есть еще такая вещь, как кеш контроллера и его интеллектуальность. Вы про кеширование записи когда-нибуть слышали?
Далее, почему вы думаете, что на 2-х массивах одновременно будет идти или запись, или чтение одинаковой нагрузки?


Кэш контроллера эффективен, пока размер рабочей нагрузки его не начнёт значительно превышать...
Страйпы для записи - наипервейшее зло, именно поэтому НР в свое время на тестах TCP отказался от RAID10 в пользу RAID0.
Ваш второй вариант будет много медленнее превого, даже без SQL Server.
Вот Вам пример измерений массива RAID0 из разного числа дисков:

число дисков в массиве123468
прирост7268800
Мб/сек73145213221221221


А на картинке снизу график роста производительности, в зависимости от числа дисковых массивов, каждый из которых собран из 4-х дисков RAID0, график составлялся по показаниям SQLIO:

К сообщению приложен файл. Размер - 5Kb
2 ноя 05, 18:03    [2032882] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
to Сергей Тихонов
Ошибаетесь, SQL Server пишет в файл логов и в файл данных используя разные команды OS. Попродуйте выполнить 1000.000 мини транзакций в TempDB и в обычной базе, и вы поймете что ошибаетесь, так как именно при записи в TempDB таких ответов об успешной записи не требуется.
Зачем же тогда - поддержка стандартов ACID, WAL, FUA у внешних массивов при использовании SQL Server, если как вы говорите массив сам тасует блоки как хочет при записи лога?

Остается не ясным один момент - зачем большое количество дисков (например 28) в страйпе для записи большого количества мелких транзакций. в чем выигрыщш?
Чем не нравиться разделенные (2 по 12)?

Господа - подключайтесь...
2 ноя 05, 18:11    [2032928] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Prolog
Member

Откуда: Москва
Сообщений: 2417
Александр Гладченко
Страйпы для записи - наипервейшее зло, именно поэтому НР в свое время на тестах TCP отказался от RAID10 в пользу RAID0.
А нет ли подобной статистики для RAID10: уж очень боязно переходить на RAID0.
2 ноя 05, 18:15    [2032940] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Prolog
Александр Гладченко
Страйпы для записи - наипервейшее зло, именно поэтому НР в свое время на тестах TCP отказался от RAID10 в пользу RAID0.
А нет ли подобной статистики для RAID10: уж очень боязно переходить на RAID0.


Потери от RAID10 минимальны, поэтому, если дисков хвататет, можно смело переходить на RAID10. У НР стояла задача победить в TPC, поэтому они выжимали всё...
2 ноя 05, 18:19    [2032951] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Prolog
Member

Откуда: Москва
Сообщений: 2417
Александр Гладченко
У НР стояла задача победить в TPC, поэтому они выжимали всё...
Ясно, победа в скорости за счет надежности.
2 ноя 05, 18:26    [2032978] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
to Сергей Тихонов

Команды при записи лога:

автор
Forced Unit Access

Forced Unit Access - сквозной доступ (FUA) происходит тогда, когда файл открыт (используется CreateFile) с флагом FILE_FLAG_WRITETHROUGH. SQL Server открывает все базы данных и журналы с этим флагом.
Флаг указывает на то, что любой запрос на запись с битом FUA нужно посылать непосредственно подсистеме I/O. Этот бит указывает подсистеме, что данные должны попасть на долговременный носитель до того, как I/O будет считаться законченным, т.е. операционная система выдаст сообщение о завершении I/O. При этом не должен использоваться промежуточный кэш, который не относиться к долговременному носителю. Другими словами, запись должна идти непосредственно в долговременный носитель, и такой процесс принято называть сквозной записью (writethrough).
Такой доступ позволяет предотвратить проблемы, которые могут возникнуть, когда кэш (например, кэш операционной системы, который не является автономным, как кэш с батарейкой), принимает I/O и сообщает SQL Server, что I/O завершен успешно, а фактически данные ещё не были сохранены на долговременном носителе. Без такого доступа, SQL Server не смог бы полагаться на систему для обеспечения протокола WAL.
Стоит поинтересоваться у изготовителя по поводу поддержки FUA его оборудованием. Некоторые аппаратные средства обрабатывают состояние FUA как индикатор того, что данные должны быть сохранены на физическом диске (даже если он оборудован автономным кэшем с батарейкой). Другие устройства полагаются на то, что кэш с батарейкой можно считать долговременным носителями, который поддерживает FUA. Разница в таких подходах может сильно влиять на производительность SQL Server. Подсистема, которая поддерживает кэширование долговременного носителя, как правило, намного быстрее осуществляет запись, чем подсистема, которая требует, чтобы данные были записаны на физический носитель.
Важно: Спецификации и реализации IDE дисков не имеют ясных стандартов того, как они обслуживают FUA запросы. Спецификации SCSI дисков и их реализации предусматривают использование FUA запросов, отключают кэши физической дисковой системы и другие механизмы кэширования. У многих IDE систем, запрос FUA просто будет отвергнут аппаратными средствами IDE дисков, делая, таким образом, этот тип дисковых подсистем опасным для работы SQL Server или других программ, которые полагаются на поддержку FUA. Из-за необходимости обеспечения реакции на установку FUA, некоторый производители IDE дисков создают утилиты, которые блокируют кэш IDE диска, что позволяет обезопасить работу SQL Server.
Важно: Некоторые версии Microsoft Windows не всегда передают бит FUA аппаратным средствам. Соответствующие исправления были внесены, начиная с Windows 2000 Service Pack 3 (SP3), после которого бит FUA теперь всегда обрабатывается правильно. Для обратной совместимости, Microsoft выпустил утилиту Dskcache.exe, которая позволяет управлять этим поведением операционной системы.
Используйте эту утилиту, чтобы управлять реакцией на флаг FUA, если компьютер обслуживает SQL Server, а диски имеют кэш. Утилита может быть получена у Microsoft, для получения более подробной информации, изучите статью: Obtain the Dskcache.exe Tool to Configure the "Power Protected" Write Cache Option

Примечание переводчика: В Windows 2000 Advanced Server службы Active Directory при запуске отключают кэширование записи для жестких дисков.



автор
API
Типовое применение

CreateFile
Используется для того, чтобы создавать и открывать базу данных и журнал. Флаги: FILE_FLAG_OVERLAPPED, FILE_FLAG_WRITETHROUGH и FILE_FLAG_NO_BUFFERING определяются для предотвращения неустойчивого кэширования носителей.
2 ноя 05, 18:31    [2032998] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Prolog
Александр Гладченко
У НР стояла задача победить в TPC, поэтому они выжимали всё...
Ясно, победа в скорости за счет надежности.

Да нет, они обеспечили при этом все требования ACID. Ведь по сути, достаточно только журнал держать на защищённом носителе и резервную копию.
2 ноя 05, 21:06    [2033442] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
aleksey_fomchenko
to Сергей Тихонов

Команды при записи лога:

[quot автор]Стоит поинтересоваться у изготовителя по поводу поддержки FUA его оборудованием. Некоторые аппаратные средства обрабатывают состояние FUA как индикатор того, что данные должны быть сохранены на физическом диске (даже если он оборудован автономным кэшем с батарейкой). Другие устройства полагаются на то, что кэш с батарейкой можно считать долговременным носителями, который поддерживает FUA.

Вот вы и ответили сами по сути на свой вопрос. Если ваша стойка поддерживает FUA на уровне "данные должны быть сохранены на физическом диске", то естественно для журналов нужно выделять отдельные диски.
3 ноя 05, 18:23    [2037053] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
Александр Гладченко
Страйпы для записи - наипервейшее зло, именно поэтому НР в свое время на тестах TCP отказался от RAID10 в пользу RAID0.

Разницы между RAID10 и RAID0 в смысле страйпинга нет никакой. ;-)
Просто НР надо было уменьшить стоимость транзакции по результатам тестов. ИМХО.
3 ноя 05, 18:29    [2037073] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
Александр Гладченко
Вот Вам пример измерений массива RAID0 из разного числа дисков:

число дисков в массиве123468
прирост7268800
Мб/сек73145213221221221


А можно ссылку на ресурс с описанием этого тестирования? Использовался SCSI или FC-AL? Ну и т.д.
3 ноя 05, 18:34    [2037088] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Gerros
Member

Откуда: Харьков
Сообщений: 387
Чисто теоретические размышления (везде в ЭТОМ тексте под диском понимается одиночный диск или РАЙД любого уровня. Chain-ы и LUN-ы дисками в ЭТОМ тексте не считаются). Всё сказанное - ИМХО.

Чтобы уменьшить потери времени на перемещение головок НЖМД и на переключение режимов чтения\записи*, нужно разнести файлы по разным физическим дискам чтобы для процессов, использующих эти файлы выполнялись такие условия:
1. Два процесса с разным режимом доступа (произвольного\последовательный, кэшированный\некэшированный) не должны конкурировать за один и тот же диск.
2. Два процесса разной интенсивности и\или бизнес-значимости не должны конкурировать за один и тот же диск.

Типичный набор файлов на сервере БД:
1. Данные основной базы.
2. Данные остальных баз (системные, промежуточные для репликаций и т.д.).
3. Файлы ТемпДБ.
4. Лог основной базы.
5. Логи остальных баз.
6. Индексы основной базы.

В идеале разнести все шесть перечисленных типов на разные диски.
На практике можно объединить 2 и 5, иногда даже можно положить файлы этих типов на системный диск.

Учитывая всё вышесказанное, предлагаю такой вариант:
Два диска в RAID1 - Лог основной базы
Два диска в RAID0 - ТемпДБ
Два диска в RAID1 - Данные и логи остальных (всяких-разных) баз
Два диска в RAID0 - Индексы основной базы
Четыре диска - Запасные (чтобы в будущем было пространство для маневра\экспериментов, и чтобы не искать в судорогах точно ТАКОЙ ЖЕ диск взамен умершего)

Оставшиеся 16 дисков в четыре RAID10 по четыре диска - Данные основной базы, раскиданные по четырём райдам по вкусу разработчиков БД.

*по поводу "переключения режимов чтения\записи" - учитывая конструкцию жёсткого диска, подозреваю, что он не может быстро переключаться из режима чтения в режим записи потому что запись ведётся посекторно, и чтобы поменять всего один байт в секторе, весь сектор нужно сначала прочитать, потом в буфере заменить нужный байт и слить буфер обратно на сектор.
_____
* powered by Gerros
3 ноя 05, 20:08    [2037308] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Сергей Тихонов
Александр Гладченко
Вот Вам пример измерений массива RAID0 из разного числа дисков:

число дисков в массиве123468
прирост7268800
Мб/сек73145213221221221


А можно ссылку на ресурс с описанием этого тестирования? Использовался SCSI или FC-AL? Ну и т.д.


Это результаты наших внутренних тестов. Использовался FC.
4 ноя 05, 13:33    [2038330] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
Александр Гладченко
Сергей Тихонов
Александр Гладченко
Вот Вам пример измерений массива RAID0 из разного числа дисков:

число дисков в массиве123468
прирост7268800
Мб/сек73145213221221221


А можно ссылку на ресурс с описанием этого тестирования? Использовался SCSI или FC-AL? Ну и т.д.


Это результаты наших внутренних тестов. Использовался FC.

Привет. Не писал в форум - не было доступа к инету. Кстати, я сейчас в Москве (до Пт) - можем пива попить, если есть желание ;-)

По поводу тестов: 221 МВ/сек - скорее всего ограничение канала FC-AL - 2Gbit/sec. ИМХО.
Саша, по поводу нижнего рисунка по чтению/записи: ты написал только про количество массивов, но ничего не написал по поводу конфигурации стореджа / количества стоек и т.п.

Из собственных наблюдений: скорости 220 МВ/сек с головой хватает даже для 4-х процессорного сервера (Intel 32-bit). В том смысле, что процессоры эти 220 МВ/сек должны "переваривать"...
7 ноя 05, 20:32    [2044555] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Сергей Тихонов

Привет. Не писал в форум - не было доступа к инету. Кстати, я сейчас в Москве (до Пт) - можем пива попить, если есть желание ;-)

По поводу тестов: 221 МВ/сек - скорее всего ограничение канала FC-AL - 2Gbit/sec. ИМХО.
Саша, по поводу нижнего рисунка по чтению/записи: ты написал только про количество массивов, но ничего не написал по поводу конфигурации стореджа / количества стоек и т.п.

Из собственных наблюдений: скорости 220 МВ/сек с головой хватает даже для 4-х процессорного сервера (Intel 32-bit). В том смысле, что процессоры эти 220 МВ/сек должны "переваривать"...


Я сам сторадж не конфигурил и живьём его не видел, поэтому и промолчал. Дисковых полок кажется было восемь, по 16 дисков на каждой.
Ограничение оптического канала было 2,5 Гб, и каналов было несколько.
Каждый из двух IOB подключался на 6,5Гб.
7 ноя 05, 21:35    [2044724] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Alienbem
Member

Откуда:
Сообщений: 45
На самом деле все зависит от контроллеров массивов.
из жизненного опыта могу сказать, что
HP Evo 3000 c 10 дисками по 146 Gb 10к
в пух и прах уделала по скорости обработки (как записи так и чтения)
SUN StorEdge 3510 c 36 дисками по 73 Gb 15k.
даже на тестах от самого SUN.

потому нужно внимательно уточнить принцип работы самого массива.
так например в HP Evo ваще нет возможности заставить диски крутиться независимо друг от друга (есть официальный ответ от спецов HP),
а что касается SUN то при разбивке на несколько раид массивов и размещении на них разных файлов баз, прироста в скорости обработкии запрсов к диску не заметил (как ругался spoot на Disk Queue Length так и ругается), чего не было на HP.
9 ноя 05, 17:17    [2052662] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Сергей Тихонов
Member

Откуда: Киев
Сообщений: 787
Alienbem
На самом деле все зависит от контроллеров массивов.
из жизненного опыта могу сказать, что
HP Evo 3000 c 10 дисками по 146 Gb 10к
в пух и прах уделала по скорости обработки (как записи так и чтения)
SUN StorEdge 3510 c 36 дисками по 73 Gb 15k.
даже на тестах от самого SUN.

потому нужно внимательно уточнить принцип работы самого массива.
так например в HP Evo ваще нет возможности заставить диски крутиться независимо друг от друга (есть официальный ответ от спецов HP),
а что касается SUN то при разбивке на несколько раид массивов и размещении на них разных файлов баз, прироста в скорости обработкии запрсов к диску не заметил (как ругался spoot на Disk Queue Length так и ругается), чего не было на HP.

Во-первых, не Evo, а EVA - Enterprise Virtual Array.
Во-вторых, есть предложение, отличающееся новизной: давайте при рассказах о сравнительных тестах давать ссылки на первоисточники.
В-третьих, вы сравниваете 2 продукта из разных категорий: 3510 - это начальный уровень, а EVA3000 - Mid-range. Соответственно, и цены у них разные, и технические характеристики... Вы сравните с Sun StorEdge 6130 или с Sun StorEdge 6920.
9 ноя 05, 20:21    [2053450] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Alienbem
Member

Откуда:
Сообщений: 45
Сергей Тихонов
Во-вторых, есть предложение, отличающееся новизной: давайте при рассказах о сравнительных тестах давать ссылки на первоисточники.
В-третьих, вы сравниваете 2 продукта из разных категорий: 3510 - это начальный уровень, а EVA3000 - Mid-range. Соответственно, и цены у них разные, и технические характеристики... Вы сравните с Sun StorEdge 6130 или с Sun StorEdge 6920.



никаких первоисточников все тесты проведены на реальных рабочих базах на реальных данных

а что касается того что железо разного класса то тут у нас есть официальное заявление сертифицированных спецов от SUN что он даже круче чем EVA. да по поводу цен я бы тоже поспорил.
14 ноя 05, 13:09    [2065867] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Ден
Member

Откуда: Москва
Сообщений: 1618
Prolog
aleksey_fomchenko
to Prolog
Невозможно, внешнее хранилище обеспечивает надежность хранение данных.
TempDB неважно, там вставка кешируется.
RAID1 для журнала в корпусе сервера тоже обеспечивает надежность. К тому же скорость работы с ним будет выше, к тому можно обеспечить, что на этом диске будет расположен только один журнал транзакций, что также положительно скажется на скорости.
А как решили настроить режимы cache: write back - wrrite trough?
Сам cache с зеркалированием?
Обычно внешние массивы для кластеров используют, а там mssql не позволит перенести файлы на локальный диск..
14 ноя 05, 13:42    [2066030] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Alexander_Chepack
Member

Откуда: London
Сообщений: 3923
Александр Гладченко

Страйпы для записи - наипервейшее зло, именно поэтому НР в свое время на тестах TCP отказался от RAID10 в пользу RAID0.


Смотрел, смотрел - и не хрена не понял. А что это за RAID0 без страйпов??? Это как?
14 ноя 05, 15:30    [2066505] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
chairmen
Member

Откуда:
Сообщений: 58
Тестирование производительности MSA-1000 (внутренний тест 28 фев 2005)
Настройки Intel IOMeter
Transfer Request Size – 8Kb
Percent Random/Sequential Distribution – 100% Random
Reply Size – No Reply
Percent Of Access Specification – 100%
Transfer Delay – 0ms
Burst Length – 1 I/Os
Percent Read/Write Distribution – 34% Write
Align I/Os On – Sector Boundaries

Workers – 16
Результаты

Структура массиваTotal I/Os per SecondThroughput (MB/s)Av.Response Time (ms)Max.Response Time (ms)CPU Utilization (%)
RAID10-14-1282039.6415.97.841750.61.00
RAID10-14-81325.8610.3612.067374.60.68
RAID10-2-8382.212.9941.861140.960.24
RAID6-6-8365.302.8543.801213.110.23
RAID6-6-64679.495.3123.551820.370.36
RAID6-14-64(r)865.626.7618.481902.250.47
RAID6-14-641339.8610.4711.94937.020.68
7xRAID10-2-1281584.8512.3870.671890.740.8
14 ноя 05, 16:04    [2066715] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
ChBRR
Member

Откуда:
Сообщений: 9
Это был HP MSA1000, диски 72Gb 10k, массив подключался к серверу через 2Gb Fiber Channel.

RAID6-14-64(r)
<уровень райд>-<количество дисков в массиве>-<страйп>
(r) - идет ребилд
14 ноя 05, 21:40    [2067765] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
ChBRR
Это был HP MSA1000, диски 72Gb 10k, массив подключался к серверу через 2Gb Fiber Channel.

RAID6-14-64(r)
<уровень райд>-<количество дисков в массиве>-<страйп>
(r) - идет ребилд


Что то меня смущают значения в мегобайтах в секунду... маловато как то...
14 ноя 05, 21:45    [2067772] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Alexander_Chepack

Смотрел, смотрел - и не хрена не понял. А что это за RAID0 без страйпов??? Это как?


В принципе, можно чередование блоков в нулевом уровне назвать страйпами, но у меня как то язык не проворачивается
14 ноя 05, 21:47    [2067775] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
ChBRR
Member

Откуда:
Сообщений: 9
Александр Гладченко
ChBRR
Это был HP MSA1000, диски 72Gb 10k, массив подключался к серверу через 2Gb Fiber Channel.

RAID6-14-64(r)
<уровень райд>-<количество дисков в массиве>-<страйп>
(r) - идет ребилд


Что то меня смущают значения в мегобайтах в секунду... маловато как то...



Кстати, нет. Очень реальные данные, на продуктивных OLTP-системах по виндовым счетчикам бОльшие цифры - редкость.
14 ноя 05, 22:04    [2067803] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
ChBRR
Member

Откуда:
Сообщений: 9
Вот еще характерные данные: 7xRAID10-2-128 - это семь зеркал по два диска в каждом.

Также мы проводили эксперимент:
1) на корзине из 14 дисков создавали массив RAID10 на 12 винтов, размещали на нем таблицу и индексы, и в два потока заливали insertом данные
2) на корзине из 14 дисков создавали два массива RAID10 по 6 винтов в каждом, на один клали данные, на другой индексы, и опять в два потока заливали данные

Разница получилась в пределах погрешности измерений (менее 2%).
14 ноя 05, 22:15    [2067808] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
ChBRR
Вот еще характерные данные: 7xRAID10-2-128 - это семь зеркал по два диска в каждом.

Также мы проводили эксперимент:
1) на корзине из 14 дисков создавали массив RAID10 на 12 винтов, размещали на нем таблицу и индексы, и в два потока заливали insertом данные
2) на корзине из 14 дисков создавали два массива RAID10 по 6 винтов в каждом, на один клали данные, на другой индексы, и опять в два потока заливали данные

Разница получилась в пределах погрешности измерений (менее 2%).


Я всё равно не пойму (может не правильно интерпретирую смысл параметра IOMeter
в вашей таблице, который Throughput MB/s), диск даёт не меньше 300Мб/сек, а у Вас получается для 7xRAID10-2-128 - 12.38Мб/сек
Очень Вам рекомендую пощупать свои массивы ещё и SQLIO.
14 ноя 05, 22:23    [2067818] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Alexander_Chepack
Member

Откуда: London
Сообщений: 3923
Александр Гладченко
Alexander_Chepack

Смотрел, смотрел - и не хрена не понял. А что это за RAID0 без страйпов??? Это как?


В принципе, можно чередование блоков в нулевом уровне назвать страйпами, но у меня как то язык не проворачивается


А по-моему, не можно, а нужно - это же стандартное определение RAID0?
15 ноя 05, 01:34    [2068130] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
ChBRR
Member

Откуда:
Сообщений: 9
Александр Гладченко

Я всё равно не пойму (может не правильно интерпретирую смысл параметра IOMeter
в вашей таблице, который Throughput MB/s), диск даёт не меньше 300Мб/сек, а у Вас получается для 7xRAID10-2-128 - 12.38Мб/сек
Очень Вам рекомендую пощупать свои массивы ещё и SQLIO.


Интерпретируете все совершенно правильно. Только я не совсем понял, откуда вы взяли цифру 300Мб/сек? Даже в случае линейного чтения с поверхности не получается больше 75Мб/с, а уж для случайного чтения блоками по 8кб цифры будут порядка 3Мб/с...

По SQLIO тоже есть данные (правда это уже другой массив, производства IBM, с уровнем избыточности RAID5EE):
параметры запуска:
sqlio > c:\res1.txt -kW –s200 –frandom -o8 -b8 –Fparams.txt

содержимое params.txt:
d:\testio.tmp 1 0x0 1024

Вот что на выходе:
sqlio v1.5.SG
parameter file used: params_e.txt
file e:\testio.tmp with 1 thread (0) using mask 0x0 (0)
1 thread writing for 200 secs to file e:\testio.tmp
using 8KB random IOs
enabling multiple I/Os per thread with 8 outstanding
size of file e:\testio.tmp needs to be: 1073741824 bytes
current file size: 0 bytes
need to expand by: 1073741824 bytes
expanding e:\testio.tmp ... done.
using specified size: 1024 MB for file: e:\testio.tmp
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 344.06
MBs/sec: 2.68
15 ноя 05, 07:42    [2068288] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
ChBRR

Интерпретируете все совершенно правильно. Только я не совсем понял, откуда вы взяли цифру 300Мб/сек? Даже в случае линейного чтения с поверхности не получается больше 75Мб/с, а уж для случайного чтения блоками по 8кб цифры будут порядка 3Мб/с...

По SQLIO тоже есть данные (правда это уже другой массив, производства IBM, с уровнем избыточности RAID5EE):
параметры запуска:
sqlio > c:\res1.txt -kW –s200 –frandom -o8 -b8 –Fparams.txt

содержимое params.txt:
d:\testio.tmp 1 0x0 1024

Вот что на выходе:
sqlio v1.5.SG
parameter file used: params_e.txt
file e:\testio.tmp with 1 thread (0) using mask 0x0 (0)
1 thread writing for 200 secs to file e:\testio.tmp
using 8KB random IOs
enabling multiple I/Os per thread with 8 outstanding
size of file e:\testio.tmp needs to be: 1073741824 bytes
current file size: 0 bytes
need to expand by: 1073741824 bytes
expanding e:\testio.tmp ... done.
using specified size: 1024 MB for file: e:\testio.tmp
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 344.06
MBs/sec: 2.68


Как то это не очень согласуется с тем, что я видел своими глазами: http://www.sql.ru/forum/actualthread.aspx?bid=1&tid=231471&pg=2#2032882

Для SQLIO Вы задаёте слишком маленькую рабочуюю нагрузку, если включено кеширование - то результат будет сильно отличаться от реальных показателей.
Вот, примерно такие настройки были у меня:

7786,18 MBs/sec
sqlio -kR -s1200 -f1024 -i1024 -o1 -b1024 -LP -R0,1,2,3,7,8,9,10,11,12,13,14,15,16,17,18 -aR0xffff -t8
15 ноя 05, 12:48    [2069719] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Alexander_Chepack

А по-моему, не можно, а нужно - это же стандартное определение RAID0?


Хорошо, уговорили :)
15 ноя 05, 13:44    [2070083] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
ChBRR
Member

Откуда:
Сообщений: 9
Александр Гладченко
Как то это не очень согласуется с тем, что я видел своими глазами: http://www.sql.ru/forum/actualthread.aspx?bid=1&tid=231471&pg=2#2032882

Для SQLIO Вы задаёте слишком маленькую рабочуюю нагрузку, если включено кеширование - то результат будет сильно отличаться от реальных показателей.
Вот, примерно такие настройки были у меня:

7786,18 MBs/sec
sqlio -kR -s1200 -f1024 -i1024 -o1 -b1024 -LP -R0,1,2,3,7,8,9,10,11,12,13,14,15,16,17,18 -aR0xffff -t8


Позвольте я немного не соглашусь с вашими опциями :-)

Опция -b1024 задает размер блока операции ввода-вывода равным 1Мб. Но ведь скуль читает-пишет данные блоками по 8Кб! Да и -frandom, как мне кажется, более точно эмулирует OLTP-систему, чем -f1024.

Я взял на себя смелость чуть подкорректировать Вашу строку записи.
sqlio -kR -s120 -f1024 -i1024 -o1 -b8 -LP -aR0xff -t8 s:\testfile.dat
дал следующие результаты:

sqlio v1.5.SG
calibrating timestamp counter for latency timings... done (MHz measured at 1581)
8 threads reading for 120 secs from file s:\testfile.dat
using 8KB IOs over 8192KB stripes with 1024 IOs per run
enabling multiple I/Os per thread with 1 outstanding
affinity mask is 0xff (255) with round robin on processors 0 1 2 3 4 5 6 7
size of file s:\testfile.dat needs to be: 8589934592 bytes
current file size: 0 bytes
need to expand by: 8589934592 bytes
expanding s:\testfile.dat ... done.
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 867.45
MBs/sec: 6.77
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 8
Max_Latency(ms): 226
histogram:
ms: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 0 1 5 9 9 10 11 12 7 4 3 3 3 3 3 2 2 1 1 1 1 1 1 1 4

Это полка HP MSA-1000 с 14 винтами на 300Гб 10000об/с. Массив уровня RAID10, задействованы 12 дисков. Правда, на этих же дисках созданы еще несколько массивов, к которым во время тестирования шли обращения, но там нагрузка не очень большая.

А можно узнать, результат 7786,18 MBs/sec был получен на каком массиве?
15 ноя 05, 13:54    [2070153] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Это были 16 массивов RAID0 по 4 диска в каждом. Диски обычные, по 32Гб (кажется), контроллеры тоже самые обычные (LSI), подключалось всё это тоже к обычному 64-х битному серверу с NUMA архитектурой. Я с сервером работал только удалённо, т.ч. само железо не видел и, боюсь, уже не увижу...
15 ноя 05, 14:09    [2070263] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
ChBRR
Member

Откуда:
Сообщений: 9
Удивительно, просто удивительно! А Вы точно мегабайты с килобайтами не спутали?
15 ноя 05, 14:13    [2070290] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
ChBRR
Удивительно, просто удивительно! А Вы точно мегабайты с килобайтами не спутали?


Чего же удивительного... Вот посомтрите: http://tweakers.net/benchdb/testcombo/257 и это http://tweakers.net/benchdb/test/34
Там максимальные скорости передачи данных для одного диска порядка 71 Мб/сек, в моём же примере было 73 Мб/сек для одного диска.
По поводу того, что SQL Server читает и пишет по 8Кб - это не совсем так. Он оперирует блоками по 8 или 64 Кб, но при чтении происходит склеивание страниц в нужный, запрашиваемый массив. Поэтому, лучше анализировать большую рабочую нагрузку, если Вы занимаетесь оптимизацией дискового I/O.
15 ноя 05, 14:29    [2070390] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
sqlio v1.5.SG
calibrating timestamp counter for latency timings... done (MHz measured at 1589)
8 threads reading for 1200 secs from files 0:, 1:, 2:, 3:, 7:, 8:, 9:, 10:, 11:, 12:, 13:, 14:, 15:, 16:, 17: and 18:
using 1024KB IOs over 1048576KB stripes with 1024 IOs per run
enabling multiple I/Os per thread with 1 outstanding
affinity mask is 0xffff (65535) with round robin on processors 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
NOTE: round robin affinity is uneven - 8 threads is not a multiple of 16 masks
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 7786.18
MBs/sec: 7786.18
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 16
Max_Latency(ms): 11491
histogram:
ms: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 1 9 13 17 15 10 5 3 2 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 16
15 ноя 05, 14:31    [2070401] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
ChBRR
Member

Откуда:
Сообщений: 9
Александр Гладченко
По поводу того, что SQL Server читает и пишет по 8Кб - это не совсем так. Он оперирует блоками по 8 или 64 Кб, но при чтении происходит склеивание страниц в нужный, запрашиваемый массив. Поэтому, лучше анализировать большую рабочую нагрузку, если Вы занимаетесь оптимизацией дискового I/O.


Я не совсем понял, что и куда склеивается:-) но с радостью предоставлю Вам данные соответствующих виндовых счетчиков:

"(PDH-CSV 4.0)","\\PCS\PhysicalDisk(4 D:)\Avg. Disk Bytes/Read","\\PCS\PhysicalDisk(4 D:)\Avg. Disk Bytes/Write","\\PCS\PhysicalDisk(4 D:)\Disk Bytes/sec"
"11/15/2005 17:18:21.607","8192.000000","10541.132948","7340042.235619"
"11/15/2005 17:18:22.607","8192.000000","10805.194805","6665215.236684"
"11/15/2005 17:18:23.607","8192.000000","9824.986784","6708374.510796"
"11/15/2005 17:18:24.607","8192.000000","9903.496855","6323515.962715"
"11/15/2005 17:18:25.607","8192.000000","10397.469244","5932714.542421"
"11/15/2005 17:18:26.607","17294.222222","9696.051200","6216035.872853"
"11/15/2005 17:18:27.607","25941.333333","10509.879518","7134652.812132"
"11/15/2005 17:18:28.607","18022.400000","9503.276018","6391288.517364"
"11/15/2005 17:18:29.607","16384.000000","9861.725830","7045093.368781"
"11/15/2005 17:18:30.607","31597.714286","9723.487179","12358745.148512"
"11/15/2005 17:18:31.607","23405.714286","8854.425876","6734330.918909"
"11/15/2005 17:18:32.607","11995.428571","8783.302256","6177568.544294"
"11/15/2005 17:18:33.607","21504.000000","8943.341301","6906272.814787"
"11/15/2005 17:18:34.607","20650.666667","8964.147275","6210830.508078"
"11/15/2005 17:18:35.607","0.000000","8808.065041","2166929.108680"
"11/15/2005 17:18:36.607","8192.000000","8819.596899","9155860.920150"
"11/15/2005 17:18:37.607","8192.000000","8839.683748","6064386.687410"
"11/15/2005 17:18:38.607","8192.000000","8578.773994","5558406.235426"

На основании этих данных продолжаю уверенно полагать, что скуль оперирует блоками по 8Кб гораздо чаще, чем блоками по 1Мб :-)

А блоки 1Мб - это практически линейное чтение. Разумеется, вы таким способом легко получите 70Мб/с с шпинделя.

Есть еще один тонкий нюанс. Массив из 14 дисков (неважно, какого уровня избыточности) дает скорость линейного однопоточного чтения в точности равную скорости одного диска (именно так! по крайней мере на MSA1000 и DS4300). Соответственно, 14 маленьких массивов позволят прокачивать данные в 14 раз быстрее. Однако, если от однопоточного чтения перейти к многопоточному случайному доступу, картина принципиально меняется - имеет значение только общее количество задействованных шпинделей, а один это диск, или несколько - непринципиально.
15 ноя 05, 15:40    [2070834] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
ChBRR
Александр Гладченко
По поводу того, что SQL Server читает и пишет по 8Кб - это не совсем так. Он оперирует блоками по 8 или 64 Кб, но при чтении происходит склеивание страниц в нужный, запрашиваемый массив. Поэтому, лучше анализировать большую рабочую нагрузку, если Вы занимаетесь оптимизацией дискового I/O.


Я не совсем понял, что и куда склеивается:-) но с радостью предоставлю Вам данные соответствующих виндовых счетчиков:

"(PDH-CSV 4.0)","\\PCS\PhysicalDisk(4 D:)\Avg. Disk Bytes/Read","\\PCS\PhysicalDisk(4 D:)\Avg. Disk Bytes/Write","\\PCS\PhysicalDisk(4 D:)\Disk Bytes/sec"
"11/15/2005 17:18:21.607","8192.000000","10541.132948","7340042.235619"
"11/15/2005 17:18:22.607","8192.000000","10805.194805","6665215.236684"
"11/15/2005 17:18:23.607","8192.000000","9824.986784","6708374.510796"
"11/15/2005 17:18:24.607","8192.000000","9903.496855","6323515.962715"
"11/15/2005 17:18:25.607","8192.000000","10397.469244","5932714.542421"
"11/15/2005 17:18:26.607","17294.222222","9696.051200","6216035.872853"
"11/15/2005 17:18:27.607","25941.333333","10509.879518","7134652.812132"
"11/15/2005 17:18:28.607","18022.400000","9503.276018","6391288.517364"
"11/15/2005 17:18:29.607","16384.000000","9861.725830","7045093.368781"
"11/15/2005 17:18:30.607","31597.714286","9723.487179","12358745.148512"
"11/15/2005 17:18:31.607","23405.714286","8854.425876","6734330.918909"
"11/15/2005 17:18:32.607","11995.428571","8783.302256","6177568.544294"
"11/15/2005 17:18:33.607","21504.000000","8943.341301","6906272.814787"
"11/15/2005 17:18:34.607","20650.666667","8964.147275","6210830.508078"
"11/15/2005 17:18:35.607","0.000000","8808.065041","2166929.108680"
"11/15/2005 17:18:36.607","8192.000000","8819.596899","9155860.920150"
"11/15/2005 17:18:37.607","8192.000000","8839.683748","6064386.687410"
"11/15/2005 17:18:38.607","8192.000000","8578.773994","5558406.235426"

На основании этих данных продолжаю уверенно полагать, что скуль оперирует блоками по 8Кб гораздо чаще, чем блоками по 1Мб :-)

А блоки 1Мб - это практически линейное чтение. Разумеется, вы таким способом легко получите 70Мб/с с шпинделя.

Есть еще один тонкий нюанс. Массив из 14 дисков (неважно, какого уровня избыточности) дает скорость линейного однопоточного чтения в точности равную скорости одного диска (именно так! по крайней мере на MSA1000 и DS4300). Соответственно, 14 маленьких массивов позволят прокачивать данные в 14 раз быстрее. Однако, если от однопоточного чтения перейти к многопоточному случайному доступу, картина принципиально меняется - имеет значение только общее количество задействованных шпинделей, а один это диск, или несколько - непринципиально.


Я и не отрицал, что он оперирует, я только возражал, что он читает по 8 Кб. , что и Видно из Ваших счётчиков:

К сообщению приложен файл. Размер - 10Kb
15 ноя 05, 15:51    [2070896] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Мимо проходил
Guest
aleksey_fomchenko

Делай один массив уровня 10, и нефиг тут париться :) Лучше маштабируемость, велика вероятность обслуживания одной операции ВВ одним шпинделем (они не ерзают синхронно). Используй несколько LUN, выкладывай горячие файлы в начало (известный факт - на внешней области пластины скорость выше). Группируй горячие данные в одной области (меньше время поиска).
15 ноя 05, 16:02    [2070970] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
ChBRR

Есть еще один тонкий нюанс. Массив из 14 дисков (неважно, какого уровня избыточности) дает скорость линейного однопоточного чтения в точности равную скорости одного диска (именно так! по крайней мере на MSA1000 и DS4300). Соответственно, 14 маленьких массивов позволят прокачивать данные в 14 раз быстрее. Однако, если от однопоточного чтения перейти к многопоточному случайному доступу, картина принципиально меняется - имеет значение только общее количество задействованных шпинделей, а один это диск, или несколько - непринципиально.


Я проводил измерения с помощью SQLIO, и, обратите внимание, что для представленного мной результата, число потоков из расчёта на одну строку блоков - 8 потоков, для одного масива. Не трудно подсчитать, сколько потоков было в результате. Т.ч. это всё таки многопоточный результат, хотя чтение ближе к линейному, чем к случайному.
В моём случае, боевая нагрузка смешанная и важно было получить масимальную производительность, близкую к пределу пропускной способности интерфейсов и контроллеров. Не думаю, что оптимизированная таким образом дисковая подсистема будет себя плохо вести на малой рабочей нагрузке, особенно, имея ввиду кеширование...
15 ноя 05, 16:02    [2070972] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
На продакшен сервере имею AVG. Disk Bytes/Read от 50 до 100 KB.
AVG. Disk Bytes/Write 8 - 10 KB

Выходит Александр как вы говорите нужно увеличивать размер физического страйпа на SUN?
до 64 или 128???

Записи намного меньше чем чтения.

Как бы это проверить, так как сложно эмулировать
15 ноя 05, 17:56    [2071577] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
Тестирую IBM DS8000, правда только на 14 дисках.
На верхнем доступе полную виртуализацию.
На нижнем уровне все закинуто в RAID 10.
Получены следующие результаты:

C:\Program Files (x86)\SQLIO>sqlio -kR -frandom -t8 -s60 -f32 -b16 -i256 -BN -LP C:\Data\Catalog_data\testfile.dat 
sqlio v1.5.SG
calibrating timestamp counter for latency timings... done (MHz measured at 3313)
8 threads reading for 60 secs from file C:\Data\Catalog_data\testfile.dat
	using 16KB IOs over 512KB stripes with 256 IOs per run
	buffering set to not use file nor disk caches (as is SQL Server)
	v1.1.1 compatibility enabled - will reuse same I/O run
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 24063.96
MBs/sec:   375.99
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 0
Max_Latency(ms): 3
histogram:
ms: 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 100  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0

Помоему маловато.
24 ноя 06, 15:10    [3447902] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
А если сделать "черпак" побольше? ;)
24 ноя 06, 15:20    [3447974] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Болванщик
Member

Откуда: Киев
Сообщений: 146
Александр Гладченко

Вот Вам пример измерений массива RAID0 из разного числа дисков:

число дисков в массиве123468
прирост7268800
Мб/сек73145213221221221


А скажите: диски были по 10000 об/мин, или -- по 15000 об/мин?
И ещё: RAID10 Вы, случаем, не замеряли?
27 дек 06, 12:57    [3587738] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Болванщик
Александр Гладченко

Вот Вам пример измерений массива RAID0 из разного числа дисков:

число дисков в массиве123468
прирост7268800
Мб/сек73145213221221221


А скажите: диски были по 10000 об/мин, или -- по 15000 об/мин?
И ещё: RAID10 Вы, случаем, не замеряли?


Давно это было... кажется 15К.

Производительность диска сильно зависит от типа тестируемой рабочей нагрузки.
RAID10 хорош на чтении, но запись может пострадать, т.к. контроллеру нужно быдет выполнять дополнительную работу. Некоторые конт роллеры умеют заркалировать RAID0 на разных шинах/каналах и зм счёт этого читать и писать получается много быстрее... дешёвые контроллеры, увы, так не делают, и поэтому сильно проигрывают.

Недавно тестировал один не дорогой массив, по RAID10 получалось что то такое:

Параметры запуска эталонного теста:
sqlio -kR -s600 -f2 -i550000 -o1 -b64 -t1 -LP -R(E->K) -a0xf -BY


Array Disk Virtual Disk Layout Size Device Name Type Read Policy Write Policy Stripe Size
01 E RAID-1 67.75GB Windows Disk 1 SAS No Read Ahead Write-Through 128 KB
0123 F RAID-10 135.50GB Windows Disk 2 SAS No Read Ahead Write-Through 128 KB
456789 G RAID-10 203.25GB Windows Disk 3 SAS No Read Ahead Write-Through 128 KB
7891011121314 H RAID-10 271GB Windows Disk 4 SAS No Read Ahead Write-Through 128 KB
567891011121314 I RAID-10 338.75GB Windows Disk 5 SAS No Read Ahead Write-Through 128 KB
34567891011121314 J RAID-10 406.50GB Windows Disk 6 SAS No Read Ahead Write-Through 128 KB
1234567891011121314 K RAID-10 474.25GB Windows Disk 7 SAS No Read Ahead Write-Through 128 KB


На рисунке показано изменение производительности по чтению от числа дисков в массиве:

К сообщению приложен файл. Размер - 6Kb
27 дек 06, 13:21    [3587931] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Болванщик
Member

Откуда: Киев
Сообщений: 146
А здесь диски были по 10К, или -- по 15К? Я тут прикидываю: сколько дисков какой скорости нужно, что бы полностью загрузить канал и не напихать, при этом, лишних?

И ещё: Вы обращали внимание -- как сказывается на производительности размер кэша RAID-контроллера?
27 дек 06, 13:45    [3588088] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Болванщик
А здесь диски были по 10К, или -- по 15К? Я тут прикидываю: сколько дисков какой скорости нужно, что бы полностью загрузить канал и не напихать, при этом, лишних?

И ещё: Вы обращали внимание -- как сказывается на производительности размер кэша RAID-контроллера?


Тут были 10К.
Что бы проверить пропускную способность канала, протестируйте его с помощью SQLIO ;)

Если Вы заметили, размер нагрузки в моём тесте на много превышал размер кэша контроллера (256Мб). Кроме того, аппаратно кэширование было запрещено...
На большой нагрузке маленький кэш может мешать... Для того, что бы определиться с кэшем, нужно чётко представлять, какой будет средний размер I/O в Ваших запросах. Исходя из этого, можно промоделировать работу кэша с вашим размером нагрузки и с размерами запроса, которые в разных режимах порождает SQL Server. Для ориентира, вот Вам результаты замеров дисковой полки, которые я делал недавно:

К сообщению приложен файл. Размер - 26Kb
27 дек 06, 14:36    [3588468] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Болванщик
Member

Откуда: Киев
Сообщений: 146
Спасибо.
27 дек 06, 15:42    [3588930] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
aleksey_fomchenko
Member

Откуда: Москва
Сообщений: 958
to Александр Гладченко
Александр, а где ты взял эту таблицу?
Или это результаты твоих личных измерений?
Так как многие цифры известны из стандартной документации, то есть какими кусками пишет, читает, резервирует и т.д. данные.
27 дек 06, 16:25    [3589241] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
aleksey_fomchenko
to Александр Гладченко
Александр, а где ты взял эту таблицу?
Или это результаты твоих личных измерений?
Так как многие цифры известны из стандартной документации, то есть какими кусками пишет, читает, резервирует и т.д. данные.


Да нет, не сам я это выдумал... вот ссылка на оригинал: http://blogs.msdn.com/sqlcat/archive/2005/11/17/493944.aspx

...мои измерения только в последней колонке...
27 дек 06, 17:09    [3589513] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Copyright
Member

Откуда: Volgograd=>Moscow=>Volgograd
Сообщений: 1048
Александр Гладченко
aleksey_fomchenko
to Александр Гладченко
Александр, а где ты взял эту таблицу?
Или это результаты твоих личных измерений?
Так как многие цифры известны из стандартной документации, то есть какими кусками пишет, читает, резервирует и т.д. данные.


Да нет, не сам я это выдумал... вот ссылка на оригинал: http://blogs.msdn.com/sqlcat/archive/2005/11/17/493944.aspx

...мои измерения только в последней колонке...


УХ - ты я этот топик как-то раньше не видел - вот это обсуждение

Александр - а еще ссылок интересных по поводу практических исследований не кинете!!!
27 дек 06, 18:11    [3589822] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Copyright

УХ - ты я этот топик как-то раньше не видел - вот это обсуждение

Александр - а еще ссылок интересных по поводу практических исследований не кинете!!!


Отчего же не кинуть :) Часть интересного я уже перевёл: http://www.sql.ru/articles/Publications.shtml#151
Интересная вайтпейпа сейчас публикуется в переводе рассылкой: http://www.sql.ru/subscribe/2006/337.shtml#21

Актуальна и поучителна статья Jim Gray: Windows 2000 Disk IO Performance

А без этого вообще ничего не понять: Disk Subsystem Performance Analysis for Windows

Это тоже стоит почитать:
Improving SQL Server Performance
Physical Database Storage Design
28 дек 06, 09:01    [3590959] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Существуют ещё разного рода обзоры, типа такого: Тесты RAID-контроллеров PCI Express уровня SMB/SOHO
29 дек 06, 10:59    [3596574] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Вот ещё одна статейка на глаза попалась: Производительность, вместимость и… ничего лишнего
12 янв 07, 10:38    [3630953] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
SergeyD
Member

Откуда:
Сообщений: 22
Добрый день.
Я хотел бы спросить людей тех, кто пользовался внешними хранилищами данных. Как я помню Oracle не видит сетевых дисков, так каким образом к серверу баз данных подключается сервер-хранилице что бы данные хранимые в хранилище были доступны серверу БД?
19 янв 07, 10:12    [3664764] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
SergeyD
Добрый день.
Я хотел бы спросить людей тех, кто пользовался внешними хранилищами данных. Как я помню Oracle не видит сетевых дисков, так каким образом к серверу баз данных подключается сервер-хранилице что бы данные хранимые в хранилище были доступны серверу БД?


Поясните свой вопрос. Причём тут сетевые диски и какой то Оракл? SQL Server может работать с файлами баз данных, расположенных на сетевых дисках (NAS), если включить специальный флаг трассировки.
19 янв 07, 10:45    [3665046] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Prolog
Member

Откуда: Москва
Сообщений: 2417
SergeyD
Добрый день.
Я хотел бы спросить людей тех, кто пользовался внешними хранилищами данных. Как я помню Oracle не видит сетевых дисков, так каким образом к серверу баз данных подключается сервер-хранилице что бы данные хранимые в хранилище были доступны серверу БД?
Логические диски из SAN-хранилища видны на сервере как локальные.
19 янв 07, 12:41    [3666184] Ответить | Цитировать    Сообщить модератору

 Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Antoshka
Member

Откуда:
Сообщений: 322
Подниму несомненно, полезную тему.

У нас есть массив DS4700, в нём 16 дисков FC. Решено оставить два диска в хот-спаре, а остальные 14 объединить в один массив RAID10 (уже протестировали разные конфигурации, решили остановится на этой), который уже порезать на LUN'ы: для логов и для данных. Имеет ли смысл выделять ещё один LUN для tempdb, или же её можно смело бросить к основным данным?
Я склоняюсь к созданию ещё одного LUN, только не вижу явных преимуществ, ведь диски-то будут задействованы одни и те же.
23 мар 07, 17:31    [3935287] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Antoshka
Подниму несомненно, полезную тему.

У нас есть массив DS4700, в нём 16 дисков FC. Решено оставить два диска в хот-спаре, а остальные 14 объединить в один массив RAID10 (уже протестировали разные конфигурации, решили остановится на этой), который уже порезать на LUN'ы: для логов и для данных. Имеет ли смысл выделять ещё один LUN для tempdb, или же её можно смело бросить к основным данным?
Я склоняюсь к созданию ещё одного LUN, только не вижу явных преимуществ, ведь диски-то будут задействованы одни и те же.


Вы бы хоть пояснили причины столь не очевидного выбора?
23 мар 07, 20:54    [3935924] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
АлексейК
Member

Откуда: http://www.msdatabase.ru , Moscow
Сообщений: 7454
Александр Гладченко

... Актуальна и поучителна статья Jim Gray: [url=http://research.microsoft.com/research/pubs/view.aspx? ...


я бы усомнился относительно слова "актуально"
вплоть до наоборот.

статья безнадежно устарела,
там позиционируется что в системах с pci 33 узким местом является именно эта шина
однако уже давно появилась шина PCIE а в новых чипсетах интегрированные контроллеры уже
не используют pci в качестве моста между контроллером и памятью, сравнивать SCSI и IDE
уже никто не станет, а скорее сравнивали бы SATA2 и SCSI

здесь описание чипсета i965 с указанием скорости передачи внутренних шин (по русски) если кому интересно
25 мар 07, 21:01    [3937802] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Welcoming
Guest
Александр Гладченко
Antoshka
Подниму несомненно, полезную тему.

У нас есть массив DS4700, в нём 16 дисков FC. Решено оставить два диска в хот-спаре, а остальные 14 объединить в один массив RAID10 (уже протестировали разные конфигурации, решили остановится на этой), который уже порезать на LUN'ы: для логов и для данных. Имеет ли смысл выделять ещё один LUN для tempdb, или же её можно смело бросить к основным данным?
Я склоняюсь к созданию ещё одного LUN, только не вижу явных преимуществ, ведь диски-то будут задействованы одни и те же.


Вы бы хоть пояснили причины столь не очевидного выбора?


Почему не очевидного? А как бы Вы посоветовали?
30 мар 07, 13:27    [3960875] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Welcoming

Почему не очевидного? А как бы Вы посоветовали?


Я бы посоветовал провести тесты под Ваш тип и объём нагрузки.
30 мар 07, 14:36    [3961375] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Welcoming
Guest
Александр Гладченко
Welcoming

Почему не очевидного? А как бы Вы посоветовали?


Я бы посоветовал провести тесты под Ваш тип и объём нагрузки.


Александр, а в случае, если хочется потестировать одновременно чтение и запись на одном LUN, необходимо запускать одновременно два экземпляра SQLIO? Как это вообще делается корректно? А размер кластера в NTFS играет большую роль? Рекомендуют, скажем, форматировать раздел с Allocation Unit = 64K...?
Речь идет о нагрузке порождаемой OLTP. Средний размер обращения к диску 8 кб
30 мар 07, 20:24    [3963305] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Welcoming

Александр, а в случае, если хочется потестировать одновременно чтение и запись на одном LUN, необходимо запускать одновременно два экземпляра SQLIO? Как это вообще делается корректно? А размер кластера в NTFS играет большую роль? Рекомендуют, скажем, форматировать раздел с Allocation Unit = 64K...?
Речь идет о нагрузке порождаемой OLTP. Средний размер обращения к диску 8 кб


Тестируйте раздельно, в "смешивании" я большого смысла не вижу... впрочем, если поделитесь результатами сравнения смешанной и не сешанной нагрузки, будет интересно на это посмотреть :)

Размер кластера должен коррелироваться с физическим размером блока, часто рекомендуют их делать одинаковыми (поэтому основная масса = 64). Я же предпочетаю RAW.
Расхожий миф, что размер рабочей нагрузки OLTP равен 8Кб. Если бы сервер ел такой маленькой ложкой, его бы на рынке никто и никогда не заметил ;) Ориентируйтесь лучше на эти цифры:
http://www.sql.ru/forum/actualthread.aspx?bid=1&tid=231471&pg=3#3588468
...в 2005 есть небольшие изменения (в большую сторону).
30 мар 07, 22:23    [3963418] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Welcoming
Guest
Александр Гладченко
Я же предпочетаю RAW.
Расхожий миф, что размер рабочей нагрузки OLTP равен 8Кб. Если бы сервер ел такой маленькой ложкой, его бы на рынке никто и никогда не заметил ;) Ориентируйтесь лучше на эти цифры:
http://www.sql.ru/forum/actualthread.aspx?bid=1&tid=231471&pg=3#3588468
...в 2005 есть небольшие изменения (в большую сторону).


А SQL 2005 умеет работать с RAW? В лоб не нашел упоминаний... Про 8Кб взято из счетчиков perfmon на конкретной задаче. Цифры видел, естественно, спасибо. Перечитываю топик не первый раз. Думаю...
31 мар 07, 10:20    [3963952] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Welcoming

А SQL 2005 умеет работать с RAW? В лоб не нашел упоминаний... Про 8Кб взято из счетчиков perfmon на конкретной задаче. Цифры видел, естественно, спасибо. Перечитываю топик не первый раз. Думаю...


Да, поддерживает: http://msmvps.com/blogs/gladchenko/archive/2006/12/26/452761.aspx

SQL Server резервирует страницами, поэтому и счётчики все меряются в страницах... вопрос в том, сколько в запрос ввода-вывода попадает и склеивается страниц...
31 мар 07, 16:46    [3964280] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
v1talll
Member

Откуда:
Сообщений: 2
Спасибо, Александр, за ссылку. А ПМ на форуме есть?
2 апр 07, 04:56    [3965959] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
v1talll
Спасибо, Александр, за ссылку. А ПМ на форуме есть?


А что такое ПМ?
2 апр 07, 11:18    [3966708] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
v1talll
Member

Откуда:
Сообщений: 2
Это Private Message.
3 апр 07, 05:27    [3970493] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
v1talll
Это Private Message.


Нету, увы.
28 сен 07, 13:49    [4730257] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Muxey
Member

Откуда:
Сообщений: 2
Извините, но может кто-нибудь поможет с конфигурированием:

ProLiant DL 380 два штуки подключаются к MSA 1000 через FibreChannel.
в MSA 10 дисков, объединенные по два RAID 1+0, таким образом имеем 5 дисков.
Диски распределены между серваками - 2 юзает первый, второй - 3.
А теперь вопрос - где настраивается какой диск к какому серверу относится?

Блин, сам это все сделал 2 года назад и больше не лазил, а теперь вот надо переделать и сижу туплю 2 день, вроде все уже облазил, но не могу найти.
2 ноя 07, 14:35    [4870647] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Muxey
Member

Откуда:
Сообщений: 2
Вопрос снят, нашел наконец-то.
3 ноя 07, 10:43    [4873538] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
landy
Member

Откуда:
Сообщений: 436
В связи с вышеперечисленным так и не нашел ответа на следующий вопрос.
Имеется EVA-4000, MSSQL-2000. Дисковая подсистема достаточно производительная, но есть
такой параметр - как длина очереди на чтение/запись к логическому диску(счетчик в Windows).
Непонятно - какая дисциплина используется для обслуживания этих очередей?
Те вопрос в следующем - если скажем FIFO, то запрос скажем на чтение к логическому диску находящийся в начале данной очереди и достаточно длинный по времени, даже при наличии достаточно производительной дисковой подсистемы, задерживает другие даже более короткие запросы в очереди к логическому диску? Т е в целом производительность прикладной системы на запросах данной категории будет "проседать"?
Следует ли из этого, что в целом для повышения производительности прикладной системы, а не только дискового массива, требуется создавать большее количество логических дисков и разносить по ним наиболее загруженные таблицы БД, увеличивая тем самым число логических очередей и разгружая одну по нескольким? (то же самое касательно операций записи)
7 ноя 07, 08:26    [4882887] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
landy
В связи с вышеперечисленным так и не нашел ответа на следующий вопрос.
Имеется EVA-4000, MSSQL-2000. Дисковая подсистема достаточно производительная, но есть
такой параметр - как длина очереди на чтение/запись к логическому диску(счетчик в Windows).
Непонятно - какая дисциплина используется для обслуживания этих очередей?
Те вопрос в следующем - если скажем FIFO, то запрос скажем на чтение к логическому диску находящийся в начале данной очереди и достаточно длинный по времени, даже при наличии достаточно производительной дисковой подсистемы, задерживает другие даже более короткие запросы в очереди к логическому диску? Т е в целом производительность прикладной системы на запросах данной категории будет "проседать"?
Следует ли из этого, что в целом для повышения производительности прикладной системы, а не только дискового массива, требуется создавать большее количество логических дисков и разносить по ним наиболее загруженные таблицы БД, увеличивая тем самым число логических очередей и разгружая одну по нескольким? (то же самое касательно операций записи)


Если очередь к массиву, это сумма запросов ввода вывода ожидающих в очередях. Очередей, обычно, столько - сколько шпинделей. Именно поэтому для обслуживания большого числа пользователей выгодно "размазывать" базу по большому числу шпинделей и использовать несколько файлов. Однако, кэш контроллера в случае превосходящего его размер запроса ввода-вывода может оказаться как раз тем узким местом, не позволяющим эффективно обслужить подсистеме многопользовательскую нагрузку.
7 ноя 07, 09:01    [4882952] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Маннанов Рустем
Member

Откуда: Kazan City
Сообщений: 351
landy
В связи с вышеперечисленным так и не нашел ответа на следующий вопрос.
Имеется EVA-4000, MSSQL-2000. Дисковая подсистема достаточно производительная, но есть
такой параметр - как длина очереди на чтение/запись к логическому диску(счетчик в Windows).
Непонятно - какая дисциплина используется для обслуживания этих очередей?
Те вопрос в следующем - если скажем FIFO, то запрос скажем на чтение к логическому диску находящийся в начале данной очереди и достаточно длинный по времени, даже при наличии достаточно производительной дисковой подсистемы, задерживает другие даже более короткие запросы в очереди к логическому диску? Т е в целом производительность прикладной системы на запросах данной категории будет "проседать"?
Следует ли из этого, что в целом для повышения производительности прикладной системы, а не только дискового массива, требуется создавать большее количество логических дисков и разносить по ним наиболее загруженные таблицы БД, увеличивая тем самым число логических очередей и разгружая одну по нескольким? (то же самое касательно операций записи)


Немного поправлю Александра - очередей столько, сколько логических дисков(томов) доступно системе, тома же в свою очередь, могут включать в себя от 1 до N аппаратных шпинделей - в зависимости от конфигурации вашго дискового массива.

В общем в правильном направлении мыслите. Но можете наступить на грабли такого плана: допустим есть одна большая таблица, не помещающаяся в Buffer Cache, на таблице есть индекс. От приклада поступает "абстрактно большое" число запросов в плане которого есть "абстрактно много" Index Seek по этой таблице. При вынесении этой таблицы на отдельный шпиндель можете почувствовать проседание производительности, т.к. один шпиндель не сможет обслуживать большое количество random-чтений\записей в отличие от пачки шпинделей(в 10 Raidе например).
Это не призыв строить 10 Raidы для абсолютно любых баз - просто необходимо адекватно оценить нагрузку на вашу систему.
7 ноя 07, 10:23    [4883278] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
landy
Member

Откуда:
Сообщений: 436
У нас физических дисков 8 - т е шпинделей 8 (или 6)? Собраны в RAID10
Нарезаны группы и отображены в логические диски
Но к каждому логическому диску в ОС Windows одна очередь, а не 8
Т е - ОС не работает и не знает сколько там шпинделей - она работает с логическими дисками
Что там внутри самой EVA - это другой вопрос
Интересует именно очередь со стороны ОС и MS SQL - как она обслуживается

Вопрос собственно из следующего вырос
Была система с БД на OracleRDB на MSA-1000. Из-за специфики работы OpenVMS с логическими дисками рекомендовалось именно большое количество этих логических дисков.
После перехода на EVA - сделали один логический диск(почему - другой вопрос)
EVA по общей производительности где-то в 5 раз быстрее MSA
НО
общая производительность системы на MSA с большим количеством логических дисков
в 5 раз была выше чем та же система на EVA, где EVA в 5 раз быстрее MSA

Вот и интересует - как организовать правильно логически работу на MS SQL
7 ноя 07, 10:24    [4883284] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
landy
Member

Откуда:
Сообщений: 436
АГА - пока писал, еще ответ появился
Т е для разгрузки логических очередей на уровне системы имеет смысл создавать большее количество логических дисков и выносить на них наиболее нагруженные таблицы/индексы(соответственно на разные логические диски).
Т е при достаточной производительности дисковой подсистемы это может дать прирост в скорости?
7 ноя 07, 10:31    [4883329] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Маннанов Рустем
Member

Откуда: Kazan City
Сообщений: 351
landy
У нас физических дисков 8 - т е шпинделей 8 (или 6)? Собраны в RAID10
Нарезаны группы и отображены в логические диски
Но к каждому логическому диску в ОС Windows одна очередь, а не 8
Т е - ОС не работает и не знает сколько там шпинделей - она работает с логическими дисками
Что там внутри самой EVA - это другой вопрос
Интересует именно очередь со стороны ОС и MS SQL - как она обслуживается

Вопрос собственно из следующего вырос
Была система с БД на OracleRDB на MSA-1000. Из-за специфики работы OpenVMS с логическими дисками рекомендовалось именно большое количество этих логических дисков.
После перехода на EVA - сделали один логический диск(почему - другой вопрос)
EVA по общей производительности где-то в 5 раз быстрее MSA
НО
общая производительность системы на MSA с большим количеством логических дисков
в 5 раз была выше чем та же система на EVA, где EVA в 5 раз быстрее MSA

Вот и интересует - как организовать правильно логически работу на MS SQL


ИМХО - я бы не стал сравнивать Oracle и MSSQL в таком контексте. Может быть у вас приложение просто не оптимизировано под SQL Server.

Еще ИМХО как необходимо поступить:
1. Профайлером выдернуть запросы с большим Reads\Writes
2. Составить перечень таблиц по этим запросам.
3. Опустить таблицы, гарантированно помещающиеся в Buffer Cache(при условии что у вас с Buffer Cache hit ratio нет проблем)
4. Прогнать тяжелые запросы с с SET STATISTICS IO ON
5. Думать что можно со всем этим сделать.
7 ноя 07, 10:35    [4883344] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Маннанов Рустем

...Немного поправлю Александра - очередей столько, сколько логических дисков(томов) доступно системе, тома же в свою очередь, могут включать в себя от 1 до N аппаратных шпинделей - в зависимости от конфигурации вашго дискового массива...


http://www.sql.ru/articles/mssql/03121001PERF_COUNTERs.shtml#7
7 ноя 07, 10:48    [4883455] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Маннанов Рустем
Member

Откуда: Kazan City
Сообщений: 351
Александр Гладченко
Маннанов Рустем

...Немного поправлю Александра - очередей столько, сколько логических дисков(томов) доступно системе, тома же в свою очередь, могут включать в себя от 1 до N аппаратных шпинделей - в зависимости от конфигурации вашго дискового массива...


http://www.sql.ru/articles/mssql/03121001PERF_COUNTERs.shtml#7


Оттуда же))

Обычно дисковое устройство содержит один шпиндель, а RAID - массив имеют несколько шпинделей. Аппаратные RAID - массивы представляются в системном мониторе в виде единого диска, а программно организованные дисковые массивы, в виде нескольких томов (экземпляров). Наблюдение за счетчиками физического диска может вестись как для каждого физического диска, так и для всех дисков компьютера (используя экземпляр "_Total").Статистика отдельных дисков RAID массива недоступна, её можно получить с помощью поставляемого к RAID-контроллеру программного обеспечения. Также, при использовании аппаратных дисковых массивов, значение счетчика LogicalDisk| PhysicalDisk\% Disk Time может превышать 100%. Для определения среднего числа системных запросов, ожидающих доступа к диску, используйте в таких случаях счетчик PhysicalDisk\Avg. Disk Queue Length.
7 ноя 07, 10:50    [4883461] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
landy
У нас физических дисков 8 - т е шпинделей 8 (или 6)? Собраны в RAID10
Нарезаны группы и отображены в логические диски
Но к каждому логическому диску в ОС Windows одна очередь, а не 8
Т е - ОС не работает и не знает сколько там шпинделей - она работает с логическими дисками
Что там внутри самой EVA - это другой вопрос
Интересует именно очередь со стороны ОС и MS SQL - как она обслуживается

Вопрос собственно из следующего вырос
Была система с БД на OracleRDB на MSA-1000. Из-за специфики работы OpenVMS с логическими дисками рекомендовалось именно большое количество этих логических дисков.
После перехода на EVA - сделали один логический диск(почему - другой вопрос)
EVA по общей производительности где-то в 5 раз быстрее MSA
НО
общая производительность системы на MSA с большим количеством логических дисков
в 5 раз была выше чем та же система на EVA, где EVA в 5 раз быстрее MSA

Вот и интересует - как организовать правильно логически работу на MS SQL


Лучше создайте для своего вопроса новую тему. В этой теме на Ваши вопросы уже несколько раз отвечали :) ...Вы должны понимать характер рабочей нагрузки и уже под него строить дисковую подсистему, тестируя последнюю средствами, например, SQLIO.
7 ноя 07, 10:55    [4883493] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
landy
Member

Откуда:
Сообщений: 436
Извините, но я все же отвечу в эту ветку.
Меня не интересует загрузка физических шпинделей и общая производительность дисковой подсистемы в моем вопросе.
Если шпиндели сбалансирлованы по нагрузке (что EVA сама делает динамически как утверждает производитель) и быстрая дисковая подсистема наиболее предпочтительня - то в этом у меня вопросов нет.
Скорость работы прикладной системы зависит не только от скорости работы дисков, но и от того
сколько "народу толкается в дудку - читай логическую очередь к диску H, M, и т п"
Если она одна - то это ИМХО плохо, нужно распараллелить это дело. Или не обязательно?

ЗЫ. Про Oracle RDB - это как пример, что одна и та же система, но на более медленной дисковой системе работает быстрее. Приложение которое сейчас пытаемся оптимизировать изначально было на MS SQL.
Во всех ссылках выше нигде не увидел вразумительного ответа про количество очередей к ЛОГИЧЕСКОМУ диску, а не к физическому шпинделю.
2 Маннанов Рустем : я понял Вас, спасибо
7 ноя 07, 11:56    [4883997] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Попробую пояснить ещё раз :) Очередь к "логичемкому" диску - это "логическая" очередь. У SQL Server нет средств сопоставить эту очередь тому, как реально упорядочивает запросы ввода-вывода контроллер дисковой подсистемы. Каждый вендор делает это по своему и поведение отлично для контроллеров разных ценовых диапазонов даже у одного вендора.
Если нет возможности последовать предыдущей рекомендации, обратитесь за рекомендациями к вендору.
7 ноя 07, 12:27    [4884285] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Anatoly Podgoretsky
Member

Откуда:
Сообщений: 41060
автор
Это не призыв строить 10 Raidы для абсолютно любых баз - просто необходимо адекватно оценить нагрузку на вашу систему.

А стоит призывать, поскольку хуже не будет, а будет лучше.
7 ноя 07, 13:47    [4884858] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
landy
Member

Откуда:
Сообщений: 436
Александр Гладченко
Очередь к "логичемкому" диску - это "логическая" очередь. У SQL Server нет средств сопоставить эту очередь тому, как реально упорядочивает запросы ввода-вывода контроллер дисковой подсистемы.


Мне не интересено КАК упорядочивает запросы контроллер, меня интересует как ОС обрабатывает логическую очередь.
Если в очереди имеются запросы к дисковой системе - запрос1, запрос2, запрос3 и тд
При этом запрос1 длинный и эксклюзивный, будет ли ОС передавать запрос2 или будет дожидаться
окончания работы запрос1? Т е FIFO дисциплина. Или же логическая очередь обрабатывается как
RoundRobin или как sporadic или еще как?
7 ноя 07, 14:02    [4884967] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Маннанов Рустем
Member

Откуда: Kazan City
Сообщений: 351
landy

Если шпиндели сбалансирлованы по нагрузке (что EVA сама делает динамически как утверждает производитель) и быстрая дисковая подсистема наиболее предпочтительня - то в этом у меня вопросов нет.
2 Маннанов Рустем : я понял Вас, спасибо


Пожалуйста)

1. Добавлю немного:
ЕВА сама ничего не делает - её как и любую другую железку затачивают настройками и разбивкой под конкретную задачу.

2. Вообще в контексте данной темы хотелось бы сделать небольшое лирическое отступление.

Абстрактно изображу схему подсистемы ввода-вывода SQL Server-а для СХД аналогичной вашей. От железа к SQL Server-у. Разделение по уровню абстракции от предыдущего уровня. Просьба сильно не критиковать т.к. все достаточно условно,на пальцах и не претендует на литературный труд.

--Уровень СХД(EVA\Clariion и.т.п.)
1. Физический диск(конкретный диск с пластинами, головками и.т.п.).
2.Т.н. RAID Group - группа физических дисков на которых можно нарезать LUNы с определенными RAID level. В одной Raid Group может быть 1, а может быть много LUN. (LUN - Logical UNit)
3. LUN - Logical Unit - т.н. "логический диск СХД" определенного RAID Levela(1,5,6,1/0,5/0). 1 LUN обычно отображается в 1 PhysicalDisk/Disk Device Операционной системы.
4. т.н. MetaLUN(в терминологии EMC, не помню как это у HP называется) - пачка LUN'ов - используется для динамического приращения LUN-ов. В случае использования MetaLUNов - 1 MetaLUN отображается в 1 PhysicalDisk/Disk Device Операционной системы, и в то же время содержит несколько LUN ов.
--Уровень OS
4. Physical Disk - дисковой устойство с назначенным IRQ\DMA и.т.п.
5. Logical Disk - логический диск ОС с файловой системой. На 1 Physical Disk м.б. много Logical Disk.
6. Файловая система.
7. Файл БД SQL Server на файловой системе.

Я к чему - узким местом может стать ЛЮБОЙ уровень от 1 до 7. Крайне важно осознанно принимать решения о той или иной конфигурации каждого уровня - иначе ваш полученный перфоманс будет отличаться на порядок от идеального. Также очень важны настройки Storage Processor-ов СХД - политики кеширования, упереждающее чтение, количество памяти выделяемое под те или иные кеши, и.т.п. Подробного конфига вашей системы я не знаю, потому любой совет - "пальцем в абстрактное небо".

Насчет "сколько народу толкается в дудку - читай логическую очередь к диску H, M, и т п".
ИМХО если СХД в состоянии обрабатывать 1 "логическую" очередь и длинна этой очереди не превышает "идеальных" показателей - смысла в разбивке БД по группам и разнесения по отдельным дискам\лунам для решения производительности дисковой подсистемы не вижу. Другое дело, когда эта очередь есть. Но это уже совершенно другой вопрос.

Все вышесказанное сугубо ИМХО. Спасибо всем кто осилил много букв))
7 ноя 07, 14:24    [4885138] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Маннанов Рустем
Member

Откуда: Kazan City
Сообщений: 351
landy
Александр Гладченко
Очередь к "логичемкому" диску - это "логическая" очередь. У SQL Server нет средств сопоставить эту очередь тому, как реально упорядочивает запросы ввода-вывода контроллер дисковой подсистемы.


Мне не интересено КАК упорядочивает запросы контроллер, меня интересует как ОС обрабатывает логическую очередь.
Если в очереди имеются запросы к дисковой системе - запрос1, запрос2, запрос3 и тд
При этом запрос1 длинный и эксклюзивный, будет ли ОС передавать запрос2 или будет дожидаться
окончания работы запрос1? Т е FIFO дисциплина. Или же логическая очередь обрабатывается как
RoundRobin или как sporadic или еще как?


Сгенерьте 2 большие таблицы в 1 файловую группу - и запустите параллельно 2 запроса с Table Scan-ом этих таблиц - увидите что тут далеко не FIFO. И что по-вашему значит "длинный и эксклюзивный" относительно запроса?
7 ноя 07, 14:30    [4885182] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
landy

Мне не интересено КАК упорядочивает запросы контроллер, меня интересует как ОС обрабатывает логическую очередь.
Если в очереди имеются запросы к дисковой системе - запрос1, запрос2, запрос3 и тд
При этом запрос1 длинный и эксклюзивный, будет ли ОС передавать запрос2 или будет дожидаться
окончания работы запрос1? Т е FIFO дисциплина. Или же логическая очередь обрабатывается как
RoundRobin или как sporadic или еще как?


ОС не имеет право менять порядок запросов ввода-вывода в рамках одного потока, который установило приложение. Контроллер и сам диск тоже так поступать не может. иначе, они нарушат последовательность операций. http://www.sql.ru/articles/Publications.shtml#151

SQL Server использует системные API для обслуживания запросов ввода-вывода. Поэтому ОС будет делать то, что ей укажет SQL Server. Задействованные механизвы много сложнее, чем описанные вами примеры тривиальных алгоритмов.
7 ноя 07, 14:35    [4885221] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Crazy_Driver
Member

Откуда: Москва
Сообщений: 638
Вставлю свои 5 копеек.

Очередь появляется или не появляется в зависимости от того, умеел ли приложение выполнять асинхронные запросы к дисковой системе. SQL Server умеет, а значит на запросах, приводящих к table scan и других, где требуется чтение боьшого количества данных, будет образовываться очередь, которую и будет обрабатывать контроллер массива. А контроллер при наличии очереди включает механизм лифтового поиска, что многократно снижает нагрузку на диски и увеличивает производительность дисковой системы. При этом порядок запросов переупорядочнивается. К тому же есть и работает механизм Tagged Queue:

Маркированные очереди - Tagged Queue - определены в SCSI-2 для логических устройств LUN (но не TRN). Здесь для каждой связи I_T_L может существовать своя очередь размером до 256 процессов (немаркированные очереди можно считать вырожденным случаем маркированных с одноместными очередями). Каждый процесс, использующий маркированные очереди, идентифицируется связью I_T_L_Q, где Q - однобайтный тег очереди (Queue Tag). Теги процессам назначаются инициатором, их значения на порядок выполнения операций не влияют. Постановка в очередь выполняется через механизм сообщений, при этом очередной процесс можно поставить в очередь "по-честному", а можно и пропихнуть вне очереди: процесс, поставленный в очередь с сообщением Head Of Queue Tag, будет выполняться сразу после завершения текущего активного процесса. Процессы, поставленные в очередь с сообщением Simple Queue Tag, исполняются целевым устройством в порядке, который оно сочтет оптимальным (для инициатора он будет произвольным). Процесс, поставленный в очередь с сообщением Ordered Queue Tag, будет исполняться только после всех, поставленных в очередь до него. Инициатор может и удалить конкретный процесс из очереди, сославшись на него по тегу. Изменение порядка выполнения команд целевым устройством не касается порядка команд в цепочке, поскольку цепочка принадлежит одному процессу, а в очередь ставятся именно процессы.
7 ноя 07, 15:08    [4885458] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Crazy_Driver
Вставлю свои 5 копеек.

Очередь появляется или не появляется в зависимости от того, умеел ли приложение выполнять асинхронные запросы к дисковой системе. SQL Server умеет, а значит на запросах, приводящих к table scan и других, где требуется чтение боьшого количества данных, будет образовываться очередь, которую и будет обрабатывать контроллер массива. А контроллер при наличии очереди включает механизм лифтового поиска, что многократно снижает нагрузку на диски и увеличивает производительность дисковой системы. При этом порядок запросов переупорядочнивается. К тому же есть и работает механизм Tagged Queue:

Маркированные очереди - Tagged Queue - определены в SCSI-2 для логических устройств LUN (но не TRN). Здесь для каждой связи I_T_L может существовать своя очередь размером до 256 процессов (немаркированные очереди можно считать вырожденным случаем маркированных с одноместными очередями). Каждый процесс, использующий маркированные очереди, идентифицируется связью I_T_L_Q, где Q - однобайтный тег очереди (Queue Tag). Теги процессам назначаются инициатором, их значения на порядок выполнения операций не влияют. Постановка в очередь выполняется через механизм сообщений, при этом очередной процесс можно поставить в очередь "по-честному", а можно и пропихнуть вне очереди: процесс, поставленный в очередь с сообщением Head Of Queue Tag, будет выполняться сразу после завершения текущего активного процесса. Процессы, поставленные в очередь с сообщением Simple Queue Tag, исполняются целевым устройством в порядке, который оно сочтет оптимальным (для инициатора он будет произвольным). Процесс, поставленный в очередь с сообщением Ordered Queue Tag, будет исполняться только после всех, поставленных в очередь до него. Инициатор может и удалить конкретный процесс из очереди, сославшись на него по тегу. Изменение порядка выполнения команд целевым устройством не касается порядка команд в цепочке, поскольку цепочка принадлежит одному процессу, а в очередь ставятся именно процессы.


Спасибо за краткое и доходчивое изложение алгоритма :) Может ссылочки есть на более детальные материалы? (так, что бы без "лишней" конкретики)
7 ноя 07, 15:30    [4885620] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
landy
Member

Откуда:
Сообщений: 436
Маннанов Рустем
Сгенерьте 2 большие таблицы в 1 файловую группу - и запустите параллельно 2 запроса с Table Scan-ом этих таблиц - увидите что тут далеко не FIFO. И что по-вашему значит "длинный и эксклюзивный" относительно запроса?

Да - все работает, проверил. насчет "эксклюзивный" не берите в голову, это я от OpenVMS приплел
7 ноя 07, 15:41    [4885711] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
landy
Member

Откуда:
Сообщений: 436
Короче - "queue" в данном контексте, это не объект очередь со своей дисциплиной обслуживания, максимальной длиной и т п. Т е ее нет, это просто расчетная величина.
The Avg. Disk Queue Length counter is derived from the product of Avg. Disk sec/Transfer multiplied by Disk Transfers/sec, which is the average response of the device times the I/O rate. Again, this corresponds to a well-known theorem of Queuing Theory called Little's Law, which states:

N = A * Sr
where N is the number of outstanding requests in the system, A is the arrival rate of requests, and Sr is the response time. So the Avg. Disk Queue Length counter is an estimate of the number of outstanding requests to the (Logical or Physical) disk. This includes any requests that are currently in service at the device, plus any requests that are waiting for service. If requests are currently waiting for the device inside the SCSI device driver layer of software below the diskperf filter driver, the Current Disk Queue Length counter will have a value greater than 0. If requests are queued in the hardware, which is usual for SCSI disks and RAID controllers, the Current Disk Queue Length counter will show a value of 0, even though requests are queued.

Since the Avg. Disk Queue Length counter value is a derived value and not a direct measurement, you do need to be careful how you interpret it. Little's Law is a very general result that is often used in the field of computer measurement to derive a third result when the other two values are measured directly. However, Little's Law does require an equilibrium assumption in order for it be valid. The equilibrium assumption is that the arrival rate equals the completion rate over the measurement interval. Otherwise, the calculation is meaningless. In practice, this means you should ignore the Ave Disk Queue Length counter value for any interval where the Current Disk Queue Length counter is not equal to the value of Current Disk Queue Length for the previous measurement interval.

само название "queue" сбило с толку. Т е Увеличение логических дисков в ОС для стойки в принципе может и не привести к увеличению пропускной способности системы, все зависит от того как реализован драйвер устройства и очередь запросов в нем(имеется ввиду не виртуальная/расчетная очередь, а именно объект queue)
8 ноя 07, 07:54    [4888327] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Crazy_Driver
Member

Откуда: Москва
Сообщений: 638
landy

само название "queue" сбило с толку. Т е Увеличение логических дисков в ОС для стойки в принципе может и не привести к увеличению пропускной способности системы, все зависит от того как реализован драйвер устройства и очередь запросов в нем(имеется ввиду не виртуальная/расчетная очередь, а именно объект queue)

Очередь обслуживает не драйвер, а непосредственно устройство, если оно поддерживает очереди команд.
8 ноя 07, 10:32    [4888868] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
landy
Member

Откуда:
Сообщений: 436
То, про что Вы говорите - я понимаю. Имелась ввиду "очередь" которая счетчик в ОС. Т е она не очередь на самом деле в том смысле что у нее нет дисциплины обслуживания и т п.
8 ноя 07, 11:28    [4889330] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Интересная статья в тему: Deployments and Tests in an iSCSI SAN
15 янв 08, 10:48    [5152829] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Antoshka
Member

Откуда:
Сообщений: 322
Что означает параметр -o утилиты SQLIO?
19 июн 08, 17:10    [5822304] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под польшие объемы данных > 1TB   [new]
Alexander_Chepack
Member

Откуда: London
Сообщений: 3923
Glory
Я же склонен к разбивке на несколько RAID 10, отдельно под данные, индексы, лог, tempdb
Если система внешняя, то доступ будет все равно по одному "шлангу". И "рулить" будет внутренний контроллер внешнего устройства.


Почему по одному? У нас по 6-ти.
19 июн 08, 18:37    [5822861] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Alexander_Chepack
Member

Откуда: London
Сообщений: 3923
Я не помню чем именно мы руководствовались, но мы группирем максимально возможно количество дисков в один volume, а потом на этом volume создаем несколько LUNs.

Regards,

http://attphotos.smugmug.com
19 июн 08, 18:40    [5822874] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Antoshka
Что означает параметр -o утилиты SQLIO?


http://www.sql.ru/subscribe/2005/273.shtml#20
20 июн 08, 09:23    [5824218] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Alexander_Chepack
Я не помню чем именно мы руководствовались, но мы группирем максимально возможно количество дисков в один volume, а потом на этом volume создаем несколько LUNs.


Как раз интересно, чем вы руководствовались? ...SQL Server много лучше любой железки балансирует нагрузку между файлами...
20 июн 08, 09:26    [5824229] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Alexander_Chepack
Member

Откуда: London
Сообщений: 3923
Александр Гладченко
Alexander_Chepack
Я не помню чем именно мы руководствовались, но мы группирем максимально возможно количество дисков в один volume, а потом на этом volume создаем несколько LUNs.


Как раз интересно, чем вы руководствовались? ...SQL Server много лучше любой железки балансирует нагрузку между файлами...


А какое отношение это имеет к размазыванию одного файла по 20-ти шпинделям?
20 июн 08, 13:57    [5826426] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Alexander_Chepack
Александр Гладченко
Alexander_Chepack
Я не помню чем именно мы руководствовались, но мы группирем максимально возможно количество дисков в один volume, а потом на этом volume создаем несколько LUNs.


Как раз интересно, чем вы руководствовались? ...SQL Server много лучше любой железки балансирует нагрузку между файлами...


А какое отношение это имеет к размазыванию одного файла по 20-ти шпинделям?


дык, прямое... одно дело, собрать из 20 один массив, а другое, например, 10 маленьких... не удивлюсь, если разница будет просто огромной :)
20 июн 08, 15:01    [5826998] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Alexander_Chepack
Member

Откуда: London
Сообщений: 3923
Александр Гладченко
Alexander_Chepack
Александр Гладченко
Alexander_Chepack
Я не помню чем именно мы руководствовались, но мы группирем максимально возможно количество дисков в один volume, а потом на этом volume создаем несколько LUNs.


Как раз интересно, чем вы руководствовались? ...SQL Server много лучше любой железки балансирует нагрузку между файлами...


А какое отношение это имеет к размазыванию одного файла по 20-ти шпинделям?


дык, прямое... одно дело, собрать из 20 один массив, а другое, например, 10 маленьких... не удивлюсь, если разница будет просто огромной :)


а двести баз данных на системе из 150 дисков как размещать будете?
21 июн 08, 04:27    [5829556] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Александр Гладченко
Member

Откуда: Москва
Сообщений: 9579
Посмотрю вначале, какой поток ввода-вывода каждый файл этих баз создаёт, а там видно будет, как лучше разместить... Одно радует, что не на 20 дисках :)
21 июн 08, 12:50    [5829713] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Интересуюсь
Guest
Простите что я тут со своим самоваром влезаю... :) Есть в наличии IBM DS4700 model 70, 16 FCHDD 15k, создана одна raid-group, которая побита на несколько LUN. Тестирую с такими же параметрами, что и уважаемый aleksey_fomchenko (у него DS8000). Вот что в итоге:

C:\Program Files (x86)\SQLIO>sqlio -kR -frandom -t8 -s60 -f32 -b16 -i256 -BN -LP d:\testfile.dat
sqlio v1.5.SG
calibrating timestamp counter for latency timings... done (MHz measured at 2985)
8 threads reading for 60 secs from file d:\testfile.dat
using 16KB IOs over 512KB stripes with 256 IOs per run
buffering set to not use file nor disk caches (as is SQL Server)
v1.1.1 compatibility enabled - will reuse same I/O run
size of file d:\testfile.dat needs to be: 134217728 bytes
current file size: 104857600 bytes
need to expand by: 29360128 bytes
expanding d:\testfile.dat ... done.
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 3038.39
MBs/sec: 47.47
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 367170910
Max_Latency(ms): -38
histogram:
ms: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 83 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 17

По-моему несколько маловато :( Где я неправ?
2 дек 08, 15:33    [6514638] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Интересуюсь
Guest
Однако, дополнения. Предыдущий тест был выполнен с виртуальной машины win2k8 ent x64 (Hyper-V). Сейчас попробовал на виртуалке win2k3 R2 x32, данные несколько отличаются:

C:\Program Files\SQLIO>sqlio -kR -frandom -t8 -s60 -f32 -b16 -i256 -BN -LP c:\testfile.dat
sqlio v1.5.SG
calibrating timestamp counter for latency timings... done (MHz measured at 2958)
8 threads reading for 60 secs from file c:\testfile.dat
using 16KB IOs over 512KB stripes with 256 IOs per run
buffering set to not use file nor disk caches (as is SQL Server)
v1.1.1 compatibility enabled - will reuse same I/O run
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 16275.58
MBs/sec: 254.30
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 0
Max_Latency(ms): 68
histogram:
ms: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 99 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Сижу, чешу репу :)
2 дек 08, 16:09    [6514994] Ответить | Цитировать    Сообщить модератору

 Re: Конфигурация внешних RAID массивов под большие объемы данных > 1TB   [new]
Интересуюсь
Guest
И еще результаты. С виртуальной машины win2k8 ent x64 на два диска (оба отдельные LUN на одном хранилище, все параметры идентичны, кроме размеров), диск C:\ (252GB) - системный (на нем установлена вирт.машина), диск D:\ (400GB) - с базой ms sql 2005, отдан виртуалке как passthrought диск. Результаты отличаются НА ПОРЯДОК

C:\Program Files (x86)\SQLIO>sqlio -kR -frandom -t8 -s60 -f32 -b16 -i256 -BN -LP c:\testfile.dat
sqlio v1.5.SG
calibrating timestamp counter for latency timings... done (MHz measured at 2986)
8 threads reading for 60 secs from file c:\testfile.dat
        using 16KB IOs over 512KB stripes with 256 IOs per run
        buffering set to not use file nor disk caches (as is SQL Server)
        v1.1.1 compatibility enabled - will reuse same I/O run
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 40069.61
MBs/sec:   626.08
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 896713858
Max_Latency(ms): -39
histogram:
ms: 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 58  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0 42


C:\Program Files (x86)\SQLIO>sqlio -kR -frandom -t8 -s60 -f32 -b16 -i256 -BN -LP d:\testfile.dat
sqlio v1.5.SG
calibrating timestamp counter for latency timings... done (MHz measured at 2976)
8 threads reading for 60 secs from file d:\testfile.dat
        using 16KB IOs over 512KB stripes with 256 IOs per run
        buffering set to not use file nor disk caches (as is SQL Server)
        v1.1.1 compatibility enabled - will reuse same I/O run
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec:  4129.88
MBs/sec:    64.52
latency metrics:
Min_Latency(ms): 0
Avg_Latency(ms): 375616768
Max_Latency(ms): -1
histogram:
ms: 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 82  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0 17
2 дек 08, 16:31    [6515154] Ответить | Цитировать    Сообщить модератору

Топик располагается на нескольких страницах: 1 2 3 4 5 6   вперед  Ctrl      [все]
Все форумы / Microsoft SQL Server Ответить
Rambler's Top100 Powered by ActualForum 1.5.2 Copyright (c) Alex Sibilev 2000-2010