Litestream SQLite کے لیے نقل کے نظام کے نفاذ کے ساتھ متعارف کرایا گیا۔

BoltDB NoSQL سٹوریج کے مصنف بین جانسن نے Litestream پروجیکٹ پیش کیا، جو SQLite میں ڈیٹا کی نقل کو منظم کرنے کے لیے ایک اضافہ فراہم کرتا ہے۔ Litestream کو SQLite میں کسی تبدیلی کی ضرورت نہیں ہے اور وہ اس لائبریری کو استعمال کرنے والی کسی بھی ایپلیکیشن کے ساتھ کام کر سکتی ہے۔ نقل ایک علیحدہ طور پر انجام دیے گئے پس منظر کے عمل کے ذریعے کی جاتی ہے جو ڈیٹا بیس سے فائلوں میں ہونے والی تبدیلیوں کی نگرانی کرتا ہے اور انہیں کسی دوسری فائل یا بیرونی اسٹوریج میں منتقل کرتا ہے۔ پروجیکٹ کوڈ گو میں لکھا گیا ہے اور اپاچی 2.0 لائسنس کے تحت تقسیم کیا گیا ہے۔

ڈیٹا بیس کے ساتھ تمام تعامل معیاری SQLite API کے ذریعے کیا جاتا ہے، یعنی Litestream آپریشن میں براہ راست مداخلت نہیں کرتا، کارکردگی کو متاثر نہیں کرتا اور ڈیٹا بیس کے مواد کو نقصان نہیں پہنچا سکتا، جو Litestream کو Rqlite اور Dqlite جیسے حلوں سے ممتاز کرتا ہے۔ تبدیلیوں کو SQLite میں WAL لاگ ("لکھنے سے آگے لاگ") کو فعال کر کے ٹریک کیا جاتا ہے۔ سٹوریج کی جگہ بچانے کے لیے، نظام وقتاً فوقتاً ڈیٹا بیس کے ٹکڑوں (اسنیپ شاٹس) میں تبدیلیوں کے سلسلے کو جمع کرتا ہے، جس کے اوپر دوسری تبدیلیاں جمع ہونا شروع ہو جاتی ہیں۔ سلائسز بنانے کا وقت سیٹنگز میں بتایا گیا ہے؛ مثال کے طور پر، آپ دن میں ایک بار یا ایک گھنٹے میں ایک بار سلائسیں بنا سکتے ہیں۔

Litestream کے لیے درخواست کے اہم شعبوں میں محفوظ بیک اپ کو منظم کرنا اور پڑھنے کے بوجھ کو متعدد سرورز پر تقسیم کرنا شامل ہے۔ یہ تبدیلی کے سلسلے کو Amazon S3، Azure Blob Storage، Backblaze B2، DigitalOcean Spaces، Scaleway Object Storage، Google Cloud Storage، Linode Object Storage، یا SFTP پروٹوکول کو سپورٹ کرنے والے کسی بیرونی میزبان میں منتقل کرنے میں معاونت کرتا ہے۔ اگر مرکزی ڈیٹا بیس کے مواد کو نقصان پہنچا ہے تو، بیک اپ کاپی کو ایک مخصوص وقت، ایک مخصوص تبدیلی، آخری تبدیلی، یا ایک مخصوص سلائس کے مطابق حالت سے بحال کیا جا سکتا ہے۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں