CardDev
ساختار داخلی پایگاه داده
هنگام انتخاب، استفاده و نگهداری از یک پایگاه داده، درک ساختار داخلی آن ضروری است. اما با وجود پایگاههای داده توزیعشده و ابزارهای فراوان موجود امروزی، اغلب دشوار است که بفهمیم هر کدام چه چیزی ارائه میدهند و چه تفاوتهایی با هم دارند. با این راهنمای عملی، الکس پتروف توسعهدهندگان را از طریق مفاهیم پشت ساختار داخلی موتورهای ذخیرهسازی و پایگاه داده مدرن راهنمایی میکند. در طول کتاب، مطالب مرتبطی را که از کتابها، مقالات، پستهای وبلاگ متعدد و کد منبع چندین پایگاه داده منبع باز جمعآوری شدهاند، بررسی خواهید کرد. این منابع در پایان بخشهای اول و دوم فهرست شدهاند. متوجه خواهید شد که مهمترین تفاوتها در میان بسیاری از پایگاههای داده مدرن در زیرسیستمهایی نهفته است که نحوه سازماندهی ذخیرهسازی و نحوه توزیع دادهها را تعیین میکنند. این کتاب به بررسی موارد زیر میپردازد: - موتورهای ذخیرهسازی (Storage engines): طبقهبندی و دستهبندی ذخیرهسازی را کاوش میکند و به موتورهای ذخیرهسازی مبتنی بر درخت B و موتورهای ذخیرهسازی ساختاریافته با لاگ (Log Structured) تغییرناپذیر میپردازد، همراه با تفاوتها و موارد استفاده برای هر یک. - بلوکهای سازنده ذخیرهسازی: نحوه سازماندهی فایلهای پایگاه داده برای ساخت ذخیرهسازی کارآمد را با استفاده از ساختارهای داده کمکی مانند کش صفحه (Page Cache)، بافر پول (Buffer Pool) و لاگ پیشنویس (Write-Ahead Log) میآموزید. - سیستمهای توزیعشده: گام به گام نحوه اتصال گرهها و فرآیندها و ساخت الگوهای ارتباطی پیچیده را میآموزید. - خوشههای پایگاه داده: مدلهای سازگاری که معمولاً توسط پایگاههای داده مدرن استفاده میشوند و نحوه دستیابی سیستمهای ذخیرهسازی توزیعشده به سازگاری را بررسی میکند.
اشتراکی