پرش به مطلب اصلی

12 مطلب برچسب شده با "db"

مشاهده تمام برچسب‌ها

ACID

در ابتدا باید بگیم ترنزکشن چیه؟ ترنزکشن یک مجموعه کوئری که به صورت یه unit of work رفتار میکنه و نمیتونه split بشه. و ترنزکشن یه چرخه داره

BASE

"به‌جای اینکه همیشه داده‌ها کاملاً درست و هماهنگ باشن، بهتره سریع‌تر به کاربرا پاسخ بدیم، حتی اگه بعضی از داده‌ها موقتی ناهماهنگ باشن!"

Denormalization

دیتا رو از حالت نرمال خارج کردن برای کاهش تعداد جوین ها میگن

Engine

یه لایبریه که CRUD و نحوه ذخیره سازی رو هندل میکنه. میتونه یه key/value باشه یا یه موتوری که full acid رو ساپورت میکنه. توی پست گرس نمیشه انجین رو عوض کرد ولی توی MYSQL میتونیم حتی به ازای هر جدول engine متفاوتی داشته باشیم

Index

ایندکس‌ها درDB برای افزایش سرعت جستجوها استفاده می‌شوند. مثل فهرست یک کتاب عمل می‌کنند که دسترسی سریع به داده‌ها را ممکن می‌سازد.

Isolation Level

این مشکلات در دیتابیس وقتی اتفاق می‌افتند که تراکنش‌های همزمان روی داده‌های یکسان تأثیر بگذارند و ایزوله‌سازی به اندازه کافی قوی نباشد.

Partitioning

پارتیشن‌بندی توی دیتابیس یه جورایی مثل این می‌مونه که بخوای یه انباری خیلی بزرگ رو به چند بخش تقسیم کنی، طوری که هر بخش مخصوص یه سری از وسایل باشه. حالا چرا این کارو می‌کنیم؟ چون وقتی چیزی رو لازم داری، دیگه کل انباری رو نمی‌گردی، فقط میری همون بخشی که وسایل مرتبط توش هست، پس سریع‌تر پیدا می‌کنی.

Replication

رپلیکا یعنی ما چندتا instance از دیتابیسمون بالا داشته باشیم برای Load Balance دیتابیسمون. حالا چند نوع رپلیکا داریم که هرکدوم مزایا و معایب خودشونو دارن.

Shard

شاردینگ چیه؟ اصلاً چرا شاردینگ کنیم؟!