Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 отличия Oracle на unix и на windows  [new]
greensmart
Member

Откуда:
Сообщений: 337
господа

прошу поделиться информацией,
знающих принципиальные отличия в реализации Oracle на указанных OS

в первую очередь интересуют моменты доступа к дисковой подсистеме
и использования кеша данных

спасибо
12 мар 08, 22:50    [5402978]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
beemer
Member

Откуда: Москва
Сообщений: 262
greensmart
господа

прошу поделиться информацией,
знающих принципиальные отличия в реализации Oracle на указанных OS

в первую очередь интересуют моменты доступа к дисковой подсистеме
и использования кеша данных

спасибо


Ну а документацию-то почему нельзя почитать? религия не позволяет?
http://download.oracle.com/docs/cd/B19306_01/win.102/b14304/ap_unix.htm
13 мар 08, 10:13    [5403729]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
greensmart
Member

Откуда:
Сообщений: 337
beemer

Ну а документацию-то почему нельзя почитать? религия не позволяет?
http://download.oracle.com/docs/cd/B19306_01/win.102/b14304/ap_unix.htm


спасибо
13 мар 08, 10:45    [5403934]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
Pir
Member

Откуда: Москва
Сообщений: 872
недавно обсуждалось тут,тут
13 мар 08, 10:45    [5403936]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
onstat-
Member

Откуда:
Сообщений: 6941
greensmart
господа

прошу поделиться информацией,
знающих принципиальные отличия в реализации Oracle на указанных OS

в первую очередь интересуют моменты доступа к дисковой подсистеме
и использования кеша данных

спасибо


Самое главное отличие в распределении памяти и архитектуре процессов(нитей).

На unix системах выделяется разделяемая память.
Все пулы ( SGA ) находятся в этой памяти.
Посмотреть эту память можно командой ipcs.
Она доступна нескольким процессам ( сервеные процессы, и пользовательские процессы)
С точки зрения ОС это это разные процессы, их можно посмотреть командой ps.





В Windows архитектуре вся память выделяется внутри одного процесса, серверные процессы( нити) и пользовательские процессы(нити) организованы в виде нитей Windows NT.

С точки зрения ввода вывода особых различий нет, чтение производится синхронно
пользовательскими процессами (нитями), запись асинхронно серверным процессами(нитями) dbwr.
13 мар 08, 10:45    [5403940]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
onstat-
Member

Откуда:
Сообщений: 6941
beemer



http://download.oracle.com/docs/cd/B19306_01/win.102/b14304/ap_unix.htm



Вопрос риторический:

автор

All Oracle Database background, dedicated server, and client processes are threads of the master Oracle Database Windows process, and all threads of the Oracle Database process share resources. This multithreaded architecture is highly efficient, allowing fast context switches with low overhead.



Влияние скорости переключения ничтожно мала, так как бутылочное горлышко не в самом
переключении, а в семафорах и мутексах и латчах внутри oracle.
Пример на пальцах:
пользовательская сессия взводит латч, например на LRU chain , не успевает
все, что ей нужно сделать и снять латч до того, как ОС снимет ее контекст с выполнения.
Этот латч провисит до следующего контекста этой нити, при этом другие сессии не смогут воспользоваться этим LRU chain.
Мне кажется (ИМХО) это основная причина ожидания на LRU chain которые многие DBA имели возможность наблюдать.

Меня интересует документация описывающая согласование конткестов процессов( нитей) и мутексов , симафоров, латчей внутри oracle.
Если у кого то есть такое описание, буду премного благодарен.

p.s. Тема интересна не только применительно к Oracle , а вобще к созданию систем реального времени. Oracle просто как пример.
13 мар 08, 12:37    [5404958]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
OracleX
Member

Откуда:
Сообщений: 1998
http://www.nocoug.org/download/2004-11/Conquering_Ora_Latch_Conten_1d.pdf
13 мар 08, 14:03    [5405579]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
OracleX
Member

Откуда:
Сообщений: 1998
http://oraclemaniacs.blogspot.com/2007/01/oracle.html

Там советуют книгу:
Oracle8i Internal Services for Waits, Latches, Locks, and Memory
by Steve Adams

Если нужно, могу выложить.
13 мар 08, 14:08    [5405620]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
_slow=false
Member

Откуда: x$ksppcv
Сообщений: 88
greensmart
прошу поделиться информацией

Рекомендую:
Note:45967.1 "20 Differences Between Oracle on NT and Oracle on Unix"
Note:48681.1 "Server Architecture on UNIX and NT"
13 мар 08, 14:57    [5406061]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
onstat-
Member

Откуда:
Сообщений: 6941
OracleX

http://oraclemaniacs.blogspot.com/2007/01/oracle.html



Спасибо за ссылки,
особенно понравилось это обсуждение.

:)


OracleX

Там советуют книгу:
Oracle8i Internal Services for Waits, Latches, Locks, and Memory
by Steve Adams

Если нужно, могу выложить.


Если Вас не затруднит, можете дать ссылку.

Спасибо.
13 мар 08, 16:46    [5407024]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
OracleX
Member

Откуда:
Сообщений: 1998
http://ifolder.ru/5720667
13 мар 08, 18:01    [5407549]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
Scott Tiger
Member

Откуда: вмваре
Сообщений: 6876
onstat-

Влияние скорости переключения ничтожно мала


За базар ответишь? :)
13 мар 08, 18:14    [5407637]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
onstat-
Member

Откуда:
Сообщений: 6941
Scott Tiger
onstat-

Влияние скорости переключения ничтожно мала


За базар ответишь? :)


Я чем то не неправ?
Аргументы есть ?
13 мар 08, 19:01    [5407816]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
Alex Roudnev
Member

Откуда: Валнут Крик, Калифорния
Сообщений: 5547
Scott Tiger
onstat-

Влияние скорости переключения ничтожно мала


За базар ответишь? :)


На больших серверах начинает влиять даже время поиска в табличке страниц - не случайно рекомендуется при памяти 16ГБ и больше, если много сессий, использовать hugetlb (разница до 30 процентов).

Хотя время переключения контекста я действительно исключил бы из рассмотрения - особой роли в случае оракла не играет.
13 мар 08, 20:59    [5408061]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
Scott Tiger
Member

Откуда: вмваре
Сообщений: 6876
onstat-
Scott Tiger
onstat-

Влияние скорости переключения ничтожно мала


За базар ответишь? :)


Я чем то не неправ?
Аргументы есть ?


Собственно, я хотел бы услышать сначала аргументы, подтверждающие твоё высказывание. Иначе говоря, как так особенно написан Oracle (относительно других приложений), что десятки тысяч переключений контекста в секунду (в среднем по больнице) не оказывают значимого влияния на производительность.
14 мар 08, 09:57    [5408848]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
onstat-
Member

Откуда:
Сообщений: 6941
Scott Tiger
onstat-
Scott Tiger
onstat-

Влияние скорости переключения ничтожно мала


За базар ответишь? :)


Я чем то не неправ?
Аргументы есть ?


Собственно, я хотел бы услышать сначала аргументы, подтверждающие твоё высказывание. Иначе говоря, как так особенно написан Oracle (относительно других приложений), что десятки тысяч переключений контекста в секунду (в среднем по больнице) не оказывают значимого влияния на производительность.


ИМХО Их влияние по сравнению с другими факторами очень мало.
Я только начинаю изучать эту тему, и по этому просил соответствующую литературу.
Ознакомиться с ней в полном обьеме я еще не успел.

Если Вы мне дадите ссылку на документ и цитату в котором написано, что oracle гарантирует (контролирует) захват и освобождения латча(мутекса) в пределах одно контекста выполнения, я соглашусь, что скорость переключения контекста имеет существенное влияние на производительность.

За документ это описывающий буду премного благодарен.

Дайте Ваши агрументы, приведите критерии ожидания в Oracle, влияние которых еще меньше чем скорость переключения контекста ОС.
14 мар 08, 10:33    [5409084]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
_slow=false
Member

Откуда: x$ksppcv
Сообщений: 88
onstat-
Я только начинаю изучать эту тему...
Вот поэтому и трындеть-то не надо :)

P.S. Падобраму, канешна :)
14 мар 08, 11:10    [5409441]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
onstat-
Member

Откуда:
Сообщений: 6941
_slow=false
onstat-
Я только начинаю изучать эту тему...
Вот поэтому и трындеть-то не надо :)

P.S. Падобраму, канешна :)


В разделе нет права на ИМХО ?
Покажите где я не прав, я даже сказал какой информации мне будет достаточно что бы
признать свою неправоту.
Или аргументируйте мою не правоту конструктивно по другому, так как Вам будет удобно.

Может я залез в священную запретную зону, доступную только избранным?

Наезд по доброму , не приравнивается к наезду :)
14 мар 08, 11:22    [5409563]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
onstat-
Member

Откуда:
Сообщений: 6941
Scott Tiger

....... как так особенно написан Oracle (относительно других приложений)........



Мне извесны офтопные приложения, где реализована невытесняющая многозадачность
внутри процесса ОС .
При работе на нескольких процессорах с использованием processor affinity
приложение контролирует логическую непрерывность контекста выполнения внутренней нити
относительно других нитей при захвате и освобождении сериализуемых ресурсов внутри приложения.


Что касается Oracle я хотел найти вот это и нашел:

