Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Async IO HP-UX  [new]
ganza
Member

Откуда: Украина, Киев
Сообщений: 320
Всем привет!

Есть следующая проблема.

Имеем 2 сервера HP-UX 11.23 Itanium.

На этих двух серверах стоит RAC 10.2(patch 10.2.0.2), на одном из серверов стоит база 10.2 EE(patch 10.2.0.2)

На 2 серверах используются raw устройства, настроен async io по доке с metalink.

При поднятии некластероной базы все процессы используют устройство /dev/async(fuser -u /dev/async), значит async io используется.

При поднятии кластерной базы(неклстерная база потушена) устройство /dev/async используют только DBWR процессы, остальные серверные процессы и процессы пользователей не используют /dev/async, напрашиваются мысли что async io используется не всеми процессами.

Может кто сталкивался с такой ситуацией ??
27 фев 07, 17:52    [3839087]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
denix1
Member

Откуда: Киев
Сообщений: 4656
ganza

При поднятии кластерной базы(неклстерная база потушена) устройство /dev/async используют только DBWR процессы, остальные серверные процессы и процессы пользователей не используют /dev/async, напрашиваются мысли что async io используется не всеми процессами.

Может кто сталкивался с такой ситуацией ??

практически та же байда,
с 10.2.0.2 в РАКовой конфигурации /dev/async открыт только DBWRайтером
точно сейчас не помню, но кажется на голом 10.2.0.2 - без обновлений
процессов использующих /dev/async было побольше

с другой стороны
Note:139272.1
4.0 Checking that Asynchronous i/o is being used
================================================
Async i/o is being used if both the following are true:
a. /dev/async is open by DBWR
b. the relevant init.ora partameter is set (see Section 2.2)
c. the datafiles are on raw devices
To check if /dev/async is open by DBWR, do one of:
i. % fuser /dev/async
ii. % lsof -p <dbwr pid>
lsof can be downloaded from ftp://vic.cc.purdue.edu/pub/tools/unix/lsof
iii. use glance/gpm to check files opened by DBWR
1 мар 07, 16:32    [3849677]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
ganza
Member

Откуда: Украина, Киев
Сообщений: 320
И как быть в этой ситуации?

А самое главное, говорит ли это о том, что другие процессы кроме DBWR не используют async io ?
2 мар 07, 17:40    [3855777]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
ganza
Member

Откуда: Украина, Киев
Сообщений: 320
DBWR понятно пишет блоки, а если есть direc read и write операции которые идут мимо буфферого кеша ....
2 мар 07, 18:31    [3856121]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
denix1
Member

Откуда: Киев
Сообщений: 4656
ganza
DBWR понятно пишет блоки, а если есть direc read и write операции которые идут мимо буфферого кеша ....

direct read и write не подразумевает их асинхронности,
да и нужны они большей частью для сортировок...

вот вошел я в маленький ступор, на предмет нужна ли асонхронность серверному процессу
при чтении блоков с диска ?
с асинхронностью записи все понятно, а вот с чтением блоков?...
проще говоря - чем может еще заниматься серверный процесс,
когда ему нужен блок с диска ? наверно только ждать...
5 мар 07, 17:05    [3865164]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
//go sysin dd *
Guest
denix1
проще говоря - чем может еще заниматься серверный процесс,
когда ему нужен блок с диска ? наверно только ждать...
select * from v$sysstat where name like '%prefetch%';
5 мар 07, 17:20    [3865262]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
denix1
Member

Откуда: Киев
Сообщений: 4656
//go sysin dd *
denix1
проще говоря - чем может еще заниматься серверный процесс,
когда ему нужен блок с диска ? наверно только ждать...
select * from v$sysstat where name like '%prefetch%';

интересное предположение - вот только чего-то мне кажется что prefetch относится
к предварительному чтению нескольких дополнительных блоков при выполнении
операции одноблочного чтения, т.е. серверный процесс сам не инициитует операции
предварительного чтение в то время когда ему нечем заняться, в виду того что еще не
закончилась операция асинхронного вывода, а запрашивает чуть больше последовательных
блоков чем необходимо для операции одноблочного чтение

могу ошибаться...

может есть ссылка на описалово ?
5 мар 07, 17:50    [3865491]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
ganza
Member

Откуда: Украина, Киев
Сообщений: 320
Привет всем!

А как насчет параллельного выполнения запроса?
Именно в этом случае для direct write и direct read нужна асинхронность, или я неправ?
5 мар 07, 18:52    [3865876]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
denix1
Member

Откуда: Киев
Сообщений: 4656
ganza
А как насчет параллельного выполнения запроса?
Именно в этом случае для direct write и direct read нужна асинхронность, или я неправ?

