پایگاه داده چیست و چه کاربردی دارد؟ — به زبان ساده

«پایگاه داده» (Database) یا همان بانک اطلاعاتی به مجموعهای سازمانیافته از اطلاعات یا دادههای ساختارمند گفته میشود که معمولاً به صورت الکترونیکی در یک سیستم کامپیوتری ذخیره میشوند. در واقع به مجموعه دادهها، «سیستم مدیریت پایگاه داده» (DBMS) به همراه برنامههای کاربردی مرتبط با آنها، «سیستم پایگاه داده» میگویند. دیتابیس یا همان پایگاه داده یکی از اجزای اساسی اکثر سامانههای نرم افزاری به حساب میآيد و آشنایی برنامه نویسان با آن بسیار مهم است. بنابراین این مقاله برای آشنایی هر چه بیشتر با مفهوم پایگاه داده و رسیدن به پاسخ سوال «پایگاه داده چیست» تهیه شده است. در این نوشتار به اکثر سوالات رایج و مهم پیرامون دیتابیس یا همان پایگاه داده پاسخ داده میشود.
پایگاه داده چیست ؟
بانک اطلاعاتی یا همان پایگاه داده (دیتابیس | Database) مجموعهای سازمانیافته از دادهها است. پایگاههای داده از ذخیرهسازی الکترونیکی و ایجاد تغییر در دادهها پشتیبانی میکنند. مدیریت دادهها به وسیله پایگاه داده بسیار آسان میشود. برای مدیریت دادهها در یک بانک اطلاعاتی از سیستم مدیریت پایگاه داده (Database Management Syste) یا همان DBMS استفاده میشود.
در ادامه این بخش به سوال «پایگاه داده چیست» به طور دقیقتر و جامعتر پاسخ داده شده است. دادهها نقش اساسی در یک پایگاه داده ایفا میکنند. بنابراین، برای درک بهتر مفهوم پایگاه داده در ادامه به این سوال مهم پاسخ داده شده است که داده چیست؟

داده در پایگاه داده چیست ؟
در علوم کامپیوتر، داده (Data) مجموعهای از اطلاعات است که به قالبی بهینه و مناسب برای انتقال یا پردازش تبدیل شدهاند. در حقیقت، امکان استفاده از دادهها به صورتهای مختلفی از جمله متن، عدد، رسانه، بایت و سایر موارد وجود دارد. واژه Data از کلمه Datum برگرفته شده که به معنی «یک تکه اطلاعات» است.
به طور کلی در حوزه پایگاه داده، دادهها در دو نوع رابطهای (Relational) و غیر رابطهای (Non-relational) گروهبندی میشوند. اغلب اپلیکیشنهای مدرن حجم وسیعی از هر دو نوع دادهها را مورد استفاده قرار میدهند. دادههای رابطهای به نوعی از دیتا گفته میشود که به سایر عناصر دادهها مرتبط هستند. در حالی که دادههای غیر رابطهای منحصراً به سایر دادهها ارتباطی ندارند و معمولاً دارای مقادیر رشتهای هستند.
پایگاه داده به چه معنا است؟
پایگاه داده یا همان دیتابیس (بانک اطلاعاتی) به صورت لغوی به معنی مجموعه دادهها شناخته میشود. به بیان ساده، پایگاههای داده یک مجموعه از دادهها هستند که در کامپیوتر ذخیره میشوند و به نوعی ساختاردهی شدهاند که امکان دسترسی به دادهها از طریق پایگاه داده برای کاربران تسهیل پیدا کند. پایگاه داده امکان تغییر (Manipulation) دادهها و ذخیرهسازی الکترونیکی آنها را پشتیبانی میکند؛ به طوری میتوان با استفاده از بانک اطلاعاتی، دادهها را در فایلها یا جدولها ساماندهی کرد. سطرها، ستونها و اندیسهای جدول، منجر به سادهسازی دو عمل جستجو و تعریف پایگاه داده میشوند. با توجه به اینکه پایگاه داده به منظور مدیریت، بازیابی و رسیدگی به دادهها به صورت بلادرنگ مورد استفاده قرار میگیرد، بنابراین، به طور وسیعی از پایگاه دادهها در وب سایتهای متعدد و سایر بسترها و کاربردهای نرمافزاری استفاده میشود.

