|
![]() |
#1 |
Участник
|
Цитата:
3. Большие и ресурсоемкие запросы связанные с выборкой всех полей таблицы
Это возможно самая распространенная проблема имеющая большое влияние на производительность, но в то же время ее проще всего обнаружить и исправить. Используйте Exist Join и перечисление полей, всегда когда это возможно. Убедитесь, что в каждой выборке в коде указаны только необходимые поля. Та же идея с использованием exist join в выборке когда это возможно, для уменьшения объема данных передаваемых между AOS и базой данных. Это особенно актуально когда при модификации на существующие таблицы добавляется много новых полей. Например, код: X++: While select TableA { Select TableB where TableB.FieldA == TableA.FieldA; Print TableB.FieldB; } X++: While select FieldA from TableA Join FieldA, FieldB from TableB Where TableB.FieldA == TableA.FieldA; { Print TableB.FieldB; } |
|
|
За это сообщение автора поблагодарили: macklakov (3), S.Kuskov (1), kornix (1). |
![]() |
#2 |
NavAx
|
Для меня операторы, начинающиеся с большой буквы, признак больших проблем в коде. Точно не знаю, откуда приходят эти люди, но код они повреждают в примерно одинаковом стиле. Особенно ужасно их "улучшения" сказываются на производительности. Именно после них удается показывать чудеса оптимизации на 2 порядка чисто правкой X++.
__________________
Isn't it nice when things just work? |
|
|
За это сообщение автора поблагодарили: kornix (3). |
![]() |
#3 |
Британский учённый
|
Цитата:
![]()
__________________
Людям физического труда для восстановления своих сил нужен 7-8 часовой ночной сон. Людям умственного труда нужно спать часов 9-10. Ну а программистов будить нельзя вообще. |
|
|
|