پایگاه دادهپایگاه داده چیست؟ – انواع، مفاهیم و کاربردهاپایگاه داده چیست؟ این مقاله به بررسی این موضوع و همچنین انواع پایگاه داده، کاربردهای پایگاه داده، محبوب ترین پایگاه های داده و اجزای اصلی پایگاه داده پرداخته یا دیتابیس (Database) مجموعهای ساختاریافته از اطلاعات و دادهها است که بهصورت الکترونیکی در سیستمهای کامپیوتری ذخیره میشوند. قدمت پایگاه داده به بیش از 60 سال قبل برمیگردد که در ابتدا بهصورت ذخیره از نوع Flat File بود. فلت فایلها در واقع نوعی از پایگاه داده بودند که ذخیره سازی دادهها را درون فایلهای متنی ساده انجام میدادند. پایگاه داده یکی از مهمترین بخشهای سامانههای نرمافزاری بهحساب میآید. اکثر نرمافزارها و وبسایتهایی که هر روزه به دفعات زیادی مورد استفاده قرار میگیرند بهنحوی با یک پایگاه داده در ارتباط هستند بنابراین آشنایی با پایگاه دادهها و نحوه عملکرد و کاربرد آن برای هر مهندس کامپیوتری امری الزامی است؛ بههمین جهت درس پایگاه داده جزء یکی از دروس تخصصی در رشتههای کامپیوتری محسوب میشود و تعدادی از تستهای آزمون کنکور ارشد کامپیوتر را به خود اختصاص داده است.
پایگاه داده چیست و چه کاربردهایی دارد؟
همانطور که گفته شد پایگاه داده که در متون علمی گاهی به آن "مخزن اطلاعات" و یا "بانک اطلاعاتی" نیز میگویند مجموعهای ساختاریافته از دادهها است و اطلاعات بهطور منسجم و قابل مدیریت درون آن ذخیره میشوند. بهوسیله نرمافزارهای مدیریت پایگاه داده که به آن DBMS یا Database Management System میگویند، میتوان پایگاه دادهها را مدیریت کرد. درج اطلاعات، تغییر اطلاعات، حذف اطلاعات و جستجوی اطلاعات از جمله مهمترین کارهایی است که میتوان بهوسیله این نرمافزارهای مدیریت پایگاه داده انجام داد.
دادههای قابل ذخیرهسازی درون یک پایگاه داده میتواند انواع مختلفی داشته باشد مانند:
- دادههای عددی: مانند INT ،TINYINT ،BIGINT ،FLOAT ،REAL و...
- دادههای زمانی: مانند DATE ،TIME ،DATETIME و...
- دادههای کاراکتری و رشتهای: مانند CHAR ،VARCHAR ،TEXT و...
- دادههای کاراکتری یونیکد: مانند NCHAR ،NVARCHAR ،NTEXT و...
همچنین این دادهها میتوانند در دو نوع پایگاه داده رابطه ای (Relational) و غیر رابطه ای (Non-relational) ذخیره شوند. در مورد این دو نوع پایگاه داده در بخشهای بعدی بهطور مفصل بحث خواهیم کرد.
کاربردهای پایگاه داده
امروزه رد و پای پایگاه دادهها در اکثر صنعتهای کامپیوتری مشاهده میشود. شاید اینطور بهنظر برسد که استفاده از پایگاه داده تنها مخصوص شرکتها و صنعتهای بزرگ است؛ اما باید بدانید که حتی نرمافزارهای چند مگابایتی گوشیهای هوشمند نیز برای ذخیره اطلاعات کاربران خود از پایگاه دادههای محلی که در خود گوشی هوشمند ایجاد میشود استفاده میکنند. در لیست زیر چند نمونه از کاربردهای مختلف پایگاه داده را در حوزههای مختلف مشاهده میکنید:
- استفاده از پایگاه داده در امورات مالی: تمامی اطلاعات حسابهای بانکی کاربران یک بانک درون پایگاه دادهها ذخیره میشوند. جزئیات تراکنشها مانند تاریخ تراکنش، مقدار وجه انتقالی، گیرنده، فرستنده و یا میزان مانده حساب کاربر، همه و همه درون پایگاه دادههای رابطهای موجود در سیستمهای بانکی قرار میگیرند. نمونه بارز دیگر استفاده از پایگاه داده در امورات مالی، بازار بورس است. تمامی سهامهای خریداری شده و پوزیشینهای باز شده برای خرید و یا فروش سهام درون پایگاه دادههای سیستمهای بورسی و کارگزاران ذخیره میشود و امکان بررسی کلیه امورات شما بهوسیله این پایگاه دادهها وجود دارد.
- استفاده از پایگاه داده ها در وبسایتها و وبلاگها: میتوان گفت اکثر وبسایتهایی که امکان بهروز شدن دارند (مانند قرار دادن پست جدید و یا نظر دادن) بهنحوی از پایگاه داده استفاده میکنند. محتواهایی که روزانه در وبسایتها قرار میگیرند، لینک ویدیوها، تصاویر، نظرات کاربران و... درون پایگاه دادهها ذخیره میشوند.
- استفاده از پایگاه داده برای آموزش: تمامی مدارس و دانشگاهها در تمامی مقاطع تحصیلی از ابتدایی گرفته تا دکترا، از پایگاه داده برای ذخیره اطلاعات دانشآموزان و دانشجویان و همچنین مدیریت آنها استفاده میکنند. اطلاعات فردی، ریز نمرات ثبت شده و دروس اخذ شده از بارزترین اطلاعاتی است که درون این پایگاه دادهها ذخیره میشوند.
- پایگاه داده ها برای شرکتها: علاوه بر استفاده از پایگاه داده برای پیشبرد یک بازار کار، درون خود شرکتها هم پایگاه دادههایی وجود دارد که تنها برای بررسی و مدیریت کارمندان و مدیریت شرکت مورد استفاده قرار میگیرد؛ بهعنوان مثال میزان حقالزحمه تمامی کارمندان در یک ماه، میزان درآمد ناخالص در یک سال مالی و اموراتی از این قبیل.
درس پایگاه داده
درس پایگاه داده یکی از دروس تخصصی رشتههای مهندسی کامپیوترمهندسی کامپیوتر چیست؟ معرفی رشته کامپیوتر توسط اساتید شریفاین صفحه به معرفی کامل رشته کامپیوتر، اعم از دروس رشته کامپیوتر، درآمد رشته کامپیوتر، شغل های رشته کامپیوتر، گرایش ها و زیر شاخه های رشته کامپیوتر پرداخته است و مهندسی فناوری اطلاعاتمعرفی فناوری اطلاعات (IT) - 7 دلیل برای انتخاب رشته آی تی در دانشگاهآی تی چیست و چگونه پس از ظهور توانست در مدت فقط 20 سال تمام دنیا را فرا بگیرد و اکثر پول دنیا را ببلعد و پرطرفدارترین و پر درآمدترین مشاغل دنیا را در بر گیرد، با بررسی کامل آی تی با ما همراه باشید. (IT) است. این درس جزء دروس مهم رشته مهندسی کامپیوتر بهحساب میآید، بهخصوص برای دانشجویان رشته شبکهمعرفی و بررسی رشته شبکه های کامپیوتریرشته شبکه های کامپیوتری یکی از رشته های مقطع ارشد کامپیوتر است، در این صفحه مواردی همچون دروس ارشد شبکه های کامپیوتری، بازار کار رشته شبکه های کامپیوتری، ظرفیت این رشته در دانشگاههای دولتی بررسی شده است و امنیت که تقریبا در تمامی زمینههای شغلی میبایست از اطلاعات کافی در مورد سیستمهای پایگاه داده برخوردار باشند. درسهایی مانند ساختمان دادهآموزش ساختمان داده و الگوریتمهر ساختمان داده یک نوع فرمت ذخیرهسازی و مدیریت دادهها در کامپیوتر است، که امکان دسترسی و اصلاح کارآمد آن دادهها را برای یکسری از الگوریتمها و کاربردها فراهم میکند، در این صفحه به بررسی و آموزش ساختمان داده و الگوریتم پرداخته شده است و جبر خطی از جمله درسهای مهمی هستند که به درک و فهم این درس کمک بسیاری میکنند. بر اساس چارت درسی، درس پایگاه داده معمولا در نیمه دوم تحصیلات کارشناسی یعنی ترم 4 به بعد (معمولا ترم 5 و یا 6) اخذ میشود. با توجه به تعداد تستهای نسبتا بالا با ضریب 3 و 4 در گرایشهای مختلف کامپیوتری، درس پایگاه داده یک درس مهم محسوب میشود.
پیشنیازهای درس پایگاه داده
پیشنیاز درس پایگاه داده برای رشتههای مهندسی کامپیوتر و مهندسی فناوری اطلاعات درس ساختمان داده میباشد اما از آن جایی که درسهای پیشنیاز به نوبه خود پیشنیازهای دیگری دارند، باعث میشود سلسه مراتبی از دروس پیشنیاز بهوجود آید که در زیر میتوانید تمامی این دروس را مشاهده کنید:
پیشنیاز درس پایگاه داده: ساختمان داده
پیشنیاز درس ساختمان داده: دروس برنامهسازی پیشرفته و ریاضیات گسسته
پیشنیاز درس برنامه سازی پیشرفته: مبانی کامپیوتر و برنامهسازی
همنیاز درس ریاضیات گسسته: دروس ریاضی عمومی 1 و مبانی کامپیوتر و برنامهسازی
بنابراین برای اخذ درس پایگاه داده در دوره کارشناسی نیاز است تا تمامی دروس زیر را پاس کرده باشید:
- ریاضی عمومی 1
- مبانی کامپیوتر و برنامهسازی
- ریاضیات گسسته
- برنامهسازی پیشرفته
- ساختمان داده
منابع درس پایگاه داده
وزارت علوم، تحقیقات و فناوری، کتب زیر را بهعنوان مرجع درس پایگاه داده در دانشگاه و آزمون کنکور ارشد قرار داده است:
- کتاب مفاهیم سیستم پایگاه دادهها نوشته آبراهام سیلبرشاتز (Abraham Silberschatz)
- کتاب اصول سیستمهای پایگاه داده نوشته رامز المصری (Ramez Elmasri)
- کتاب مقدمهای بر سیستمهای پایگاه داده اثر Darwen
- کتاب Database Modeling and Design اثر Jagadish ،Lightstone ،Teorey و Nadeau
- کتاب اصول پایگاه داده: مبانی طراحی، پیاده سازی و مدیریت اثر Coronel Blewett ،Crockett و Morris
- کتاب Database Systems: Design, Implementation, & Management اثر Coronel و Morris
بهطور کلی در اکثر دانشگاهها معمولا درس پایگاه داده شامل 7 فصل میباشد که در کنکور نیز تمامی تستها از همین 7 فصل مطرح میگردند. البته منابع مختلف ممکن است دستهبندیهای متفاوتی داشته باشند؛ بهعنوان مثال یک کتاب شامل 6 فصل باشد و کتاب دیگری شامل 10 فصل باشد اما لازم است بدانید که محتوای تمامی این کتابها یکی هستند و موارد اضافیتری در کتابهایی که از فصول بیشتری برخوردارند تدریس نمیشود و صرفا دستهبندی آنها متفاوت است. این فصلها را در قسمت بعدی شرح دادهایم.
سرفصلهای درس پایگاه داده
فصل اول - مفاهیم اولیه پایگاه داده
اولین فصل درس پایگاه داده در مورد مفاهیم اولیه پایگاه داده میباشد. در این فصل تعاریف اولیه پایگاه داده و روشهای ایجاد سیستمهای کاربردی بهطور کامل مورد بررسی قرار میگیرد؛ همچنین در مورد ساختارهای دادهای و معماری پایگاه دادهها نیز بحث میشود. بهطور کلی مواردی که در این درس مطرح میشود شامل موارد زیر است:
- تعاریف اولیه پایگاه داده
- روشهای ساخت سیستمهای کاربردی
- ذخیره و بازیابی اطلاعات
- عنصرهای محیط پایگاه دادهها
- ساختارهای دادهای
- معماری پایگاههای داده
- مباحث مربوط به استقلال دادهای
- کاتالوگ سیستم
- تراکنشها
- ساختار سیستم پایگاه دادهها
فصل دوم - مدل سازی داده ها با استفاده از مدل ER
قبل از ذخیره دادهها در پایگاه داده باید با یک دید سطح بالا از لحاظ معنایی و مفهومی آنها را مدلسازی کنیم. از معروفترین این مدلها میتوان به مدل موجودیت - ارتباط یا ER که مخفف Entity Relationship است اشاره کنیم. مدلسازی ER که در اواسط دهه 80 میلادی در دانشگاه MIT توسط چن پیشنهاد شد شامل سه مفهوم اصلی موجودیت، صفت و ارتباط میباشد. این مدل به مرور زمان پیشرفت کرد و توسعه یافت. نسخه توسعهیافته مدل ER با نام EER شناخته میشود. فصل دوم درس پایگاه داده به اجزای مختلف این مدلسازی و راهکارهای پیادهسازی آن پرداخته است. بهطوری کلی موارد زیر در این فصل پوشش داده میشود:
- مفاهیم اساسی در مدل ER
- نمودار ER
- نوعهای مشترک
- درجه ارتباط
- انواع تناظر
- روش ERR
فصل سوم - مدل رابطهای
پایگاه داده رابطهای یا Relational Database بر اساس مدل رابطهای طراحی و ایجاد شدهاند. این مدل در واقع ضعفهای مدلهای سلسله مراتبی و شبکهای را برطرف کرده و انتزاع قویتری را ارائه داده است. این فصل به تعریف رابطهها و معرفی کلیدهای مختلف مانند کلیدهای اصلی، کلیدهای خارجی و... پرداخته است. مواردی که در این فصل مطرح میشود به قرار زیر است:
- تعریف رابطه
- معرفی و بررسی انواع کلید
- قاعده جامعیت
فصل چهارم - جبر رابطهای
جبر رابطهای یا Relational Algebra که توسط ادگار کاد (Edgar F.Codd) در مدتی که در IBM کار میکرد ساخته شده است، کاربردش ایجاد پایه و اساس پایگاه داده رابطهای است. در واقع آشنایی با جبر رابطهای مقدمهای برای شروع زبان SQL است. عملگرهای جبر رابطهای مانند Selection و Projection و دیگر انواع عملگرها مانند عملگرهای مجموعهای مثل ضرب دکارتی، اجتماع، تفاضل مجموعهای و عملگرهای پیوندی و شبه پیوندی در این فصل بهطور کامل مورد بررسی قرار میگیرند. مواردی که در این فصل پوشش داده میشوند در زیر آمده است:
- عملگرهای جبر رابطهای
- مثالهایی برای عملگرهای گزینش، پرتو، ضرب و تقسیم
- عملگر پیوند
- چند مثال انتزاعی از پایگاه داده
- عملگر نیمپیوند
- عملگر نیمتفاضل
- ضریب گزینش عملگر پیوند
- عملگرهای فراپیوند
- دستهبندی عملگرها
- عملگر گروهبندی
- حساب رابطهای
فصل پنجم - زبان رابطهای SQL
زبان پرس و جوی ساختار یافته یا Structured Query Language که به اختصار به آن SQL میگویند، زبانی برای ارتباط با پایگاه دادههای ساختاریافته مانند SQLite، MySQLmysql چیست؟ بررسی تفاوت مای اس کی یو ال با اس کی یو ال-sqlاین مقاله عالی به معرفی mysql میپردازد، همچنین ویژگی های MySQL، تفاوت MySQL با SQL و سازگاری این پایگاه داده به سایر سرویس ها را مورد بررسی قرار میدهد و SQL Server است. بهوسیله این زبان میتوان دادهها را وارد پایگاه داده کرد (Insert)، تغییر داد (Update)، حذف کرد (Delete) و همچنین با استفاده از شرطهای مختلف آنها را انتخاب کرد (Select). در این فصل تمرکز اصلی بر روی این زبان و تکنیکهای مربوط به این زبان قرار دارد. تمامی مواردی که در زیر آمده در این فصل مورد بررسی قرار میگیرد:
- زبان رابطهای SQL
- دستورهای اصلی زبان SQL
- توابع جمعی
- مرتبسازی رکوردها
- عملگر LIKE
- عملگر BETWEEN
- عملگر UNION
- دستهبندی اطلاعات
- استفاده از HAVING در دستور SELECT
- پیوند رابطهها
- پرسشهای تودرتو
- نمونه مثالهای پایگاه داده
- مجوزها در SQL
- تعریف و کاربرد VIEW
- متغیرها، ساختارهای تصمیم و رویههای ذخیره شده
فصل ششم - انواع وابستگیها
این فصل مقدمهای برای عملیات نرمالسازی در پایگاه داده است. در این فصل انواع وابستگیها تعریف شده و مثالهایی در مورد هرکدام آورده میشود. بهطور کلی مواردی که در این فصل پوشش داده میشود به قرار زیر است:
- انواع وابستگیها
- وابستگی تابعی (FD)
- وابستگی تابعی کامل (FFD)
- وابستگی با واسطه (TD)
- وابستگی چندمقداری (MVD)
- وابستگی پیوندی (JD)
- قواعد استنتاج آرمسترانگ
- پیدا کردن کلید کاندید
فصل هفتم - نرمال تر سازی رابطهها
یکی از مشکلاتی که پایگاه دادهها دچار آن میشوند، مشکل افزونگی اطلاعات است. افزونگی به معنای ذخیره اطلاعات خاص در چند محل مختلف است. وجود افزونگی علاوه بر مشکلات حافظهای و کاستن سرعت پرسوجو، میتواند استخراج اطلاعات مفید از دادهها را سخت و در مواقعی غیرممکن کند. برای جلوگیری از افزونگی، از نرمالسازی دادهها یا Data Normalization استفاده میشود. با نرمالسازی، دادهها یکپارچه میشوند و سرعت دسترسی به دادهها نیز افزایش مییابد. پایگاه دادهای که بهخوبی نرمال شده باشد، تعداد هر عنصر اطلاعاتی به درون پایگاه داده را به حداقل میرساند و بههمین خاطر احتمال ناسازگاری بین اطلاعات ذخیره شده نیز به حداقل میرسد. در این فصل راجع به موارد زیر بحث میشود:
- آنومالی چیست
- صورتهای نرمال
- رابطه 1NF
- رابطه 2NF
- رابطه 3NF
- رابطه BCNF
- رابطه 4NF
- رابطه 5NF
- تبدیل رابطهها
- مزایا و معایب نرمالترسازی
- قضیه هیث
دانلود کتاب پایگاه داده
در ادامه کتب رفرنس درسی و سوالات آزمون کنکور ارشد که توسط وزارت علوم معرفی شده است را میتوانید دانلود کنید:
انواع پایگاه دادهها
با توجه به اینکه بیش از 60 سال از ساخته شدن اولین پایگاه داده میگذرد، نیازهای مختلفی در ارتباط با استفاده از پایگاه دادهها بهوجود آمد و بههمین علت تاکنون پایگاه دادههای مختلفی با رویکردها و مزایای مختلفی ایجاد شدهاند که هر کدام برای مقصد خاصی مورد استفاده قرار میگیرند. در این قسمت به بررسی مهمترین نوعهای پایگاه داده و مزایای آنها میپردازیم.
پایگاه داده رابطهای
تقریبا میتوان گفت که پایگاه داده رابطهای از معروفترین و پرکاربردترین پایگاه دادهای است که از سال 1970 تاکنون در موارد گوناگونی مورد استفاده قرار گرفته است. دادهها در این نوع پایگاه داده بهصورت ساختاریافته در جدولها ذخیره میشوند. جداول شامل سطر و ستونها هستند. هر سطر برابر یک رکورد (یا یک تاپل) میباشد. ستونهای جدول نیز نمایانگر نوع داده میباشد. تصویر زیر یک نمونه ساده از یک جدول در پایگاه داده رابطهای را نشان میدهد.
برای ارتباط با این نوع پایگاه دادهها از زبان SQL استفاده میشود. بهوسیله زبان SQL میتوان دادهها را ذخیره کرد، خواند، تغییر داد و حذف کرد. در پایگاه داده قاعدهای وجود دارد به نام ACID که از 4 کلمه Atomicity (اتمیک یا تجزیه ناپذیر بودن)، Consistency (سازگاری یا ثبات)، Isolation (انزوا)، Durability (پایایی) تشکیل شده است. پایگاه دادهای که از این قاعده پیروی کند، تراکنشهای مطمئنی را پردازش میکند و آنهارا قابل اعتماد میسازد. پایگاه داده رابطهای این قاعده را رعایت کرده است و بر مبنای آن عمل میکند.
مزایای پایگاه داده رابطهای:
- پیچیدگی کم: یکی از سادهترین مدل پایگاه دادهای، پایگاه داده رابطهای است. در واقع معماری و ساختار این نوع پایگاه داده از بقیه انواع پایگاه داده سادهتر است و با زبانهای قدرتمندی همچون SQL میتوان بهراحتی به تعامل با این نوع پایگاه دادهها پرداخت.
- دقت دادهها یا Data Accuracy: در پایگاه داده رابطهای، جدولها شامل انواع کلیدها میباشند؛ مانند کلید اصلی یا Primary Key و همچنین کلید خارجی یا Foreign Key. این امر باعث میشود دقت دادهها بیشتر شود و از درج دادههای تکراری یا نامرتبط و اشتباه پرهیز شود.
- ایمن بودن: پیادهسازیهایی که از این نوع پایگاه داده صورت گرفته است، امکانات فراوانی را جهت برقراری امنیت بهوجود آوردهاند؛ مانند سطحبندیهای دسترسی مختلف بهوسیله ادمین پایگاه داده توسط ابزارهای مدیریت پایگاه داده، برچسبگذاری محرمانه برای بعضی از جداول و...
پایگاه داده NoSQL
این نوع پایگاه دادهها که به پایگاه دادههای غیرساختاریافته معروف هستند دقیقا عکس پایگاه داده ساختار یافته میباشند. به هر پایگاه داده غیر رابطهای، پایگاه داده NoSQL میگویند بنابراین خود این پایگاه داده، شامل انواع دیگری نیز میشود. برخلاف پایگاه دادههای رابطهای، در پایگاه داده NoSQL، هیچ طرح اولیه و ازپیشتعریفشدهای برای دادههایی که قرار است ذخیره شوند وجود ندارد بنابراین این پایگاه داده برای ذخیرهسازی دادههای بدون ساختار مناسب میباشد. در تصویر زیر یک نمونه از داده ذخیره شده در این نوع پایگاه داده را مشاهده میکنید:
مزایای پایگاه داده NoSQL:
- انعطافپذیری بالا: در پایگاه دادههای رابطهای (یا SQL)، دادهها در یک اسکیمای تعریف شدهای ذخیره میشوند. اما در NoSQL دادهها آزادانه میتوانند به هر شکل و اسکیمی ذخیره شوند و در کل نیازی به تعریف ساختاری برای ذخیره دادهها نداریمِ همچنین دادهها در پایگاه دادههای از نوع NoSQL میتوانند از هر نوع و فرمتی باشند؛ بهعنوان مثال میتوان دادههای ساختاریافته، نیمهساختاریافته یا بدون ساختار را درون یک داده ذخیره کرد.
- در دسترس بودن یا Availability: دادههای ذخیره شده درون پایگاه دادههای NoSQL قادر هستند تا بهطور خودکار درون چندین سرور یا دیتاسنتر و یا فضای ابری پخش شوند بنابراین نرخ تاخیر برای کاربران بسیار پایینتر خواهد بود و پرفورمنس افزایش پیدا میکند.
- پشتیبانی از ساختار دادههای گوناگون: در پایگاه دادههای NoSQL میتوان طیف وسیعی از ساختمان دادههای مختلف را ذخیره کرد. از مقادیر دودویی (باینری) ساده گرفته تا فهرستها، نقشه، رشته و...
پایگاه داده مبتنی بر فضای ابری
تکنولوژیهای مبتنی بر فضای ابری دارای ویژگیهای انعطافپذیری (Flexibility)، مقیاسپذیری (Scalability) و دسترسی بالا (Availability) میباشند. بهمنظور بهره بردن از این ویژگیها، پایگاه دادههایی برای فضای ابری طراحی و ساخته شدهاند. از انواع پایگاه دادههای ابری میتوان به Microsoft Azure SQL و Oracle Autonomous اشاره کرد.
مزایای پایگاه داده ابری
- مقیاس پذیری بالا: با توجه به مبتنی بودن بر فضای ابری و امکان مقیاسبندی با استفاده از کم و زیاد کردن گرهها (Node) و خوشهها (Cluster)، مقیاسپذیری در پایگاه دادههای ابری آسانتر، سریعتر و کمهزینهتر از بقیه انواع پایگاه دادهها صورت میگیرد.
- دسترسی بالا: در پایگاه دادههای ابری که فضای ذخیرهسازی آن به صورت توزیع شده هستند، امکان دسترسی به دادهها با غیر فعال شدن یک یا چند پایگاه میتواند همچنان وجود داشته باشد (که البته به نوع پیادهسازی بستگی دارد).
پایگاه داده شیگرا
پایگاه دادههای شیگرا (Object-Oriented) در واقع نوعی پایگاه داده هستند که طراحی آن از الگوی برنامه نویسی شی گرابرنامه نویسی شی گرا چیست؟ شی گرایی چیست؟این صفحه عالی به معرفی برنامه نویسی شی گرا پرداخته و توضیح داده شی گرایی یا همان object oriented یا OPP چیست؟ همچنین مزایای برنامه نویسی شی گرا را بیان کرده پیروی میکند. در این پایگاه دادهها، اطلاعات بهجای داده (مانند عدد، رشته و...) بهصورت شی یا Object درون پایگاه داده ذخیره میشوند. پایگاه دادههای شیگرا توسط سیستمهای مدیریت پایگاه داده شیگرا یا OODBMS مدیریت میشوند. با زبان های برنامه نویسیزبان های برنامه نویسی چیست؟این مقاله عالی توضیح داده که زبان های برنامه نویسی چیست؟ و انواع زبان های برنامه نویسی و بهترین زبان برنامه نویسی برای شروع و پردرآمدترین آنها را معرفی کرده شی گرا مانند سی شارپ، جاواجاوا چیست؟ تعریف، معنی و ویژگی های جاوا (java) از 0تا100جاوا یک زبان برنامه نویسی همه منظوره، مبتنی بر کلاس و شی گرا است که برای داشتن وابستگی های پیاده سازی کمتر طراحی شده است، زبان برنامه نویسی جاوا شبیه ++C است و سی پلاس پلاسبرنامه نویسی سی پلاس پلاس چیست؟ مزایای برنامه نویسی C++؟برنامه نویسی سی پلاس پلاس چیست و چه کاربردی دارد؟ این صفحه عالی به بررسی مزایای برنامه نویسی C++ پرداخته و نمونه هایی از کدهای زبان برنامه نویسی ++C را آورده بهراحتی میتوان از این پایگاه دادهها استفاده کرد.
مزایای پایگاه داده شی گرا
- قابل تعمیم دادن: با توجه به امکان ساخت انواع داده بهصورت سفارشی (Custom Data Types) امکان نوشتن سوپر کلاسها (Super Class) و ساب کلاسها (Sub Classها) بهصورت شیگرایی وجود دارد که همین امر باعث جلوگیری از افزونگی در پایگاه داده میشود.
- امکان ساخت دادههای پیچیده: دادههای متنوع و پیچیدهای میتوان بهوسیله پایگاه داده شیگرا ساخت که همانندش در پایگاه دادههای دیگر (مثلا رابطهای) وجود ندارد.
- استفاده در زبانهای برنامهنویسی: از این پایگاه دادهها بهراحتی و بدون هیچ دردسری میتوان در انواع زبانهای برنامهنویسی شیگرا استفاده کرد.
- مدل کردن دنیای واقعی: با توجه به امکان ایجاد انواع مختلف دادهها و محدود نبودن به دادههای ساده و پیشفرض، راحتتر میتوان دنیای واقعی را مدل کرد.
پایگاه داده کلید مقدار
یکی از سادهترین انواع پایگاه داده، پایگاه داده کلید مقدار یا Key-Value Database است. این پایگاه داده در واقع نوعی از پایگاه داده NoSQL است که در آن دادهها بهصورت زوج کلید و مقدار ذخیره میشوند. با توجه به سادگی در معماری و ساختار پایگاه دادههای کلید مقدار، این پایگاه دادهها از مقیاسپذیری بالایی برخوردار هستند. برای نمونهای از این پایگاه دادهها میتوانید تنظیمات یک نرمافزار موبایلی را در نظر بگیرید که تنظیمات یا آپشنها بهصورت Key و مقدار آنها بهصورت Value ذخیره میشوند (مثلا Brightness: 100 یا Auto Restart: Off).
مزایای پایگاه داده کلید مقدار
- سادگی: همانطور که گفته شد این پایگاه دادهها بسیار ساده هستند و استفاده از آنها بهدلیل عدم وجود نوعهای دادهای مختلف و بهکارگیری از دستورات ساده نیز بسیار راحت است.
- سرعت بالا: سرعت پاسخگویی در این نوع پایگاه دادهها با توجه به ساختار ساده آن بالاست.
- جابهجایی آسان: با توجه به نداشتن زبان کوئرینویسی برای این پایگاه دادهها، این امکان وجود دارد که این پایگاه دادهها را بهراحتی بین سیستمهای مختلف جابهجا کنیم. (در حد کپی پیست کردن فایل)
پایگاه داده گرافی
بهطور خلاصه از این پایگاه داده در برنامههایی استفاده میشود که به تحلیل روابط بین اشیا نیاز داریم. پایگاه داده گرافی یکی از انواع پایگاه داده NoSQL است. این پایگاه دادهها شامل دنبالهای از گرهها و ارتباطات است که با ترکیب آنها یک گرافگراف چیست، آموزش گراف از 0 تا 100 توسط دانشجو ارشد صنعتی شریفدر این مقاله تمامی مطالب مربوط به گراف از 0 تا 100 تدریس شده است. مواردی همچون : گراف چیست؟ انواع گراف، گراف همبند، مکمل گراف، گراف کامل، گراف جهت دار، گراف بدون جهت، گراف ساده و ... ایجاد میشود. از نمونههای معروف پایگاه داده گرافی میتوان به Neo4J اشاره کرد.
تفاوت پایگاه داده رابطهای (SQL) و NoSQL
امروزه بهطور گسترده از دو نوع پایگاه داده رابطهای و NoSQL استفاده میشود. هرکدام از این پایگاه دادهها معایب و مزایای خاص خودشان را دارند و کاربران با توجه به نیازهای خود یک نوع را انتخاب کرده و استفاده میکنند. در اینجا بعضی از تفاوتهای مهم این دو رویکرد ایجاد پایگاه داده را بررسی میکنیم. لیست زیر نمونهای از این تفاوتها است:
- در پایگاه داده رابطهای یا SQL، جدولها و دادهها با یکدیگر ارتباط (Relation) دارند و کل اطلاعات نیز بر پایه این رابطهها ساخته میشوند؛ مثل رابطه دانشجو با مدرسه و شهری که داخلش زندگی میکند اما پایگاه دادههای NoSQL دارای چنین روابطی نمیباشند، در واقع نیازمند به همچین ارتباطاتی نیستند.
- در پایگاه دادههای رابطهای از زبان SQL یا زبان کوئری ساختاریافته استفاده میشود و اسکیما یا قالب دادهها از قبل مشخص میشوند. اطلاعاتی که برای ذخیره شدن وارد پایگاه داده میشوند باید حتما بر اساس آن اسکیما باشند. اما در پایگاه دادههای NoSQL چنین اسکیمای از پیش تعریف شدهای نداریم و در واقع اسکیما به صورت پویا برای انواع دادههای بدون ساختار قابل تغییر است.
- دادههای پایگاه داده SQL درون جدولها ذخیره میشوند اما دادهها در پایگاه داده NoSQL در فایلها (مثلا یک فایل JSON) بهصورت کلید مقدار و یا بهصورت گراف ذخیره میشوند.
- پایگاه دادههای SQL برای ذخیره فایلهای ساختاریافته مناسب هستند مانند فرم کاربران، کارنامه دانشآموزان و... در حالی که پایگاه دادههای NoSQL برای دادههای بدون ساختار خوب عمل میکنند مانند اطلاعات یک فایل، دادههای مربوط به هواشناسی، تراکنشهای بلاکچینی و...
محبوبترین پایگاه دادههای مبتنی بر SQL
در لیست زیر، محبوبترین پایگاه دادههای رابطهای و مبتنی بر زبان SQL را مشاهده میکنید که اکثر شرکتهای بزرگ و کوچک در جهان از آنها استفاده میکنند:
- MySQL
- PostrgreSQL
- Oracle
- Microsoft SQL Server
- MariaDB
- IBM Db2
محبوبترین پایگاه دادههای NoSQL
لیست زیر محبوبترین پایگاه دادههای NoSQL را نشان میدهد که امروزه کاربردهای بسیار زیادی دارند و در صنعتهای مختلفی مورد استفاده قرار میگیرند:
- MongoDB
- Redis
- Apache Cassandra
- DynamoDB
- RavenDB
- OrientDB
- Riak
- Oracle NoSQL DB
سیستم مدیریت پایگاه دادهها یا DBMS
در پایگاه دادهها سیستم مهمی وجود دارد بهنام سیستم مدیریت پایگاه داده یا Database Management System که بهاختصار به آن DBMS میگویند، این سیستمها در واقع یک مجموعه نرمافزاری هستند (نرم افزارهای پایگاه داده) که برای ذخیره، بازیابی و اجرای پرس و جو یا کوئری بر روی دادهها مورد استفاده قرار میگیرند. میتوان گفت که DBMSها نقش یک واسط نرمافزاری بین کاربران و پایگاه داده را دارند. از وظایف مختلف DBMSها میتوان به عملیات ایجاد کردن، بهروزرسانی کردن، حذف کردن، نمایش، ویرایش و... اشاره کرد؛ همچنین فراهم کردن امنیت اطلاعات و کنترل یکپارچه بودن دادهها نیز از وظایف دیگر DBMS است. علاوه بر اینها مدیر (ادمین) پایگاه داده یا DBA با استفاده از DBMS میتواند به مانیتور کردن کارکرد پایگاه داده و تعریف دسترسیهایی در سطوح مختلف برای کاربران بپردازد.
مزایای DBMS:
- کنترل افزونگی با توجه به اینکه تمامی دادهها در یک فایل دیتابیس ذخیره میشوند.
- با توجه به اینکه تمامی دادهها در فایل پایگاه داده ذخیره میشود و ممکن است دچار افزونگی شود، DBMS میتوان این افزونگی را کنترل کند.
- دادههای ذخیره شده بهوسیله DBMSها توانایی به اشتراک گذاشته شدن را دارند.
- با استفاده از DMBS پایگاه داده این توانایی را دارد که بهصورت خودکار ریکاوری و بکآپگیری شود.
- داشتن انواع رابط کاربریرابط کاربری یا ui چیست؟ – تفاوت ui و ux + مراحل طراحی uiاین مقاله عالی بررسی کرده که رابط کاربری ui چیست، همچنین تفاوت های UI و UX و مراحل طراحی UI و همچنین اصول طراحی رابط کاربری و سبک های طراحی UI را بررسی کرده و GUIهای مختلف از مزایای دیگر DBMSها هستند.
معایب DBMS:
- DBMSها بهطور معمول فضای زیادی از حافظه دیسک و RAMرم کامپیوتر چیست؟ رم کجاست؟ معرفی انواع رم (RAM) کامپیوتراین مقاله عالی به معرفی رم کامپیوتر پرداخته، همچنین بررسی کرده رم کامپیوتر (RAM : Random Access Memory) کجاست و انواع رم کامپیوتر را معرفی کرده است را اشغال میکنند.
- با توجه به نیازمند بودن سرعت پردازش داده بالا و میزان بالای رم برای اجرای نرمافزارهای DMBS، در نتیجه DBMSها هزینهبر هستند.
- DBMS ها باعث اضافه شدن پیچیدگی به یک سیستم پایگاه دادهای میشوند.
اجزای اصلی پایگاه داده
انواع پایگاه دادهها از انواع مختلف اسکیماها، ساختار دادهای و دادهها استفاده میکنند، اما بهطور کلی میتوان گفت که تمامی آنها از 5 جزء اصلی زیر تشکیل شدهاند:
- سختافزار (Hardware): سخت افزارسخت افزار چیست - بررسی اجزای اصلی سخت افزار کامپیوتردر این صفحه بررسی شده که سخت افزار چیست و سخت افزار کامپیوتر به زبان ساده معرفی شده است، همچنین به بررسی اجزای اصلی سخت افزار کامپیوتر پرداخته شده استها در واقع همان ابزارهای فیزیکیای هستند که نرمافزارها و برنامههای دیتابیس بر روی آنها اجرا میشوند؛ مانند کامپیوترها، سرورها، هارد و...
- نرمافزار (Software): برای برقراری ارتباط میان کاربران و پایگاه داده و همچنین کنترل بر روی پایگاه داده، نیازمند نرمافزارهایی هستیم که این کار را تسهیل کند؛ بهعنوان مثال نرمافزارهای DBMS که برای کنترل و مدیریت کردن پایگاه داده استفاده میشوند.
- داده (Data): دادهها در واقع اطلاعات خام و تحلیل نشدهای هستند که در پایگاه دادهها ذخیره میشوند. ادمینها و مدیرهای پایگاه داده با نظم بخشیدن به این دادهها آنها را مرتب و معنادار میکنند.
- زبان دسترسی به دادهها (Data Access Language): زبان دسترسی به دادهها در واقع زبان برنامه نویسیای است که برای کنترل پایگاه داده مورد استفاده قرار میگیرد. از جمله معروفترین زبانهای برنامه نویسی که میتوان نام برد SQL یا Structured Query Language است که پیشتر مورد بررسی قرار گرفت.
- رویهها (Procedures): رویهها بهطور خلاصه قوانینی هستند که برای چگونگی عملکرد پایگاه داده و چگونگی مدیریت دادهها وضع میشوند.
فیلمهای رایگان پایگاه داده
پایگاه داده جلسه 1
پایگاه داده جلسه 2
پایگاه داده جلسه 3
پایگاه داده جلسه 4
پایگاه داده جلسه 5
نکته و تست پایگاه داده جلسه 1
درس پایگاه داده در آزمون کنکور ارشد
در آزمون کنکور ارشد کامپیوتر، تمامی گرایشها، درسهای یکسانی دارند اما ضرایب آنها با یکدیگر متفاوت است. کل دروس به 2 بخش عمومی و تخصصی تقسیم میشوند. بخش عمومی شامل درس زبان و مجموعه درسهای ریاضی یعنی ریاضی 1، ریاضی 2، آمار و ریاضیات گسسته است. ضریب درس زبان، 1 و ضریب دروس ریاضی، 2 میباشد و بخش تخصصی شامل 11 درس میباشد که به 4 مجموعه درسی زیر تقسیم شده است:
- مجموعه اول: دروس نظریه زبان و سیگنال
- مجموعه دوم: دروس ساختمان داده، الگوریتمالگوریتم چیست به زبان ساده و با مثال های فراواندر این مقاله به زبان بسیار ساده و با مثال های متعدد توضیح داده شده که الگوریتم چیست و چه کاربردهایی دارد و هوش مصنوعیهوش مصنوعی (AI) چیست؟ انواع، کاربردها، مزایا و معایبهوش مصنوعی یا Artificial Intelligence یا به اختصار AI، امروزه کاربردهای بسیاری پیدا کرده و به یکی از داغترین حوزههای بشر تبدیل شده است، اما با این وجود بسیاری از افراد با کاربردهای آن آشنایی کامل ندارند، به همین علت در این صفحه کاربردها، مزایا و معایب AI بطور کامل بررسی شده است
- مجموعه سوم: دروس مدار منطقی، معماری کامپیوتر آموزش جامع معماری کامپیوتر در مهندسی کامپیوتر، معماری کامپیوتر مجموعهای از قوانین و روشهایی است که به چگونگی طراحی، کارکرد، سازماندهی و پیاده سازی (ساخت) سیستمهای کامپیوتری میپردازد، در این صفحه به بررسی و آموزش کامل معماری کامپیوتر پرداخته شده است و الکترونیک دیجیتال
- مجموعه چهارم: دروس سیستم عاملسیستم عامل چیست به زبان ساده، چرا باید از OS استفاده کنیم؟این مقاله عالی به معرفی سیستم عامل (Operating System|OS) به زبان ساده پرداخته، همچنین بررسی کرده که چرا باید از سیستم عامل استفاده کنیم ، شبکه های کامپیوتریجامعترین آموزش درس شبکه های کامپیوتریدرس شبکه های کامپیوتری یکی از مهمترین و بنیادیترین دروس رشته کامپیوتر است، با توجه به اینکه اینترنت امروزی بزرگترین سیستم مهندسی ساخت دست بشر در تمام طول تاریخ است، آشنایی با شبکههای کامپیوتری برای تمامی علاقهمندان و دانشجویان رشته کامپیوتر الزامی است، در این راستا در این صفحه به معرفی شبکههای کامپیوتری پرداخته شده است و پایگاه داده
دروس مجموعه چهارم که شامل 3 درس سیستم عامل، شبکههای کامپیوتری و پایگاه داده است، در گرایشهای شبکههای کامپیوتری، رایانش امن و علوم و فناوری شبکه دارای ضریب 4 است و در گرایشهای هوش مصنوعی، معماری، نرمافزار، بیوانفورماتیک، علوم داده، الگوریتم و محاسبات و قرآن کاوی رایانشی دارای ضریب 3 میباشد. برای مشاهده ضرایب بقیه درسها و گرایشها میتوانید به صفحه دروس مورد آزمون در کنکور ارشد کامپیوتر و ضرایب آن مراجعه کنید. تعداد تستهایی که از درس پایگاه داده در آزمون کنکور ارشد سال 1400 مطرح شد شامل 7 تست در کنکور فناوری اطلاعات و 6 تست در مهندسی کامپیوتر است. با توجه به تعداد سوالات و ضریب بالای این درس برای رشته مهندسی کامپیوتر و فناوری اطلاعات، میتوان گفت که درس پایگاه داده نیز مانند بسیاری از دروس تخصصی دیگر جزء یکی از دروس مهم کنکور کارشناسی ارشد محسوب میشود.
فیلمهای آموزشی درس پایگاه داده
همانطور که گفته شد، درس پایگاه داده برای دانشجویان رشته کامپیوتر چه مهندسی کامپیوتر و چه مهندسی فناوری اطلاعات از اهمیت بالایی برخوردار است بنابراین برای کسب امتیاز بالا از این درس در آزمون کنکور، دانشجویان نیاز دارند تا گام به گام همراه با یک آموزش کامل و منسجم پیش بروند. درس پایگاه داده از آن دست درسهایی است که اگر خیلی خوب و عمیق یاد بگیرید امکان اینکه بتوانید همه و یا اکثر تستها را درست جواب بدهید زیاد است. نکتهای که در رابطه با یادگیری این درس حائز اهمیت است فهم و درک عمیق از پایگاه داده است. متاسفانه دیده شده بسیاری از مدرسها که اقدام به آموزش دادن این درس میکنند، درک عمیقی از این درس ندارند و بیشتر سبب گمراه شدن دانشجویان میشوند بنابراین انتخاب درست آموزش بسیار نکته مهمی است.
فیلم درس پایگاه دادهها
تخفیف سه ماه طلایی تا ۳ آبان
30%فیلم نکته و تست پایگاه داده
تخفیف سه ماه طلایی تا ۳ آبان
30%کتابهای زیادی برای فراگیری درس پایگاه داده وجود دارد، اما اگر پایه درس پایگاه داده شما قوی نباشد شاید یادگیری این درس تنها بهوسیله کتاب برای شما کمی سخت باشد بنابراین پیشنهاد ما به شما این است که با یک مجموعه ویدیویی مناسب پیش بروید. ویدیوهای این مجموعه آموزشی که برای شما عزیزان گردآوری شده بهصورت کاملا ساده و شیوا به بیان درس پایگاه داده از 0 تا 100 میپردازد و علاوه بر ذکر نکات متعدد مهم کنکوری، با حل تستهای بیشمار سعی دارد تا دانشجویان عزیز امتیاز بالایی را از این درس در آزمون کنکور ارشد کسب کنند. این ویدیوها علاوه بر منبعی برای کنکور میتواند در آینده نیز مورد استفاده واقع شود، چرا که امروزه داده حرف اول را میزند و تقریبا تمامی رشتههای کامپیوتر به نوعی با پایگاه دادهها در ارتباط هستند؛ همچنین در مقطع ارشد، درسی با عنوان پایگاه داده پیشرفته نیز وجود دارد که این سری ویدیوها میتوانند پایه شما را برای گذراندن این درس در آینده محکم کند.
معرفی دوره درس و حل تست و سوالات پایگاه داده
از آن جا که درس پایگاه داده یکی از دروس مهم و تاثیرگذار در کنکور ارشد کامپیوتر و آی تی است و نحوه عملکرد دانشجویان در این درس میتواند بر نتیجه کنکور تاثیر زیادی داشته باشد، تیم کنکور کامپیوتر دورهای در این زمینه فراهم کرده و یکی از بهترین اساتید حوزه کامپیوتر به تدریس این درس پرداخته است. دوره پایگاه داده با هزینهای اندک در اختیار دانشجویان قرار گرفته است و برای خرید این دوره میتوانید به سایت کافه تدریس مراجعه کرده و آن را تهیه کنید.
جمعبندی
درس پایگاه داده یکی از دروس مهم رشته کامپیوتر و فناوری اطلاعات است لذا آشنایی با این درس یک ضرورت برای دانشجویان رشته کامپیوتر و آی تی بهشمار میرود. ما در این مطلب به معرفی درس پایگاه داده پرداختیم و سعی کردیم موارد حائزاهمیت را پوشش دهیم.
بهترین منابع برای درس پایگاه داده در آزمون کنکور ارشد کدامند؟
با توجه به اینکه درس پایگاه داده از اهمیت بالایی در آزمون کنکور ارشد برخوردار است، در نتیجه تعداد کتابهای تالیف شده و آموزشهای ویدیویی ساخته شده برای این درس بسیار زیاد است و ممکن است داوطلبان کنکور را در انتخاب یک منبع خوب سردرگم کند. کتاب مفاهیم سیستم پایگاه دادهها نوشته آبراهام سیلبرشاتز کتاب مناسبی برای درس پایگاه داده در آزمون ارشد میباشد. این کتاب هم بهصورت زبان اصلی و هم بهصورت ترجمه شده در بازار موجود است اما تنها خواندن کتاب کافی نیست؛ همچنین اگر پایه درس پایگاه داده شما قوی نباشد، با خودآموزی این درس بهوسیله کتاب ممکن است به نتیجه دلخواه خود نرسید بنابراین پیشنهاد ما به شما این است که ویدیوهای آموزشی کنکور کامپیوتر را مشاهده کنید. این آموزش با تلاش شبانه روزی از 0 تا 100 درس پایگاه داده را با بیانی شیوا و صریح پیش برده است تا تمامی نیازهای شما برای آزمون کنکور ارشد را برطرف کند.
اهمیت درس پایگاه داده در کنکور ارشد چقدر است؟
درس پایگاه داده یکی از دروس تخصصی مهم آزمون کنکور ارشد بهحساب میآید. این درس جزء دروس مجموعه چهارم است که شامل 3 درس سیستمعامل، شبکههای کامپیوتری و پایگاه داده است. درس پایگاه داده در گرایشهای شبکههای کامپیوتری، رایانش امن و علوم و فناوری شبکه دارای ضریب 4 است و در گرایشهای هوش مصنوعی، معماری، نرمافزار، بیوانفورماتیک، علوم داده، الگوریتم و محاسبات و قرآن کاوی رایانشی دارای ضریب 3 میباشد.
چند تست از درس پایگاه داده در آزمون کنکور ارشد مطرح میشود؟
با توجه به تغییراتی که در آزمون کنکور ایجاد میشود بهطور دقیق نمیتوان در این مورد نظر داد اما با توجه به آزمون کنکور ارشد 1400 میتوان گفت تعداد تستهایی که از درس پایگاه داده در آزمون کنکور مطرح میشود شامل 7 تست در کنکور مهندسی فناوری اطلاعات و 6 تست در مهندسی کامپیوتر است.
آیا در درس پایگاه داده دکتر خانی تمامی تستهای سالهای گذشته حل شده است؟
خیر. باتوجهبه کمبود وقت تنها تعدادی از تستها بهعنوان نمونه حل شده است. تمامی تستها در دوره نکته و تست پایگاه داده دکتر خانی به شکل تشریحی و تستی حل شده است.
آیا یادگیری درس پایگاه داده بهوسیله ویدیوهای آموزشی کنکور کامپیوتر، پیشنیازی میخواهد؟
با توجه به اینکه آموزشها به صورت 0 تا 100 ساخته شدهاند، در نتیجه کسی که هیچ گونه آشنایی با پایگاه داده نداشته باشد میتواند این آموزشها را تهیه کرده و شروع به یادگیری کند.
آیا درک درس پایگاه داده نیازمند بلد بودن SQL میباشد؟
در جوابی کوتاه باید گفت خیر، مباحث درس پایگاه داده بیشتر بهصورت تئوری است و تنها فصول کمی از آن به زبان SQL اختصاص دارد؛ همچنین آموزشها با فرض اینکه دانشجویان هیچگونه اطلاعات اولیه از SQL ندارند طراحی میشوند البته شکی نیست که بلد بودن و داشتن پیشزمینهای در رابطه با SQL میتواند به فهم این درس خیلی کمک کند اما الزامی بر آن نیست.