powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / СУБД Informix
25 сообщений из 216, страница 4 из 9
СУБД Informix
    #33718489
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat-
Я правильно понял?
Правильно, собственная реализация невытесняющай многозадачности внутри потоков(процессов) ОС, у информикса вытесняющая.

Я администрирую сервера oracle с 800-ю одновременными коннектами в режиме dedicated, сейчас память дешевая, 4-8 гиг не проблема, основная часть времени отклика в моих oltp уходит отнюдь не на переключение контекста (такая система (ждем блокировки в основном)), и это нормально, т.е. вместо того чтобы переделывать архитектуру, оптимизировать что-то, дешевле докупить озу, цпу (в моем случае) и хорошо.
...
Рейтинг: 0 / 0
СУБД Informix
    #33718499
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat-
Я правильно понял?

наверно да, запрос к сиквенсу будет болтатся в очереди SGA пока не осободится dedicated процесс ... еще в оракле есть connection pool прямо в бд, RAC и прочая помогающая обслуживать тысячи конектов, но я не недогоняю какое отношение это имеет к "процессы vs нити" ? речь идет о том, что в режиме dedicated под виндой (x86 как минимум) оракл работает как один процесс с тучей нитей, под *NIXами как туча процессов, как говорилось на металинке нитевой вариант пришлось изобретать из-за проседанием под нагрузкой первых winNT с процессами.
...
Рейтинг: 0 / 0
СУБД Informix
    #33718531
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!!
недогоняю какое отношение это имеет к "процессы vs нити" ? речь идет о том, что в режиме dedicated под виндой (x86 как минимум) оракл работает как один процесс с тучей нитей, под *NIXами как туча процессов, как говорилось на металинке У информикса и оракла собственная "программная" реализация многозадачности внутри процессов (nix), нитей (win).
...
Рейтинг: 0 / 0
СУБД Informix
    #33718547
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журавлев ДенисУ информикса и оракла собственная "программная" реализация многозадачности внутри процессов (nix), нитей (win).

и ты хочешь сказать что у оракла реализация не вытесняющая ?
...
Рейтинг: 0 / 0
СУБД Informix
    #33718572
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!! onstat-
Я правильно понял?

наверно да, запрос к сиквенсу будет болтатся в очереди SGA пока не осободится dedicated процесс ... еще в оракле есть connection pool прямо в бд, RAC и прочая помогающая обслуживать тысячи конектов, но я не недогоняю какое отношение это имеет к "процессы vs нити" ? речь идет о том, что в режиме dedicated под виндой (x86 как минимум) оракл работает как один процесс с тучей нитей, под *NIXами как туча процессов, как говорилось на металинке нитевой вариант пришлось изобретать из-за проседанием под нагрузкой первых winNT с процессами.

Мы тут обсуждаем достоинства собственной многозадачности которая организована в ядре informix.
Если выражаться терминологией oralce MTC сервер (Виртальный процессор)
одновременно обрабатывает несколько пользовательских сессий(нитей)
и если одна из них заснула на ожидании данных с диска
а для другой нет никаких ограничений для выполнения
( все данные доступны) , виртуальный процессор
прейдет к выполнению этой другой сессии(нити) без переключения
контекстов в ОС и прочих накладных расхордов.
А первая проснется тогда когда для нее будут доступны все необходимые для выполненияя данные.
В идеале в многпроцессроной системе при привязке виртуалного
процессора к физическому процессу системы (affinity)
на физическом процессоре выполняется только код мотора СУБД.

Наверное у вас получилась подмена понятий процесс(нить) в ОС
и нить клиентской сессии в ядре базы данных.
...
Рейтинг: 0 / 0
СУБД Informix
    #33718579
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!! Журавлев ДенисУ информикса и оракла собственная "программная" реализация многозадачности внутри процессов (nix), нитей (win).

и ты хочешь сказать что у оракла реализация не вытесняющая ?

Исходя из сегодняшних обсуждение у Oracle нет своей
внутренней многозадачности.
Он пользуется механизвми многозадачности ОС.
...
Рейтинг: 0 / 0
СУБД Informix
    #33718608
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat- Yo.!! onstat-
Я правильно понял?

