powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / сайзинг Oracle
10 сообщений из 10, страница 1 из 1
сайзинг Oracle
    #39592949
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемые, прошу помощи по теоретическому сайзингу.

Допустим, есть задача "сколько одновременно исполняющихся (не стоящих в очереди!) запросов выдержит конкретный сервер oracle И на сколько (чего именно:cpu/ram/...) его надо расширить, чтобы он исполнял Х*2 запросов одновременно" - как ее решить?

конкретика:
1) Есть некий параметр, показывающий, сколько всего запросов СУБД возьмет на одновременное исполнение?
или это некая функция от CPU/ядер/RAM/ ... ?

2) Есть некий параметр, показывающий, как рассчитать необходимый для них RAM и TEMP tablespace - исходя из некого среднего запроса и его потребления?
...
Рейтинг: 0 / 0
сайзинг Oracle
    #39592974
Есть книжка на эту тему Forecasting Oracle Performance, Craig Shallahamer, 2007, там вопрос рассмотрен
...
Рейтинг: 0 / 0
сайзинг Oracle
    #39592987
просто бери экзадатувопрос рассмотрен
Все зависит от схемы данных и профиля нагрузки.
Некоторые сочетания масштабируюся практически без ограничений, некоторые не масштабируются от слова "совсем"
...
Рейтинг: 0 / 0
сайзинг Oracle
    #39593152
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просто бери экзадатуЕсть книжка на эту тему Forecasting Oracle Performance, Craig Shallahamer, 2007, там вопрос рассмотрен

вроде как 10 лет прошло - ничего не изменилось?
а если тезисно - кто что может сказать?
например, "грубо 1 cpu ядро - 1 запрос без необходимости выстраивания очереди"
...
Рейтинг: 0 / 0
сайзинг Oracle
    #39593183
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexus12просто бери экзадатуЕсть книжка на эту тему Forecasting Oracle Performance, Craig Shallahamer, 2007, там вопрос рассмотрен

вроде как 10 лет прошло - ничего не изменилось?
а если тезисно - кто что может сказать?
например, "грубо 1 cpu ядро - 1 запрос без необходимости выстраивания очереди"

AFAIK тут надо знать требования прикладной системы
Что более критично и для каких частей системы:
1. Процессор
2. Частота процессора (например большие сортировки, тут 100500 ядер никак не помогут, лучше одно, но по максимому высокочастотное)
3. Память
4. Жесткие диски

И IMHO представлять как оптимально настроить Oracle под КОНКРЕТНУЮ прикладную задачу. К сожалению, сейчас администрирование приходит к тому, что "там автоматик мемори манеджмент, Oracle умный, ему виднее" ( С ). Из за чего, смотришь на распределение памяти на промышленном сервере и волосы дыбом встают.... и все вопросы про скорость работы и производительность тут же отпадают )))
...
Рейтинг: 0 / 0
сайзинг Oracle
    #39593205
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
к сожалению, конкретная задача - ad hoc запросы по DWH, причем схема не всегда star:

бывают случаи, когда для выстраивания логической таблицы фактов нужно:
а) соединить несколько фактовых таблиц (а-ля "найди сначала первое обращение клиента, а вот уже по нему вон тот факт...")
б) найти запись на конкретный момент времени в историческом массиве (причем это скорее where {row_number() } = 1, чем DATE between startDT and endDT)

соответственно, ориентир - это DWH-нагрузка с большим кол-вом FTS и hash join

нужно некие усредненные параметры для таких задач, есть простой гайд какой-то?
...
Рейтинг: 0 / 0
сайзинг Oracle
    #39593562
д0kХ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexus12,

Очень приблизительный алгоритм сайзинга по ядрам

1 смотрим на вторую колонку:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
vmstat 3 10

System configuration: lcpu=216 mem=524288MB

kthr    memory              page              faults        cpu    
----- ----------- ------------------------ ------------ -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa
30  0 59237155 46582238   0   0   0   0    0   0 30741 887262 65837 26  5 67  2
29  0 59231669 46585170   0   0   0   0    0   0 29983 994010 68923 30  5 63  2
35  0 59234848 46577604   0   0   0   0    0   0 29699 1017076 69270 30  5 63  2
35  0 59234432 46575230   0   0   0   0    0   0 30810 1010573 69416 31  5 62  1
35  0 59236745 46570041   0   0   0   0    0   0 28969 1076769 69798 34  5 59  1
38  0 59243511 46560340   0   0   0   0    0   0 30183 1076703 70306 33  5 60  1
31  0 59232950 46567734   0   0   0   0    0   0 30652 1028189 72672 31  5 62  2
38  0 59226307 46572479   0   0   0   0    0   0 31690 1013069 72813 30  5 63  2
34  0 59233410 46561514   0   0   0   0    0   0 32094 990986 72871 29  5 64  2
34  0 59229293 46562618   0   0   0   0    0   0 31155 1011434 70258 30  5 64  1


Если там не 0, приводим в порядок перфоманс тюнингом ОС и БД,
пока там не будет 0 смысла вкладываться в новое железо смысла нет .
У имеющегося железа есть запас по тюнингу.



Если во второй колонке 0 сравниваем числа в первой колонке и % нагрузки на ядра
с числами из БД:


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SQL> select  STATUS , "TYPE", count(*)     from v$session  group by  status, type  ;

STATUS   TYPE         COUNT(*)
-------- ---------- ----------
INACTIVE USER             2734
ACTIVE   BACKGROUND         62
ACTIVE   USER               38

Первая колонка количество фактический исполняемызх нитей - процессов.
sqlplus возвращает, то что Оракл считает активными.
Их всегда всегда больше , эта погрешность стреляет в огромный пересайзинг.


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


Сайзинг памяти более сложная тема ....
...
Рейтинг: 0 / 0
сайзинг Oracle
    #39593662
master_yoda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
д0kХAlexus12,
Если там не 0, приводим в порядок перфоманс тюнингом ОС и БД,
пока там не будет 0 смысла вкладываться в новое железо смысла нет .
У имеющегося железа есть запас по тюнингу.


Смело. Убрать весь ввод\вывод из БД.
...
Рейтинг: 0 / 0
сайзинг Oracle
    #39593669
х.з.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На практике все будет выглядеть так:

1. узнаем каков максимальный бюджет бизнес готов потратить на новое железо.
2. покупаем максимальную конфигурацию в эти деньги согласуясь с политикой конторы в части закупа железа (спарки там у вас в почете, брэндовые хп или интела самосборочные)
...
Рейтинг: 0 / 0
сайзинг Oracle
    #39596477
д0кХ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
master_yodaд0kХAlexus12,
Если там не 0, приводим в порядок перфоманс тюнингом ОС и БД,
пока там не будет 0 смысла вкладываться в новое железо смысла нет .
У имеющегося железа есть запас по тюнингу.


Смело. Убрать весь ввод\вывод из БД.

Кто вам такое сказал ?

колоночка
in
Device interrupts.
в статистике vmstat 21152405
приблизительно соотвествует количеству IOps (~30k)
а во второй колонке всеравно 0 )
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / сайзинг Oracle
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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