|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Это что за база такая?! На firebird?! Хелперы решили просто локальную задачу определения последнего изменения базы без изменения кода - один выполняется при выполнении запроса (проверяет изменилось ли число записей), другой при коммите транзакции фиксирует время если число изменившихся записей ненулевое. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 00:23 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
MolochnikЭто что за база такая?! На firebird?! эээ... средний размер промышленных баз на Firebird - 5-50 гигабайт. Есть много баз 100, 200, 500 гиг. Есть единичные по 5-7 терабайт. Кол-во пользователей - в среднем от 20 до 100, поменьше 200, 400, 600 пользователей, и есть даже случаи с 2000 пользователей (скорее активных коннектов, чем физических людей). http://www.ibase.ru/backupspeed3/ ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 00:33 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
kdvMolochnik, что будет, если бэкап будет длиться больше минуты? Это может случиться не только из-за увеличившегося размера БД, но и тормозов оборудования. И, пользователь вынужден работать с базой в условиях постоянного бэкапа? Это ведь полный скан БД, будет малозаметно разве что если база и бэкап на SSD. Вообще, конечно, это псевдо-репликация для бедных, выглядит ужасно. Во первых только SSD и для базы и для бэкапов. Во вторых автоматическое удаление старых записей во избежание бесконечного разрастания базы. Оборудование свежекупленное хорошее. Да, постоянный бэкап, но ничего страшного, он не требует иксклюзивного доступа, делается в отдельном потоке. Да, выглядит уродливо, признаю, но должно быть сделать кондово - просто но надежно (терминология клиента). А как вообще сделать иначе? Если не делать бэкапы то надо будет вести полный лог совершенных действий, который иногда надо будет выполнять если потребуется. Причем запросы должны быть точно синхронизированы по времени выполнения, возможно есть еще какие нибудь подводные камни типа разнын последние цифры флоата. По моему эта задача на пару порядков тяжелее в решении. Если конечно если бы это была база транзакций визы, наверное стоило бы этим заняться, а для утилитарных нужд может это и не нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 00:43 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
MolochnikХелперы решили просто локальную задачу определения последнего изменения базы без изменения кода - один выполняется при выполнении запроса (проверяет изменилось ли число записей), другой при коммите транзакции фиксирует время если число изменившихся записей ненулевое. Как это развидеть?.. x_x" Денис, если я ещё когда-нибудь совершу ошибку, сказав "я знаю как аффтар это сделал" - не стесняйся мне этот топик припомнить. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 00:49 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
MolochnikА как вообще сделать иначе? Туева хуча способов, собственно говоря. Самый простой - использовать четвёрку и встроенную синхронную репликацию. Как раз вписывается в наличие "абсолютно надёжной сети". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 00:59 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, А что такое "четверка"? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 01:02 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
kdv, Да такие базы будут бэкапиться долго. У меня поменьше думаю максимум 500 мегов, в минут уложится. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 01:03 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Имеет ввиду четвертый FB? Он же еще в бета версии, его можно ставить клиенту? Я только месяц назад перешел на FB3. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 01:08 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
MolochnikВо вторых автоматическое удаление старых записей во избежание бесконечного разрастания базы. я надеюсь, вы в курсе, что удаление (delete) порождает новые версии записей, и в результате база увеличивается. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 10:26 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
MolochnikИмеет ввиду четвертый FB? Он же еще в бета версии, его можно ставить клиенту? пока нет, но потестить уже можно. Однако существуют платные версии HQ Bird, Red Database, Avalarion в которых репликация сделано нормально. Да и есть самописные реализации, где она сделана по уму хоть и не на уровне ядра. Твоя реализация совершенно не масштабируема и не надёжна. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 10:38 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
MolochnikВо первых только SSD и для базы и для бэкапов. Для базы - ДА. Мало того - отдельный SSD на систему, отдельный SSD на базу (иногда отдельный SSD на TEMP) Для бэкапов - HDD вполне приемлем. Molochnik Во вторых автоматическое удаление старых записей во избежание бесконечного разрастания базы. Старых записей или старых бэкапов? Хотя и то и другой сомнительно... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 10:39 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
MolochnikОн же еще в бета версии, его можно ставить клиенту? Он всяко не будет хуже твоего поделия. Просто обеспечь регулярное обновление. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 12:24 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
MolochnikУ меня поменьше думаю максимум 500 меговдальше можно не читать. 982183Мало того - отдельный SSD на систему, отдельный SSD на базу (иногда отдельный SSD на TEMP)Какой ужас. Вот пару ССДшек в зеркало под базу это я понимаю, но под "систему"? темп нафига? куда продуктивней набрать это пространство модулями памяти, толку будет куда больше. А связь это самая жопа и есть, серваки ведут себя куда предсказуемей. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 14:02 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
А систему вы не резервируете? Или виртуалка еще осталась? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 15:17 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
08.05.2019 15:17, 982183 пишет: > А систему вы не резервируете? а нахрена её резервировать? её из образа поднять можно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 15:20 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
А образ у вас постоянный, ничего не меняется.... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 15:25 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
08.05.2019 15:25, 982183 пишет: > А образ у вас постоянный, ничего не меняется.... это тебе не уиндоуз. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 15:29 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
во-во... Везде есть сецифика. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 15:31 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
08.05.2019 15:31, 982183 пишет: > во-во... > Везде есть сецифика. уиндоуз не нужен. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 15:35 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
982183А систему вы не резервируете?в смысле? берется рэйд адаптер, подтыкается пара ССД в зеркало, третьим хотспар, далее полученный "диск" режется на партиции средствами ОСи, немного под рут, остальное под базы (упрощенно). Опционально подтыкается по такой же схеме три саташки под оперативный бэкап и монтируются в систему. Нет никакого смысла в отдельных накопителях под систему темпы и т.п. Не задублированные накопители вообще штука непредсказуемая, применение оных в коммерчески ценных процессах неразумно. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 18:12 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyВот пару ССДшек в зеркало под базу это я понимаю, но под "систему"? темп нафига?База на "быстром" диске и /tmp/firebird на "медленном" - дорога к большим (дисковым) очередям. Система (/(s)bin и прочие /usr) серьёзной нагрузки ввода-вывода не дают, а вот "времянка" - бывает по всякому и не всегда возможно "добить памяти". ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 18:28 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
MolochnikDimitry Sibiryakov, 982183, Я уже сказал связь предполагается абсолютно надежной. Кстати почему бы этому не быть правдой? Рутеры с проводами всяко проще компьютеров. Можно также продублировать связь вайфаем. Есть еще одна тонкость - без сети полезная функция моего ПО равна нулю, если такое случается то, чтобы там не писалось в базу практического значения не имеет. После подъема сети даже если базы будут сильно различаться я их синхронизирую по какой нибудь одной не особо парясь что, что-то там на какой то базе потерялось. У тебя - странный подход к восстановлению. В продуктовых базах потеря даже одной записи - это потерянные деньги. Это репутационные потери. Что у тебя за база? Что за данные? Каким образом это ты (особо парясь!) принимаешь решение - где данные будут для тебя ценнее? Между прочим "цифровой ник" тебе задал интересную задачу. Я не вижу ее правильного решения ни в каком виде. Может у тебя база - это лог событий? Одна табличка которая только write-only? Или для тебя данные в принципе не особо ценные. Тогда зачем так страдать по последним изменениям? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 18:29 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
maytonМежду прочим "цифровой ник" тебе задал интересную задачу. Я не вижу ее правильного решения ни в каком виде. У него однопользовательская система, split brain в ней технически невозможен. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2019, 18:50 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
kdv я надеюсь, вы в курсе, что удаление (delete) порождает новые версии записей, и в результате база увеличивается. То есть чтобы этого избежать время от времени нужно делать рестор на главной машине? Симонов ДенисОднако существуют платные версии HQ Bird, Red Database, Avalarion в которых репликация сделано нормально. Да и есть самописные реализации, где она сделана по уму хоть и не на уровне ядра. Твоя реализация совершенно не масштабируема и не надёжна. Платные версии не хочу потому что клиент за них платить не будет, а такая задача вряд кому то понадобится еще. Да, немасштабируемое решение согласен. 982183Molochnik Во вторых автоматическое удаление старых записей во избежание бесконечного разрастания базы. Старых записей или старых бэкапов? Хотя и то и другой сомнительно... Удаление всего, что может увеличить размер занимаемого пространства, в частности старые записи базы, старые лог файлы, а бэкапов ограниченное количество. Это пожелание клиента. Dimitry SibiryakovОн всяко не будет хуже твоего поделия. Просто обеспечь регулярное обновление. Так и сделаю попозже в след версии и предложу клиенту онлайн синхронизацию, может клюнет maytonУ тебя - странный подход к восстановлению. В продуктовых базах потеря даже одной записи - это потерянные деньги. Это репутационные потери. Что у тебя за база? Что за данные? Каким образом это ты (особо парясь!) принимаешь решение - где данные будут для тебя ценнее? Да, все так. По счастью у меня не продуктовая база, а в основном статистические данные и оперируют ими обычно в статистических целях. Одна потерянная запись ни у кого денег не отнимет. Если бы это было важно я бы конечно так делать не стал (я вообще этим изначально не хотел заниматься и планировал использовать MS SQL с своими группами доступности, но клиенту не понравились дополнительные траты) maytonМежду прочим "цифровой ник" тебе задал интересную задачу. Я не вижу ее правильного решения ни в каком виде. А какую задачу он задал? Не понял в каком сообщении maytonИли для тебя данные в принципе не особо ценные. Тогда зачем так страдать по последним изменениям? Да, не особо ценные и поэтому раньше вопрос и не возникал и никого вообще это не парило. А этому клиенту понадобилось, там реально занимается этим только один человек со своим видением решения, вот его желания и исполняю. Кстати сейчас пока тестировал архивацию, пара вопросов возникло. В 3-ем FB пароли можно менять SQL запросом а не gsec-ом, а запроса на бэкап-рестор так и нет. Это вообще планируется в 4й версии? И еще один вопрос - как можно определить что рестор прошел успешно? Если FB на локальной машине я просто удаляю файл базы перед рестором и смотрю не появился ли он после него. А если FB и файл базы на удаленной машине и доступ к нему через UNC путь закрыт, как тогда? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2019, 03:21 |
|
Последнее изменение базы
|
|||
---|---|---|---|
#18+
Molochnikкак можно определить что рестор прошел успешно?По логу рестора MolochnikЕсли FB на локальной машине я просто удаляю файл базы перед рестором и смотрю не появился ли он после него.надеюсь удаляешь не файл основной базы ибо появление файла после рестора совсем не означает что рестор прошел успешно ... |
|||
:
Нравится:
Не нравится:
|
|||
12.05.2019, 07:52 |
|
|
start [/forum/topic.php?fid=40&msg=39811224&tid=1560717]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
149ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 260ms |
0 / 0 |