Adams

Preemption control enables Oracle to suspend the operation of the normal
operating system process preemption mechanism during performance-critical
operations—in particular, when holding a latch. This means that the Oracle
process can continue to run on its CPU until it explicitly enables preemption
again, or until it blocks on an operating system event such as an I/O request,
semaphore operation, or page fault. The process will not be pre-empted at the
end of its time-slice by a higher priority process of the time-sharing priority class.
This means that operations protected by latches complete as quickly as possible,
and so the risk of latch contention is greatly reduced. If preemption control is
available to Oracle, it is used by default unless disabled using the
_NO_PREEMPT parameter.


Но настораживает то, что в седующем разделе говорится о спининге йилдинге,
видимо в синхронизации контекстов выполнения и сериализации доступа нитей(процессов) не совсем

Adams
the risk of latch contention is greatly reduced.


Разбираюсь дальше.

2 OracleX преогромнейшее спасибо за интреснейшее чтиво.
14 мар 08, 17:19    [5412690]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
Scott Tiger
Member

Откуда: вмваре
Сообщений: 6876
onstat-
Scott Tiger
onstat-
Scott Tiger
onstat-

Влияние скорости переключения ничтожно мала


За базар ответишь? :)


Я чем то не неправ?
Аргументы есть ?


Собственно, я хотел бы услышать сначала аргументы, подтверждающие твоё высказывание. Иначе говоря, как так особенно написан Oracle (относительно других приложений), что десятки тысяч переключений контекста в секунду (в среднем по больнице) не оказывают значимого влияния на производительность.


ИМХО Их влияние по сравнению с другими факторами очень мало.


всё тот же Льюис
On a large and busy system, context switching normally consumes between 1% and 3% of CPU time.


На мой взгляд, 1-3% - это уже много. По поводу preemption, affinity control и проч. - всё верно, но эти фичи платформоспецифичны. Опять же, в основной своей массе, они направлены на снижение количества переключений контекста.
14 мар 08, 19:19    [5413144]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
Scott Tiger
Member

Откуда: вмваре
Сообщений: 6876
Scott Tiger


всё тот же Льюис
On a large and busy system, context switching normally consumes between 1% and 3% of CPU time.


Сорри, спутал братьев-близнецов :)
14 мар 08, 19:21    [5413147]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
!статист
Guest
Scott Tiger
На мой взгляд, 1-3% - это уже много.


Много - это 50-3000%. А 1-3% - это мышиный анонизм.

P.S. Просто умильнуться, за какие мегаценные знания на местах народу деньги платят. А главное - мораль то в чём?
Опять разработчики в PCTFREE промазали или не учли влияние уже и этого параметра в запросе?
14 мар 08, 21:24    [5413391]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
onstat-
Member

Откуда:
Сообщений: 6941
!статист

Опять разработчики в PCTFREE промазали или не учли влияние уже и этого параметра в запросе?


Можете дать ссылку на подробное описание.

з.ы. Доступ на металинк есть.
14 мар 08, 22:10    [5413460]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
!стёб
Guest
onstat-
Можете дать

Забей, это был просто стёб
15 мар 08, 00:11    [5413701]     Ответить | Цитировать Сообщить модератору
 Re: отличия Oracle на unix и на windows  [new]
Alex Roudnev
Member

Откуда: Валнут Крик, Калифорния
Сообщений: 5547
onstat-
beemer



http://download.oracle.com/docs/cd/B19306_01/win.102/b14304/ap_unix.htm



Вопрос риторический:

автор

All Oracle Database background, dedicated server, and client processes are threads of the master Oracle Database Windows process, and all threads of the Oracle Database process share resources. This multithreaded architecture is highly efficient, allowing fast context switches with low overhead.



Влияние скорости переключения ничтожно мала, так как бутылочное горлышко не в самом
переключении, а в семафорах и мутексах и латчах внутри oracle.
Пример на пальцах:
пользовательская сессия взводит латч, например на LRU chain , не успевает
все, что ей нужно сделать и снять латч до того, как ОС снимет ее контекст с выполнения.
Этот латч провисит до следующего контекста этой нити, при этом другие сессии не смогут воспользоваться этим LRU chain.
Мне кажется (ИМХО) это основная причина ожидания на LRU chain которые многие DBA имели возможность наблюдать.

Меня интересует документация описывающая согласование конткестов процессов( нитей) и мутексов , симафоров, латчей внутри oracle.
Если у кого то есть такое описание, буду премного благодарен.

p.s. Тема интересна не только применительно к Oracle , а вобще к созданию систем реального времени. Oracle просто как пример.


С каких пор Оракл стал системой реального времени??
15 мар 08, 03:26    [5413835]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Oracle Ответить