Litestream kynnt með útfærslu á afritunarkerfi fyrir SQLite

Ben Johnson, höfundur BoltDB NoSQL geymslunnar, kynnti Litestream verkefnið, sem veitir viðbót til að skipuleggja afritun gagna í SQLite. Litestream þarf engar breytingar á SQLite og getur unnið með hvaða forriti sem notar þetta bókasafn. Afritun fer fram með sérstaklega keyrðu bakgrunnsferli sem fylgist með breytingum á skrám úr gagnagrunninum og flytur þær í aðra skrá eða á ytri geymslu. Verkefniskóðinn er skrifaður í Go og dreift undir Apache 2.0 leyfinu.

Öll samskipti við gagnagrunninn fara fram í gegnum staðlaða SQLite API, þ.e. Litestream truflar ekki rekstur beint, hefur ekki áhrif á frammistöðu og getur ekki skemmt innihald gagnagrunnsins, sem aðgreinir Litestream frá lausnum eins og Rqlite og Dqlite. Breytingar eru raktar með því að virkja WAL log („Write-Ahead Log“) í SQLite. Til að spara geymslupláss safnar kerfið straumi breytinga reglulega saman í gagnagrunnssneiðar (skyndimyndir), sem aðrar breytingar byrja að safnast ofan á. Tíminn til að búa til sneiðar er tilgreindur í stillingunum; til dæmis er hægt að búa til sneiðar einu sinni á dag eða einu sinni á klukkustund.

Helstu notkunarsvið Litestream eru meðal annars að skipuleggja örugga öryggisafrit og dreifa lestrarálaginu á marga netþjóna. Það styður flutning breytingastraumsins til Amazon S3, Azure Blob Storage, Backblaze B2, DigitalOcean Spaces, Scaleway Object Storage, Google Cloud Storage, Linode Object Storage, eða hvaða ytri hýsil sem styður SFTP samskiptareglur. Ef innihald aðalgagnagrunnsins er skemmt er hægt að endurheimta öryggisafritið úr ástandi sem samsvarar tilteknum tímapunkti, tiltekinni breytingu, síðustu breytingu eða tiltekinni sneið.

Heimild: opennet.ru

Bæta við athugasemd