Litestream lanĉita kun efektivigo de reproduktadsistemo por SQLite

Ben Johnson, aŭtoro de la BoltDB NoSQL-stokado, prezentis la projekton Litestream, kiu provizas aldonaĵon por organizi datuman reproduktadon en SQLite. Litestream ne postulas ajnajn ŝanĝojn al SQLite kaj povas funkcii kun ajna aplikaĵo kiu uzas ĉi tiun bibliotekon. Reproduktado estas farita per aparte efektivigita fonprocezo, kiu kontrolas ŝanĝojn en dosieroj de la datumbazo kaj transdonas ilin al alia dosiero aŭ al ekstera stokado. La projektkodo estas skribita en Go kaj distribuita sub la licenco Apache 2.0.

Ĉiu interago kun la datumbazo estas efektivigita per la norma SQLite API, t.e. Litestream ne rekte malhelpas funkciadon, ne influas rendimenton kaj ne povas damaĝi la enhavon de la datumbazo, kiu distingas Litestream de solvoj kiel Rqlite kaj Dqlite. Ŝanĝoj estas spuritaj per ebligado de la WAL-protokolo ("Write-Ahead Log") en SQLite. Por ŝpari stokan spacon, la sistemo periode kunigas la fluon de ŝanĝoj en datumbazajn tranĉaĵojn (momentfotoj), sur kiuj aliaj ŝanĝoj komencas amasiĝi. La tempo por krei tranĉaĵojn estas indikita en la agordoj; ekzemple, vi povas krei tranĉaĵojn unufoje tage aŭ unufoje hore.

La ĉefaj aplikaĵoj por Litestream inkluzivas organizi sekurajn sekurkopiojn kaj distribui la legan ŝarĝon tra pluraj serviloj. Ĝi subtenas movi la ŝanĝfluon al Amazon S3, Azure Blob Storage, Backblaze B2, DigitalOcean Spaces, Scaleway Object Storage, Google Cloud Storage, Linode Object Storage aŭ ajna ekstera gastiganto kiu subtenas la SFTP-protokolon. Se la enhavo de la ĉefa datumbazo estas difektita, la rezerva kopio povas esti restarigita de stato responda al specifa momento, specifa ŝanĝo, la lasta ŝanĝo aŭ specifita tranĉaĵo.

fonto: opennet.ru

Aldoni komenton