Текущее время: Ср, июл 30 2025, 21:38

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Производительность
СообщениеДобавлено: Пн, мар 30 2009, 11:42 
Начинающий
Начинающий

Зарегистрирован:
Пн, мар 30 2009, 11:39
Сообщения: 8
что предпочтительнее использовать в селекте join или for all entries?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Пн, мар 30 2009, 11:44 
Менеджер
Менеджер

Зарегистрирован:
Вт, авг 17 2004, 13:14
Сообщения: 664
Откуда: Москва
Пол: Мужской
Join лучше! ИМХО


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Пн, мар 30 2009, 12:17 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
SE30->Кнопка «Советы»


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Пн, мар 30 2009, 12:42 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, авг 28 2006, 11:24
Сообщения: 292
Пол: Мужской
Обсуждение:
http://sapboard.ru/forum/viewtopic.php?f=13&t=47884


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Пн, мар 30 2009, 14:10 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
guno написал(а):
что предпочтительнее использовать в селекте join или for all entries?

JOINS vs. FOR ALL ENTRIES - Which Performs Better?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Ср, апр 01 2009, 13:22 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
вот у меня тоже вопрос о производительности ...
Индексы - структуры которые занимают доп. дисковое пространство на сервере БД, так?

Вопрос - увеличивает ли дополнительно созданный индекс занятое место в ОЗУ сервера? Если до - то только в случае выборки по дпнному индексу или вне зависимости от типа выборки при любом обращени к этой таблице? а то чета сомнения закрались...

_________________

Мы делаем простые вещи - сложными!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Ср, апр 01 2009, 13:31 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Rednaxela написал:
...
Вопрос - увеличивает ли дополнительно созданный индекс занятое место в ОЗУ сервера? Если до - то только в случае выборки по дпнному индексу или вне зависимости от типа выборки при любом обращени к этой таблице? а то чета сомнения закрались...

А это что называется "особенности реализации" - зависит от СУБД и её настроек: приоритетов использования памяти vs дисковых операций, ....

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Чт, апр 02 2009, 14:00 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
а вот такая вещь как

sort itab by field.

loop at itab where field = xxx.
endloop.

улучшит положение или нет?
и вообще какую можно придумать альтернативу лупу? - например запись в таблицу БД и потом считывание через селект - будет иметь эффект?

_________________

Мы делаем простые вещи - сложными!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Чт, апр 02 2009, 14:08 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Rednaxela написал:
а вот такая вещь как

sort itab by field.

loop at itab where field = xxx.
endloop.

улучшит положение или нет?
Ухудшит. Время на сортировку и полюбому полный просмотр вн. таблицы
Цитата:
и вообще какую можно придумать альтернативу лупу? - например запись в таблицу БД и потом считывание через селект - будет иметь эффект?

Эффект будет. Крайне отрицательный. Как минимум усложниться код, возрастёт нагрузка на БД.

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Чт, апр 02 2009, 14:12 
Специалист
Специалист

Зарегистрирован:
Чт, мар 22 2007, 14:40
Сообщения: 142
Пол: Мужской
Rednaxela написал:
а вот такая вещь как

sort itab by field.

loop at itab where field = xxx.
endloop.

улучшит положение или нет?



если у вас itab не типа SORTED то эфекта ни какого.

Rednaxela написал:
и вообще какую можно придумать альтернативу лупу? - например запись в таблицу БД и потом считывание через селект - будет иметь эффект?


а чем вам собственно не нравиться сам по себе loop ??

loop loop-у рознь ;) смотря сколько их, сколько строк в таблице, размер в ширину в таблице, вложенность и пр. пр. пр...,
все зависит от конкретной задачи.


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

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
Rednaxela, я тут недавно писал, что луп по обычной или хэш таблице успешно заменяется на READ TABLE ... в бесконечном цикле DO/.../ENDDO.

По поводу сортировки: это вы знаете, что отсортировали таблицу. А процессору ABAP'а не хватает ИИ для анализа кода :)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Чт, апр 02 2009, 15:02 
Специалист
Специалист

Зарегистрирован:
Пт, сен 05 2008, 08:08
Сообщения: 134
Пол: Женский
А можно использовать SORT + READ BINARY + LOOP ... FROM + IF ... EXIT ENDIF


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Чт, апр 02 2009, 15:42 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Yellow Raven написала:
А можно использовать SORT + READ BINARY + LOOP ... FROM + IF ... EXIT ENDIF

Можно, используйте.
Правда голову на плечах никто не отменял, поэтому всё хорошо в меру и к месту.

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Чт, апр 02 2009, 15:58 
Менеджер
Менеджер

Зарегистрирован:
Вт, авг 17 2004, 13:14
Сообщения: 664
Откуда: Москва
Пол: Мужской
Yellow Raven написала:
А можно использовать SORT + READ BINARY + LOOP ... FROM + IF ... EXIT ENDIF

Я тоже так делаю для сильно нагруженных программ. Код читается нормально, а производительность растет на глазах.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Производительность
СообщениеДобавлено: Пт, апр 03 2009, 08:12 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, окт 16 2006, 07:31
Сообщения: 628
Откуда: СССР
Пол: Мужской
Tim написал:
Yellow Raven написала:
А можно использовать SORT + READ BINARY + LOOP ... FROM + IF ... EXIT ENDIF

Я тоже так делаю для сильно нагруженных программ. Код читается нормально, а производительность растет на глазах.

Да с использование DO ENDDO производительность выросла немного....
но вот что делать с такими селектами (с индексами работает отлично, но вот без индексов просто караул)?

Code:
SELECT * FROM BKPF APPENDING CORRESPONDING FIELDS OF TABLE RBKPF
WHERE BUKRS = BUKRS
   AND BLDAT IN ZDOCDATE
   AND BUDAT IN ZPSTDATE
   AND CPUDT IN ZENTDATE .

_________________

Мы делаем простые вещи - сложными!


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

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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