به منظور واضحتر شدن اینکه پایگاه داده چیست و به چه منظور طراحی شده، در ادامه انقلاب شکلگیری پایگاه داده شرح داده شده است.
انقلاب پایگاه داده
سیر تکاملی پایگاه داده و انقلاب اساسی آن از سیستمهای پایگاه داده Flat File به سیستمهای رابطهای و اشیا، به بیش از ۵۰ سال بازمیگردد. منظور از سیستمهای Flat File پایگاه دادههایی هستند که عمل ذخیرهسازی دادهها را در یک فایل متنی ساده انجام میدهند. با توجه به این تعریف، واضح است که در ساختار پایگاه داده تغییرات متعددی رخ دادهاند. در ادامه این به بررسی این تغییرات پرداخته شده است.
پایگاه داده مبتنی بر فایل
در سال ۱۹۶۸ سیستمهای پایگاه داده مبتنی بر فایل (Filed Based) معرفی شدند. در این نوع از پایگاه داده، دادهها اساساً در یک فایل متنی اصطلاحاً Flat ذخیرهسازی میشوند. با وجود اینکه در این رویکرد امکان دسترسی به دادهها از طریق روشهای مختلف، از جمله دسترسی متوالی، اندیسگذاری شده و تصادفی (Random) فراهم است، اما برای استفاده از آن بهکارگیری برنامه نویسی با زبانهای پیشرفته گوناگونی مثل کوبول (Cobol) و بیسیک (Basic) نیاز است.
مدل پایگاه داده سلسله مراتبی
مدل داده سلسله مراتبی (Hierarchal) در سالهای ۱۹۶۸ تا ۱۹۸۰ بسیار مورد استفاده قرار میگرفت. در این مدل، ارتباط میان فایلها به صورت والد و فرزند است. به منظور درک بهتر عملکرد مدل داده سلسله مراتبی، لازم است به تصویر زیر توجه شود.

همانطور که سیستمهای مبتنی بر فایل کاستیهای دارند، سیستم سلسلهمراتبی نیز دارای تعدادی محدودیت است. مواردی مانند پیادهسازی دشوار، عدم استقلال ساختاری، چالشهای مربوط به مدیریت روابط چند به چند (Many-To-Many) پایگاه داده و سایر موارد همگی از نقطه ضعفهای این مدل داده به حساب میآیند.
مدل پایگاه داده شبکهای
چارلز باخمن (Charles Bachman) به عنوان اولین توسعه دهنده DBMS، آن را با نام «ذخیره دادههای یکپارچه» (Integrated Data Store | IDS) ارائه داد. این مدل در اوایل دهه ۶۰ توسعه داده شده است، اما استانداردسازی آن در سال ۱۹۷۱ انجام شد. در مدل پایگاه داده شبکهای (Network)، فایلها تحت عنوانهای «عضوها» (Members) و «مالکها» (Owners) با یکدیگر مرتبط هستند. در حقیقت، این روابط دقیقاً شبیه به یک مدل مرسوم شبکه هستند. اسکیمای شبکه، زیراسکیما و زبان مدیریت دادهها اجزای مدل داده شبکه محسوب میشوند. لازم به ذکر است که مدل داده شبکهای محدودیتهایی مانند پیچیدگی سیستم و سختی طراحی و نگهداری را به همراه دارد.
پایگاه داده رابطهای
سیستم پایگاه داده رابطهای تقریباً از سال ۱۹۷۰ تا به امروز به طور گسترده مورد استفاده قرار گرفته است. این مدل توسط ادگار کاد (Edgar Codd) ارائه شد. پایگاه داده رابطهای بر مبنای دو اصطلاح با نامهای «نمونه» (Instance) و «الگو» (شِما | Schema) طراحی شده است. نمونه یک جدول به حساب میآید که سطرها یا ستونهایی دارد. از سوی دیگر، الگو یا همان اسکیما در پایگاه داده رابطهای، تعیین کننده مواردی مانند نام رابطه، نوع هر ستون و سایر موارد مرتبط با ساختار آن است. در مدل پایگاه داده رابطهای برخی از مفاهیم ریاضیاتی مثل نظریه مجموعه (Set Theory) و منطق گزارهای استفاده میشوند. از گذشته تا زمان حال، مدلهای گوناگونی، از جمله مدل شیگرا معرفی شدهاند.
پایگاه داده مبتنی بر فضای ابری
پایگاه داده ابری به کاربر این امکان را میدهد که اعمالی مانند ذخیرهسازی، مدیریت و بازیابی دادههای ساختاریافته و بدون ساختار را از طریق یک پلتفرم ابری به راحتی انجام دهد. خدمات وب آمازون (AWS)، محاسبات Snowflake، خدمات ابری پایگاه داده اوراکل، Microsoft SQL Server و Spanner ابری گوگل به عنوان بهترین پایگاه داده مبتنی بر فضای ابری در نظر گرفته میشوند.
پایگاه داده NoSQL
طراحی پایگاه دادههای NoSQL به گونهای است که با استفاده از آنها، امکان گنجاندن طیف وسیعی از مدلهای داده فراهم میشود. نکته مهم این است که NoSQL از عبارت «Not Only SQL» برگرفته شده است. پایگاه داده NoSQL، به عنوان یک روش جایگرین برای پایگاه دادههای رابطهای سنتی طراحی شده است. استفاده از پایگاه داده NoSQL زمانی مفید است که مجموعه وسیعی از دادههای توزیع شده وجود داشته باشد.

پایگاه داده شیگرا
در این نوع پایگاه داده، دادهها در قالب شی و کلاسها هستند. اشیا موجودیتهای واقعی (Real World Entity) و نوعها، مجموعهای از اشیا تلقی میشوند. در واقع، به بیان سادهمی توان پایگاه داده شیگرا را تلفیقی از ویژگیهای مدل رابطهای و قوانین شیگرایی در نظر داشت. پایگاه داده شیگرا به عنوان یک رویکرد پیادهسازی جایگزین برای مدل رابطهای است. شیها، کلاسها، ارثبری (Inheritance)، چندریختی (Polymorphism) و کپسولهسازی (Encapsulation) همگی مشخصههای اصلی یک مدل پایگاه داده شیگرا هستند.
پایگاه داده گرافی
پایگاه داده گراف یک دیتابیس NoSQL به حساب میآید و عملاً به منظور نمایش گرافیکی دادهها به کار میرود. گرهها (Nodes) و یالها (Edges) دو مورد از اصلیترین اجزای پایگاه داده گرافی هستند. گرههای مورد استفاده در این نوع پایگاه داده به منظور نمایش موجودیتها و یال میان این گرهها برای مشخص کردن ارتباط میان دو گره کاربرد دارد. هر کدام از گرههای پایگاه داده گرافی نمایانگر یک توصیفگر (Identifier) منحصر به فرد هستند. مهمترین کاربرد پایگاه داده گرافی، جستجوی رابطه بین دادهها است. به این دلیل که این نوع پایگاه داده ارتباط مطلوب میان دادهها را برجسته میکند.
انواع پایگاه داده چیست ؟
پایگاه دادهها انواع مختلفی دارند که هر یک بر اساس نیاز به کار میروند و از جمله آنها میتوان به پایگاه دادههای NoSQL، بانکهای اطلاعاتی رابطهای، پایگاه داده شیگرا و دیتابیسهای ستونی اشاره کرد. در ادامه هر یک از انواع پایگاه داده فهرست شدهاند:
- پایگاه داده NoSQL
- پایگاه داده رابطهای (Relational)
- پایگاه داده شیگرا (Object Oriented)
- پایگاه داده ستونی
- انبارهای داده (Data Warehouses)
- پایگاه داده ستون گسترده
- پایگاه داده متمرکز (Centralized)
- پایگاه داده متن باز (Open Source)
- پایگاه داده مبتنی بر فضای ابری (Cloud)
- پایگاه داده کلید مقدار
- پایگاه داده سلسه مراتبی (Hierarchical)
- پایگاه داده توزیع شده (Distributed)
- پایگاه داده گرافی (Graph)
- پایگاه داده سری زمانی (Time Series)
به منظور آشنایی با انواع پایگاه داده، میتوان به مقاله زیر رجوع کرد و از آن به عنوان یک راهنمای جامع و کاربردی برای شناختن دیتابیسها استفاده کرد.
سیستم مدیریت پایگاه داده چیست ؟
سیستمهای مدیریت پایگاه داده (DBMS | Database Management System) سیستمهای نرم افزاری خاصی هستند که برای ذخیره، بازیابی و اجرای کوئریهای مختلف روی دادهها به کار میروند. به بیان ساده، سیستم مدیریت پایگاه داده به عنوان یک واسط میان یک کاربر و پایگاه داده مورد استفاده قرار میگیرد. DBMS به کاربران این امکان را میدهد که عمل ایجاد، خواندن، بهروزرسانی و حذف دادهها را در پایگاه داده به راحتی انجام دهند.
سیستم مدیریت پایگاه داده نقش مدیریت دادهها، مدیریت موتور (Engine) پایگاه داده و مدیریت الگوی (اسکیمای) پایگاه داده را بر عهده دارد. به واسطه این امکانات، امکان دستکاری و استخراج دادهها توسط کاربر و سایر برنامهها به وجود میآید. بدین ترتیب با کمک سیستمهای مدیریت پایگاه داده، مواردی مانند برقراری امنیت دادهها و تمامیت آنها، ایجاد همروندی و یکپارچگی در روالهای دادههای ادمین تسهیل پیدا میکنند. به دلیل پیروی از رویکرد کاربردی طراحی شمای پایگاه داده در سیستمهای مدیریت پایگاه داده، دیتای سازمان مربوطه بهینهسازی میشود که این رویکرد کاربردی، نرمالسازی (Normalization) نام دارد. زمانی که مقادیر صفتهای (Attributes) موجود در پایگاه داده دارای افزونگی زیادی باشند، با استفاده از نرمالسازی میتوان جدولهای بزرگ را به جدولهای کوچک تقسیم کرد. به منظور آشنایی با فرآیند نرمال سازی در پایگاه داده، میتوان از مقاله زیر استفاده کرد:
سیستمهای مدیریت پایگاه داده بر اساس معیارهای مختلف از جمله مدل دادهها، توزیع پایگاه داده یا تعداد کاربران طبقهبندی میشوند. رایجترین انوعهای سیستمهای مدیریت پایگاه داده شامل موارد زیر است:
- نوع رابطهای
- توزیع شده
- سلسله مراتبی
- شیگرا
- شبکهای

