طرح واره پایگاه داده مجموعه ای از ابرداده است که روابط بین اشیا و اطلاعات را در یک پایگاه داده توصیف می کند. یک راه آسان برای تصور طرحواره این است که آن را به عنوان جعبه ای در نظر بگیرید که جداول، رویه های ذخیره شده، نماها و دارایی های داده مرتبط را در خود نگه می دارد. یک طرحواره زیرساخت این کادر را تعریف می کند.
خط پایین
در سطح اولیه خود، یک طرحواره به عنوان محفظه ای برای دارایی های داده عمل می کند. با این حال، فروشندگان پایگاه داده های مختلف، طرحواره های خود را به روش های مختلف ساختار می دهند. به عنوان مثال، اوراکل با هر طرحواره ای به عنوان یک حساب کاربری برخورد می کند. برای ایجاد یک طرحواره جدید، یک مدیر پایگاه داده یک کاربر پایگاه داده جدید با نام طرح مورد نظر ایجاد می کند.
چرا طرحواره ها اهمیت دارند
از آنجایی که طرحواره ها یک ویژگی ساختاری اساسی یک پایگاه داده را تشکیل می دهند، بیشتر محیط های پایگاه داده مجوزهای دسترسی را به اشیاء در سطح طرحواره اعمال می کنند.
برای مثال، پایگاه داده شرکت ممکن است شامل یک سری کاربر باشد. هر کاربر دارای یک طرح است، اما دسترسی به طرحوارههای مختلف به صورت جداگانه و با جزئیات مجوزها، به کاربران خارج از طرح اصلی داده میشود.
بیشتر ابزارهای مدیریت پایگاه داده، طرحواره ها را فهرست نمی کنند. در عوض، آنها پایگاههای داده و کاربران را فهرست میکنند.
برای مثال، یک شرکت برای باب و جین حساب های کاربری (شماها) ایجاد می کند. همچنین برای بخش هایی مانند منابع انسانی و بازاریابی حساب هایی ایجاد می کند. سپس، به یک تحلیلگر در هر بخش امکان دسترسی به حساب طرحواره بخش خود را می دهد.
تحلیلگر منابع انسانی جداول و نماهایی را در طرح HR ایجاد می کند و به Bob اجازه می دهد تا جدول HR را بخواند (اما نه بنویسد) که نام کارمندان و شماره شناسه کارمندان را فهرست می کند.همچنین، تحلیلگر منابع انسانی ممکن است به جین برای خواندن و نوشتن در جدول منابع انسانی که شماره تلفن کارمندان را فهرست میکند، اجازه دهد.
با اعطای دسترسی به این روش، تنها نقشها و کاربران مناسب میتوانند دادهها را در یک دارایی دادهای مستقل در پایگاه داده بزرگتر بخوانند، بنویسند یا تغییر دهند.
هر موتور پایگاه داده به طرحواره ها به عنوان روشی اساسی برای جداسازی داده ها در یک محیط چند کاربره نگاه می کند.
موتورهای پایگاه داده مختلف با کاربران و طرحواره ها رفتار متفاوتی دارند. برای کشف مدلهای نحوی و منطقی پیرامون کاربران، طرحوارهها و مجوزهای اعطایی، به مستندات موتور پایگاه داده خود مراجعه کنید.
ایجاد طرحواره
یک طرح واره به طور رسمی با استفاده از زبان پرس و جو ساختاریافته (SQL) تعریف شده است. به عنوان مثال، در اوراکل، شما یک طرحواره را با ایجاد حساب کاربری که مالک آن است ایجاد می کنید:
CREATE USER bob
شناسایی با گذرواژه_موقت
مثال فضای جدول پیشفرض
QUOTA 10M ON مثال
LEMPORARY TAB QUOTA 5M ON سیستم
PROFILE app_user
PASSWORD EXPIRE;
سایر کاربران به واسطه نام کاربری یا یک یا چند نقشی که حساب کاربری به آن اضافه شده است، امکان دسترسی به طرحواره های جدید را دارند.
طرحواره ها در مقابل مدل های داده
همانند یک مدل داده، یک طرح واره به طور ذاتی برای انجام کاری ساختار ندارد. در عوض، این زیرساختی برای پشتیبانی از مجوزهای تقسیم بندی در پایگاه داده است.
مدل داده مجموعه ای از جداول و نماهایی است که روی کلیدهای خاصی به هم متصل شده اند. این دارایی های داده، با هم، در خدمت یک هدف تجاری هستند. استفاده از یک مدل داده برای یک طرحواره قابل قبول است - برای مدل های داده های بزرگ و پیچیده، مرتبط کردن آنها با طرحواره ها باعث مدیریت هوشمند پایگاه داده می شود. اما منطقاً لازم نیست که از یک طرح واره برای یک مدل داده استفاده کنید یا یک مدل داده را به عنوان یک طرحواره در نظر بگیرید.
برای مثال، بخش منابع انسانی ممکن است یک مدل داده برای بررسی عملکرد کارکنان در طرح خود قرار دهد. به جای ایجاد یک طرح واره برای این بررسی ها، مدل داده می تواند در طرح HR (همراه با سایر مدل های داده) قرار گیرد و از طریق پیشوندهای جدول از نظر منطقی متمایز بماند و نام اشیاء در مدل داده را مشاهده کند.
مدل داده ممکن است نام غیررسمی داشته باشد، مانند بررسی عملکرد ، و سپس همه جداول و نماها ممکن است با pr_ پیشوند شوند. جدول فهرست کارمندان ممکن است به عنوان hr.pr_employee ارجاع شود، بدون نیاز به طرحی جدید برای بررسی عملکرد.
سوالات متداول
تفاوت بین طرحواره پایگاه داده و وضعیت پایگاه داده چیست؟
یک طرح پایگاه داده پایگاه داده را توصیف می کند. وضعیت پایگاه داده به محتوای یک پایگاه داده در یک لحظه در زمان اشاره دارد و میتوان آن را توسعهای از طرح پایگاه داده در نظر گرفت.
طرح واره رابطه ای پایگاه داده چیست؟
یک طرح واره رابطه ای روابط بین جداول و موارد مرتبط با یکدیگر را مشخص می کند. یک طرحواره می تواند یک تصویر گرافیکی یا نمودار باشد یا می تواند با کد SQL نوشته شود.