Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
2008 (не R2) и варианты замены CROSS APPLY
|
|||
|---|---|---|---|
|
#18+
Проблема. Для удобства модификации кода предпочитаю использовать CROSS APPLY: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Столкнулся с тем, что сервер дольше прожевывает такие куски кода, чем Код: sql 1. 2. 3. Судя по всему IO на сервере явно лучше CPU. Но апгрейд железа и софта на сервере - вне моей области ответственности. Какие варианты в моем случае? Переписывать это дело на повторяющиеся куски? Выбирать все нужные поля в промежуточную таблицу? Плюнуть на свое радение за производительность - пусть голова болит у админов сервера - и продолжать использовать удобный инструмент? хитрожопый макак (c) Glory ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2018, 18:18 |
|
||
|
2008 (не R2) и варианты замены CROSS APPLY
|
|||
|---|---|---|---|
|
#18+
Руслан Дамирович, сдается, тут "экономия на спичках". Всё одно нечитабельная гирлянда юнионов получилась. Не факт, что через APPLY оно понятнее и удобнее для сопровождения. А вот серверу остается меньше вариантов для маневра при построении плана запроса... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2018, 18:35 |
|
||
|
2008 (не R2) и варианты замены CROSS APPLY
|
|||
|---|---|---|---|
|
#18+
Добрый Э - ЭхВсё одно нечитабельная гирлянда юнионов получилась. Вот так вот сходу, не видя кода, делаем выводы! Конечно же та же гирлянда юнионов разбавленная FROM будет однозначно читабельнее! :) Э - Эх... Добрый Э - Эхсдается, тут "экономия на спичках" Если бы там "спички" были, я бы не полез задавать вопрос. Время исполнения снижается в зависимости от количества SELECT в APPLY - с 10-20 минут до 3-5. Возможно, нужно еще раз планы покурить да поиграться с индексами. Но там по большей части временные таблицы. И единственный вариант - больше временных таблиц! Но такая лень. Вот и борюсь с профессиональной совестью как могу - вопросы на форуме задаю; говорю себе, что нету времени; пусть админы сервер модернизируют; и вообще я разработчик, мне так удобнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2018, 19:11 |
|
||
|
2008 (не R2) и варианты замены CROSS APPLY
|
|||
|---|---|---|---|
|
#18+
Руслан Дамирович, тогда нужно показывать репрезентативные тест-кейсы. со структурой таблиц, схемой индексации, составом и распределением данных, с планами и статистикой выполнения, а не упрощенную до сферического коня в вакууме модель сложившейся ситуации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2018, 19:44 |
|
||
|
2008 (не R2) и варианты замены CROSS APPLY
|
|||
|---|---|---|---|
|
#18+
Руслан Дамирович, авторСтолкнулся с тем, что сервер дольше прожевывает такие куски кода, чем Фигли ты хотел если код вообще разный. "Прожевыванием" ни железо, ни СУБД не занимаются. Железо, например, читает с диска или пишет в tempdb, или что-то вычисляет. СУБД, например, анализирует запрос, строит план выполнения и выполняет оказавшиеся в нем логические и физические операции. Туда и надо смотреть. Например, второй вариант попадает в индексы. А первый - нет. К слову, и результат может быть плюс-минус миллиард записей туда-сюда. Куски кода вообще разные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2018, 20:02 |
|
||
|
2008 (не R2) и варианты замены CROSS APPLY
|
|||
|---|---|---|---|
|
#18+
Завернуть общую часть в cte? И Использовать ее в юнионах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2018, 08:37 |
|
||
|
2008 (не R2) и варианты замены CROSS APPLY
|
|||
|---|---|---|---|
|
#18+
Добрый Э - Эхтогда нужно показывать репрезентативные тест-кейсы. со структурой таблиц, схемой индексации, составом и распределением данных, с планами и статистикой выполнения, а не упрощенную до сферического коня в вакууме модель сложившейся ситуации. запроса и актуального плана хватит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2018, 11:59 |
|
||
|
|

start [/forum/moderation_log.php?user_name=%D0%9D%D0%B0%D1%80%D1%86%D0%B8ss]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
88ms |
get topic data: |
8ms |
get first new msg: |
4ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 469ms |
| total: | 677ms |

| 0 / 0 |
