[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Master-slave репликация для SQLite - теоретический вопрос.



On 17.12.2009 13:15, Alexey Pechnikov wrote:
> Hello!
> 
> On Thursday 17 December 2009 00:15:38 Nicholas wrote:
>> Можно ли сделать реплику в два этапа:
>> при работающей базе сделать копию ее файла - пусть это займет время и 
>> результат будет гарантированно "битым".
>> вторым этапом база переводится в режим ридонли, на короткое время, и 
>> копия синхронизируется с оригиналом с помошью rsync.
>>
>> В этом случае приостановка базы будет затраченна только на синхронизацию 
>> новых данных (и организацию целостности), при этом метод будет 
>> универсальным - в ридонли наверно можно перевести любую базу, не сильно 
>> погружаясь в ньюансы.
> 
> Как уже ответил Артем, в базе выполняется множество служебных процессов,
> например, сбор и обработка статистики. Кроме того, происходит 
> инкрементальная сборка мусора, сброс журналов на диск... Для 
> принудительного сохранения журналов на диск существуют способы, но
> при этом для их дальнейшего применения вам все равно понадобится дамп базы 
> определенной давности.

Зачем, если у нас будет срез файлов БД на конкретный момент времени?
Я так понимаю что из этого состояния любая вменяемая БД должна подняться
в полностью рабочее состояние откатив незавершенные транзакции, так?

Соотвественно что на мешает сделать снапшот (например средствами LVM) и
потом с данными этого снапшота делать все что нам заблагорассудится?

Да, в этом снапшоте будет не совсем корректное состояние БД, но при
старте она должна сама это исправить. так?


> Для встраиваемых баз, в т.ч. эскулайт, действительно существует возможность
> перевода базы в read-only режим. Но rsync будет вычислять сигнатуру всего
> файла базы целиком, что займет время, сравнимое с затрачиваемым sqlite3-rdiff.
> За 1 секунду невозможно вычислить хзш-сумму для гигабайта данных. Вот если
> бы nilfs2 работала, мы могли бы делать снапшот и тут же снимать блокировку
> базы, а далее выполняя вычисление хэша уже для файла из снапшота ФС. Все к 
> тому и идет, в новых ФС, но никак вот не дойдет. Пока что до надежности ext3 
> всем новомодным ФС еще предстоит выдержать лет эдак 5 активной их
> эксплуатации... если к тому времени что-то от них останется.

Заче для этого nilfs/etc, если есть давно работающий LVM?

PS. не претендую хорошее знание материала, поэтому интересно услышать
аргументированные возражения.


-- 
With MBR
Max
CCSA/CCSE


Reply to: