پایگاه داده یا database چیست؟ منظور از دیتابیس یا بانک اطلاعات مجموعهای از داده یا اطلاعات است که ساختاری منظم دارند. شاید با یک مثال ساده بتوان مفهوم پایگاه داده را بهتر درک کرد.
برای مثال فرض کنید در یک آشپزخانه هیچ کابینتی وجود نداشته باشد. قطعا در این آشپزخانه تمام ظروف و لوازم آشپزخانه به حالت نامرتب روی زمین قرار میگیرند. در واقع برای پیدا کردن یک ظرف خاص در یک آشپزخانه بدون کابینت، باید ساعتها زمان صرف شود تا بتوان ظرف مورد نظر را پیدا کرد. اما در یک آشپزخانه کابینتدار که هر یک از ظروف و لوازم به صورت مرتب در جای مخصوصی قرار گرفتهاند. در کمترین زمان ممکن و به راحتی میتوان وسیله مورد نظر خود را پیدا کرد.
با این تفاسیر دیتابیس در واقع مانند یک کابینت است که ظروف و لوازم آشپزخانه (دادهها) به صورت منظم در آن قرار میگیرند تا دسترسی به آنها راحت باشد. در ادامه اطلاعات دقیقتری را به شما درباره پایگاه داده ارائه خواهیم داد.
پایگاه داده یا دیتابیس چیست؟
در ابتدای متن با استفاده از یک مثال ساده و روزمره مفهوم دیتابیس را توضیح دادیم اما در بخش به صورت تخصصی میخواهیم بگوییم که دیتابیس چیست؟ در دنیای IT به مجموعهای از دادهها ثابت که به طور سیستماتیک و ساختار یافته ذخیره شدهاند، دیتابیس گفته میشود. معمولا این مجموعه توسط یک سیستم مرکزی مدیریت میشود و کاربرانی نیز به طور همزمان از آن استفاده میکنند.
به بیان کمی سادهتر میتوان گفت هرگاه مجموعهای از دادهها و اطلاعات در یک جدول ساختار یافته قرار بگیرند در واقع ما یک پایگاه داده یا دیتابیس داریم. البته لازم به ذکر است که database فقط مختص به دنیای فناوری اطلاعات نیست. بلکه اکثر ما هر روز با نمونههای سادهتر بانک اطلاعات سروکار داریم. موارد زیر نمونههایی از این موارد هستند:
- دفتر تلفن گوشیهای تلفن همراه
- گزارشات ماهانه یک کارمند
- اطلاعات دانش آموزان یک مدرسه
- اطلاعات مربوط به مشتریهای یک فروشگاه بزرگ زنجیرهای
انواع دیتابیس را بشناسید
در دنیای فناوری اطلاعات دیتابیس از اهمیت بسیار بالایی دارد زیرا ذخیرهسازی و نگهداری اطلاعات و دادهها بخشی از یک سایت یا اپلیکیشن است. به طور کلی میتوان گفت که دو نوع دیتابیس کلی در دنیای IT وجود دارد. البته هر یک از این دو نوع نیز به انواع گوناگونی نیز دستهبندی میشوند.
پایگاه داده SQL
پایگاه داده SQL یکی از انواع پایگاه داده است که اطلاعات به شکل کاملا سازمان یافته در آن ذخیره و نگهداری میشوند. این نوع از پایگاه داده بیشتر برای کوچک ساختاریافته کاربرد دارد و برای دادههای بزرگ بدون ساختار مناسب نیست. پایگاه داده sql نیز به چند نوع دیگر نیز دستهبندی میشود که رایجترین و پرکاربردترین آنها پایگاه داده MySQL است.
پایگاه داده Oracle
اوراکل را میتوان به عنوان محبوبترین DataBase در معرفی کرد زیرا استفاده از آن بسیار راحت است و بیشتر توسعهدهندگان با آن آشنایی دارند.
پایگاه داده Microsoft SQL Server
این نوع از پایگاه داده بیشتر برای دیتابیس تحت ویندوز و محصولات مایکروسافت کاربرد دارد.
پایگاه داده MySQL
پس از اوراکل مای اس کیو ال را میتوان به عنوان دومین DataBase محبوب در بین کاربران معرفی کرد. چون از طریق سرورهای عمومی رایگان قابل است. همچنین این پایگاه داده قابلیت پشتیبانی از پلتفرمهای مختلف لینوکس، ویندوز، OSX ،FreeBSD و Solaris دارد. علاوهبر آن از رابط کاربری گرافیکی بصری نیز بسیار راحت و ساده است.
پایگاه داده DB2
DB2 نیز نوع دیگری از DataBase است که بیشتر برای host و نسخه های ویندوز و لینوکس کاربرد دارد.
پایگاه داده Microsoft Access
نوعی دیگری از انواع دیتابیس است که همچون یکی دیگر Microsoft SQL Server تنها برای سیستم عاملهای ویندوز و محصولات مایکروسافت کاربرد دارد.
پایگاه داده PostgreSQL
این دیتابیس نیز بیشتر برای دادههای شیء گرا و مقیاس کاربرد دارد و قابلیت اجرا بر روی لینوکس، ویندوز، OSX و چندین سیستم دیگر را دارد.
پایگاه داده NoSQL
همانطور که گفتیم sql دارای برخی نقصها است و توانایی ذخیره کردن دادههای بزرگ بدون ساختار را ندارد. به همین منظور نوع دیگری از پایگاه دادهها تحت عنوان Database ارائه شده است. این نوع از پایگاه داده توانایی ذخیره کردن اطلاعات بدون ساختار و حجیم دارد.
دیتابیس سندی (Document Database)
در این نوع از دیتابیس همانطور که از نام آن مشخص است دادههای بدون ساختار، به صورت یک سند ساختاریافته ذخیره میشوند. همچنین هر سند دارای یک کلید است تا بتوان به راحتی به آن دسترسی داشت.
دیتابیس کلید-مقدار (Key-Value Database)
در این نوع از دیتابیسها، کلیدها نیز به شکل جدول Hash ذخیره میشوند تا سرعت یافتن آنها افزایش یابد. سبد خرید سایتهای فروشگاهی نمونه بارز این نوع پایگاه داده به حساب میآید.
دیتابیس Wide-column
در سایر دیتابیسهایی که تا الان نام بردیم اطلاعات به صورت ستونی ذخیره میشوند. اما در این نوع از بانک اطلاعات، دادهها به صورت سطری ذخیره و نگهداری میشوند.
دیتابیس گرافی
دیتابیس گرافی نیز نوع دیگری از دیتابیس Nosql است که تمام دادهها و ارتباطات بین آنها به صورت یک گراف ذخیره و نگهداری میشوند.
اجزای تشکیلدهنده پایگاه داده کدامند؟
هر پایگاه داده از اجزای و بخشهای مختلفی تشکیل است. این اجزا باعث میشوند تا بانک اطلاعات به درستی کار خود را انجام دهد. به عبارت دیگر در صورتی که هر یک از این اجزا کار خود را به درستی انجام دهند و با یکدیگر در ارتباط باشند در واقع یک database کار خود را به درستی انجام داده است. مهمترین اجزا یک بانک اطلاعاتی شامل موارد زیر است.
سخت افزار
وظیفه این جزء پردازش اطلاعات است را بر عهده دارد. البته برای پردازش اطلاعات نیز از انواع سخت افزارهای استفاده میشود که عبارتند از:
- سخت افزار ذخیره سازی: در این نوع اطلاعات بر روی دیسک با ظرفیت بالا ذخیره می شوند.
- سخت افزار پردازشی: این نوع از سخت افزار در واقع سخت افزارهایی هستند که در آنها اطلاعات زیاد و حجیم ذخیره میشوند.
- سخت افزار ارتباطی: موبایل رایجترین سخت افزار ارتباطی است که امکان برقراری ارتباط بین دادهها را فراهم میکند.
نرم افزار
نرم افزارها نیز از اجزا مهم بانکهای اطلاعاتی محسوب میشوند که وظیفه اصلی آن برقراری ارتباط بین کاربر و پایگاه داده است. سیستم عامل، نرم افزارهای ارتباطی شبکه، نرم افزار مدیریت دیتابیس و اپلیکیشن ها نیز اصلیترین نرمافزارهای مورد استفاده در database محسوب میشوند.
مدیر پایگاه داده (DBA)
این جزء در واقع یک شخص است که در حوزه تکنولوژی و فناوری اطلاعات تخصص دارد. وظیفه اصلی این شخص مراقبت، نگهداری و تهیه نسخه پشتیبان، تعریف کاربران، تعریف سطوح دسترسی، تعریف ساختارها داده، نصب و راه اندازی سخت افزارها و نرم افزارها، تأمین امنیت سیستم است.
کاربر نهایی(end user)
کاربران نیز از جمله اجزا مهم تشکیل دهنده بانکهای اطلاعاتی محسوب میشوند که دسترسی آنها به سیستم از راه پایانهها است. معمولا کاربران از اطلاعات موجود در دیتابیس استفاده مینمایند و فرایندهایی همچون ثبت کوئری، درج و آپدیت در سیستم را بر عهده دارند.
طراحان دیتابیس (DBD)
طراحان دیتابیس نیز به کمک زبان های مختلف برنامهنویسی همچون SQL دیتابیسها را طراحی میکنند. طراحی دقیق بانک های اطلاعاتی، ذخیره سازی، نمایش داده ها، تعریف محدودیتها از جمله وظایف اصلی طراحان دیتابیس به حساب میآید.
با سیستم مدیریت دیتابیس (DBMS) آشنا شوید؟
در بخشهای قبل با مفهوم دیتابیس و انواع آن آشنا شدیم. حال لازم است که مفهوم دیگری را تحت عنوان
سیستم مدیریت دیتابیس (Database Management System) را معرفی نماییم. منظور از سیستم مدیریت دیتابیس مجموعهای از چندین نرم افزار کامپیوتری مختلف است که وظیفه آن مدیریت پایگاه دادهها و اجرای فرآیند بر روی اطلاعات درخواستی کاربران است. به بیان دیگر در واقع، DBMS، شامل یک پکیج نرم افزاری است که به منظور تعریف، تصحیح، بازیابی و مدیریت دادهها در یک دیتابیس طراحی میشود.
وظایف سیستم مدیریت پایگاه داده
- برقراری امنیت برای دادهها
- بررسی و نظارت بر عملکرد
- مدیریت تغییرات
- پشتیبانی و بازیابی از اطلاعات
انواع سیستمهای مدیریت پایگاه داده
همانطور گفتیم سیستمهای مدیریت دیتابیس ساختار منطقی پایگاه داده را تعریف میکنند. به عبارتی کلیه پروسه دسترسی به داهها، اصلاح آنها و قفل کردن دادهها نیز بر عهده DBMS است. سیستمهای DBMS به 4 مدل یا نوع مختلف تقسیمبندی میشوند تا مدیریت دادهها سادهتر و کاربردیتر انجام شود.
نوع سلسله مراتبی
در این نوع از سیستم مدیریت اطلاعات به طور سلسله مراتبی یا بهتر است بگوییم از بالا به پایین و بالعکس ذخیره میشوند. در واقع میتوان گفت نحوه ذخیرهسازی دادههای همچون ساختار یک درخت بوده و دارای سرشاخه و زیر شاخه است. معمولا در این نوع از سیستم مدیریت پایگاه داده هر سرشاخه دارای چند زیر شاخه مختلف است. البته باید گفت که هر زیر شاخه فقط متعلق به یک سر شاخه است. یعنی نمیتواند متعلق به چند سرشاخه مختلف باشد.
نوع شبکهای
همانطور که از نام آن مشخص است اطلاعات به صورت شبکهای ذخیره میشوند یعنی هر زیر شاخه متعلق به چند سرشاخه مختلف است. معمولا این نوع از سیستم مناسب اطلاعات پیچیده است و مدیریت آنها را سادهتر میکند.
نوع رابطهای
یکی از رایجترین انواع DBMS محسوب میشود زیرا اطلاعات دارای یک سازه ثابت هستند و از طریق SQL میتوان آنها را تغییر داد.
نوع شی گرا
نوع شیگرا نیز یکی از انواع سیستم مدیریت است که دادهها تحت عنوان شی (Object) در پایگاه داده ذخیره میشوند.
محبوب ترین سیستم مدیریت دیتابیس
در بخش قبلی انواع سیستم مدیریت دیتابیس را معرفی کردیم. همانطور که در بخش قبلی نیز ذکر کردیم سیستم مدیریت دیتابیس رابطهای در حال حاضر رایجترین و پرکاربردترین نوع DBMS شناخته میشود. چون نحوه نگهداری دادهها و مدیرت آنها در این سیستم به صورت جدولی انجام میشود.
در واقع این سیستم بر اساس یک الگوی رابطهای یا بهتر است بگوییم جدول با ردیف و ستون مرتب شده است.این سیستم سیستم مدیریت پایگاه داده اولین بار در سال ۱۹۷۰ میلادی مورد استفاده قرار گرفت. از جمله مزایای RDBMS میتوان به موارد زیر اشاره کرد:
- قابلیت ذخیرهسازی بستههای بزرگ داده را دارد.
- دادهها در آن به صورت کاملا یکپارچه نگهداری میشوند.
- امکان دسترسی چند کاربر مختلف به دادهها وجود دارد.
- عملکرد بهتری نسبت به سایر سیستمها برای ساختار و سازماندهی دادهها دارد.
کاربردهای DBMS چیست؟
سیستمهای مدیریت پایگاه داده در واقع یک رابط میان پایگاه داده، کاربران و نرمافزارهای کاربردی هستند. در واقع باید گفت DBMS برای مواردی که لازم است اطلاعات حجیم و متنوعی ذخیره شود، کاربرد دارد. اگر بخواهیم کاربردهای DBMS را به صورت یک لیست بیان کنیم، میتوان گفت موارد زیر مهمترین موارد استفاده از DBMS محسوب میشوند.
- ذخیره و نگهداری اطلاعات منابع انسانی یک سازمان یکی از موارد بسیار مهم و ضروری محسوب میشود. به همین دلیل یکی از کاربردهای اصلی DBMS ذخیره و مدیریت نام، آدرس، شماره تلفن و جزئیات حقوق و دستمزد کارمندان سازمانها است.
- مدیریت فرایند فروش محصولات یک سازمان یا فروشگاه زنجیرهای بزرگ از جمله کاربردهای اصلی این سیستم محسوب میشود. به عبارتی به کمک DBMD تمام اطلاعات من جمله مشخصات کالا، اطلاعات فروشنده، اطلاعات خریدار ثبت و نگهداری میشود.
- مدیریت موجودی انبارها نیز یکی دیگر از کاربردهای DBMS محسوب میشود. چون با استفاده از آن میتوان زنجیره تامین کالا را به راحتی بررسی کرد.
- DBMS برای مدیریت اطلاعات اکثر کسب و کارهای متوسط و بزرگ کاربرد دارد زیرا این سیستم به راحتی میتواند دادههای آنها را اشتراکگذاری و مدیریت کند.