наверно да, запрос к сиквенсу будет болтатся в очереди SGA пока не осободится dedicated процесс ... еще в оракле есть connection pool прямо в бд, RAC и прочая помогающая обслуживать тысячи конектов, но я не недогоняю какое отношение это имеет к "процессы vs нити" ? речь идет о том, что в режиме dedicated под виндой (x86 как минимум) оракл работает как один процесс с тучей нитей, под *NIXами как туча процессов, как говорилось на металинке нитевой вариант пришлось изобретать из-за проседанием под нагрузкой первых winNT с процессами.

Мы тут обсуждаем достоинства собственной многозадачности которая организована в ядре informix.
Если выражаться терминологией oralce MTC сервер (Виртальный процессор)
одновременно обрабатывает несколько пользовательских сессий(нитей)
и если одна из них заснула на ожидании данных с диска
а для другой нет никаких ограничений для выполнения
( все данные доступны) , виртуальный процессор
прейдет к выполнению этой другой сессии(нити) без переключения
контекстов в ОС и прочих накладных расхордов.
А первая проснется тогда когда для нее будут доступны все необходимые для выполненияя данные.
В идеале в многпроцессроной системе при привязке виртуалного
процессора к физическому процессу системы (affinity)
на физическом процессоре выполняется только код мотора СУБД.

Наверное у вас получилась подмена понятий процесс(нить) в ОС
и нить клиентской сессии в ядре базы данных.

вместо



автор
В идеале в многпроцессроной системе при привязке виртуалного
процессора к физическому процессу системы (affinity)
на физическом процессоре выполняется только код мотора СУБД.


нужно читать

В идеале в многпроцессроной системе при привязке виртуалного
процессора к физическому процессору системы (affinity)
на физическом процессоре выполняется только код одного
Виртуалного процессора Informix.
Т.Е. На физическом процессоре выполняются только контексты одного процесса ОС.
...
Рейтинг: 0 / 0
СУБД Informix
    #33718769
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журавлев Денис onstat-
Кстате, а какие еще СУБД используют внутреннюю многонитевую архитектуру?Смотря что понимать под словом "многонитевый", firebird classic/superserver, oracle dedicated/mts.

Sybase, кажется, был первым.
...
Рейтинг: 0 / 0
СУБД Informix
    #33718793
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Журавлев Денис onstat-
Я правильно понял?
Правильно, собственная реализация невытесняющай многозадачности внутри потоков(процессов) ОС, у информикса вытесняющая.


С точностью до наоборот. ОС "вытесняет" процесс с ЦПУ по прошествии кванта времени, у Информикса нить сама уходит с процессора доходя до команды "освободить".
...
Рейтинг: 0 / 0
СУБД Informix
    #33719100
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat-
Мы тут обсуждаем достоинства собственной многозадачности которая организована в ядре informix.


ах вот оно что, а то я потерялся :) , вроде же начинали с процессы vs нити:

Выбегалло
А вот то, что у DB2 до совсем недавнего времени не было нормальной HADR (high availibility data replication), или то, что "процессная" архитектура жрет принципиально больше ресурсов чем "нитевая" - это почему-то никого и не волнует. Потому что спрятано под капотом, и сразу не разглядеть ?


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

к стате а информикс умеет распаралеливать запрос, т.е. чтоб один запрос обслуживало несколько cores/threads процессора (нитей оси) ?
...
Рейтинг: 0 / 0
СУБД Informix
    #33719125
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!! onstat-
Мы тут обсуждаем достоинства собственной многозадачности которая организована в ядре informix.


ах вот оно что, а то я потерялся :) , вроде же начинали с процессы vs нити:

Выбегалло
А вот то, что у DB2 до совсем недавнего времени не было нормальной HADR (high availibility data replication), или то, что "процессная" архитектура жрет принципиально больше ресурсов чем "нитевая" - это почему-то никого и не волнует. Потому что спрятано под капотом, и сразу не разглядеть ?


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

к стате а информикс умеет распаралеливать запрос, т.е. чтоб один запрос обслуживало несколько cores/threads процессора (нитей оси) ?

нету никакого планировщика в информиксе. Поскольку невытесняющая многозадачность. Нить вызывает процедуру "заснуть", которая помещает нить в список спящих и выдергивает следущую нить.

Распареллеливать запрос информикс умеет, как вертикально (чтение передается на вход сортировке, а та - группировке и т.д.), так и горизонтально (фрагменты одной таблицы читаются параллельно)
...
Рейтинг: 0 / 0
СУБД Informix
    #33719868
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!!

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


В unix это решается через nice.


Yo.!!
к стате а информикс умеет распаралеливать запрос, т.е. чтоб один запрос обслуживало несколько cores/threads процессора (нитей оси) ?


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


Фрагмент - это партиция в оракловой терминологии.

При желании можно одним запросом забрать все ресурсы сервера.
Например при постройке индексов.
...
Рейтинг: 0 / 0
СУБД Informix
    #33719945
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat-
В unix это решается через nice.


не решается, читаем тут
...
Рейтинг: 0 / 0
СУБД Informix
    #33719978
Yo.!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашел по Resource Manager в оракле:

The Database Resource Manager is a module, not a process. Each running Oracle process or thread must call into the Resource Manager scheduling code periodically. This code determines whether the running process can continue to run or must yield to another Oracle process. If it must yield, the Resource Manager code determines which process can run in its place. It then signals this process and the process whose quantum had just expired simply puts itself to sleep. Using this method, the Database Resource Manager can portably adhere to an administrator specified CPU scheduling plan.

http://research.microsoft.com/~jamesrh/hpts2001/submissions/AnnRhee.pdf
...
Рейтинг: 0 / 0
СУБД Informix
    #33720505
Nikolay Kulikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У Informix свой встроенный schedueler, между прочим.
...
Рейтинг: 0 / 0
СУБД Informix
    #33720650
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nikolay KulikovУ Informix свой встроенный schedueler, между прочим.

Начиная с какой версии?
...
Рейтинг: 0 / 0
СУБД Informix
    #33721335
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nikolay KulikovУ Informix свой встроенный schedueler, между прочим.

Это вы о чем ?
...
Рейтинг: 0 / 0
СУБД Informix
    #33721386
Nikolay Kulikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О том как он внутри себя приотизирует нити.
...
Рейтинг: 0 / 0
СУБД Informix
    #33721428
onstat-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nikolay KulikovО том как он внутри себя приотизирует нити.

Насколько я понимаю нити сами себя приоретизируют в соответствии
со значением PDQPRIRITY.

Cтранно что нельзя приоритезировать еще и по новому полю
из таблицы sysusers.

А было бы очень полезно.
Это в планах есть?
...
Рейтинг: 0 / 0
СУБД Informix
    #33721486
В.К.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, onstat -g ath и т.п. таки да показывал разные приоритеты у нитей всю жизнь...
...
Рейтинг: 0 / 0
СУБД Informix
    #33721620
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
onstat- Nikolay KulikovО том как он внутри себя приотизирует нити.

Насколько я понимаю нити сами себя приоретизируют в соответствии
со значением PDQPRIRITY.


нет. http://www.iiug.org/waiug/archive/iugnew2000/onstatmt.htm

A thread priority can range from 1 (lowest) to 4 (highest) with a default priority of 2. Priorities are assigned internally by the server and are not tunable.
Threads are pulled off the ready queue based on their priority. Within a priority, threads are taken on a first-in-first-out basis (FIFO).

Приоритеты даются в соответствии с выполняемой работой : btscanner имеет наименьший приоритет 1, потому что занимается чисткой индексов и данных в бэкграунде. aslogflush (сброс логов на диск) имеет приоритет 3. onmode_mon (управление сервером через onmonitor, onmode, oninit) имеет наивысший приоритет, что логично. Все юзеровские нити имеют приоритет 2, и раздача CPU для них никак не привязана к PDQPRIORITY. PDQPRIORITY влияет на количество выделенной памяти и число созданных нитей (что косвенно влияет на число доступного CPU времени, но только косвенно - 2 нити получат в 2 раза больше времени, чем одна, но приоритеты у обоих нитей все равно будут 2)
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
СУБД Informix
    #35399895
Однако
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Up,up

Однако сколько незбыточных прогнозов было :)
...
Рейтинг: 0 / 0
СУБД Informix
    #35401445
nkulikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почему не сбыточных LAST COMMITED сделали. (Версионность)
Самое главное продукт развивается
...
Рейтинг: 0 / 0
СУБД Informix
    #35401686
Фотография sysmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да и орокловый RAC уже можно построить на базе Informix 11.5. Что было продемонстрировано на недавнем мероприятии.
...
Рейтинг: 0 / 0
СУБД Informix
    #35401691
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sysmasterДа и орокловый RAC уже можно построить на базе Informix 11.5. Что было продемонстрировано на недавнем мероприятии.На secondary уровень изоляции какой был?
...
Рейтинг: 0 / 0
25 сообщений из 216, страница 4 из 9
Форумы / Informix [игнор отключен] [закрыт для гостей] / СУБД Informix
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]