powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Оптимизация запроса
13 сообщений из 13, страница 1 из 1
Оптимизация запроса
    #32125257
ТопТоп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть две таблицы 1ая - примерно 400 тыс записей, 2ая примерно 250 тыс. Простой подсчет записей при объединении идет долго... а подсчет записей при проверке опеределенного поля вообще идет 130-160 секунд. Машина на которой крутиться Оракл - майнфрейм IBM-9672/OS390 - можно ли как то оптимизировать запросы?!
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32125264
DimaR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное напильником,
а если серьезно то скажи хотя бы, версию оракла, структуру таблиц, индексы, запрос, план
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126043
ТопТоп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Версия 8.1.5
Две таблицы - разделен файл переменной длины. 1ая таблица содержит постоянную часть файла. 2ая соответственно переменную. Две базы объединяються по ключу, номер записи в постоянной части файла.
Запрос вида "select * from in01c,in01v where in01c.id=in01v.id(+)" выполняется около 10 секунд. добавление условия "and in01c.kv = 'чемуто' " выполняется более 15 минут!!!!! в таблице после объединения примерно 400 тыс записей. Планируемый результат - отбор записей по определенному условию и вывод в файл, который затем будет распечатан, после подготовки соответствующих шапок... можно ли ускорить работу запроса и как?
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126153
ArchiMage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Индекс на id у тебя есть? В обеих таблицах?
А индекс на in01c.kv?

Еще - ставь в условии where ограничивающие условия до вязки таблиц.

Пока всё, думаю, этого достаточно будет.

- Более того, скажи, зачем может понадобиться запрос, возвращающий 400000 все записей?
- Может структура хранения недостаточно продумана?
- Может таблицы надо нормализовать?
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126165
antonprk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Планы планами,
нужно смотреть как физически грузится машина,
сколько памяти берет, как диски шуршат...?
Поиграть параметрами в init.ora
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126507
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Планы планами,
>нужно смотреть как физически грузится машина,
>сколько памяти берет, как диски шуршат...?

нет уж, напильник предпочтительнее стетоскопа.
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126578
Фотография killed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
диски видимо шуршат хорошо ;-) иначе вопрос не появился бы
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126581
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>диски видимо шуршат хорошо ;-) иначе вопрос не появился бы

дык меинфрейм ведь, а там диски ого-го :-))
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126901
SAA_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Угу... там наверное диски сами по себе шуршат нехило и без этого запроса...
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126908
ТопТоп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мужики... я не могу с настройками Оракла играть. Если только пинать человека, который отвечает за базу... Индекса по id нету. В первой базе он уникальный, во второй базе есть не все аналогичные значения id. В том то и дело(про структуру) - что надо считать иногда эти все 400 с лишним тысяч, перебирать их... ибо по специфике работы выдаются листы печати общей суммой около 5000 страниц, по 40 записей на каждом, без шапки... и когда простой подсчет сильно тормозит машину... причем ооооооооооочень мощную - становиться прикольно, так как тот же самый запрос на п/к выполняется в разу быстрее - может что то в настройках Оракла? Что самое интересное, если выполнять аналогичную операцию на КОБОЛЕ (который работает на том же самом мейнфрейме), времени на это надо меньше, намного (не учитывая программирование на КОБОЛЕ)
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126921
.dba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просили ж привести план запроса... И где он?
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32126953
Фотография killed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эх была, не была !

REM ============================================
REM = Процедура гадания на кофейной гуще.
REM = "Колдуй бабка, колдуй дед, трое сбоку, наших нет." (с) Филатов
REM ============================================

Если у вас используется оптимизатор по правилам, то индекс будет использоваться со 100% гарантией, как только вы добавляете условие
"and in01c.kv = 'чемуто' . Теперь для извлечения каждой строки таблицы in01c, удовлетворяющей запросу Оракл будет совершать минимум три логических чтения (2 блока индекса, табличный блок), вместо одного при полном сканировании

В sqlplus выполните команду show optimizer , чтобы сначала прояснить хотя бы этот вопрос.


Все, карты больше ничего не кажут...пока
...
Рейтинг: 0 / 0
Оптимизация запроса
    #32128166
ТопТоп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сам запрос - select count(*) from v_inst01 where tzap=1
время выполнения 73 секунды, результат ~6 тысяч из 400 тысяч записей (написал для простоты вьюшку). про план запроса - Explain plan нужен?
тока как его выдернуть?
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Оптимизация запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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