وباکا

آموزش تخصصی برنامه نویسی وب

طراحی بانک اطلاعاتی – 1# معرفی مفاهیم کلیدی سیستم های بانک اطلاعاتی

 

در سیستم های کامپیوتری با دو مفهوم داده و اطلاع سروکار داریم . داده حقایق خام وبدون معنی وتفسیر است مثل :    75/19   و اطلاعات معنا وتفسیر داده هاست به عنوان مثال:   معدل=75/19

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

پایگاه داده مجموعه ای از رکوردهای ذخیره شده به صورت سازماندهی شده شامل فایل ها و جداول….به طوری که عملیات زیر روی آنها قابل اجرا باشد:

 

  • ساخت،اصلاح،حذف فایل ها یا جداول
  • اضافه و حذف،ویرایش، بازیابی رکوردها

دو روش برای مدیریت رکوردهای اطلاعات

1)روش فایلینگ (فایل پردازی)

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

سیستم فایلینگ

سیستم فایلینگ

معایب این شیوه عبارت است از:

*نسخه های مختلفی از اطلاعات یکسان در فایل های  مختلف ذخیره می شود.

*برنامه ها وابستگی شدیدی به داده ها دارند،تغییر ساختار داده ها منجر به تغییر برنامه می شود و تغییر برنامه ، ساختار فایل را تغییر می دهد.

*داده ها دارای استقلال نیستند و ساختار داده ها را دستورات  برنامه تعیین می کند.

*امنیت پائین است و امکان کنترل دسترسی متمرکز و یکپارچه به داده ها وجود ندارد.

2)روش پایگاه داده(Data base)

در این روش اطلاعات به صورت منسجم و سازگار ذخیره شده و می توانند به صورت اشتراکی توسط کاربران مختلف استفاده شوند. و هیچ کدام از عیب های روش فایلینگ را ندارند.

سیستم بانک اطلاعاتی

اجزای سیستم بانک اطلاعاتی

یک سیستم بانک اطلاعاتی از اجزای زیر تشکیل شده است.

 1)سخت افزار                                                            2)کاربران

3)نرم افزار                                                                4)داده ها

 داده ها

منظور از داده ها همان داده های فیلدهای ذخیره شده است، فیلد ذخیره شده، کوچکترین واحد داده دارای معنا و مفهوم بوده و دارای انواع داده مشخص می باشند. رکورد ذخیره شده از فیلدهای ذخیره شده تشکیل شده است و مشخصات مربوط به یک نمونه از واقعیت ها یا موجودیت ها از جهان واقعی را نگه می دارد. مجموعه ای از رکوردهای ذخیره شده را فایل ذخیره شده می گویند. فایل ذخیره شده، مشخصات نمونه های مختلف موجودیت را نگهداری می کند. به علاوه اطلاعاتی در مورد داده های ذخیره شده مثل ساختاررکورد، ساختار فایل ، طول رکوردها و … در بانک اطلاعاتی نگهداری می شوند که شبه داده ها (Meta-Data)  گفته می شوند.

بر اساس این تعاریف، بانک اطلاعاتی ذخیره شده عبارت از مجموعه ای از فایل های ذخیره شده است.

 

نرم افزار

اصلی ترین نرم افزار در سیستم  بانک اطلاعاتی، سیستم مدیریرت پایگاه داده  (یا DBMS -DataBase Management System)  است. این نرم افزار امکانات زیر را فراهم می کند.

1-ایجاد بانک اطلاعاتی و حذف آن و عملیات دیگر

2-ایجاد جداول (فایل هاس اطلاعاتی تعیین ساختار آن ها،اصلاح و حذف آن ها

3-ورود داده ها،بازیابی،ویرایش و حذف آن ها

علاوه بر امکانات اساسی فوق هرDBMS  می تواند دارای امکانات متنوع دیگری نیز باشد از جمله :

1-کپی،تغییر نام،پشتیبان گیری و بازیابی پشتیبان،ترمیم بانک اطلاعاتی،صدور/ورود اطلاعات

2-امکان ارتباط بین جداول،ایجاد دیدگاه(QUERY) ،جستجو در جدول و خالی کردن جدول و …

3-حذف گروهی،یا به طور کلی عملیات گروهی روی داده ها

4-امکانات دیگری مثل ساخت گزارش های دلخواه،برنامه نویسی برای مدیریت داده ها و طراحی فرم

چند نوع از DBMS ها عبارتند از Access,SQL Server,Oracle، DB2 ، Paradox،MySQL و…

 

کاربران

چند دسته کاربر در یک سیسم بانک اطلاعاتی کار می کند:

1-مدیر داده ها (DA) (Data Administrator) : فردی خبره در سازمان است که وظیفه تعیین چارچوب اطلاعاتی و جزئیات داده های ذخیره شده را تعیین می کند. این فرد ممکن است تخصصی در زمینه IT  نداشته باشد ولی در مورد اطلاعات سازمان و روند فعالیت ها تسلط کافی دارد.

 

2– مدیر بانک اطلاعاتی(DBA  ) (Database Administrator) یک فرد با تخصص در زمینه IT است که وظیفه تعیین ساختار بانک اطلاعاتی ومدیریت آنرا برعهده دارد. این کاربر زیر نظر مدیر داده ها اقدام به ایجاد بانک اطلاعاتی و تعیین نوع داده ها نموده و دسترسی کاربران به بانک اطلاعاتی را با توجه به ملاحظات امنیتی و سیاست های مدیریت سازمان کنترل می کند، ضمن اینکه خط مشی تهیه پشتیبان از بانک اطلاعات و ترمیم آن را تعیین کرده و موظف به نگهداری اطلاعات و رفع اشکلات احتمالی در حداقل زمان ممکن است.

3-برنامه نویسان کاربردی: این کاربران با استفاده از زبان های برنامه سازی، برنامه های کاربردی را برای کار با بانک اطلاعاتی و مدیریت داده ها ایجاد می کنند و برای این کار از زبان های برنامه نویسی مثل زبان ویژوال  بیسیک، دلفی، سی شارپ و … استفاده می کنند. ،این زبان ها اغلب دارای امکاناتی برای ارتباط با بانک اطلاعاتی و مدیریت آن هستند و گاهی نیز ممکن است برنامه نویسان کتابخانه های لازم را برای ارتباط با بانک اطلاعاتی ایجاد کنند.

4-کاربران نهایی: کاربرانی هستند که وظیفه ثبت اطلاعات و مدیریت آن ها را بر عهده دارند مثل کارمند آموزش، دانشجویان یا کارمند بایگانی. ارتباط این کاربران با بانک اطلاعاتی به دو شکل است:

1-استفاده از برنامه کاربردی نوشته شده توسط گروه قبل(برنامه کاربردی درون خطی Online )

2-استفاده از امکانات DBMS (برنامه های کاربردی پیش ساخته( Built-in)

برای استفاده این دسته از کاربران،  DBMS ها دو دسته امکانات را فراهم می کند :

  • رابط های منو گرا(فرم گرا): استفاده از پنجره ها و منوها
  • رابط های دستور گرا: گرفتن دستورات با یک زبان پرس و جو مثل SQL

سخت افزار

در یک سیستم بانک اطلاعاتی سخت افزارهای مورد استفاده عبارتند از:

  • پردازنده ها
  • حافظه های اصلی
  • رسانه های ذخیره سازی

 

مزایای شیوه بانک اطلاعاتی

شیوه بانک اطلاعاتی مزایای زیادی دارد که مهمترین انها عبارتند از:

1-اشتراک داده ها :

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

2-کاهش افزونگی داده ها:

داده ها تکرار نمی شوند و هر داده ای فقط یک بار در بانک اطلاعاتی  نوشته می شود به عنوان مثال ما دو مجموعه از مشخصات دانشجویان را نخواهیم داشت

3-اجتناب از ناسازگاری داده ها:

ناسازگاری یعنی اینکه یعنی واقعیت یکسانی به چند شکل در سیستم وجود داشته باشد.به عنوان مثال برای یک دانشجو در یک سیستم دو معدل و یا دو آدرس متفاوت ثبت شده باشد.

*کاهش افزونگی باعث کاهش ناسازگاری هم میشود.

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

در شیوه بانک اطلاعاتی، این مشکلات با بهنگام سازی انتشاری حل می شود.

4-حمایت از تراکنش ها(Transactions):

تراکنش مجموعه ای از چند دستور است که به عنوان یک واحد تلقی شده یا همه ی آن ها باید اجرا شوند یا هیچکدام اجرا نشوند. مثل برداشت از حساب A و واریز به حساب B.  بانک اطلاعاتی با حمایت از تراکنش ها ،درستی داده ها و عملیات و بعدها ترمیم بانک اطلاعاتی در صورت وجود مشکل، اجرای تراکنش ها را به شکل درست تضمین می کند.

5-اعمال جامعیت یا یکپارچگی داده ها(Integration):

در شیوه بانک اطلاعاتی، برای اعمال جامعیت مجموعه ای از قوانین یا قواعد یا محدودیت ها در مورد ستون های جدول ،سطرهای جدول و یا چند جدول تعریف می شود این قوانین درستی و سازگاری داده ها را تضمین می کند. بانک اطلاعاتی می تواند امکان تعریف این قوانین و در نظر گرفتن آنها هنگام درج اطلاعات و تغییرات بعدی جامعیت داده ها تضمین کند.

6-اعمال محدودیتهای امنیتی:

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

7-متعادل نمودن نیازهای متضاد:

در صورت استفاده از یک بانک اطلاعاتی مشترک در همه بخش های سازمان، کاربران ملزم به کوتاه آمدن از خواسته های غیر واقعی و پذیرفتن یک بانک اطلاعاتی متعادل و قابل استفاده برای تمام بخش های سازمان می شوند.

8-اعمال استانداردها:

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

9-استقلال داده ها:

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

در شیوه بانک اطلاعاتی، دو نوع استقلال داده ها وجود دارد: استقلال منطقی و استقلال فیزیکی.

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

همچنین برنامه های کاربردی با این جداول کار کرده و دید سطح بالایی نسبت به بانک اطلاعی دارند و اگر ساختارهای فیزیکی بانک اطلاعاتی تغییر کند( به عنوان مثال بانک اطلاعاتی از یک نرم افزار مثل Access  به نرم افزار دیگری مثل SQL Server منتقل شود) نیازی به تغییر دستورات برنامه کاربردی نیست.

از طرفی دیگر برنامه های کاربردی هر کدام می توانند دیدگاه خودشان را نسبت به بانک اطلاعاتی داشته و بخشی از آن را استفاده کنند. به عنوان مثال یک برنامه کاربردی ممکن است شماره دانشجویی را به صورت کاراکتری در نظر بگیرد در صورتی که برنامه کاربردی دیگری شماره دانشجویی را به صورت عددی صحیح یا اعشاری ببیند و با آن کار کند.بر عکس نیز ممکن است مدیر بانک اطلاعاتی ستون هایی از جدول را تغییر دهد مثلا ستون را اضافه یا حذف کرده یا تغییر دهد که نیازی به تغییر برنامه های کاربردی نباشد و یا تنها برنامه های کاربردی خاصی تغییر کنند.

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

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

فهرست مطالب