для параллельного запроса всё должно быть так же как и для непараллельного
по крайней мере для одноблочного и многоблочного чтения
direct write и direct read вроде как для сортировок...

вот бы старшие товарисчи подключились к прояснению ситуации..
5 мар 07, 19:02    [3865920]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
Ааз
Member

Откуда: Москва/Протвино
Сообщений: 4274
denix1
вот бы старшие товарисчи подключились к прояснению ситуации..
Че там и кем открыто (без RAC и с async) менее важно, чем системные вызовы, которые реально используются. Что ежели попользовать tusc для обоих случаев (rac_on и rac_off), и половить асинхронные вызовы от обычных (не фоновых) процессов?

Всего
PS. С готовыми ответами в этот раз туго. Кажеццо, что асинхронные чтения не пользуются Oracle, но доказать не могу :-)
5 мар 07, 19:53    [3866076]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
Я и ёжик
Member

Откуда: СПб
Сообщений: 1815
Ааз
Кажеццо, что асинхронные чтения не пользуются Oracle, но доказать не могу :-)

Doc ID: Note:76323.1 Type: WHITE PAPER. Asynchronous Reads: Performance Implications
5 мар 07, 20:03    [3866103]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
Ааз
Member

Откуда: Москва/Протвино
Сообщений: 4274
Я и ёжик
...
Интересно... Спасибо.
"when parallel full table scans are invoked (because this is when asynchronous reads are invoked)"

Всего
PS. Как тебе удаеццо выходить на "Oracle Confidential" ? Гыыы.
5 мар 07, 20:24    [3866167]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
Я и ёжик
Member

Откуда: СПб
Сообщений: 1815
Будешь смеятся, кнопочкой "search" и Knowledge Browser ;)
5 мар 07, 20:31    [3866179]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
//go sysin dummy
Guest
Ааз
Интересно... Спасибо.
"when parallel full table scans are invoked (because this is when asynchronous reads are invoked)"
Андрей, prefetch при обычном, не параллельном FTS, используется давно (вроде как минимум с 8.1, но могу ошибаться - старческий маразм :) при включенном асинх. i/o.
Начиная с 9.0 (вроде) Oracle при включенном асинх. i/o prefetch (одноблочные) использует и при index range scan. В 10.2 IRS уже даже становятся мультиблочными :)

Ааз
С готовыми ответами в этот раз туго
Леденцов переел?
5 мар 07, 21:54    [3866421]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
ganza
Member

Откуда: Украина, Киев
Сообщений: 320
Коллеги, как должен выглядеть системный вызов для async io на HP-UX(хочу потрейсить через tusc)?


В доках оракла четко сказано - посмотрите сколько процессов используют /dev/async, если используют, то будем вам счастье.

В HP-UX 11.11 так все и есть, в версии 11.23 похоже все по другому...
6 мар 07, 11:10    [3868138]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
Ааз
Member

Откуда: Москва/Протвино
Сообщений: 4274
//go sysin dummy
Леденцов переел?
Неа. Честно говоря, что касается async read... Не уделял внимания, ибо подумаешь - отдельный пользователь ;-). Вот DBWR/LGWR - да, эти всем нужны.

А вообще, интересная, надо сказать, тема поднялась. Автору - риспекты.

Как отключается (если отключается) async read в RAC - это просто цена [L|P]IO задирается для CBO, или же грубо и нагло юзаются другие операции при работе с файлами... Гхммм... Покопать, что ли? Это к масштабированию DSS, OLAP и иже с ними может иметь прямое отношение...

Всего
6 мар 07, 15:15    [3870381]     Ответить | Цитировать Сообщить модератору
 Re: Async IO HP-UX  [new]
//go sysin dd dummy
Guest
Ааз
Не уделял внимания, ибо подумаешь - отдельный пользователь ;-)
Гы-ы-ы-... :)

Ааз
Гхммм... Покопать, что ли?
Покопай :-)
Может тебе будет интересно, как выполняется FTS большой таблицы без опции CACHE + async_io (намек - используются одновременно 2 группы блоков по db_file_multiblock_read_count штук). Исследовал достаточно давно, но вряд ли что-то кардинально изменилось. На счет pin'ов не исследовал, но думаю, что они не снимаются с этих блоков до конца очередного fetch или до конца FTS, если эта операция внутри плана. Соответственно, экономия на CBC latches ;-)

Есть косвенные (не проверял) признаки того, что алгоритм prefetch используется и при откате транзакций ;-)
6 мар 07, 20:10    [3872355]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить