|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Всем привет! Сервер Firebird 2.5, база размером 5GB, за сутки вырастает примерно на 1GB. Полезных данных, которые нужны и остаются в базе не слишком много, допустим 100MB в сутки. Рост размера базы напрямую зависит от таблицы с переменными данными. В течение дня миллионы записей в нее пишутся и из нее удаляются (INSERT/DELETE). UPDATE - нет. В конфиге: #GCPolicy = combined Т.е. получается так - на утро база 5GB, к вечеру 6GB. Если делаю так: 1) sweep, 2) бэкап, 3) ресторе получаю базу 5.1GB. Если делаю только sweep, то база продолжает расти, и к следующему вечеру ее размер 7GB. Как я себе понимаю механизм работы: 1) сборщик мусора, после не сильно большого количества (по умолчанию) транзакций, должен сам чистить мусор (размер базы не уменьшается), и новые инсерты происходят в ранее выделенное и освобожденное место базы. То что происходит в течение дня. 2) sweep - ручная чистка, после которой размер базы не уменьшается и аналогично сборщику мусора, запись начинает происходит в ранее отведенное место. Как бы база должна (образно) за первые сутки вырасти 1GB, и затем потихоньку расти, на свои 100MB в сутки. Но чистка делается, а база продолжает расти. Где ошибка, что не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 10:44 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, не совсем понятен пункт "1) sweep" Зачем его делать, если все равно есть пункт "3) ресторе" , который в любом случае делает файл со свежей базой. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 10:49 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Filippov Dmitry, Согласен, написал, потом понял что глупость написал, при бека/ресторе оно не надо. По факту sweep делается каждую ночь, а бекап/ретсоре раз в неделю. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 10:51 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperousсборщик мусора, после не сильно большого количества (по умолчанию) транзакций если есть активные транзакции, то не все старые версии превращаются в мусор. Если сборщик убирает мусор, то это место используется повторно. Если не убирает, версии не становятся мусором, и сборщику убирать нечего. Сборка мусора работает постоянно, это не sweep. Imperousа база продолжает расти. прямо на гиг в день, даже при ручном запуске sweep каждый день? Значит нет мусора и версии не убираются, а значит есть длинные активные транзакции. С которыми надо бороться в приложениях. http://www.ibase.ru/sweep ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 10:57 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous сборщик мусора, после не сильно большого количества (по умолчанию) транзакций, должен сам чистить мусор (размер базы не уменьшается), и новые инсерты происходят в ранее выделенное и освобожденное место базы. То что происходит в течение дня. судя по всему у тебя CS/SC там нет фоновой сборки мусора, так что мусор от твоих DELETE никто кроме тебя не прочистит (SELECT по тем данным которые были удалены) sweep кроме продвижения OIT может ничего и не сделать, если у тебя активные транзакции удерживающие версии давай сюда gstat -h ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 10:59 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Симонов Денис, Database header page information: Flags 0 Checksum 12345 Generation 348725 Page size 4096 ODS version 11.2 Oldest transaction 284034 Oldest active 289718 Oldest snapshot 289718 Next transaction 346482 Bumped transaction 1 Sequence number 0 Next attachment ID 2138 Implementation ID 26 Shadow count 0 Page buffers 4096 Next header page 0 Database dialect 3 Creation date Aug 5, 2018 23:10:57 Attributes force write Variable header data: Sweep interval: 0 *END* ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 11:33 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
ImperousOldest snapshot 289718 Next transaction 346482 однако.... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 11:44 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
ImperousРост размера базы напрямую зависит от таблицы с переменными данными. В течение дня миллионы записей в нее пишутся и из нее удаляются (INSERT/DELETE). Где ошибка, что не так? Во-первых и главных - в архитектуре, которая делает процитированное. Если не можешь избавиться от желания записать в БД что-то ненужное, хотя бы сделай эту таблицу временной. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 11:47 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdv, кстати http://www.ibase.ru/garbage/ sweep, автоматический или ручной. Сервер просматривает абсолютно все страницы данных (таблиц) для сборки мусора. Если после сборки мусора удается "подвинуть" вперед Oldest transactionLINIK , то это делается. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 11:47 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
ну. ImperousOldest active 289718 Next transaction 346482 Creation date Aug 5, 2018 23:10:57 не меньше полусуток какая-то транзакция торчит. см. mon$transactions ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 11:48 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Arioch, видел, исправлю. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 11:49 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, а чем это на версионнике так уж отличается от update ? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 11:49 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdv, там вообще ни одна ссылка в статье не проставлена похоже Dimitry Sibiryakovхотя бы сделай эту таблицу временной GTT не живёт между соединениями, т.е. нельзя передать работу другому клиенту или продолжить в случае разрыва и переконнекта ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 11:52 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdv, http://www.ibase.ru/summary/ авторОткройте !needsweep.txt. Откройте !snapshot2.txt: ... наблюдать в файле !rollback.txt. и т.д. Ну и "Жизненный цикл транзакций LINK" в начале ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:02 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdvну. ImperousOldest active 289718 Next transaction 346482 Creation date Aug 5, 2018 23:10:57 не меньше полусуток какая-то транзакция торчит. см. mon$transactions почему ты берешь active, а не snapshot ? разве read committed без read-consistewncy (которой в 2.х нет) будет мешать собирать мусор? https://www.firebirdsql.org/pdfmanual/html/gstat-example-header.html Oldest active - the ID of the oldest active transaction, or OAT. This value shows the transaction ID (TID) of the oldest transaction that is still running. A transaction is considered active if it has not been hard committed, is not in a state of limbo and has not been rolled back. Oldest snapshot - the ID of the oldest transaction which is currently not eligible to be garbage-collected . Any transaction with this or a higher ID cannot, yet, have old record versions removed by a sweep, for example. Normally, this is the same as the OAT above. The difference between this value and the OIT, if greater than the database sweep interval - assuming that automatic sweeping is not disabled - determines if an automatic sweep takes place. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:05 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Ariochа чем это на версионнике так уж отличается от update ?Вот как понять из этой цитаты - о чём вообще шла речь ??? Что "это" ? Цитировать красную\чёрную розу, что ли ? :) Если ты про delete+insert вместо update - в первом случае не будет длинных цепочек бекверсий, если сборка мусора застряла. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:07 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Arioch, ну что ты, ей богу. все link в статье исправил. AriochОткройте !needsweep.txt. Откройте !snapshot2.txt: ... наблюдать в файле !rollback.txt. и т.д. а тут что не нравится? Это файлы в поставке ibanalyst. Там написано - откройте. В ИБА меню файл, открыть, открываешь файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:08 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdvЭто файлы в поставке ibanalyst Это упоминается в начале главы "Нормальное состояние базы данных" - и только. М.б. лучше это в самое начало статьи переместить, что текстовые файлы упоминающиеся - они отсюжда-то? потому что если читать сразу заинтересовавшую главу в середине, то этого не читал и знаешь. Ну и стиль названий файлов - то жирный шрифт, то обычный. kdvвсе link в статье исправил. не-а, только что перезагрузил. Сделай в обеих статьях поиски по LINK и по LINIK - сам увидишь ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:14 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Arioch, ты всё попутал. Во-первых read commited read consistency появился в 4.0 Во-вторых до 4.0 read committed не удерживает версии только если она read only Ну и как раз наоборот read commited в 4.0 вообще не удерживает версии, её удерживают активные статменты и не закрытые курсоры. Ну это судя по описанию. Правда убедится в этом не так легко. Нужно делать специфичное приложение, которое не стартует лишних транзакций и фетчит все записи из курсора. Но даже в этом случае промежуточные версии хорошо собираются, это я уже глянул. И даже снапшоты уровня транзакции не такие страшные ибо не держат вообще всю сборку мусора, а только не дают собрать версии требуемые данному снапшоту. Кстати достаточно сделать фетч всех записей из курсора, или обязательно закрывать его? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:16 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
hvladЕсли ты про delete+insert вместо update - в первом случае не будет длинных цепочек бекверсий, если сборка мусора застряла. ....зато во втором не надо будет перестраивать индексы (потому что RDB$DB_KEY = голова записи не двигается). Да и сами бекверсии обычно меньше размером, чем пусть одна но полноразмерная удаленная строка. В общем, мне кажется, примерно равнозначно. Но DS категорически выступил против D+I, против твоего "первого случая". Вот я и удивился, что там такого резко опасного, что я проглядел. Не в конвретной ситуации залипшего snapshot, а "у целом" ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:18 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:20 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
AriochDS категорически выступилНикогда такого не было - и вот, опять (ц) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:20 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdvесть еще причина роста БД http://www.ibase.ru/dbgrowth Зачем его блобами грузить, когда чётко видно что сборка мусора заблокирована... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:21 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovВо-первых и главных - в архитектуре, которая делает процитированное. Если не можешь избавиться от желания записать в БД что-то ненужное, хотя бы сделай эту таблицу временной. темповая таблица здесь не годится, разные коннекты. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:21 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Симонов ДенисВо-вторых до 4.0 read committed не удерживает версии только если она read only ну r/o она от рождения committed, её (с точностью до блобов) вообще как бы нет. а вот почему RC вынуждены удерживать записи, которые им один чёрт не видны больше - это для меня непонятно и неожидано. Хотя это наверное тут оффтопик. Симонов Денисread commited read consistency появился в 4.0 Он там в заголовке будет какой-то отдельной, четвёртой строкой типа Oldest XXXXX ? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:21 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
AriochImperousOldest snapshot 289718 Next transaction 346482 однако.... можно объяснить, я не понимаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:21 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
hvlad, ну, вдруг всё-же в конце дня та транзакция кончается. :-) А вообще "я вставили млн записей, потом их удалил, и база выросла!" это классика вопросов по версионнику. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:22 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperousможно объяснить, я не понимаю. http://www.ibase.ru/mga/ Oldest Active застряла 50 тысяч транзакций назад, от Next. В среднем в сутки у вас 100к транзакций. Отставание oldest active значит, что пол-суток назад приложение стартовало транзакцию, и до сих пор ее не завершило. Что препятствует превращению версий записей в мусор, сборке мусора и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:25 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Симонов ДенисКстати достаточно сделать фетч всех записей из курсора, или обязательно закрывать его?Вроде первое, но лучше проверить ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:26 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, google: firebird oldest active snapshot - ссылок выше крыши например http://www.ibase.ru/summary/ ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:34 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdvА вообще "я вставили млн записей, потом их удалил, и база выросла!" это классика вопросов по версионнику. первичный рост сразу после restore - тут другое, с этим топик стартер разобрался у него вопрос "потом я вставил и удалил ещё миллион и база ЕЩЁ РАЗ выросла" ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:35 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
AriochDS категорически выступил против D+I, против твоего "первого случая". Ты бы это, прикрутил свою фантазию. Какое слово из "записать в БД что-то ненужное" ты сумел таким дивным способом проинтерпретировать? Ок, повторяю медленно, для фантазёров: "не надо записывать в БД данные, которые ты тут же удалишь". Обрабатывай их ещё до вставки и в базе держи только сухой остаток. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:37 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Симонов Денисфетч всех записей из курсора, или обязательно закрывать его? вроде бывают двунаправленные именованные курсоры с поддержкой редактирования строк? для таких вообще не будет разница дочитал до конца или нет, пока не закроешь. https://stackoverflow.com/questions/51656200/is-it-possible-to-adjust-the-firebird-fetch-buffer-size ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:38 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, а кто тебе сказал, что записывается "ненужное" ? только потому что когда-то после записи оно *перестаёт* быть нужным? ну так "прикрути фантазию" ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:40 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Arioch, в Firebird 3.0 двунаправленные курсоры есть только в PSQL. На уровне API есть методы для них, но реализации нет. Это просто заглушка на будущее. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:40 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Ariochа кто тебе сказал, что записывается "ненужное" ? только потому что когда-то после записи оно *перестаёт* быть нужным? Да, именно поэтому. Оно перестаёт быть нужным слишком быстро. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:55 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Всем спасибо! Таки да, есть зависшие прямо с утра транзакции. Буду думать что делать с ними. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 12:56 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Симонов Денисв Firebird 3.0 двунаправленные курсоры есть только в PSQL. На уровне API есть методы для них, но реализации нет. Это просто заглушка на будущее. все там есть ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 13:13 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
dimitr, хм.... получается я не туда смотрю src/remote/client/interface.cpp Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
ну и примерно тоже самое ResultSet::fetchFirst, ResultSet::fetchLast, ResultSet::fetchAbsolute, ResultSet::fetchRelative ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 13:25 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
тьфу, запамятовал. Оно есть в embedded, но (пока что) нет в сетевом протоколе. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 13:32 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Ariochпочему ты берешь active, а не snapshot ? потому что snapshot отстает от active только для snapshot-транзакций и еще в одном определенном случае для RC. Snapshot транзакция давно кончилась, искать ее негде. А злобную АКТИВНУЮ транзакцию можно найти сей секунд в mon$transactions. Собственно, Oldest snapshot - это признак oldest active транзакции, а не чего-то абстрактного. Потому что oldest snapshot это "транзакция, которая была самой старой активной, когда стартовала самая старая активная сейчас транзакция". Проще говоря, это самый старый мёртвый предок, которого помнит живым ныне живущий самый старый дедушка. Ariochне-а, только что перезагрузил. обновления на сайте появляются через несколько минут после редактирования. Ariochразве read committed без read-consistewncy (которой в 2.х нет) будет мешать собирать мусор? любая активная транзакция препятствует "появлению мусора" и его сборке. RC snapshot, что в 4 - по маркерам транзакций это snapshot. Так что ничего экзотического в этом нет. Ariochпотому что если читать сразу заинтересовавшую главу в середине нефиг читать с середины. Это как читать про oldest snapshot и не читать про active, oit и next. И там почти везде написано "откройте файл". Я не понимаю, как это всё можно считать ссылками, тем более что картинки по этим файлам приведены в тексте. Ariochа вот почему RC вынуждены удерживать записи, которые им один чёрт не видны больше потому что сейчас считается, что от active до next мусора быть в принципе "не может" (типа, лучше цепочки версий внутри не трогать). А в 4.0 сборщик мусора будет "выкусывать" мусор из цепочек версий, так что всё будет ок. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 13:35 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
dimitr> Оно есть в embedded, но (пока что) нет в сетевом протоколе. Что в данном случае есть embedded? Вариант работы сервера или что-то иное? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 14:45 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovперестаёт быть нужным слишком быстро вполне может быть очередь задач, как в http://www.sql.ru/forum/1300374 данные нужны, пока они не переработаны. Переработаны - перестают быть нужны. Конвейер. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 19:13 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
dimitrтьфу, запамятовал. Оно есть в embedded, но (пока что) нет в сетевом протоколе. Тогда посмотри тот топик на SO Потому что и Марк не последний в FB человек, и Эрик известен. И именно они сказали ,что дело в именованных курсорах, и именно на уровне "старого" API fbclient.dll Расшить бутылочное горлышко бы хорошо тоже ,но хотя бы разобраться почему оно возникает. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2018, 19:15 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Проблема не решилась. Даже когда нет висячих транзакций, и с выполнением вечернего sweep, база растет все так же... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 10:58 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, как именно она растёт ? Хотелось бы увидеть записи в логе про свип. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:01 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
hvladImperous, как именно она растёт ? Хотелось бы увидеть записи в логе про свип. Растет как будто ни sweep ни сборщик мусора не работают... Из лога, сегодняшнее: авторDB Fri Aug 10 03:30:00 2018 Sweep is started by SYSDBA Database "WORK_DB" OIT 579542, OAT 595737, OST 595737, Next 595737 DB Fri Aug 10 03:30:16 2018 Sweep is finished Database "WORK_DB" OIT 595737, OAT 595737, OST 595737, Next 595738 Перед sweep, чтоб наверняка никаких висяков не было, делается еще shutdown и online, и в это время гарантированно никто не юзает базу. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:19 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, ну свип то работает OIT он подвинул. Мусор тоже собран. Получается если база выросла, то это необходимо. ImperousПолезных данных, которые нужны и остаются в базе не слишком много, допустим 100MB в сутки. как считал? Учти что место занимают не только сами данные, но и индексы, хотя обычно они сильно меньше самих данных. Но нам отсюда не видно какие у тебя индексы и сколько их. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:26 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, давай сюда DDL самой жирной таблицы и статистику по ней ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:27 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
ImperousРастет как будто ни sweep ни сборщик мусора не работают...Откуда такое мнение ? Рекомендую (временно) перед и после свипа запускать gstat -r и сохранять его вывод. Через несколько дней сравнить. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:41 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
И размер файла БД, конечно же, тоже сохранять ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:42 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Симонов ДенисImperous, ну свип то работает OIT он подвинул. Мусор тоже собран. Получается если база выросла, то это необходимо. ImperousПолезных данных, которые нужны и остаются в базе не слишком много, допустим 100MB в сутки. как считал? Учти что место занимают не только сами данные, но и индексы, хотя обычно они сильно меньше самих данных. Но нам отсюда не видно какие у тебя индексы и сколько их. считал - банально: начальный размер, рост базы за день (сутки), бэкап и ресторе. таблиц и индексов не мало, точней достаточно до фига. к сожалению, политика не позволяет предоставить DDL основных (жирных и активных) таблиц. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:42 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperousсчитал - банально: начальный размер, рост базы за день (сутки), бэкап и ресторе.И сколько дней между ресторами ? И где (хотя бы такая) статистика (хотя бы за неделю) при реально работающем свипе ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:43 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, без статистики по жирным таблицам ответа вряд ли дождёшься Забавно, что такого секретного может быть в DDL таблицы? Там же никакой логики, только наименования полей, их типы, ограничения и индексы. Триггеры никто не просит ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:47 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
hvladImperousРастет как будто ни sweep ни сборщик мусора не работают...Откуда такое мнение ? Рекомендую (временно) перед и после свипа запускать gstat -r и сохранять его вывод. Через несколько дней сравнить. Может неправильно выразился. Мусор судя по номерам транзакций удаляется. Но что-то идет не так, новые данные после сборки пишутся не в ранее высвобожденное место, а выделяется новое. Про gstat -r пока не очень понимаю, но спасибо, попробую помониторить. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:50 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, таблицы могут быть сильно фрагментированы. Я же говорю без статистики не видно что происходит. Как БД раздуется сними статистику, потом сделай свип и ещё раз сними. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:52 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
hvladImperousсчитал - банально: начальный размер, рост базы за день (сутки), бэкап и ресторе.И сколько дней между ресторами ? И где (хотя бы такая) статистика (хотя бы за неделю) при реально работающем свипе ? неделю между ресторами. база вырастает с 4 до 14GB. после рестора становится 5-6GB ресторе вчерашней (новой) базы и показывает что полезных данных около 100-200MB (на этот размер база больше) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:54 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Симонов ДенисImperous, без статистики по жирным таблицам ответа вряд ли дождёшься Забавно, что такого секретного может быть в DDL таблицы? Там же никакой логики, только наименования полей, их типы, ограничения и индексы. Триггеры никто не просит Структура. Не я придумал про "нельзя". Это купленный софт. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 11:56 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
ImperousНо что-то идет не так, новые данные после сборки пишутся не в ранее высвобожденное место, а выделяется новое. Тебе это gstat и Database Analyst сказали? Или чисто "классовое чутьё"? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 12:17 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovImperousНо что-то идет не так, новые данные после сборки пишутся не в ранее высвобожденное место, а выделяется новое. Тебе это gstat и Database Analyst сказали? Или чисто "классовое чутьё"? Другого объяснения я пока дать не могу. По моим "пониманиям", если чистка прошла, то туда можно писать, ведь для этого чистка и производится. Вариант с фрагментированием конечно же имеет место быть. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 12:22 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperousнеделю между ресторами. база вырастает с 4 до 14GB. после рестора становится 5-6GB Такое впечатление, что у тебя база на мобиле крутится. Вылезь из леса, нынче 21-й век, террабайтные винты доступны каждому. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 12:23 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, к слову, если база под виндой, то можно смотреть содержимое (по типам страниц) утилитой DBInfo. https://ib-aid.com/en/ibsurgeon-free-tools/ ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 12:24 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
ImperousДругого объяснения я пока дать не могу. Ну так повышай образование и кругозор. Чтобы смог. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 12:25 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, не надо гадать, статистику gstat -r сними. Будет статистика будут и ответы, пока можно только с помощью хрустального шара гадать ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 12:30 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdvImperous, к слову, если база под виндой, то можно смотреть содержимое (по типам страниц) утилитой DBInfo. https://ib-aid.com/en/ibsurgeon-free-tools/ Прикольная прожка. Сделал эксперимент на недавней базе. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 12:49 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, а после рестора? Блобов дофига почти вся база из них ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 13:02 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdvможно смотреть содержимое (по типам страниц) утилитой DBInfo. https://ib-aid.com/en/ibsurgeon-free-tools/ Эк её задвинули... А я минут десять рылся по ibase.ru в её поисках, но так и не нашёл. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 13:03 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, супер. осталось сравнить через пару дней. Но и так видно, что 72% базы - блобы. Теоретически, на блобах она и растет ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 13:11 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
hvladkdvесть еще причина роста БД http://www.ibase.ru/dbgrowth Зачем его блобами грузить, когда чётко видно что сборка мусора заблокирована... неужели - пророк? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 14:11 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 14:19 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Imperous, в общем, утилита, конечно, показывает просто типы страниц, а заняты они реально и чем (принадлежат таблице или нет) - не в курсе. А поскольку страниц блобов после б-р становится в 2 раза меньше, предполагаю этот источник проблемы http://www.ibase.ru/dbgrowth http://tracker.firebirdsql.org/browse/CORE-4671 исправлено в 2.5.4. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 14:49 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdvутилита, конечно, показывает просто типы страниц, а заняты они реально и чем (принадлежат таблице или нет) - не в курсеА чего бы ей в PIP не посмотреть ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 15:04 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdvImperous, в общем, утилита, конечно, показывает просто типы страниц, а заняты они реально и чем (принадлежат таблице или нет) - не в курсе. А поскольку страниц блобов после б-р становится в 2 раза меньше, предполагаю этот источник проблемы http://www.ibase.ru/dbgrowth http://tracker.firebirdsql.org/browse/CORE-4671 исправлено в 2.5.4. у меня установлен Firebird 2.5.7 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 15:06 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
hvladА чего бы ей в PIP не посмотреть ? может быть. но пока лениво. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 15:08 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
kdvhvladА чего бы ей в PIP не посмотреть ? может быть. но пока лениво.А ты уверен, что она не смотрит в туда ? Ибо как она unused считает ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 15:12 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
походу свипер/сборщик мусора не добирается до некоторых блобов ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 15:36 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Без воспроизводимого примера - ничего не получится ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 15:56 |
|
Sweep / Garbage collector, мусор убран, но база растет
|
|||
---|---|---|---|
#18+
Симонов Дениспоходу свипер/сборщик мусора не добирается до некоторых блобов Гложут смутные сомнения. Думаю что размер БД при регулярном свипе стабилизируется. Нет доказательств что мусор не набирается за один раз или при застрявшей на пару-тройку транзакции. У меня часть критичных по времени клиентов подключалась с ключиком no_garbage_collect. Мусор потом собирался роботами. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2018, 16:03 |
|
|
start [/forum/topic.php?all=1&fid=40&tid=1561019]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
82ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
83ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 215ms |
0 / 0 |