SAPфорум.RU
https://sapboard.ru/forum/

descending-индексы к плоской таблице БД (SE11) ?
https://sapboard.ru/forum/viewtopic.php?f=14&t=97246
Страница 1 из 1

Автор:  pberezin [ Ср, янв 16 2019, 17:26 ]
Заголовок сообщения:  descending-индексы к плоской таблице БД (SE11) ?

Сталкивался ли кто с потребностью оптимизации отбора из большой таблицы (стандартный SAP-код), когда наилучший план запроса SELECT чтото ORDER BY поля DESC даёт наиболее оптимальный отбор, если построить такойже вывернутый DESC-индекс по полям, перечисленным в ORDER BY ?

DB/2 платформа.

SAP допускает вообще самодеятельность в построении индексов со сложными сортировками и (или) условиями (функциональные платформо-зависимые индексы например)?

Автор:  hoar [ Ср, янв 16 2019, 19:32 ]
Заголовок сообщения:  Re: descending-индексы к плоской таблице БД (SE11) ?

pberezin написал:
Сталкивался ли кто с потребностью оптимизации отбора из большой таблицы (стандартный SAP-код), когда наилучший план запроса SELECT чтото ORDER BY поля DESC даёт наиболее оптимальный отбор, если построить такойже вывернутый DESC-индекс по полям, перечисленным в ORDER BY ?

DB/2 платформа.

SAP допускает вообще самодеятельность в построении индексов со сложными сортировками и (или) условиями (функциональные платформо-зависимые индексы например)?

1. Хитровывернутые индексы SAP ИМХО не делает, это надо делать из среды администрирования БД, соответствующему специалисту по это БД.
2. В ABAP запросе SELECT эти индексы можно использовать. Поискать в Хелпе: SELECT WHERE HINT.

Автор:  pberezin [ Чт, янв 17 2019, 07:38 ]
Заголовок сообщения:  Re: descending-индексы к плоской таблице БД (SE11) ?

там код увы стандартный неломаемый. Только хитрым индексом можно помочь.

А сап вообще разрешает в свой rdbms лазить напрямую на создание индексов СУБД?

Автор:  ArmAnn [ Чт, янв 17 2019, 13:18 ]
Заголовок сообщения:  Re: descending-индексы к плоской таблице БД (SE11) ?

pberezin написал:
там код увы стандартный неломаемый. Только хитрым индексом можно помочь.

нам ораклоиды как то делали штуку под названием 'профиль запроса' или что то вроде того. Задача звучала примерно как у вас - стандарт брал не тот индекс который нужно было. Для нужного нам запроса стал браться нужный индекс.

pberezin написал:
А сап вообще разрешает в свой rdbms лазить напрямую на создание индексов СУБД?

вроде бы не препятствует :)

Автор:  pberezin [ Пт, янв 18 2019, 09:48 ]
Заголовок сообщения:  Re: descending-индексы к плоской таблице БД (SE11) ?

Цитата:
под названием 'профиль запроса'


Стабилизация плана запроса в моём случае не сработает - в связи с наличием отсутствия нужного мне индекса в БД :D
А все стандартные индексы той таблицы дают одинаково кривые по производительности планы.
Да и не оракл у нас увы - старая sap-система была ораклиная, там понятно было.

Автор:  pberezin [ Пт, янв 18 2019, 09:50 ]
Заголовок сообщения:  Re: descending-индексы к плоской таблице БД (SE11) ?

а что можно почитать пример, как в sap воткнуть нестандартный индекс через rdbms ?
Обзорная нота какаято по бест-практиксу подобных решений есть?

Автор:  LKU [ Пт, янв 18 2019, 10:38 ]
Заголовок сообщения:  Re: descending-индексы к плоской таблице БД (SE11) ?

А чего там читать?
Создаете индекс в БД не из SAP (условно в PL SQL Developer).
Когда SAP будет формировать запрос к БД, БД использует свою внутреннюю информацию об индексах для выбора оптимального плана запроса, а вовсе не информацию из SE11 SAP.
Если ваш индекс будет оптимальным - оптимизатор его подтянет.

Более того, при переносе запросами в продуктив индексов на таблицы размером условно больше 50 млн строк обычная практика - предварительно создавать индекс с таким же именем на уровне БД (во всяком случае при использовании Oracle).
Причина в том, что SAP при импорте запроса генерирует индекс через запрос "CREATE INDEX .. "без слова ONLINE, то есть лочит таблицу на время генерации индекса.
А при создании индекса средствами БД можно использовать ONLINE и PARALLEL.

P.S. Если что - я не базисник, но шишек с индексами набилось уже предостаточно..

Автор:  pberezin [ Пт, янв 18 2019, 16:10 ]
Заголовок сообщения:  Re: descending-индексы к плоской таблице БД (SE11) ?

я не то чтобы базисник - просто предположил что в sap-овский rdbms сбоку просто так не подлезть (вдруг есть специальная нота с рекомендованным порядком действий по подобной атипичной оптимизации в обход SE11/SE14).

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/