در ادامه، تعدادی از مهمترین نمونههای سیستمهای مدیریت پایگاه داده مطرح میشوند.
مثال از سیستمهای مدیریت پایگاه داده
برای مدیریت پایگاه داده، نرمافزارهای پایگاه داده مختلفی، چه در سطوح سازمانی (Enterprise) و چه در سطوح متن باز و رایگان، وجود دارند. در ادامه به برخی از محبوبترین آنها پرداخته میوشد.
- اوراکل (Oracle): پایگاه داده اوراکل یک سیستم مدیریت پایگاه داده تجاری است. در اوراکل، از فناوری پایگاه داده در مقیاسهای سازمانی و همراه با ویژگیهای قدرتمند و خاص استفاده میشود. ذخیرهسازی میتوان به صورت درون سازمانی یا در فضای ابری انجام شود.
- MySQL: یک سیستم مدیریت پایگاه داده رابطهای است که معمولاً همراه با سیستمهای مدیریت محتوای (CMS) متن باز و پلتفرمهای گسترده مختلفی مثل فیسبوک، توییتر و یوتیوب مورد استفاده قرار میگیرد.
- SQL Server: یک سیستم مدیریت پایگاه داده رابطهای است که توسط شرکت مایکروسافت، روی زبان کوئری ساختاریافته یا همان SQL ساخته است. به منظور یادآوری بیشتر، SQL یک زبان برنامه نویسی استاندارد شده است که به مدیران پایگاه داده امکان رسیدگی به پایگاه دادهها و دیتا را ارائه میکند.
محبوبترین سیستمهای مدیریت پایگاه داده مبتنی بر SQL کدامند؟
در ادامه این بخش از مقاله «پایگاه داده چیست»، محبوبترین سیستمهای مدیریت پایگاه داده SQL فهرست شدهاند:
- SQL Server
- MySQL
- پایگاه داده اوراکل
- خدمات پایگاه داده رابطهای آمازون (AWS RDS)
- پایگاه داده PostgreSQL
محبوبترین سیستمهای مدیریت پایگاه داده NoSQL کدامند؟
برخی از پرطرفدارترین سیستمهای مدیریت پایگاه داده NoSQL در ادامه معرفی شدهاند:
- MongoDB
- Elasticsearch
- DynamoDB
- HBase
- Cassandra
نقد و بررسیها
هیچ دیدگاهی برای این محصول نوشته نشده است.