پایگاه داده یا دیتابیس مجموعهای از اطلاعات یا دادههایی است که به گونهای سازماندهی شدهاند که بهراحتی قابل دسترسی، مدیریت و بازیابی باشد. دیتا بیس به اختصار DB نامیده میشود.
تعریف پایگاه داده
پایگاه داده تعاریف متعددی دارد. به برخی از آنها اشاره میکنیم:
- تعریف دیتا بیس از مجموعه webster: “مجموعهای معمولاً بزرگ از دادهها که به ویژه برای جستجو و بازیابی سریع (مانند رایانه) یک دیتا بیس آنلاین سازماندهی شده است “
- تعریف دیتا بیس از مجموعه ویکیپدیا: “مجموعهای جامع از دادههای مرتبط سازماندهی شده برای دسترسی راحت، بهطورکلی در یک کامپیوتر، دیتا بیس مجموعهای سازمانیافته از دادهها است.
داده چیست؟
عبارت داده هم به صورت مفرد و هم به صورت جمع استفاده میشود. این میتواند یک کمیت، نماد یا کاراکتری باشد که عملیات روی آن انجام میشود. دادهها اطلاعاتی هستند که به شکل دیجیتالی ذخیره و تبدیل میشوند.
رشد پایگاه داده
دیتا بیس در دهه 1960 با دیتا بیس سلسله مراتبی تکامل یافت. DB رابطهای توسط EF Codd در دهه 1970 اختراع شد درحالیکه DB شیءگرا در دهه 1980 اختراع شد. در دهه 1990 دیتا بیس شیءگرا با رشد زبانهای برنامهنویسی شیءگرا افزایش یافت. امروزه پایگاههای داده با SQL و NoSQL محبوب هستند.
عناصر دیتابیس
عناصر پایگاه داده فیلدها، ردیفها، ستونها، جداول هستند. همه اینها بلوکهای سازنده دیتا بیس هستند.
اجزای دیتابیس
پایگاه داده دارای چهار جزء اصلی زیر است:
دادهها
دادهها در دیتا بیس اهمیت زیادی دارند. دادهها به دو نوع دیگر دستهبندی میشوند،
- دادههای کاربری که مسئول دیتا بیس است. این دادهها در جداول مختلف به صورت سطر و ستون ذخیره میشود.
- فرادادهها که شامل اطلاعاتی در مورد دادهها است، بهعنوان مثال، نام جداول در دیتا بیس ، محدودیتهای دیتا بیس ، کلیدهای اولیه و کلیدهای خارجی و غیره.
DBMS
سیستم مدیریت دیتا بیس نرمافزار یا برنامهای است که کاربر را قادر میسازد تا با دیتا بیس تعامل داشته باشد و در نتیجه به کاربران امکان درج، بازیابی، بهروزرسانی و حذف دادهها را میدهد.
اپلیکیشن پایگاه داده
این یک برنامه کاربردی است که به کاربران کمک میکند تا با استفاده از زبانهای پرسوجو با پایگاه داده تعامل داشته باشند. برنامههای دیتا بیس هیچ ایدهای در مورد DBMS اساسی ندارند. عملیات انجام شده بر روی دادهها توسط زبان پرسوجو ساخت یافته یا همان SQL انجام میشود.همچنین شما میتوانید از دیتابیس ابری استفاده کنید.
کاربر
کاربران افرادی هستند که از پایگاه های داده برای دسترسی به دادهها استفاده میکنند. انواع کاربران دیتا بیس شامل مدیران، توسعهدهندگان و کاربران نهایی است.
انواع دیتابیس
انواع مختلفی از پایگاه داده وجود دارد که در اینجا به برخی از انواع مهم آنها اشاره میشود.
- پایگاه داده متمرکز
همانطور که از نام نشان میدهد، دیتا بیس متمرکز اطلاعات و برنامههای کاربردی را در یک مکان مرکزی ذخیره میکند. این مکان مرکزی توسط کاربران از مکانهای مختلف راه دور قابل دسترسی است. برنامههای کاربردی دادههای مناسب را از دیتا بیس (بر اساس تراکنشهای ارسالشده توسط کاربران) دریافت و آنها را کنترل و بازیابی میکنند. اعتبارسنجی و تأیید دادهها توسط برنامه کاربردی مرکزی انجام میشود و یک شماره ثبت توسط برنامههای کاربردی واقع در نقطه مرکزی اختصاص مییابد.
- دیتابیس ابری
دیتابیس ابری دارای محتوای مقیاسپذیر است و بر روی پلتفرم رایانش ابری اجرا میشود. مقیاسپذیری و در دسترس بودن دیتا بیس باعث میشود که بتوان از طریق رابط وب یا API ارائهشده توسط فروشنده به آن دسترسی داشت. مزیت دیتا بیس ابری این است که کاربران سازمانی را قادر میسازد تا بدون خرید سختافزار اختصاصی، دیتا بیس را میزبانی کنند.
- پایگاه داده توزیعشده
پردازش در یک پایگاه داده توزیعشده بین موارد مختلف تکرار میشود. دو نوع دیتا بیس توزیعشده وجود دارد. همگن و ناهمگن.
- در نوع همگن، مکانهای فیزیکی دارای سختافزار زیربنایی یکسان و سیستمعاملهای مشابه و کاربردهای دیتا بیس هستند،
- در مورد نوع ناهمگن دیتا بیس . سیستمعامل، برنامههای کاربردی دیتا بیس و سختافزار ممکن است در مکانهای مختلف متفاوت باشند.
- دیتا بیس سندگرا
یک برنامه کامپیوتری ویژه برای ذخیره، بازیابی و مدیریت اطلاعات مستند گرا است. به این برنامه دیتا بیس سندگرا گفته میشود. برخلاف دیتا بیس رابطهای، مدل سندگرا به شکل ساختاریافته جداول، ردیفها و ستونها نیست. سندگرا یکی از انواع اصلی دیتا بیس NoSQL است. دادهها با استفاده از فرمتهای استاندارد مانند XML، JSON و BSON و همچنین فرمتهای باینری مانند PDF و MS-Word و غیره کدگذاری میشوند.
- دیتا بیس ناوبری
این نوع پایگاههای داده زمانی که دادهها بر روی نوارهای مغناطیسی ذخیره میشدند رایج بودند. از مرجع ناوبری برای اشاره به محل ذخیره رکورد بعدی استفاده شد. دسترسی ناوبری معمولاً با مدل سلسله مراتبی و مدلهای شبکه همراه است. تکنیکهای ناوبری از اشارهگرها و مسیرها برای پیمایش در میان رکوردها استفاده میکنند
- پایگاه داده شیءگرا
برخلاف سایر پایگاههای داده که به اقدامات و دادهها بستگی دارند، دیتا بیس شیءگرا حول اشیا سازماندهی شده است. دیتا بیس شیءگرا برای مواردی مناسب است که توسط زبانهای برنامهنویسی شیءگرا مانند C++ ایجاد میشوند.
- دیتا بیس عملیاتی
پایگاه داده عملیاتی حاوی اطلاعات مربوط به عملیات یک شرکت است. چنین پایگاههای اطلاعاتی عموماً بر روی خطوط عملکردی مانند بازاریابی، تولید، کارکنان و غیره سازماندهی میشوند. بهعنوان مثال، یک شرکت ممکن است از یک دیتا بیس عملیاتی برای پیگیری مقدار محصولات مختلف در یک انبار استفاده کند. بهطور مشابه، در فروشگاه اینترنتی آنلاین، چنین پایگاههای اطلاعاتی ممکن است برای مشاهده مقدار سهام فروخته شده استفاده شود. دیتا بیس عملیاتی بهعنوان منبعی برای انبار داده کار میکند. در نتیجه میتواند مبتنی بر SQL و مبتنی بر NoSQL باشد.
- پایگاه داده رابطهای
پایگاه داده رابطهای در سال 1970 توسط EF Codd در IBM اختراع شد. در این سیستم دادهها به صورت جدولی ذخیره میشوند تا بهراحتی بتوان به آنها دسترسی داشت. در نتیجه با مجموعهای از میزها ساخته شدهاند. مجموعه جداول یک طرحواره و تعدادی طرحواره یک دیتا بیس ایجاد میکنند. گسترش این پایگاههای اطلاعاتی آسان است و میتوان یک دسته جدید را بدون تغییر همه برنامههای موجود به دیتا بیس موجود اضافه کرد. رابط استاندارد برای دیتا بیس رابطهای، زبان پرسوجو ساخت یافته (SQL) است.
- دیتا بیس NoSQL
پایگاه دادههای NoSQL دیتا بیس غیر رابطهای بوده و مکانیسم ذخیرهسازی غیر از فرمت جدولی را ارائه میدهند. دیتا بیس NoSQL بیشتر در دادههای بزرگ و برنامههای وب واقعی استفاده میشود
ویژگی دادهها در یک پایگاه داده
دادههای موجود در دیتا بیس باید دارای ویژگیهای زیر هستند:
- دادهها سازماندهی شده و مرتبط هستند.
- دادهها در دیتا بیس بین کاربران و برنامههای مختلف به اشتراک گذاشته میشود.
- دادهها در دیتا بیس پایدار هستند.
- دادهها از دسترسی غیرمجاز محافظت میشوند.
- دادهها در دیتا بیس غیر زائد هستند.
- اعتبار و یکپارچگی دادهها نیز در دیتا بیس تضمین میشود.
- دادهها بهراحتی در دسترس هستند و در صورت لزوم در دسترس کاربران هستند.
مزایای استفاده از پایگاه داده
- امنیت دادهها افزایشیافته و بهبودیافته است.
- افزونگی دادهها کاهش مییابد.
- ثبات دادهها افزایشیافته است.
- یکپارچگی و استقلال دادهها.
- بهبود دسترسی به دادهها به کاربران از طریق استفاده از زبان میزبان و پرسوجو
- توسعه برنامههای کاربردی جدید تسهیل شده است
معایب استفاده از پایگاه داده
- برای طراحی سیستمهای دیتا بیس پیچیده زمان صرف میشود
- آسیب به دیتا بیس تقریباً همه برنامههای کاربردی را تحت تأثیر قرار میدهد
- هزینههای قابل توجه راهاندازی سختافزار و نرمافزار
- هزینههای تبدیل گسترده در انتقال از یک سیستم مبتنی بر فایل به یک سیستم دیتا بیس
- آموزش برای همه برنامه نویسان و کاربران الزامی است