|
большая база, триггера - Вы пробовали их там использовать?
|
|||
---|---|---|---|
#18+
"Кто может - спасите" Огромная просьба - подтвердите правильность действий или скажите что не так: Ситуация: T-SQL, гигантская (млн. записей) база, триггера на вставку - сложная обработка по каждой записи . Триггера "глушат" всю базу. Структура триггеров: курсор по inserted - по каждой строке несколько update и много запросов (без курсора не выходит - пользовательских функций то, нет) Найденная ошибка: во всех командах нет явно указанного индекса (база не подхватывает индекс и выполняет "table scan") Вношу эти индексы. Ускорение раз в 30. Но, за 1 с. пишется только 50 записей. Вобщем - планета Шелезяка ... кто может помогите ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2001, 09:48 |
|
большая база, триггера - Вы пробовали их там использовать?
|
|||
---|---|---|---|
#18+
У меня в ядровой таблице 400 000 записей. MS SQL 7.0 Проблем никаких. Обработка в тригере ... вообщем много условий. Moth ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2001, 04:27 |
|
большая база, триггера - Вы пробовали их там использовать?
|
|||
---|---|---|---|
#18+
У меня в ядровой таблице 400 000 записей. MS SQL 7.0 Проблем никаких. Обработка в тригере ... вообщем много условий. Moth ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2001, 04:29 |
|
большая база, триггера - Вы пробовали их там использовать?
|
|||
---|---|---|---|
#18+
Большая база для MS SQL - это каюк. Думаю, для него максимум - 1Гб. Мой тебе совет, коль всевозможные индексы поставил (точно поставил?) - делай тест и смотри на загрузку ЦПУ (На больших объемах узкое место - дисковая система). Если маленькая загрузка CPU и диски горят непереставая, то: 1. Выдели памяти больше для MS SQL. 2. Разнеси индексы и таблицы в разные области хранения (не знаю, как они там называются в MS SQL), а области на разные диски. Лучше использовать SCSI, а еще лучше RAID. 3. Лишние индексы удали. 4. Попробуй поставить такие индексы, которых бы хватало для решения запроса, т.е. чтобы сервер бы на лазил в таблицу за дополнительными полями, это дает выигрыш не менее двух раз (но не более 3-5 полей в индексе). 5. Лучше использовать Oracle - у него средства администрирования больших объемов данных лучше. 6. Лучше пересмотреть структуры БД. Сложные триггеры, это значит, где-то недоработка. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2002, 00:52 |
|
большая база, триггера - Вы пробовали их там использовать?
|
|||
---|---|---|---|
#18+
2Enemy 1Гб это небольшая база (у меня это средний прирост за неделю) и MSSQL 2000 тянет спокойно и 20 и 30Гб. Но триггера я использую исключительно для удаления (хотя и от этого ухожу) Логику я пишу на Stored Proc. Доступ к таблицам только на SELECT. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.04.2002, 07:13 |
|
большая база, триггера - Вы пробовали их там использовать?
|
|||
---|---|---|---|
#18+
Согласен с Barbar Триггеры надо использовать только для расширенной целостности БД. А уж если жизнь заставила и они используются для бизнес-логики, то только без построчной обработки. Если в ХП курсоры нежелательны, то в триггерах они совершенно недопустимы. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.04.2002, 06:18 |
|
|
start [/forum/topic.php?fid=56&fpage=53&tid=2017099]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
64ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 159ms |
0 / 0 |