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

Часовой пояс: 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 часа


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

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


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

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