20.04.2013 21:24, Nikolay Samofatov wrote:
> Hello, All!
>
> We use NBACKUP for physical replication of the databases. For that we added 2 
> features:
>
> 1) We only read one sector (with header) of each page when scanning for 
> changes. This is helpful for
> SSD media and might provide 4x-32x speed up.
> This is probably not important for FB3, as it will have SCN pages,

   Agree

> but is very useful optimization for 2.X ODS.

   For non-HDD drives - certainly.

> 2) We added option into NBACKUP utility to create change set based on 
> baseline GUID rather than level.
>
>     -B <level>|<GUID> <database> [<filename>] Create incremental backup
>
> This is the same GUID that is displayed in GSTAT output:
>
> Database backup GUID:   {35F5915A-4A62-4A27-AD91-6FB0EBDCCF11}

   I don't think it is user-friendly to set GUID in command-line, but i can't
offer alternative right now...

> To update offline copy of the database over WAN we use the following 
> procedure in a shall script:
> - obtain baseline GUID of the database using GSTAT -h
> - pull changes using SSH+NBACKUP using baseline GUID

   What is the file format where changes are stored ?

> - if pull is successful apply changes to a local copy

   How changes are applied ?

> - if incremental pull fails get clean copy of the database using "NBACKUP -B 
> 0", CAT and DD (we have
> implemented download resume in a shall script)
>
> Pull might fail if baseline with given GUID doesn't exist in the database (it 
> was restored from gbak
> backup, etc).
>
> This idea of using nbackup for exact this purpose was in the original design, 
> data formats, etc
> although it was never completed. Changes do not affect engine code.
>
> If there are no objections to this design I will ask Dmitry Starodubov to 
> port this code to FB3 and
> submit a patch for integration.

   No principal objections from me. But i would like to have answers about 
changes first.
And it will be good to make procedure more user-friendly, i think.

Regards,
Vlad


------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to