TGViewer
کدهالیک | codehalic کدهالیک | codehalic @codehalics · 4.16K subscribers
Post #1189 237
دیتابیس‌ها چطور هم سرعت بالایی دارن و هم با کرش کردن سیستم، دیتا رو از دست نمیدن؟ کلید ماجرا WAL یا Write-Ahead Logging هست.

دیتابیس به جای اینکه هر تغییر رو همون لحظه توی فایل‌های سنگین اصلی ذخیره کنه (که کُند و پرریسکه)، اول تغییرات رو خیلی سریع و پشت‌سرهم توی یه فایل لاگ (WAL) می‌نویسه. همین که تو لاگ نوشته شد، به ما میگه کار با موفقیت انجام شد! بعداً سر فرصت تو پس‌زمینه، این لاگ‌ها رو روی فایل‌های اصلی دیتا اعمال می‌کنه.

این کار دو تا مزیت طلایی داره:
۱. سرعت بالا: نوشتن ترتیبی (Sequential I/O) تو فایل لاگ خیلی سریع‌تر از گشتن و نوشتن تو فایل‌های مختلفه.
۲. تضمین بقای داده‌ها (Durability): اگه یهو سرور خاموش بشه، دیتابیس موقع بالا اومدن دوباره این فایل WAL رو می‌خونه و تمام دیتایی که رو فایل اصلی نرفته بود رو بازسازی می‌کنه.

https://www.postgresql.org/docs/current/wal-intro.html

@codehalics | کدهالیک
  • ❤ 3
  • 👍 1
More from @codehalics
  1. Oct 9, 2026حالا که فهمیدیم WAL چیه، بیاید ببینیم پس بک‌آپ (Backup) این وسط چکاره است؟ فرض کنید WAL هم…
  2. Oct 9, 2026ابزار REA یا همون Reverse Engineer Anything یه ابزار CLI و مبتنی بر پروتکل MCPئه که به ایج…
  3. Oct 8, 2026بوت‌استرپ ۶ نسخه آلفا ۱ منتشر شد و جالب‌ترین تغییرش اینه که رسماً داره می‌ره سمت سبک تیلوی…
  4. Oct 8, 2026کتابخونه Replicant یه ابزار کاربردی تو دات‌نته که با اضافه کردن یه لایه کش رو دیسک برای Ht…
  5. Oct 7, 2026این نکته رو هم اضافه کنم که این مورد داره ۲ اصل از اصول SOLID رو رعایت میکنه ! اول DIP (مع…
  6. Oct 7, 2026توی NestJS اینکه چند تا پوشه مثل Orders و Payments بسازی معنیش کد ماژولار نیست. وقتی همه چ…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →