Текущее время: Пн, июл 28 2025, 19:49

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 39 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Работа SAP с БД ...
СообщениеДобавлено: Пн, мар 31 2008, 11:01 
Начинающий
Начинающий

Зарегистрирован:
Пн, мар 31 2008, 10:49
Сообщения: 8
Добрый день.

У нас SAP работает с БД DB2.
Возник вопрос следующего плана :
На семинаре представитель SAP сказал, что при выборке данных из БД, какой бы Вы не написали запрос (select f1, f1, f3 from table1 where f1 = "1" - грубо говоря), application server SAP все равно посылает БД запрос вида (select * from table1), т.е. все наши условия игнорируются. Стратегия SAP такова, что не следует нагружать сервер БД, лучше пригрузить сервер приложений. И что не важно какой запрос Вы напишете, сервер приложений получает полный набор данных с сервера БД во временную таблицу и только после этого отбирает только те данные, которые Вам нужны. Правда ли все это ? Потому как у меня очень большие сомнения по поводу всего этого.
И еще когда задали вопрос по поводу хранимых процедур, ответ был следующим - SAP не умее работать с хранимыми процедумари.

Пожалуйста, помогите разобраться.

Спасибо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 11:03 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пт, июл 27 2007, 16:08
Сообщения: 352
Пол: Мужской
интересно, если в таблицы миллионы записей, всеравно все выгребет?

не верю


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 11:11 
Начинающий
Начинающий

Зарегистрирован:
Пн, мар 31 2008, 10:49
Сообщения: 8
в том-то и дело что я тоже не верю в этот бред.
У нас прос огромные БД, работает все достаточно медленно, представитель объясняет такую работу именно так.

Возможно application server должет настраеваться соответствующим образом ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 11:23 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Пн, сен 06 2004, 11:43
Сообщения: 1551
Пол: Мужской
А может SQL трассировку лучше посмотреть. На сколько я помню на курсах по производительности ABAP как раз и пытаются "вдолбить" чтоб использовали именно список полей. Что мимизировали вложенные в селекты операции и т.д. и т.п.

_________________
Ex ipso fonte bibere
Цитата:
Abyssus abyssum invocat
Dies diem docet
Ducunt volentem fata, nolentem trahunt

Estote prudentes sicut serpentes


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 11:29 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, ноя 21 2006, 17:16
Сообщения: 134
Откуда: Донецк
Пол: Женский
Если много самописных отчетов, то вот здесь по оптимизации почитайте:
http://www.sapbasis.ru/articles/abapperfrules/

Посмотрите, может индексы какие досоздать надо?
В se30 посмотрите советы по SQL Interface.

_________________
Если хочешь иметь то, чего никогда не имел - то должен делать то, чего никогда не делал.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 11:34 
Начинающий
Начинающий

Зарегистрирован:
Пн, мар 31 2008, 10:49
Сообщения: 8
vvvictor написал:
А может SQL трассировку лучше посмотреть. На сколько я помню на курсах по производительности ABAP как раз и пытаются "вдолбить" чтоб использовали именно список полей. Что мимизировали вложенные в селекты операции и т.д. и т.п.


Т.е. если я Вас правильно понял, то SAP ни коем образом не "обрезает" наш запрос и посылает его серверу БД в том виде, в котором его написали, включая условия выборки и , следовательно, получает от сервера БД уже нужный нам набор данных ?

А как насчет хранимых процедур ? SAP все таки "умеет" с ними работать ?

Да, еще и по поводу индексов этот товарищь сказал, что НЕВОЗМОЖНО работать более чем с одним индексом .. .

Спасибо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 11:38 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, дек 21 2006, 07:27
Сообщения: 321
Откуда: Где-то на севере
Пол: Мужской
Я тоже всегда искренне считал, что указание конкретных полей оптимизирует скорость выбоки и вроде как это подтверждалось на практике.
Программист в шоке ;-)

_________________
I have a dream


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 11:39 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Пн, сен 06 2004, 11:43
Сообщения: 1551
Пол: Мужской
ZMaximI написал(а):
Т.е. если я Вас правильно понял, то SAP ни коем образом не "обрезает" наш запрос и посылает его серверу БД в том виде, в котором его написали, включая условия выборки ?

А как насчет хранимых процедур ? SAP все таки "умеет" с ними работать ?

Спасибо.
Да - на сколько я помню - SAP просто переводит запрос из синтаксиса OpenSQL к синтаксису конкретной СУБД
Процедуры тоже умеет. Копай в сторону Native SQL. И тут ф форуме, кажется, даже примеры были.............

_________________
Ex ipso fonte bibere
Цитата:
Abyssus abyssum invocat
Dies diem docet
Ducunt volentem fata, nolentem trahunt

Estote prudentes sicut serpentes


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 11:45 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Пн, сен 06 2004, 11:43
Сообщения: 1551
Пол: Мужской
ZMaximI написал(а):
Да, еще и по поводу индексов этот товарищь сказал, что НЕВОЗМОЖНО работать более чем с одним индексом .. .
Что понимать под невозможностью ?
Я не помню кто конкретно принимает решение, кажется все-таки SAP, а не СУБД. При выполнении запроса дается указание об использовании максимально подходящего к условиям where индекса (т.е. из тех, которые созданы).

_________________
Ex ipso fonte bibere
Цитата:
Abyssus abyssum invocat
Dies diem docet
Ducunt volentem fata, nolentem trahunt

Estote prudentes sicut serpentes


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 11:57 
Начинающий
Начинающий

Зарегистрирован:
Пн, мар 31 2008, 10:49
Сообщения: 8
vvvictor написал:
Что понимать под невозможностью ?
Я не помню кто конкретно принимает решение, кажется все-таки SAP, а не СУБД. При выполнении запроса дается указание об использовании максимально подходящего к условиям where индекса (т.е. из тех, которые созданы).


Если често - я не знаю как это понимать ... :)
Просто специалист сказал, что САП создает временную таблицу с ПОЛНЫМ набором данный и может работать только с одним индексом, хоть он и может быть составным .... .

Я вообще занимаюсь разработкой на JAVA, но вскоре нужно будет заниматься САП, и когда я все это услышал - стало просто дико как-то.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 12:01 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
ZMaximI написал(а):
Если често - я не знаю как это понимать ... :)
Просто специалист сказал, что САП создает временную таблицу с ПОЛНЫМ набором данный и может работать только с одним индексом, хоть он и может быть составным .... .


Может Вы не уловили в каком контексте он это говорил? Возможно это было связано в JOIN или агрегатными функциями и GOUP BY?

_________________
С уважением, VGA
Мой блог


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 12:08 
Начинающий
Начинающий

Зарегистрирован:
Пн, мар 31 2008, 10:49
Сообщения: 8
vga написал(а):
Может Вы не уловили в каком контексте он это говорил? Возможно это было связано в JOIN или агрегатными функциями и GOUP BY?


Нет, в том-то и дело, что об этом речи <я не знать русский языка>.

Из всего вышесказанного я так понял, что для того чтобы запрос отработал должным образом, нужно чтобы в его условии было прописаны поля для которых созданы индексы. Правильно ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 12:14 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
ZMaximI написал(а):
vga написал(а):
Может Вы не уловили в каком контексте он это говорил? Возможно это было связано в JOIN или агрегатными функциями и GOUP BY?


Нет, в том-то и дело, что об этом речи <я не знать русский языка>.

Из всего вышесказанного я так понял, что для того чтобы запрос отработал должным образом, нужно чтобы в его условии было прописаны поля для которых созданы индексы. Правильно ?


Чтобы запрос использовал индекс максимально эффективно, в условии where должны присутствовать поля из индекса в соотвествующей последовательности.

_________________
С уважением, VGA
Мой блог


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 12:20 
Начинающий
Начинающий

Зарегистрирован:
Пн, мар 31 2008, 10:49
Сообщения: 8
Вот-вот - что и требовалось доказать.

Спасибо всем большое - пролили свет на наш спор.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, мар 31 2008, 12:20 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Пн, сен 06 2004, 11:43
Сообщения: 1551
Пол: Мужской
ZMaximI написал(а):
Из всего вышесказанного я так понял, что для того чтобы запрос отработал должным образом, нужно чтобы в его условии было прописаны поля для которых созданы индексы. Правильно ?
И в том же порядке, похоже............... Причем оценка выбора индекса идет именно по полям с условием '='..............

_________________
Ex ipso fonte bibere
Цитата:
Abyssus abyssum invocat
Dies diem docet
Ducunt volentem fata, nolentem trahunt

Estote prudentes sicut serpentes


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 39 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Ahrefs [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB