برنامه نویسی

نحوه عملکرد یک RDBMS شماره 3: مروری بر چرخه حیات پایگاه داده

معرفی

داده های موجود در اینترنت در سال های اخیر به سرعت در حال رشد بوده است. بنابراین، ما اهمیت مطالعه طراحی یک RDBMS را دیدیم. در این پست، با مروری بر مراحل از مدل سازی تا ذخیره سازی داده ها، نحوه عملکرد چرخه زندگی آن را کشف خواهید کرد. با درک این عملیات می توان هر قسمت از معماری آن را با دقت بیشتری بررسی کرد.

چرخه حیات پایگاه داده

چرخه حیات پایگاه داده شامل مراحل اساسی از مدل مفهومی تا پیاده سازی برای طراحی پایگاه داده و به حداکثر رساندن عملکرد آن است. این تعریف برای پایگاه داده های رابطه ای مانند PostgreSQL اعمال می شود. انواع دیگر، مانند پایگاه های داده توزیع شده، خارج از حوصله این مقاله هستند.

نویسندگان کتاب «طراحی پایگاه داده فیزیکی: راهنمای حرفه‌ای پایگاه‌داده برای بهره‌برداری از نمایه‌ها، نماها، ذخیره‌سازی و موارد دیگر» چرخه حیات پایگاه داده را در چهار بخش که در شکل 1 تعریف شده است، شرح می‌دهند:

شکل 1 – چرخه حیات پایگاه داده. توسط نویسنده شرح داده شده است.

1. تجزیه و تحلیل نیازمندی ها

برای اطمینان از اینکه پایگاه داده شما نیازهای کسب و کار شما را برآورده می کند، تعیین اینکه کدام داده ها ذخیره می شوند، نحوه ارتباط آنها با یکدیگر، ویژگی های آنها و اطلاعات مهم اضافی ضروری است. این فرآیند معمولاً به شکل مصاحبه با کسانی است که این داده ها را تولید و استفاده می کنند.

همچنین در این مرحله است که انتخاب بستر مناسب برای اجرا مطرح می شود. بنابراین، فرض کنید که باید یک پایگاه داده برای ذخیره مقالات برای یک پروژه تحقیقاتی ایجاد کنیم. هر مقاله دارای:

  • عنوان؛
  • حداقل یک نویسنده؛
  • تاریخ انتشار؛
  • محل انتشار؛
  • تعداد استنادها

هر نویسنده و محل انتشار نیز ویژگی ها و روابط خود را دارد، اما برای ساده کردن مثال، اجازه دهید فقط بر روی مقالات تمرکز کنیم. روابط آنها از طریق نقل قول است. مقالات باید به شدت از طریق آنها همبستگی داشته باشند تا از تحقیقات مستدل اطمینان حاصل شود. بنابراین، می توان گفت که مقالات به مقالات دیگر استناد می کنند. یک پلت فرم عالی برای پیاده سازی این پایگاه داده PostgreSQL است. علاوه بر ذخیره‌سازی ایمن و کارآمد داده‌ها، می‌توانیم از پسوند Apache AGE برای تجسم نمودار استنادی استفاده کنیم و ارزیابی کنیم که آیا تحقیق به خوبی پایه‌گذاری شده است و آیا منابع «سست» بدون روابط، در میان اطلاعات مهم دیگر وجود دارد.

2. طراحی منطقی

در مرحله طراحی منطقی، همه الزامات به یک مدل تبدیل می شوند که می تواند مفهومی یا منطقی باشد. مدل مفهومی داده ها و روابط آن را به صورت انتزاعی نشان می دهد، در حالی که مدل منطقی نمایش دقیق تر و پیاده سازی محور را ارائه می دهد. با این حال، مهم است که توجه داشته باشید که هدف از این متن، جزئیات هر مدل نیست، بلکه ارائه نقش آن در فرآیند طراحی پایگاه داده است.

طراحی منطقی واقعیت دنیای کاربر را از نظر عناصر داده و روابط آنها به تصویر می کشد. در مثال قسمت قبل، تمام روابط بین مقالات را در قالب یک نمودار نشان می دهیم. این مثال را در پست بعدی بیشتر بررسی خواهیم کرد. هدف این طراحی تسهیل برنامه نویسی پرس و جو و به روز رسانی داده ها است. در این مرحله، عادی سازی جداول SQL از قبل رخ می دهد. اگر می خواهید در مورد نرمال سازی بیشتر بدانید، این مقاله نمونه خوبی است.

3. طراحی فیزیکی

