|
|
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
hi all сабж; голосуем тут: http://tracker.firebirdsql.org/browse/CORE-4343 ЗЫ. Кто хоть раз сидел по полтора часа в ожидании результата рестора, лишь бы просмотреть "прошлое" содержимое таблички в 1000 строк, тот меня поймёт ЗЗЫ. Ну, и для целей тестирования тоже полезно будет: например, отресторить продакшен без Всегалактического Аудита, занимающего 60-70% от всей базы, и сверить его работу на 2.5 vs 3.0. Сейчас - ждать надо по 2.5 часа из-за этого. Так что, "все - на избирательный участок!" :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 15:54:27 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
а сначала поискать в трекере не судьба была? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 16:11:45 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
Интересно, если бы такая штука была с самого начала, ей бы пользовались? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 16:15:33 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
dimitrа сначала поискать в трекере не судьба была?да, пардон. Не увидел сразу. Народ! Идём вот сюда: http://tracker.firebirdsql.org/browse/CORE-2208 (request'у более 5 лет, а всего лишь три голоса собрал... неужто никому не надо ?.. ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 16:28:59 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
NickDeeИнтересно, если бы такая штука была с самого начала, ей бы пользовались?если бы ты поимел удовольствие видеть бесконечные "100500 млн records indexed" по одной и той же аудитной помойке, которая тебе в бол-ве случаев вообще не нужна (а нужна только юзерам), то ты бы точно пользовался :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 16:30:26 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
ТаблоидNickDeeИнтересно, если бы такая штука была с самого начала, ей бы пользовались?если бы ты поимел удовольствие видеть бесконечные "100500 млн records indexed" по одной и той же аудитной помойке, которая тебе в бол-ве случаев вообще не нужна (а нужна только юзерам), то ты бы точно пользовался :-) Я тоже придумал где я бы воспользовался в прошлом. Я бы логи хранил вместе с БД, а не сливал бы их в отдельную ради быстрого b/r. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 16:38:24 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
Таблоид(request'у более 5 лет, а всего лишь три голоса собрал... неужто никому не надо ?.. ) Те, кому надо, понимают, что просить надо PITR и flashback query, а не костыли. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 16:45:01 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
Кстати PITR и flashback query вроде хорошо ложатся на архитектуру FB :) Немного ODS поменять. Мусор не убирать. А кто-нибудь такое уже умеет из больших игроков? Или мы будем первыми? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:03:20 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
NickDeeНемного ODS поменять. Мусор не убирать. "Это делается совершенно иначе", - сказал мне тогда Влад. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:08:15 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
Таблоиднеужто никому не надо ?видимо, для таких целей все довольствуются отключением индексов при ресторе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:20:47 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
NickDeeМусор не убирать и тормозить все сильнее и сильнее в надежде что оный флешбек таки кому-нибудь понадобиться... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:25:10 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
dimitrи тормозить все сильнее и сильнее Ну, на выборках тормозить нечему, а любители update должны страдать: это ведь именно из-за них вообще приходится БД восстанавливать. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:30:30 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov"Это делается совершенно иначе", - сказал мне тогда Влад. Очень может быть :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:32:03 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovТаблоид(request'у более 5 лет, а всего лишь три голоса собрал... неужто никому не надо ?.. )Те, кому надо, понимают, что просить надо PITR и flashback query, а не костыли.Это слишком глобально. Тут надо скидываться всем миром и ждать полгода. И забыть про разработку / доработку ФБ-3. А добавить ключик, который будет заставлять делать skip данных - это совсем другие затраты, КМК. ЗЫ. По поводу PITR: проще к тебе всей толпой подъехать, ибо IBPRepl имеет все задатки к этому. Он же может складывать действия не в repl_log, а в файлы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:34:59 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
fd00chТаблоиднеужто никому не надо ?видимо, для таких целей все довольствуются отключением индексов при ресторе Отключение индексов не означает "не восстанавливать данные"; особенно, если рабочая база крутится на железке помощнее, а проверка-рестор идет на каком-то ноутбуке с соответствующей разницей в дисковых подсистемах. Самое интерессное, что в core-2208 все отписались, что, мол "все готово, вот-вот заапрувим", при чем посты от Шона, Николая и ДЕ - 2008 года, а от АП - 2011 :( Проголосовал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:35:01 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovНу, на выборках тормозить нечему мусор уже не тормозит выборки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:37:17 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
fd00chТаблоиднеужто никому не надо ?видимо, для таких целей все довольствуются отключением индексов при рестореИндексы нужно сохранять, если рестор идёт для тестовых целей. Например, я сейчас сравниваю произв-сть отресторенного продакшена в 2.5 и 3.0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:37:28 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
dimitrNickDeeМусор не убирать и тормозить все сильнее и сильнее в надежде что оный флешбек таки кому-нибудь понадобиться... Значит нужно придумать алгоритм, чтобы скорость не зависела от количества версий. Текущий алгоритм где-нибудь описан? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 17:47:35 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
ТаблоидИндексы нужно сохранять, если рестор идёт для тестовых целейты в первом посте хотел в мелкой табличке покопаться по-быстрому. отключи индексы, сделай полный рестор, включи индексы в мелкой табличке, профит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 18:00:25 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
fd00chТаблоидИндексы нужно сохранять, если рестор идёт для тестовых целейты в первом посте хотел в мелкой табличке покопаться по-быстрому. отключи индексы, сделай полный рестор, включи индексы в мелкой табличке, профитТам не сильно время уменьшается, когда речь идёт о невозможности "проскочить" рестор таблицы в сотни млн строк. Проверял уже. И повторюсь: есть случаи, когда в отресторенной базе вообще не нужны все эти аудиты, прайс-листы, каталоги типовых норм и прочее барахло, на которое нет никаких ссылок от дочерних к ним таблиц. А они (особенно аудит) занимают в зрелой базе больше половины всего объема. Гораздо больше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 18:06:34 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
NickDeeнужно придумать алгоритм, чтобы скорость не зависела от количества версий. Текущий алгоритм где-нибудь описан?Версии хранят ИД транзакций, которые их создали (см. тут ). ЕЯПП, сейчас идёт сначала поиск самой записи, а потом уже начинается ковыряние в её версиях, чтобы выбрать из них ту, которую имеет права видеть текущая транзакция. Т.е. поиск версии идёт просто "линейным перебором". Быстрый обход версий всех записей некоторой таблицы, которые существовали *до* момента времени tx, возможен только при каком-то подобии "индекса" с убывающим timestamp-ключем, хранящим указатели на версии в качестве значений. Чтобы при входном значении ключа (каком-то таймштампе) быстро выйти на нужный лист и начать движение по листовому уровню, а затем по каждому указателю вытряхивать версию. Какой будет размер у этого индекса ? И сколько времени уйдёт на реализацию этого и отлов багов ? ЗЫ. Да и не решит это простую задачу: пропустить рестор не нужных сейчас данных, на которые нет ссылок из других таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 18:20:02 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
ТаблоидЗЫ. Да и не решит это простую задачу: пропустить рестор не нужных сейчас данных, на которые нет ссылок из других таблиц. Это-то понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 18:35:31 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
ТаблоидВерсии хранят ИД транзакций, которые их создали (см. тут ). ЕЯПП, сейчас идёт сначала поиск самой записи, а потом уже начинается ковыряние в её версиях, чтобы выбрать из них ту, которую имеет права видеть текущая транзакция. Т.е. поиск версии идёт просто "линейным перебором". Быстрый обход версий всех записей некоторой таблицы, которые существовали *до* момента времени tx, возможен только при каком-то подобии "индекса" с убывающим timestamp-ключем, хранящим указатели на версии в качестве значений. Чтобы при входном значении ключа (каком-то таймштампе) быстро выйти на нужный лист и начать движение по листовому уровню, а затем по каждому указателю вытряхивать версию. Какой будет размер у этого индекса ? И сколько времени уйдёт на реализацию этого и отлов багов ? timestamps должны быть в TIP. А с версиями должны храниться Id транзакций. При чтении читать от хвоста, но не читать все 100000 версий, а читать только несколько последних актуальных (номер первой актуальной хранить вместе с записью, и своевременно изменять её (сборщик мусора должен не мусор убирать, а изменять номер последней актуальной версии)). Как-то так :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 18:51:30 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
NickDeeКак-то так :)ну, а по поводу размера такой базы, в которой существуют все версии от Царя Гороха ради флешбака, - что скажешь ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 18:57:33 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
ТаблоидNickDeeКак-то так :)ну, а по поводу размера такой базы, в которой существуют все версии от Царя Гороха ради флешбака, - что скажешь ? Это юзеру решать :) Я бы решил положительно в нескольких случаях (ради истории). Кому-то откат бы пригодился (правда он имхо должен бы и для метаданных работать). К тому же всегда можно в заголовке БД прописать "хранить версии начиная с такой-то даты(номера транзакции)", и не бэкапить их (и чистить фоновым сборщиком мусора, ради освобождения места на страницах). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 19:09:10 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
И ещё я бы глобальную версию метаданных прописал в TIP. Т.е. сделал бы версию метаданных не только потабличную, но и глобальную, чтобы было понятно к какой версии метаданных относится версия записи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 19:17:57 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
NickDeeИ ещё я бы глобальную версию метаданных прописал в TIP. Т.е. сделал бы версию метаданных не только потабличную, но и глобальную, чтобы было понятно к какой версии метаданных относится версия записи.Firebird Team waits for you... (may be) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 19:23:20 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
dimitrмусор уже не тормозит выборки? Помнится я проводил эксперимент, который показал что влияние мусора на выборки ничтожно. 100 тысяч версий замедлили выборку самой старой версии всего вдвое. Очевидно потому, что вся цепочка дельт уместилась на двух страницах. Да и теоретически: текущая версия читается сразу без необходимости проходить цепочку версий, а для старых снапшотов придётся пройти максимум до OAT (старше - читать просто некому), что при правильном управлении транзакциями - немного и ничем не отличается от текущего состояния. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 19:26:41 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
NickDeeИ ещё я бы глобальную версию метаданных прописал в TIP. Т.е. сделал бы версию метаданных не только потабличную, но и глобальную, чтобы было понятно к какой версии метаданных относится версия записи. Современные проблемы с версионностью метаданных не в маркерах транзакций (они и так есть в системных таблицах), а в кэше этих самых метаданных. Ну и DFW тоже добавляет сумбура... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 19:31:13 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
ТаблоидFirebird Team waits for you... (may be) Всему своё время :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 19:31:56 |
|
||
|
backup / restore с пропуском данных для *некоторых* таблиц: прошу проголосовать за фичу
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovДа и теоретически: текущая версия читается сразу без необходимости проходить цепочку версий, а для старых снапшотов придётся пройти максимум до OAT про мусор в индексах не забывай. Он влияет намного сильнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2014, 19:53:25 |
|
||
|
|

start [/forum/topic.php?all=1&fid=40&tid=1563884]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
210ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 225ms |
| total: | 544ms |

| 0 / 0 |
