مفهوم اسکیما (Schema ) در پایگاه داده چیست؟

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


اجزای اصلی اسکیما:

  1. جدول‌ها (Tables):
  • جدول‌ها ساختارهای اصلی برای ذخیره‌سازی داده‌ها هستند.
  • هر جدول از ردیف‌ها (سطرها) و ستون‌ها تشکیل شده است.
  • مثال: یک جدول به نام users ممکن است ستون‌هایی مانند id, name, email و age داشته باشد.
  1. ستون‌ها (Columns):
  • ستون‌ها مشخص‌کننده‌ی نوع داده‌هایی هستند که در یک جدول ذخیره می‌شوند.
  • هر ستون یک نام و یک نوع داده (مانند INT, VARCHAR, DATE و …) دارد.
  • مثال: در جدول users، ستون name ممکن است از نوع VARCHAR(50) باشد.
  1. کلیدهای اصلی (Primary Keys):
  • یک ستون یا ترکیبی از ستون‌ها که به طور منحصر به فرد هر ردیف در یک جدول را شناسایی می‌کند.
  • مثال: در جدول users، ستون id ممکن است به عنوان کلید اصلی تعریف شود.
  1. کلیدهای خارجی (Foreign Keys):
  • ستون‌هایی که برای ایجاد رابطه بین دو جدول استفاده می‌شوند.
  • این ستون‌ها به کلید اصلی یک جدول دیگر اشاره می‌کنند.
  • مثال: در جدول orders، ستون user_id ممکن است به کلید اصلی جدول users اشاره کند.
  1. محدودیت‌ها (Constraints):
  • قوانینی که برای اعتبارسنجی داده‌ها اعمال می‌شوند.
  • مثال‌ها: NOT NULL, UNIQUE, CHECK, DEFAULT.
  1. ایندکس‌ها (Indexes):
  • ساختارهایی که برای بهبود سرعت بازیابی داده‌ها استفاده می‌شوند.
  • مثال: ایجاد ایندکس روی ستون email در جدول users برای جست‌وجوی سریع‌تر.
  1. روابط (Relationships):
  • ارتباط بین جدول‌ها که با استفاده از کلیدهای خارجی تعریف می‌شوند.
  • انواع روابط: یک به یک (One-to-One)، یک به چند (One-to-Many)، چند به چند (Many-to-Many).

انواع اسکیما:

  1. اسکیما فیزیکی (Physical Schema):
  • نحوه‌ی ذخیره‌سازی فیزیکی داده‌ها روی دیسک را توصیف می‌کند.
  • شامل جزئیاتی مانند ساختار فایل‌ها، ایندکس‌ها و پارتیشن‌بندی است.
  1. اسکیما منطقی (Logical Schema):
  • ساختار منطقی پایگاه داده را توصیف می‌کند.
  • شامل جدول‌ها، ستون‌ها، روابط و محدودیت‌ها است.
  1. اسکیما نمایشی (View Schema):
  • نحوه‌ی نمایش داده‌ها به کاربران نهایی را توصیف می‌کند.
  • شامل ویوها (Views) و دسترسی‌های کاربران است.

مثال اسکیما:

فرض کنید می‌خواهیم یک پایگاه داده ساده برای یک سیستم مدیریت کاربران و سفارشات ایجاد کنیم. اسکیما ممکن است به این شکل باشد:

  1. جدول users:
  • id (کلید اصلی، نوع INT)
  • name (نوع VARCHAR(50))
  • email (نوع VARCHAR(100), محدودیت UNIQUE)
  • age (نوع INT)
  1. جدول orders:
  • order_id (کلید اصلی، نوع INT)
  • user_id (کلید خارجی، اشاره به users.id)
  • product (نوع VARCHAR(100))
  • quantity (نوع INT)
  • order_date (نوع DATE)
  1. رابطه بین جدول‌ها:
  • هر کاربر (users) می‌تواند چندین سفارش (orders) داشته باشد (رابطه یک به چند).

مزایای اسکیما:

  1. سازمان‌دهی داده‌ها: داده‌ها به صورت ساختاریافته و منظم ذخیره می‌شوند.
  2. یکپارچگی داده‌ها: با استفاده از محدودیت‌ها و روابط، از صحت داده‌ها اطمینان حاصل می‌شود.
  3. کارایی: طراحی مناسب اسکیما باعث بهبود عملکرد پایگاه داده می‌شود.
  4. قابلیت نگهداری: تغییرات در ساختار پایگاه داده به راحتی مدیریت می‌شود.

تفاوت اسکیما و دیتابیس:

  • دیتابیس (Database): مجموعه‌ای از داده‌های مرتبط است.
  • اسکیما (Schema): ساختار و طراحی آن داده‌ها را تعریف می‌کند.

به طور خلاصه، اسکیما نقشه‌ای است که مشخص می‌کند داده‌ها چگونه در پایگاه داده ذخیره و سازمان‌دهی می‌شوند.

دیدگاه شما

نشانی ایمیل شما منتشر نخواهد شد.