تمرکز طراحی فیزیکی بر روی داده های عملیاتی با کارایی بالا است. این مرحله شامل تعریف روش هایی برای ذخیره و دسترسی به جداول روی دیسک است. هدف به حداکثر رساندن عملکرد پایگاه داده است. بنابراین، داشتن درک روشنی از نحوه عملکرد سیستم پایگاه داده ضروری است. ما می توانیم عملکرد پایگاه داده را به دو روش اندازه گیری کنیم:

  1. در طول زمان لازم برای پاسخگویی پایگاه داده به یک درخواست یا تکمیل به روز رسانی برای یک برنامه خاص.
  2. از طریق توان عملیاتی، که تعداد تراکنش‌هایی است که سیستم پایگاه داده در یک بازه زمانی مشخص با در نظر گرفتن همه برنامه‌هایی که از پایگاه داده استفاده می‌کنند، می‌تواند انجام دهد.

منابع فیزیکی که می توانند باعث تاخیر در اجرای برنامه های پایگاه داده شوند عبارتند از CPU، I/O (مانند دیسک) و شبکه های کامپیوتری.

4. اجرا، نظارت و نگهداری

این مرحله نهایی چرخه حیات سیستم پایگاه داده است که در آن پایگاه داده را ایجاد و نگهداری می کنیم. به اختصار می‌توانیم آن را به شرح زیر بیان کنیم:

پیاده سازی: ایجاد جداول در پایگاه داده با استفاده از زبان تعریف داده (DDL) و به روز رسانی، انجام پرس و جوها، و پیکربندی فهرست ها و محدودیت ها با زبان دستکاری داده ها (DML). زبان SQL هر دو زبان را در بر می گیرد.

  • نمونه ای از DDL: CREATE TABLE فرمان؛
  • نمونه ای از DML: SELECT فرمان

نظارت بر: نظارت بر عملکرد پایگاه داده PostgreSQL پیاده سازی می کند EXPLAIN دستور (بخش 3.2 از کتاب “Internals of PostgreSQL”)، که به نظارت بر عملکرد یک پرس و جو با ارائه هزینه آن کمک می کند.

نگهداری: به عنوان مثال، تغییرات در پایگاه داده برای برآوردن الزامات عملکرد و تغییرات در نیازهای کاربر. در این مرحله، تنظیمات طراحی وجود دارد که چرخه عمر DBMS را ادامه می دهد.

نتیجه

در این مقاله، اهمیت مطالعه منابع و اجرای یک RDBMS برای اطمینان از مدیریت صحیح چرخه عمر آن را درک کردیم. ما همچنین دیدیم که این شامل تجزیه و تحلیل الزامات، طراحی منطقی، طراحی فیزیکی، اجرا، نظارت و نگهداری است. در پست بعدی، برخی از این مفاهیم را با پیاده سازی پایگاه داده مقاله ارائه شده به عنوان مثال در بخش تحلیل نیازمندی ها، با استفاده از PostgreSQL با Apache AGE برای تجسم گراف، اعمال خواهم کرد. پس اگر دوست دارید دستتان را کثیف کنید، پست بعدی را از دست ندهید!

اشتباه

قصد من این است که دسترسی به اطلاعات فناوری را از طریق منابع معتبر فراهم کنم. اگر اطلاعات نادرستی پیدا کردید، لطفاً با من در [email protected] تماس بگیرید.

مقالات مرتبط

نحوه کار یک RDBMS شماره 1: درس هایی از “داخلی PostgreSQL”

نحوه عملکرد یک RDBMS شماره 2: دلایل مطالعه طراحی آن

برآورد هزینه در PostgreSQL

همکاری برای نوآوری: چگونه یک شبکه اجتماعی می تواند به شما کمک کند تیم برنامه نویسی زوج رویایی خود را پیدا کنید

منابع

لایت استون، سم اس.، توبی جی. تئوری و تام نادو. طراحی پایگاه داده فیزیکی: راهنمای حرفه ای پایگاه داده برای بهره برداری از نمایه ها، نماها، ذخیره سازی و موارد دیگر. مورگان کافمن، 2010.

مایکروسافت. شرح اصول عادی سازی پایگاه داده 2023. موجود در https://learn.microsoft.com/en-us/office/troubleshoot/access/database-normalization-description. دسترسی در 2023/03/31.

سوزوکی، هیرونوبو. موارد داخلی PostgreSQL برای مدیران پایگاه داده و توسعه دهندگان سیستم. Interdb. 2015. موجود در https://www.interdb.jp/pg/. دسترسی در 2023/03/25.

سوزا، واندر ایناسیو د. یادداشت های کلاس I پایگاه داده – مفاهیم و معماری سیستم های پایگاه داده. دانشگاه فدرال اورو پرتو 2016. منتشر نشده.

بنر طراحی شده توسط Freepik.

به Apache AGE کمک کنید

وب سایت Apache AGE: https://age.apache.org/

Apache AGE Github: https://github.com/apache/age

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

همچنین ببینید
بستن
دکمه بازگشت به بالا