پایگاه داده چیست
می دانیم که این روزها دنیا توسط تکنولوژی اداره می شود. در زمینههای مختلف فناوری، دادههایی تولید میشوند که پیام شما را به کسی در سراسر خط میرسانند. فرقی نمی کند که پیام از طریق وب سایت شما به طرف مقابل برسد یا یکی از اپلیکیشن های موجود مسئول این کار باشد، در همه موارد این داده است که پیام را به مقصد می رساند. ما به فضایی به نام پایگاه داده برای ذخیره داده ها نیاز داریم.
شما می توانید تمام اطلاعات را در پایگاه داده ذخیره کنید. مثلا داده های مربوط به افراد مختلف مثل نام، سن، وزن، شماره تلفن، آدرس، اطلاعات حساب بانکی یا حتی تصاویر، فیلم ها و مطالب سایت!
اگر می خواهید ماهیت و مکانیزم پایگاه داده را بدانید و با سیستم مدیریت پایگاه داده چیست و انواع پایگاه داده آشنا شوید، با ما همراه باشید.
انواع پایگاه داده
دیتابیس نمونههای مختلفی دارد و با توجه به نیازی که وجود دارد، یکی از انواع پایگاه داده استفاده میشود. در ادامه با پرکاربردترین دیتابیس ها آشنا میشویم. انواع پایگاه داده در واقع مکانی برای ذخیره سازی داده ها به صورت منظم است. با کمک یک پایگاه داده، می توانید داده های خود را در فضای الکترونیکی مانند هارد لپ تاپ یا هاست ذخیره کنید. بنابراین هر زمان که نیاز به تغییر یا دستکاری داده های خود دارید یا می خواهید داده های خود را مدیریت کنید، می توانید به راحتی این کار را با کمک یک پایگاه داده انجام دهید.
اگر بخواهیم این موضوع را شفافتر کنیم تا قابل درکتر باشد، بهترین راه این است که وارد دنیای واقعی شویم و مکانهایی را که از پایگاه داده استفاده میشود فهرست کنیم.
فرض کنید همین الان به شماره تلفن نیاز دارید و با مرکز اطلاعات مخابرات تماس می گیرید. این مرکز شماره تلفن همراه با اطلاعات کاربری مانند نام، محل سکونت و مشخصاتی که ارائه می دهید را به شما می دهد. در واقع اپراتور از طریق پایگاه داده به این اطلاعات دسترسی پیدا کرده و در اختیار شما قرار می دهد.
مثال دیگری که می توانیم در این زمینه بزنیم نحوه دسترسی شرکت برق به اطلاعات مشتریان است. اگر گزارش قطعی برق داده اید یا در محاسبه قبض برق خود مشکل دارید و یا برای اطلاع از قبض برق خود نیاز به صدور قبض المثنی دارید، شرکت برق از طریق بانک اطلاعاتی به این اطلاعات دسترسی خواهد داشت و درخواست ارسال می کند. او از شما مراقبت کرده است.
حتی فیسبوک و اینستاگرام که شما به صورت روزانه از آنها استفاده می کنید، داده ها را در پایگاه داده ذخیره می کنند تا کاربران بتوانند به راحتی از این اپلیکیشن ها استفاده کنند و به تمام اطلاعاتی که می خواهند دسترسی داشته باشند.
دیتابیس توزیع شده
پایگاه داده توزیع شده (Distributed database) از دو یا چند پایگاه داده که در کامپیوترهای مختلف قرار دارند تشکیل شده که معمولاً در برنامهها، بهعنوان یک پایگاه داده واحد ظاهر میشوند. به عبارت دیگر، اگرچه اطلاعات بهصورت متمرکز در این دیتابیس ذخیره نمیشود، اما دیتابیس توزیع شده از نگاه کاربران و کسانی که به آنها دسترسی دارند بهصورت یکپارچه به نظر میرسد.
دیتابیس شخصی
دیتابیسهای شخصی برای ذخیرهسازی دادهها در رایانههای شخصی استفاده میشوند. این دیتابیسها جمعوجور بوده و بهراحتی قابل کنترل هستند. دادههای دیتا بیس شخصی، معمولاً در اختیار یک فرد، یا گروه کوچکی در سازمان قرار دارند. برای مثال، شما میتوانید با استفاده از نرمافزار Microsoft Access، برای خودتان یک پایگاه داده شخصی ایجاد کنید.
دیتابیس شی گرا
پایگاه داده شیء گرا، ترکیبی از پایگاه داده رابطهای و برنامهنویسی شی گرا است.
در دیتابیس شی گرا، اطلاعات بهجای اینکه بهصورت داده ذخیره شوند، به صورت شی سازماندهی میشوند. این نوع از دیتابیسها از ذخیرهسازی انواع دادهها پشتیبانی میکنند. اشیایی که در دیتابیس ذخیره میشوند دارای ویژگیهایی هستند که نحوه استفاده از آنها را مشخص میکند. از جمله دیتابیسهای شی گرا میتوان به PostgreSQL اشاره کرد.
دیتابیس رابطه ای
پایگاه داده رابطهای از یک سری جدول (Table) تشکیل شده که دادهها در آنها ذخیره و طبقهبندی میشوند. هر جدول در پایگاه داده رابطهای، دارای تعدادی سطر و تعدادی ستون است. در هر سطر این جدول، یک داده قرار میگیرید که با یک موجودیت ارتباط دارد. این موجودیت، در ستون جدول بیان میشود.
دیتابیس NoSQL
دیتابیس NoSQL برای ذخیره و مدیریت مجموعههای زیادی از دادههای توزیعشده استفاده میشود. این نوع از دیتابیسها هیچ سروکاری با جداول ندارند و بهعنوان دیتابیسهای غیر رابطهای هم شناخته میشوند. این نوع از دیتابیسها معمولا برای مدیریت بیگ دیتا یا کلان دادهها استفاده میشوند. کلان دادهها دارای دادههای ساختاریافته، نیمه ساختاریافته و بدون ساختار هستند.
دیتابیس ابری
دیتابیس ابری پایگاه داده ای است که متناسب با فضای ذخیره سازی ابری و بر اساس فناوری محاسبات ابری طراحی شده است. پایگاه داده های ابری مزایای زیادی دارند. اینها شامل امکان دسترسی به پایگاه داده در 24 ساعت شبانه روز، امکان ایجاد پایگاه داده در محیط ابری با مقرون به صرفه بودن و مقیاس پذیری بالای پایگاه داده می باشد. به طور کلی می توانید در هر زمانی از شبانه روز پایگاه های داده روی این فضا را مدیریت کنید و اطلاعات را به صورت نامحدود در پایگاه داده ذخیره کنید.
سازمان ها می توانند از پایگاه داده ابری برای توسعه برنامه های کاربردی تجاری خود در SaaS استفاده کنند.
دیتابیس OLTP
دیتابیسهای OLTP برای محیطهایی که نیاز به دسترسی چندگانه دارند استفاده میشوند. در پایگاه داده OLTP، معمولاً دادهها درج، بهروزرسانی یا حذف میشوند. بهعنوان مثال شرکتهای فروش بلیط و بانکها میتوانند از این دیتابیسها استفاده کنند. از این دیتابیسها برای حفظ یکپارچگی دادهها و پردازش سریع اطلاعات استفاده میشود.
دیتابیس گراف
هر نمودار از تعدادی نقطه و خط تشکیل شده است. در یک دیتابیس گراف، نقاط موجودیت هستند و خطوط رابطه بین این موجودیت ها را مشخص می کنند. این نوع پایگاه داده معمولاً برای بررسی و تحلیل ارتباطات استفاده می شود. به عنوان مثال، شرکت ها ممکن است از نمودار پایگاه داده برای استخراج داده های مشتریان در شبکه های اجتماعی استفاده کنند.
خوب، تا به حال با پرکاربردترین پایگاه های داده آشنا شده اید. حالا بیایید پایگاه داده را تشریح کنیم و ببینیم چه قسمت هایی از تشکیل است.
اجزای تشکیلدهنده دیتابیس چیست
پایگاه دادهها معمولا از ۵ بخش اصلی تشکیل میشود. این بخشها عبارتند از: شرکت خرید وی پی اس ارزان در خدمت خریداران سرور مجازی میباشد.
سختافزار
سختافزار از دستگاههای فیزیکی یا الکترونیکی مانند رایانهها، دستگاههای ورودی / خروجی، دستگاههای ذخیرهسازی و غیره تشکیل میشود. این تجهیزات رابط بین رایانهها و دنیای واقعی هستند.
نرمافزار
این مجموعه شامل برنامههایی است که برای مدیریت و کنترل دیتابیس بهصورت کلی به کار میرود. این بخش معمولا شامل خود نرمافزار، سیستمعامل و نرمافزار شبکهای است که برای به اشتراک گذاشتن دادهها بین کاربران و برنامههای کاربردی استفاده میشود.
دادهها
دادهها شامل حقایق، مشاهدات، ادراکات، اعداد، نویسهها، نمادها، تصاویر و غیره هستند که بعد از پردازش معنا پیدا میکنند. دادهها شاید ساده به نظر برسند، اما این سادگی دلیلی بر سازماندهی آنها نیست. بلکه ممکن است دادهها در عین ساده به نظر رسیدن، سازماندهی نشده باشند.
رویه
رویه مجموعهای از دستورالعملها و قوانینی است که به شما کمک میکند تا از DBMS (سیستم مدیریت دیتابیس) استفاده کنید. در حقیقت رویهها همان مواردی هستند که طراحی و متدهای دیتابیس را مشخص میکنند و کاربران با یادگرفتن آنها، میتوانند از دیتابیس استفاده کنند.
زبان دسترسی به دیتابیس
از زبان دسترسی به database برای دسترسی به دادههای درون دیتابیس، وارد کردن دادههای جدید، بهروزرسانی دادههای موجود یا بازیابی اطلاعات مورد نیاز از DBMS استفاده میشود. با کمک این زبان است که کاربر میتواند دادههای جدید را طبق دستورات مناسب از دیتابیس بخواند یا درون آن قرار دهد.
سیستم مدیریت پایگاه داده (DBMS) چیست
سیستم مدیریت پایگاه داده (DMS) مجموعه ای از برنامه های کاربردی است که کاربران را قادر می سازد به پایگاه داده دسترسی داشته باشند، داده ها را دستکاری کنند، و از پایگاه داده گزارش دهند.
یا نمایش داده های ذخیره شده در پایگاه داده است. این سیستم همچنین به شما امکان کنترل دسترسی به پایگاه داده را می دهد. در واقع DMS نرم افزاری است که به عنوان رابط بین کاربر، پایگاه داده و اپلیکیشن عمل می کند.
شاید برایتان جالب باشد که بدانید مدیریت پایگاه داده مفهوم جدیدی نیست و از دهه 1960 وجود داشته است.
انواع سیستمهای مدیریت پایگاه داده
انواع سیستم های مدیریت پایگاه داده وجود دارند که عبارتند از:
- مدل سلسله مراتبی
- مدل شبکهای
- مدل رابطهای
- مدل شی گرا
مدل سلسله مراتبی
در این مدل دیتابیس، دادهها در قالبی شبیه به یک درخت سازماندهی شده و از بالا به پایین یا پایین به بالا ذخیره میشوند. رابطه این دیتابیسها مطابق الگوی والد و فرزند است. در این الگوها هر والد ممکن است چند فرزند داشته باشند، اما هر فرزند تنها یک والد دارد.
مدل شبکهای
DBMS شبکهای اجازه میدهد تا هر کودک چندین والد داشته باشد. این موضوع به شما کمک میکند تا مدلسازی روابط پیچیدهتر مانند رابطه های چند به چند را سازماندهی کنید. در این مدل، موجودیتها در قالب یک نمودار سازماندهی میشوند و از طریق چندین مسیر قابلدسترسی هستند.
مدل رابطهای
مدل رابطهای به دلیل سادگی که دارد، یکی از پرکاربردترین DBMS ها است. دادهها در مدل رابطهای در ساختارهای ثابت در ردیفها و ستونهای جداول ذخیره میشود و با استفاده از SQL دستکاری میشود.
مدل شی گرا
در مدل شی گرا، دادهها بهصورت اشیا ذخیره میشوند. در این مدل ساختارهایی به نام کلاس وجود دارد که دادهها درون آنها قرار میگیرند و ارزش و نوع عملیاتی که انجام میدهند مشخص است.
کاربردهای DBMS چیست
برای درک بهتر عملکرد سیستم مدیریت پایگاه داده، مواردی که این سیستم عمدتا استفاده میشود را در ادامه ارائه کردهایم.
بانکها: برای ذخیره اطلاعات مشتریها، مدیریت حساب بانکی، پرداختها، سپردهها، وامها و غیره
خطوط هوایی: برای رزرو بلیط توسط مشتریان و سازماندهی اطلاعات برنامه پروازها
دانشگاهها: برای مدیریت اطلاعات دانش آموزان، ثبتنام دورهها و نمرات
مخابرات: برای نگهداشتن سوابق مشتریان، صورتحساب ماهانه و پیگیری شکایات و مشکلات
فروشگاهها: برای ذخیره اطلاعات مشتریان، محصول و میزان فروش
تولیدیها: برای مدیریت زنجیره تامین، ردیابی تولید اقلام و بررسی وضعیت موجودی کالا در انبارها
منابع انسانی: برای کسب اطلاعات در مورد کارمندان، مدیریت میزان حقوق و دستمزد، کسورات، صدور فیش حقوقی و غیره
با وجود شناخت DBMS و انواع آن، بیشک کنجکاو شدهاید که بدانید آیا این سیستم مشکلاتی هم دارد یا خیر! در ادامه مزایا و معایبی که سیستم مدیریت پایگاه داده دارد را برایتان آوردهایم.
مزایای سیستم مدیریت دیتابیس (DBMS)
- DBMS تکنیکهای مختلفی را برای ذخیره و بازیابی دادهها ارائه میدهد.
- DBMS بهعنوان یک کنترلکننده کارآمد عمل میکند تا بتوانید از چندین برنامه با دادههای مشابه بهصورت متوازن استفاده کنید.
- با وجود سرویس مدیریت دیتابیس، برنامه نویسان در معرض جزئیات نمایش داده و ذخیره اطلاعات قرار نمیگیرند.
- DBMS از توابع مختلف قدرتمندی برای ذخیره و بازیابی دادهها استفاده میکند.
- با وجود DBMS زمان توسعه برنامهها کاهش پیدا میکند.
- DBMS امکان ایجاد محدودیت برای دسترسی به دادههای سطح بالا را فراهم میکند.
معایب سیستم مدیریت دیتابیس (DBMS)
- هزینه سختافزار و نرمافزار یک DBMS بسیار زیاد است و بودجه سازمان شما را افزایش میدهد.
- DBMS ها اغلب سیستمهای پیچیدهای هستند، بنابراین آموزش استفاده از آنها برای کاربران الزامی است.
- در بعضی از سازمانها تمام اطلاعات در یک database واحد ذخیره میشوند، در اثر حوادث احتمالی مانند قطع و وصل شدن جریان برق ممکن است رسانهای که دیتابیس روی آن قرار دارد از کار بیفتد و دیتابیس از دست برود.
- استفاده از یک برنامه در یک زمان توسط بسیاری از کاربران، گاهی منجر به از دست رفتن برخی از دادهها میشود.
- DBMS نمیتواند محاسبات سطح بالا را انجام دهد.