Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Vadim RomanenkoНо по поводу селекта... Дело в том, что у нас есть служебная сессия, которая все время висит в бэкграунде и иногда вычитывает некоторые данные из базы. Вот эта сессия и оказалась блокирующей для REORGANIZE TABLE. Никто никаких транзакций не открывал особо. Обычный селект. Просто я никогда не встречал такого тупичка, что после селекта нужно закрывать транзакцию. Как-то специфично уж очень... Это надо как-то пересмотреть наше приложение... Которое впринципе не привязано к конкретной БД. Считается, что если переписать пару процедур - то все будет работать на любом сервере... А ради селектов в АСА грубить такое... Ладно, поглядим. Но все равно это выглядит странно. Не верю, что можно написать приложение, которое одновременно эффективно с разными СУБД будет работать - у каждой будут свои ньюансы. В данном случае для ASA COMMIT после SELECT и есть такой "ньюанс" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2005, 19:30 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
ASCRUS Не верю, что можно написать приложение, которое одновременно эффективно с разными СУБД будет работать - у каждой будут свои ньюансы. В данном случае для ASA COMMIT после SELECT и есть такой "ньюанс" :) :) ну да, наверное. Это именно "ньюанс" АСА. Оооочень такой специфичный ньюанс... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2005, 19:46 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Может оказаться, что и коммит не нужен. Иногда достаточно закрыть курсор. Закрыть курсор и сделать коммит - разные вещи. Посмотрите логику программы. Если у Вас используется автокоммит, то коммит должен идти сразу после закрытия курсора. Значит у Вас либо не автокоммит, и тогда нужно самому закрывать транзакцию, либо автокоммит, но курсор не закрывается очень долгое время... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2005, 23:22 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Могу добавить следующее : 1. По поводу commit после select У меня это давно в привычке, но недельки две назад посыпались блокировки и после этого – начал копать : Вкратце Delphi - odbcexpress – ASA(8 или 9) без разницы MS выложил очередной патч на ODBC для XP, там где его успели поставить и пошли блокировки т.е. исправлено (корректно-передается) тип курсора на открытие выборки . OeDataSet.hStmt.CursorType там где стоял «Dynamic» начала выскакивать блокировка (открывается естественно на CahedUpdate) от которой не спасал и commit. 2. Load table, input однозначно дуют базу, а insert уже заполняет свободные места.Одна из причин по которой появилось «Динамическое декларирование временных таблиц» -> FAQ. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 10:15 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Возникло предположение, что в моем варианте теста ASA может схитрить, поэтому поставил еще один checkpoint перед DELETE Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Поэтому еще раз задаю вопрос: Какой номер версии ASA? Без этого - две страницы пустословия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 12:20 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
АСА 9.0.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 13:25 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Vadim Romanenko пишет: > АСА 9.0.1 А дальше? Впрочем, я предполагал что-то подобное. В ASA 9.0.1 было предостаточно новых ошибок, связанных с очень активной работой по усовершенстванию сервера по многим направлениям. Обнови до ASA 9.0.2, приложи последний EBF и потом уже проверь. С этого и надо было начинать. P.S. ASCRUS, может стоит внести в FAQ пункт сам знаешь о чем? Я устал повторять одно и то же. Все, с этого момента выдача информации о том, исправлена ли ошибка, и если да, то в каком EBF - платная услуга :) Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 13:37 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Александр Гoлдун Vadim Romanenko пишет: > АСА 9.0.1 А дальше? Впрочем, я предполагал что-то подобное. В ASA 9.0.1 было предостаточно новых ошибок, связанных с очень активной работой по усовершенстванию сервера по многим направлениям. Обнови до ASA 9.0.2, приложи последний EBF и потом уже проверь. С этого и надо было начинать. Лично я не думаю, что при переходе на 9.0.2 ситуация у него измениться. Нужно больше копать в сторону логики работы с данными и их хранения в БД - IMHO база пухнет из за несоблюдения архитектурных особенностей ASA. Александр ГoлдунP.S. ASCRUS, может стоит внести в FAQ пункт сам знаешь о чем? Я устал повторять одно и то же. Все, с этого момента выдача информации о том, исправлена ли ошибка, и если да, то в каком EBF - платная услуга :) Posted via ActualForum NNTP Server 1.1 Выноси, я галочку поставлю :) P.S. Кстати письмо получил ? А то я послал довольно интересное с моей точки зрения предложение, а в ответ тишина :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 13:53 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
ASCRUS пишет: > Лично я не думаю, что при переходе на 9.0.2 ситуация у него измениться. Все может быть. Но в ASA 9.0.1 они умудрились даже элементарный LIKE поломать. > Нужно больше копать в сторону логики работы с данными и их хранения в БД > - IMHO база пухнет из за несоблюдения архитектурных особенностей ASA. Ну ч же проверил на такой же таблице без первичных ключей. > P.S. Кстати письмо получил ? А то я послал довольно интересное с моей > точки зрения предложение, а в ответ тишина :( Да, ответил уже. Решил переползти с OE на Thunderbird, а тот почтовый аккаунт еще не перетащил. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 14:58 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Александр Гoлдун P.S. ASCRUS, может стоит внести в FAQ пункт сам знаешь о чем? Я устал повторять одно и то же. Все, с этого момента выдача информации о том, исправлена ли ошибка, и если да, то в каком EBF - платная услуга :) Posted via ActualForum NNTP Server 1.1 М-м-м... А при чем тут - исправлена ошибка или нет?? Я не видел тут никакой ошибочности. Все растут впринципе. Просто у разных СУБД есть свои средства дефрагментации. И изначально вопрос был об этом. А потом - о том, что селект лочит таблицу. И Reorganize Table тогда не работает. Вроде нигде ни о каких ошибках речь не шла... А не обновили базу до АСА 9.0.2 по одной единственной причине - когда ее ставили на необслуживаемую станцию, тогда был только 9.0.1. И после этого еще туда не ездили. Но обновление естественно будет произведено как только появится возможность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 15:52 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Vadim Romanenko пишет: > М-м-м... А при чем тут - исправлена ошибка или нет?? Я не видел тут > никакой ошибочности. Постоянный рост базы при отсутствии роста объема хранимых данных я считаю ошибкой сервера. У себя такого не наблюдаю. Повторить на свежем ASA 9.0.2 не смог. Отсюда предположение, что возможно эта ошибка уже исправлена. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 16:07 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Александр Гoлдун Постоянный рост базы при отсутствии роста объема хранимых данных я считаю ошибкой сервера. У себя такого не наблюдаю. Повторить на свежем ASA 9.0.2 не смог. Отсюда предположение, что возможно эта ошибка уже исправлена. Мммм... А не могли бы Вы сделать такое: посмотреть сколько занимает база с установившимся размером (при удалении/добавлении одинакового кол-ва записей) и после reload?? Интересно - сколько засоряет АСА при таком подходе. Возможно, она тоже сократится в несколько раз? После релоада? Просто в этом случае вопрос с автоматизацией unload/reload все равно остается... В связи со спецификой наших задач необходимо минимальное место для БД... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 16:27 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Vadim Romanenko Мммм... А не могли бы Вы сделать такое: посмотреть сколько занимает база с установившимся размером (при удалении/добавлении одинакового кол-ва записей) и после reload?? Итак, исходная база, в которой в INDVAL2 130 тыс. записей, в INDVAL - 260 тыс записей перезагружена. Размер - 33 мб. После первого выполнения запроса: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. размер вырос до 56 мб, что вполне естественно. Все последующие выполнения этого же запроса не увеличвают базу ни на байт. Естественно, если я ее перезагружу, то размер опять будет 33 мб. Но смысла в этой операции мало в контексте экономии места, т.к. первый же чекпоинт опять увеличит размер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 17:13 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Интересно... Что-ж. Попробуем перевести проект на новую версию АСА. Спасибо за тестирование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 17:14 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
А как правильно рубить log-файл? Например, можно ли сделать так, чтоб он был не больше определенного размера??? А то я говорил - у нас лог получился гораздо больше самой базы... Вернее - не гораздо, но очень даже сравнимо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 17:23 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Vadim RomanenkoА как правильно рубить log-файл? Например, можно ли сделать так, чтоб он был не больше определенного размера??? А то я говорил - у нас лог получился гораздо больше самой базы... Вернее - не гораздо, но очень даже сравнимо. Ну так смотря как задача экплуатируется. Способов много ... начиная от параметра "-m", который вообще лог держит только на время запуска сервера и режет его по коммиченным транзакциям до резки при бакупе. Тут уж от логики поставленной задачи зависит, когда его рубить лучше :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 17:29 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Vadim Romanenko пишет: > А как правильно рубить log-файл? Если нет репликации, не используется инкрементальный бэкап и данные в базе не представляют особой ценности, тогда ключик -m при запуске сервера. В этом варианте ASA будет автоматом обрезать лог при каждом чекпоинте. Но лучше делать это при бэкапе, полном либо инкрементальном. См. в хелпах про dbbackup, ключики -х либо -xo либо -r Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 17:33 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Спасибо всем за комментарии!! Будем разбираться дальше :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 17:42 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
А может быть, всё-таки купить винт побольше? Или речь идёт о БД для тамагочи (в смысле, КПК :))? ____________________________________ - Гарфилд, мышь! - Спасибо, я сыт! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 17:44 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Dim2000А может быть, всё-таки купить винт побольше? Или речь идёт о БД для тамагочи (в смысле, КПК :))? Нет, все гораздо хуже - речь идет о компе, который грузится и работает на флешке :) Это наверное еще хуже... хотят впихнуть Линукс и АСА с базой на 128 метров. А это знаете ли... Думаешь о каждом лишнем мегабайте :) Кстати! Я там выше кажется упоминал, что больше винт не помогает. На определенном этапе фрагментации приходит ТАКОЕ затупление при обращении к базе... Что то, что выбиралось за пару секунд после ребилда, выбирается минут 15. Так что наверное стоит грести в сторону Reorganize Table в любом случае. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 18:03 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Vadim RomanenkoЧто то, что выбиралось за пару секунд после ребилда, выбирается минут 15. А вот это уже пахнет отсутствием необходимых индексов. Сразу после ребилда данные отсортированы, поэтому отсутствие индекса не ухудшает ситуацию, но потом, когда база "расколбашена" полностью, отсутствие нужных индексов приводит к постоянной загрузки/выгрузки страниц таблиц в кэш/из кэша, что приводит к увеличению времени выборок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2005, 21:57 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Dim2000А может быть, всё-таки купить винт побольше? Дело не только в занимаемом пространстве, но и в потере производительности. И из-за того, что сам файл с данными больше и из-за дефрагментации. Поэтому unload/relad хотя бы раз в квартал - хорошее решение практически для любой базы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2005, 09:55 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
Кстати, по поводу привязки к СУБД - для InterBase в такой же ситуации ("голый select") желательно наоборот rollback сделать, а не commit %-) Впрочем, если этого не сделать, то все равно работать будет, этот прием позволяет уменьшить нагрузку по слежению за транзакциями\версиями. Да, и раз у ж к слову пришлось. В InterBase тоже возникают проблемы с ростом объема БД, но уже как в версионнике - нужна сборка мусора, она отъедает ресурсы. Но в InterBase, к сожалению, нельзя выполнить дефрагментацию - мусор-то соберется, но скорость деградировавшая из-за фрагментированности таблиц может быть восстановлена только за счет backup-restore БД 8-| Это, на мой взгляд, самая большая ж#$@ в InterBase - невозможность on-line манипуляций с физическим распределением БД. Даже тэйблспейсов нет - файл БД может быть порублен на фрагменты, но делается это по принципу "заполнили очередной, начинаем лить в следующий". Отсюда вопрос к практикам ASA - а насколько НА ПРАКТИКЕ помогает оптимизация размещением частей БД на разных носителях? Или реально ни у кого до этого не доходило и RAID 10 решает все проблемы просто за счет случайного перемешивания по дискам? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2005, 14:49 |
|
||
|
Автоматизация перестройки БД под АСА 9
|
|||
|---|---|---|---|
|
#18+
AnSo Отсюда вопрос к практикам ASA - а насколько НА ПРАКТИКЕ помогает оптимизация размещением частей БД на разных носителях? Или реально ни у кого до этого не доходило и RAID 10 решает все проблемы просто за счет случайного перемешивания по дискам? Недавно уже обсуждалось подобное. Здесь Если уж упомянули IB, то у ASA при схожих параметрах проектов потребность в разнесении возникает реже (по сравнению с архитектурой Classic Server), хотя бы за счет общего кэша для всех сессий. При схожих параметрах (объем данных, размер кэша, кол-во пользователей) может оказаться, что у ASA вообще почти нет обращений к диску, а FB CS будет считывать их по многу раз для разных пользователей. По той же причине и RAID10 нужен гораздо реже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2005, 15:24 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=32918433&tid=2013863]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
79ms |
get tp. blocked users: |
2ms |
| others: | 250ms |
| total: | 404ms |

| 0 / 0 |
