Форум: "Базы";
Текущий архив: 2005.07.18;
Скачать: [xml.tar.bz2];
ВнизБаза FB тормозит Найти похожие ветки
← →
Ярослав (2005-06-06 10:07) [40]>> а если view создать вместо таблицы?
А это к чему? view вместо временной таблицы куда помещаются данные из for select, это как?
← →
Carmen © (2005-06-06 10:23) [41]У меня отчеты формируются с привязкой к л/с, льготе, подстанции, КТП, линии .... Чем это не группы?
← →
Desdechado © (2005-06-06 10:56) [42][38]
Внутрь FOR SELECT можно вложить сколько угодно дополнительных мелких (и не только) запросов. При этом не обязательно втискивать их в условие самого FOR SELECT, часто удобнее внутрь обработки его результата.
Пример с MSSQL некорректен, ибо:
1. MSSQL имеет спец механизмы обработки временных таблиц, а FB - нет
2. FB - версионник, т.е. хранит много версий одной записи, а MSSQL - блокировочник, т.е. только текущую
3. в MSSQL реализация временных таблиц - это практически синоним для таких вот курсоров. "Общественность" настояла, не желая связываться с именованными курсорами.
← →
Carmen © (2005-06-06 11:15) [43]Мой первоначальный вариант отчетов был основан на одном запросе. Как показала практика такие отчеты формируются очень долго. Второй вариант отчетов формировался при помощи ХП.
Я считаю Ярослав надо оптимизировать запросы. Один запрос можно разбить на два. Иногда помогает, даже, поменять местами связанные таблицы и скорость выполнения возрастает.
← →
Ярослав (2005-06-06 11:23) [44]>> Desdechado © (06.06.05 10:56) [42]
>> Внутрь FOR SELECT можно вложить сколько угодно дополнительных мелких (и не только) запросов. При этом не обязательно втискивать их в условие самого FOR SELECT, часто удобнее внутрь обработки его результата.
Все это я знаю....
>> 1
А жаль, но и в IB/FB их без труда можно сделать.
>> 2
Ну и что, это здесь причем??? Ко временным таблицам то как относится?
>>
Это вообще о чем? Какой еще синоним? И какая разница имеет курсор имя или нет?
← →
stud © (2005-06-06 11:41) [45]
> for select
зачем делать селект, потом эти данные записывать в таблицу из которой потом делать селект?
вынести этот селект в качестве формирующего view
← →
stud © (2005-06-06 11:44) [46]
> Ко временным таблицам то как относится?
нету в фб временных таблиц! это самая обычная таблица со всеми вытекающими последствиями.
и если она часто меняется то "мусора" в базе будет достаточно, чтобы тормозилась работа
← →
Ярослав (2005-06-06 11:48) [47]>> stud © (06.06.05 11:41) [45]
Не селект а for select т.е. с обработкой + каждый раз новые входные условия, а причем тут view?
← →
Desdechado © (2005-06-06 11:57) [48][44]
2 - самое прямое отношение - накопление старых версий записей (мусора), из-за чего ветка и возникла
3 - именованный или нет курсор обычно разницы нет, просто для именованных в MSSQL сделали альтернативное понятие "временная таблица", что по сути почти то же самое в контексте сессии пользователя
и не надо на дыбы становиться. мы тебе помочь хотим. ты же за этим сюда пришел?
← →
stud © (2005-06-06 12:09) [49]
> а причем тут view
view не будет "мусорить" как твоя таблица, т.е. один из факторов торможения будет устранен.
и в обшем получается, что обсуждаем то - не видя что))
поэтому не можем понять что у тебя есть и почему ты отказываешся от того, что предлагают
← →
Ярослав (2005-06-06 12:25) [50]>> обсуждаем то - не видя что
Это точно, я понимаю что такое view и с чем его едят, но использовать его в данном случае не возможно. Временная таблица действительно сильно мусорит.
В Desdechado © (01.06.05 10:52) [9]
прозвучало "select count(*) from vremennayatablica" дак я вставил это в конце XP и теперь жду произойдут ли изменения т.е. станет ли база тормозить, результат будет известен самое малое через неделю, но после Backup/Restore может и месяц, если тормозить будет, буду дамать как логику менять. Постоянный Backup/Restore не выход, сервер во вне рабочее время выключаеться. А самому его делать даже раз в месяц это не дело.
Но пока буду ждать, когда еще такой эксперемент представится провести на реальной базе...
← →
Ярослав (2005-06-06 12:27) [51]>> обсуждаем то - не видя что
Это точно, я понимаю что такое view и с чем его едят, но использовать его в данном случае не возможно. Временная таблица действительно сильно мусорит.
В Desdechado © (01.06.05 10:52) [9]
прозвучало "select count(*) from vremennayatablica" дак я вставил это в конце XP и теперь жду произойдут ли изменения т.е. станет ли база тормозить, результат будет известен самое малое через неделю, но после Backup/Restore может и месяц, если тормозить будет, буду дамать как логику менять. Постоянный Backup/Restore не выход, сервер во вне рабочее время выключаеться. А самому его делать даже раз в месяц это не дело.
Но пока буду ждать, когда еще такой эксперемент представится провести на реальной базе...
← →
stud © (2005-06-06 12:33) [52]
> "select count(*) from vremennayatablica"
на количество мусора это не повлияет
> но использовать его в данном случае не возможно.
уверен что возможно. твоя таблица формируется на основании существующих данных, т.е. по сути это много селектов результат которых будет не запись во временную таблицу а формирование этого самого просмотра. т.е. в простешем случае должно исчезнуть выражение insert into ......
Страницы: 1 2 вся ветка
Форум: "Базы";
Текущий архив: 2005.07.18;
Скачать: [xml.tar.bz2];
Память: 0.54 MB
Время: 0.073 c