پایگاه داده ( DataBase ) چیست؟
توضیحات
انواع پایگاه های داده
بررسی سریع نیاز فعلی به ذخیره تکه های عظیم داده مربوط به چندین دسته مرتبط یا غیرمرتبط، نشان می دهد که پایگاه های داده باید در کاری که برای انجام آن طراحی شده اند بسیار مؤثر باشند. این نه تنها به دلیل حجم دادههایی است که بهطور مداوم با آنها بازنگری یا اصلاح میشوند. پویایی آن دیگر به تنهایی مورد توجه نیست. این به دلیل ارزش اجتماعی است که هر فرد برای آنها قائل است: پایگاه های داده ستون فقرات واقعی سبک زندگی مشتری یا ارزش یک تجارت هستند. طراحی انواع مختلف پایگاه داده ها در هسته عملکردی است که آنها در اختیار کاربران قرار می دهند. از آنجایی که داده ها یک موجودیت پویا هستند، نحوه ذخیره آن ها بسیار متفاوت است. همچنین این دلیلی است که شرکتها انواع پایگاههای اطلاعاتی خود را طراحی میکنند که با نیازهای آنها مطابقت دارد. در این مقاله، ما به بررسی رایج ترین پایگاه های داده خواهیم پرداخت. آنها عبارتند از:
Hierarchical databases
Network databases
Object-oriented databases
Relational databases
NoSQL databases
Hierarchical Databases -1
درست مانند هر سلسله مراتبی، این پایگاه داده از پیشرفت داده های دسته بندی شده در رتبه ها یا سطوح پیروی می کند، که در آن داده ها بر اساس یک نقطه
پیوند مشترک طبقه بندی می شوند. در نتیجه، دو نهاد از داده ها در رتبه پایین تری قرار می گیرند و مشترک بودن رتبه بالاتری را در نظر می گیرد. به نمودار زیر مراجعه کنید
توجه داشته باشید که چگونه بخش ها و مدیریت کاملاً متفاوت با یکدیگر هستند و در عین حال در حوزه یک دانشگاه قرار می گیرند. آنها عناصری هستند که این سلسله مراتب را تشکیل می دهند. دیدگاه دیگری توصیه میکند که دادههایی را که در یک رابطه والد-فرزند سازماندهی میشوند، تجسم کنید، که با افزودن عناصر دادههای متعدد شبیه یک درخت است. سوابق فرزند با استفاده از یک فیلد به سابقه والد مرتبط می شوند، بنابراین رکورد والد اجازه چندین رکورد فرزند را دارد. با این حال، برعکس امکان پذیر نیست. توجه داشته باشید که به دلیل چنین ساختاری، پایگاه های داده سلسله مراتبی به راحتی قابل فروش نیستند. افزودن عناصر داده نیاز به پیمایش طولانی در پایگاه داده دارد
Network Databases -2
به تعبیر Layman، پایگاه داده شبکه یک پایگاه داده سلسله مراتبی است، اما با یک تغییر اساسی. به سوابق فرزند این آزادی داده می شود که با چندین سوابق والدین مرتبط شوند. در نتیجه، شبکه یا شبکه ای از فایل های پایگاه داده مرتبط با موضوعات متعدد مشاهده می شود. توجه کنید که چگونه عناصر دانشجو، دانشکده و منابع هر کدام دارای سوابق دو والد هستند، که گروه ها و باشگاه ها هستند.
مطمئناً یک چارچوب پیچیده، پایگاه داده های شبکه توانایی بیشتری برای نمایش روابط دو جهته دارند. همچنین، سادگی مفهومی به نفع استفاده از یک زبان مدیریت پایگاه داده ساده تر است. نقطه ضعف آن در عدم توانایی در تغییر ساختار به دلیل پیچیدگی آن و همچنین در وابستگی بسیار ساختاری آن است
Object-Oriented Databases -3
کسانی که با پارادایم برنامه نویسی شی گرا آشنا هستند می توانند به راحتی با این مدل از پایگاه های داده ارتباط برقرار کنند. اطلاعات ذخیره شده در پایگاه داده می تواند به عنوان یک شی نشان داده شود که به عنوان نمونه ای از مدل پایگاه داده پاسخ می دهد. بنابراین، شیء را می توان بدون هیچ مشکلی ارجاع داد و فراخوانی کرد. در نتیجه، حجم کار در پایگاه داده به میزان قابل توجهی کاهش می یابد.
در نمودار بالا، ما اشیاء مختلفی داریم که با استفاده از روشها به یکدیگر مرتبط شدهاند. با استفاده از متد livesAt می توان آدرس Person (که توسط Person Object ارائه می شود) بدست آورد. علاوه بر این، این اشیا دارای ویژگی هایی هستند که در واقع عناصر داده ای هستند که باید در پایگاه داده تعریف شوند. نمونه ای از چنین مدلی کتابخانه نرم افزار Berkeley DB است که از پس زمینه مفهومی یکسانی برای ارائه پاسخ های سریع و بسیار کارآمد به پرسش های پایگاه داده از پایگاه داده تعبیه شده استفاده می کند
Relational Databases -4
این پایگاههای اطلاعاتی که بالغترین پایگاههای داده در نظر گرفته میشوند، همراه با سیستمهای مدیریتی خود در خط تولید پیشرو هستند. در این پایگاه داده، هر قطعه اطلاعاتی با هر اطلاعات دیگری رابطه دارد. این به حساب هر مقدار داده در پایگاه داده است که یک هویت منحصر به فرد در قالب یک رکورد دارد.
توجه داشته باشید که تمام داده ها در این مدل جدول بندی شده اند. بنابراین، هر ردیف از داده ها در پایگاه داده با استفاده از یک کلید اصلی با ردیف دیگری مرتبط می شود. به طور مشابه، هر جدول با استفاده از یک کلید خارجی با جدول دیگری مرتبط می شود. به نمودار زیر مراجعه کنید و متوجه شوید که چگونه مفهوم "کلیدها" برای پیوند دو جدول استفاده می شود.
با توجه به این معرفی جداول برای سازماندهی داده ها، بسیار محبوب شده است. در نتیجه، آنها به طور گسترده در رابط های Web-Ap ادغام می شوند تا به عنوان مخازن ایده آل برای داده های کاربر عمل کنند. چیزی که آن را جالب تر می کند، سهولت در تسلط بر آن است، زیرا زبان مورد استفاده برای تعامل با پایگاه داده ساده است (در این مورد SQL) و به راحتی قابل درک است.
همچنین شایان ذکر است که در پایگاههای داده رابطهای، مقیاسگذاری و پیمایش در میان دادهها در مقایسه با پایگاههای داده سلسله مراتبی، کار بسیار سبکی است.
NoSQL Databases -5
NoSQL که در اصل به غیر SQL یا غیر رابطه ای اشاره دارد، پایگاه داده ای است که مکانیزمی برای ذخیره و بازیابی داده ها فراهم می کند. این دادهها به روشهایی غیر از روابط جدولی مورد استفاده در پایگاههای داده رابطهای مدلسازی میشوند
یک پایگاه داده NoSQL شامل سادگی طراحی، مقیاس بندی افقی ساده تر به خوشه های ماشین ها و کنترل دقیق تر بر در دسترس بودن است. ساختارهای داده ای که توسط پایگاه های داده NoSQL استفاده می شود با ساختارهای پیش فرض استفاده شده در پایگاه های داده رابطه ای متفاوت است که باعث می شود برخی از عملیات ها در NoSQL سریعتر شوند. مناسب بودن یک پایگاه داده NoSQL به مشکلی که باید حل کند بستگی دارد. ساختارهای داده ای که توسط پایگاه های داده NoSQL استفاده می شوند، گاهی اوقات انعطاف پذیرتر از جداول پایگاه داده رابطه ای هستند. MongoDB در دسته پایگاه داده مبتنی بر سند NoSQL قرار می گیرد
مزایای NoSQL – کار با پایگاه های داده NoSQL مانند MongoDB و Cassandra مزایای زیادی دارد.
مزایای اصلی مقیاس پذیری بالا و در دسترس بودن بالا است
معایب NoSQL – NoSQL دارای معایب زیر است
NoSQL یک پایگاه داده منبع باز است
رابط کاربری گرافیکی در دسترس نیست
پشتیبان گیری یک نقطه ضعف برای برخی پایگاه های داده NoSQL مانند MongoDB است
اندازه سند بزرگ
اینها تنها چند نوع از ساختارهای پایگاه داده هستند که مفاهیم اساسی را به طور گسترده در صنعت مورد استفاده قرار می دهند. با این حال، همانطور که قبلا ذکر شد، مشتریان تمایل دارند روی ایجاد پایگاههای دادهای تمرکز کنند که مطابق با نیازهای خودشان باشد. برای ذخیره داده ها در یک طرحواره که یک عملکرد متغیر را بر اساس طرح اولیه خود به نمایش می گذارد. از این رو، دامنه توسعه در ارجاع به پایگاه های داده و سیستم های مدیریت پایگاه داده روشن است.
سوالات و نظرات کاربران