تقريباً بيشتر برنامههای کاربردی، امروزه به روش پایگاهداده طراحی میشوند. پایگاهداده امکان ذخيرهسازی متمرکز داده با حداقل افزونگی و استفادهی اشتراکی توسط کاربران مختلف را میدهد.
1-1-1 داده چیست

شکل 1-1
داده (data) دارای تعاریف مختلفی است، به طور کلی دادهها كلمات و ارزشهاي واقعي هستند كه از طريق مشاهده و تحقيق بدست ميآيند، به عبارت ديگر داده نمودي از وقايع، معلومات، رخدادها، پديدهها و مفاهيم هستند.
در محاسبات، داده به اطلاعاتي گفته میشود که به شکلی مناسب براي انتقال و پردازش ترجمه شود. در کامپيوتر و رسانههای ارتباطاتی امروزی داده به شکل باينری تبديل میشود. بنابراين داده يک نمايش باينری از يک موجوديت منطقي ذخيره شده در حافظه کامپيوتر است.
ريشه کلمهی داده از عبارت لاتين datum گرفته شده که به معنی اطلاع است و data فرم جمع آن است. اما datum به ندرت استفاده میشود و اکثراً ترجيح میدهند data را بهصورت يک کلمه مفرد استفاده کنند.
2-1-1 اطلاعات چیست
شکل 2-1
اطلاعات (information) مفهومي است که براي گيرنده آن قابلدرک بوده و با دانستن آن میتواند برای حل يک مسئله تصمیمگیری يا ارزيابی کند.
وقتي اطلاعات وارد کامپيوتر شود، ذخيره میشود و به داده تبديل میشود. بعد از پردازش، داده خروجي مجدداً بهعنوان اطلاعات دريافت ميشود.
هنگاميکه اطلاعات در يک بسته خاص قرار میگيرند و براي درک موضوعی يا انجام کاری استفاده ميشود به دانش (knowledge) تبديل میشود.
3-1-1 موجوديت چیست
شکل 3-1
موجوديت (entity) مفهوم کلي پديده، شيء يا فردي است که در مورد آن ميخواهيم اطلاع داشته باشيم و در کامپيوتر ذخيره کنيم.
هر نوع موجوديت دارای مجموعهاي از صفات خاصه (attribute) است که ويژگي جداکننده يک نوع موجوديت از نوع ديگر محسوب میشود.
اگر در نظر داريم يک سيستم پایگاهداده براي يک دبيرستان پيادهسازي کنيم مواردي چون دانشجویان، استادان، دروس، کلاسها و غيره جزء موجوديتهاي سيستم به شمار ميروند.
موجوديت دانشجو در سيستم دانشگاه ميتواند داراي صفات خاصه: نام، نام خانوادگی، سن، سال تولد، رشته تحصيلي، سال ورود و … باشد و يا موجوديت درس صفات خاصه: کد درس، نام درس و تعداد واحد باشد.
4-1-1 پایگاهداده چیست
شکل 4-1
يک بانك اطلاعاتي يا پایگاهداده (database) مجموعهاي سازمانیافته و بدون افزونگي از دادههای مرتبط به هم است که ميتواند توسط سيستمهاي کاربردي مختلف به اشتراک گذاشته شود و بهراحتی دسترسی، مديريت و بهنگام شود.
وقتی داده بهصورت پايگاهداده سازماندهی میشود، کاربر و برنامهنويس نيازي به دانستن جزئيات ذخيرهسازي داده ندارند. علاوه بر اين داده میتواند بدون تأثیر روي اجزاي ديگر سيستم تغيير کند. برای مثال از اعداد حقيقي به صحيح، از يک ساختار فايل به ديگری يا از دستگاه ذخيرهسازي نوري به مغناطيسي تغيير کند.
1-4-1-1 ويژگيهاي داده در پایگاهداده
ويژگیهایی که داده در پایگاهداده بايد داشته باشند در ليست زير آمده است:
1. اشتراکی شدن (Shared)
داده در پایگاهداده بين چندين کاربر و برنامه کاربردی به اشتراک گذاشته میشود.
2. ماندگاري (Persistence)
وقتي داده در پایگاهداده ذخيره شد پايدار است و از بين نمیرود، مگر آنکه توسط سيستم پایگاهداده تغيير کند.
3. امنيت (Security)
داده در پایگاهداده از فاش شدن، تغيير و تخريب بدون مجوز محافظت میشود. مدير سيستم توسط سطوح دسترسي و قيدهای امنيتی نحوه دستيابی به داده را مشخص میکند و اطمينان میدهد که دستیابی از طريق مناسب انجام میشود.
4. اعتبار (Validity)
يا جامعيت (Integrity) و يا صحت (Correctness) بهدرستی داده در پایگاهداده نسبت به موجوديت دنياي واقعي معتبر اشاره دارد. مثلاً موجودی بانک نبايد منفی باشد.
5. سازگاری (Consistency)
داده در پایگاهداده با مقدار واقعي داده در دنياي خارج سازگار است. وقتی يک فقره اطلاع در بيش از يک نقطه ذخيره شود و لازم باشد بههنگام شود، اگر بههنگامسازی در همه نقاط انجام نشود ناسازگاری ايجاد میشود.
6. کاهش افزونگی (Non redundancy)
داده در پایگاهداده داراي حداقل افزونگي است. افزونگي به اين معناست که هيچ دو فقره داده در بانک معرف يک موجوديت در دنياي خارج نباشد.
7. استقلال (independence)
تغيير در نمايش فيزيکی، تکنيکهای دستيابی و سازماندهی داده تأثیری روی برنامههای کاربردی ندارد.
دو روش كلي براي ذخيره و بازيابي خودكار دادهها وجود دارد: سيستم فايل ساده و سيستم پایگاهداده.
سيستم فايل (file system)
در اين روش، دادهها در فايلهاي مجزا قرار گرفته و سيستمهای جداگانهای به نام سيستم پردازش فايل براي استفاده از فايلهای دادهای طراحي ميشوند. در اين سيستمها هر برنامهي كاربردي تنها به فايل دادهای مربوط به خود میتواند مراجعه كند.
اشکالات چنين طراحي در ذخيره داده به طور خلاصه عبارتاند:
1. افزونگي و ناسازگاري داده به دليل چندين فرمت فايل و تکرار اطلاعات در فایلهای مختلف.
2. مشکل در دستيابی داده و نياز به نوشتن برنامه جديدي براي انجام هر کار.
3. قيدهای جامعيت بهجای اينکه صريحاً بيان شوند در کد برنامه از نظر پنهان ميشوند. اضافهکردن قيدهاي جديد يا تغيير قيدهاي موجود بهسختی صورت ميگيرد.
4. ايجاد ناسازگاري به دليل وجود چندين کپي از فقرههاي داده.
5. مشکلات امنيتی به دليل دسترسي همروند و بدون کنترل توسط چند کاربر
3-4-1-1 سيستم پایگاهداده (database system)
در اين روش كليه دادهها بهصورت مجتمع در پایگاهداده ذخيره میشود، ولي هر كاربر ديد خاص خود را نسبت به دادهها دارد. كاربران مختلف ميتوانند به طور مشترك با پایگاهداده كار كنند. به دليل تجمع داده افزونگي به حداقل ممكن كاهش مييابد.
نرمافزاری به نام سيستم مديريت پايگاهداده (DBMS) بهعنوان واسطه بين برنامههای كاربردي و پایگاهداده ايفاي نقش ميكند لذا امنيت دادهها در اين روش بيشتر است.
چند نمونه از کاربردهای سيستم پایگاهداده موارد زير هستند:
• انجام کليه تراکنشهای بانکداري.
• رزرواسيون و زمانبندی خطوط هوائي.
• ثبتنام دانشجويان، واحدگيری و ثبت نمرات در مراکز آموزشی.
• ثبت اطلاعات مشتريان، محصولات و فاکتورهای خریدوفروش.
• پيگيري سفارشات و پیشنهادها در فروش online.
• ثبت رکوردهاي کارمندان و محاسبات حقوق، کسورات مالياتي در سازمانها.
4-4-1-1 عناصر اصلي سيستم پایگاهداده
اجزاء اصلي سيستم بانك اطلاعاتي عبارتاند از:
1. دادهها
شامل دادههایی درباره موجوديتهاي مختلف محيط و ارتباط بين موجوديتها.
2. سختافزار
شامل عناصر پردازشی، رسانههای ذخيرهسازی داده، دستگاههای جانبي، سختافزارهای ارتباطی و غيره.
3. نرمافزار
شامل سيستمعامل و نرمافزارهای ارتباطي شبکه، نرمافزار سيستم مديريت پایگاهداده و برنامههاي كاربردي.
4. رويههای عملياتی
شامل کليه عملياتی که روی پایگاهداده انجام میشود، نظير تهيه پشتيبان، آمارگيری و …
5. کاربر
شامل كاربران يا كساني كه به نحوي با سيستم در ارتباط هستند نظير مدیر پایگاهداده (DBA)، طراحان پایگاهداده (DBD)، برنامهنویسان پایگاهداده (DBP) و کاربران نهائي (end users).
5-4-1-1 مزايا و معايب سیستمهای پایگاهداده
مزاياي مهم سيستم پایگاهداده
1- تجمع، وحدت ذخيرهسازي و کنترل متمرکز دادهها.
كاهش افزونگي. تجمع داده و وحدت ذخیرهسازی باعث کاهش افزونگی میشود. مثلاً آدرسهای مختلف برای يک مشتری در قسمتهای مختلف اداره ثبت نمیشود.
2- به اشتراك گذاشتن دادهها
چند كاربر ميتوانند همزمان به یک پایگاهداده دسترسي داشته باشند. برنامههاي كاربردي موجود قادر به اشتراك گذاردن دادهها در پایگاهداده بوده و برنامههاي كاربردي جديد نيز ميتوانند از اين دادهها استفاده كنند.
3- پرهيز از ناسازگاري
با كاهش افزونگي، كنترل متمرکز و جامعيت، سازگاري و يكپارچگي دادهها تضمين ميشود.
4- اعمال محدوديتهاي امنيتي
سيستمهاي امنيتي در پايگاهداده امكان اعمال كنترلهاي مختلف را براي هر نوع دسترسي (بازيابي، اصلاح، حذف و غيره) بر روي پایگاهداده فراهم میکند.
5- صحت بيشتر داده و استقلال از برنامههای کاربردی.
6- راحتی پيادهسازی برنامههای کاربردی جديد.
معايب سيستم پایگاهداده
1- طراحی سيستمهای پایگاهداده پيچيدهتر، دشوارتر و زمان برتر است.
2- هزينه قابلتوجه، صرف سختافزار و نصب نرمافزار میشود.
3- آسیبدیدن پايگاهداده، روی کليهی برنامههای کاربردی تأثیر میگذارد.
4- هزينه زياد برای تبديل از سيستم فايلی به سيستم پایگاهداده نياز است.
5- نيازمند تعليم اوليه برنامهنويسان و کاربران و استخدام کارمندان خاص پایگاهداده است.
6- نياز به تهيه چندين کپی پشتيبان از پایگاهداده میباشد.
7- خطاهای برنامه میتوانند فاجعه برانگيز باشند.
8- زمان اجرای هر برنامه طولانیتر میشود.
9- بسیار وابسته به عمليات سيستم مديريت پایگاهداده است.
5-1-1 سيستم مديريت پایگاهداده
شکل 5-1
سيستم مديريت پايگاهداده يا به طور خلاصه (DataBase Management System) DBMS مهمترین نرمافزاري در سيستم پایگاهداده است كه بهعنوان رابط بين پايگاهداده و كاربر و برنامههای کاربردی عمل مينمايد.
كليه فايلهاي پایگاهداده فقط در اختيار اين نرمافزار قرار گرفته و دستيابي به آنها تنها از طريق DBMS امکانپذير است.
DBMS سرويسهایی جهت دسترسي داده در پایگاهداده فراهم ميکند بهنحویکه از کليه خواص داده محافظت شود.
1-5-1-1 وظايف سيستم مديريت پایگاهداده
وظايف DBMS در سيستمهای مختلف تا حدودی متفاوت بوده و بستگي به نوع كاربران آن دارد. اما بهطورکلی اين وظايف عبارتاند از:
1- امکان تعريف پايگاهداده.
2- امکان ايجاد پايگاهداده.
3- امکان دستکاری در دادهها.
4- بازيابي پايگاهداده.
5- بههنگامسازي پايگاهداده (عمليات درج، حذف و جايگزيني).
6- تأمین تسهيلاتي براي کاربر بهمنظور توسعه سيستم.
7- امکان سازماندهي مجدد.
8- کنترل امنيت و جامعيت دادهها.
9- ايجاد ديکشنري دادهها.
10- امکان کنترل کارایی.
2-5-1-1 تراکنش
شکل 6-1
تراکنش (transaction) یک برنامه فعال است که دنبالهای از دستورات را شامل میشود و به طور خاص بعضی عمليات آن روی پایگاهداده است.
سه عمل تراکنشی خاص وجود دارد:
Start که نشان میدهد يک تراکنش در حال شروع شدن است.
Commit که دلالت بر اتمام عادی تراکنش دارد.
Abort که بیانکننده پايان يافتن تراکنش به دليل لغو آن است و کليه اثرات تراکنش لغو شده بايد rollback يا بیاثر شود. وقتی تراکنش commit میشود تأثیرش روی پایگاهداده بايد دائمی شود.
هر تراکنش باید پایگاهداده را از یک حالت سازگار به حالت سازگار بعدی ببرد. تراکنش بايد دارای خواص ACID باشد تا پایگاهداده را در حالت سازگار باقی نگهدارند. خواص ACID حروف اول چهار خاصيت زير است:
1.اتمی بودن (Atomicity)
تراکنشها اتمیک هستند یا اصلاً شروع نمیشوند یا وقتی آغاز شدند حتماً به پایان میرسند. یا تمام عملیات انجام میشود یا هیچکدام.
نگهداشتن خاصیت اتمیک به عهدهی کنترل همروندی و ترمیم است.
2. سازگاری (Consistency)
یک تراکنش يا پایگاهداده را به حالت سازگار جديدی میبرد يا اگر شکستی رخ داد کليه دادهها به حالت قبل از شروع تراکنش برمیگردند.
3. ايزوله بودن (Isolation)
تراکنشی که در حال اجراست و هنوز به پايان نرسيده تأثیرش از بقيه مخفی است مگر اینکه commit شده باشند. اجرای همروند تراکنشها باید بهصورتی باشد که انگار پشتسرهم اجرا شدهاند. حفظ اين خاصيت برعهده کنترل همروندی است.
4. ماندگاری (Durability)
از وقتی تراکنشی commit شد تأثیرش دائمی است؛ حتی اگر سیستم خراب شود، داده در حالت درست خود باقی میماند.
3-5-1-1 اجزای سیستم مدیریت پایگاهداده
وظایف DBMS توسط تعدادی مؤلفه نرمافزاری انجام میشود. هرکدام از این مؤلفهها ممكن است مركب از چند واحد کوچکتر باشند. تعدادی از سرویسهای که توسط مؤلفههای DBMS داده میشوند در زیر لیست شده است:
پردازش تراکنش (Transaction Processing)
پردازش تراکنش، عملیاتی که از منابع مختلف میرسد را روی پایگاهداده اجرا میکند بهنحویکه خواص مطلوب تراکنش خدشهدار نشود. سرویسهای کنترل همروندی و ترمیم به این مؤلفه برای برقراری خواص ACID کمک میکنند. بهاینترتیب اجرای همروند تراکنشها و سازگاری پایگاهداده حتی در صورت وقوع شکستی در سیستم تضمین میشود.
کنترل همروندی (Concurrency Control)
مدیریت اجرای همروند تراکنشها روی پایگاهداده در حین برقراری سازگاری را به عهده دارد.
ترمیم (Recovery)
ترمیم تضمین میکند که اگر اجرای تراکنش با عدم موفقیت یا لغو روبرو شد، تأثیر نامطلوبی بر روی پایگاهداده یا تراکنشهای دیگر نگذارد و حالت پایگاهداده را همیشه سازگار نگه دارد.
مدیریت ثبت (Log Management)
هر اتفاقی در سیستم در یک فایل ذخیره میشود و توسط مدیریت ترمیم برای حفظ صحت و اعتبار پایگاهداده هنگام خرابی يا لغو سيستم استفاده میشود.
واسطه زبانی (Language Interface)
دستوراتی را برای تعریف داده، کارکردن با آن اختیار کاربران و برنامههای کاربردی قرار میدهد.
تحملپذیری خطا (Fault Tolerancy)
توانایی ارائه سرویسهای قابلاطمینان توسط DBMS حتی در صورت بروز نقص را تحملپذیری خطا میگویند. انواع خطاهایی که ممکن است پیش بیاید عبارتاند از:
• خطای منطقی: تراکنش موفق نمیشود مثلاً به دلیل ورودی بد، سرریزی.
• خطای سیستمی: تراکنش موفق نمیشود مثلاً به دلیل بنبست.
• لغو سیستم: قطع برق، پاک شدن حافظه اصلی، پرشدن دیسک.
• ناتوانی دیسک: خرابی هد، خرابکاری عمدی، آتشسوزی.
کاتالوگ داده (Data Catalog)
یک دیکشنری داده یک پایگاهداده سیستمی شامل اطلاعاتی درباره داده، ارتباطات و قیدها در پایگاه اصلی است. گاهی به آن متا داده هم گفته میشود.
امنیت (Security)
امنیت به محافظت داده در مقابل افشا شدن، تغییر و خرابی اشاره دارد. هر کاربر و برنامه کاربردی امتیاز ویژهای برای دسترسی به داده دارند. کاربران ممکن است دیدگاههای مختلفی نسبت به دادههای پایگاهداده با توجه امتیازات ویژه خود داشته باشند. سیستم امنیتی همچنین، توسط رویههای شناسایی و مجوز، دسترسی به پایگاهداده را محدود میکند.
مدیریت ذخیرهسازی (Storage Management)
DBMS مکانیسمهای خاصی برای ذخیره دائمی داده و دسترسی به منبع فیزیکی و بازیابی داده دارد. مدیر ذخیرهسازی بین داده ذخیره شده در پایگاهداده و برنامه کاربردی و پرسوجوهای ارسال شده به سیستم واسطه میشود.
مدیریت قفل (Lock Management)
هنگام استفاده اشتراکی از داده انواع مختلفی از قفل روی داده گذاشته میشود (مثل Read Lock و Write Lock).
مدیریت بنبست (Deadlock Management)
بنبست وقتی اتفاق میافتد که تراکنشها برای بهدستآوردن منابع در یک دایره بسته قرار گیرند یعنی هر یک منبعی در اختیار دارد که مورد تقاضای دیگری است و درخواست منبعی را میکند که در اختیار تراکنش منتظر منبع است. در پایگاهداده منابع رکوردها هستند. مديريت منبع مسئول رفع اين مشکل هستند.
6-1-1 انواع سیستمهای مدیریت پایگاهداده
انواع مختلفی از سيستمهای پایگاهداده وجود دارند که هرکدام بهمنظور خاصی طراحی و پيادهسازی شدهاند. دستهبندی سيستمهای پايگاهداده بهصورت زير انجامگرفته است:
1-6-1-1 سیستم مدیریت پایگاهداده توزیع شده
سیستمهای توزيع شده (Distributed DataBase Management System) بر توزيع داده و همچنين همبستگی فعالیتها و کنترل روی اجزای توزيع شده سيستم دلالت دارند. اکثر سیستمهای توزيع شده برای تقسيم کردن بار کاری يا برای انتقال عملکردهای پردازش داده به نزديکی محل انجام اين وظايف است. در هر دو حالت هدف نامحسوس بودن توزیعشدگی از ديد کاربر است.
2-6-1-1 سیستم مدیریت پایگاهداده بلادرنگ
سیستمهای بلادرنگ (Real-Time DataBase Management System) سیستمهای سریع با سرعت پاسخگویی بالا هستند که زمان انجام کليه عمليات نقش مهمی در آنها دارد. سيستم بلادرنگ در تعامل با دنيای واقعی پاسخ قابل پيشبينی را در قاب زمان میدهد. ورودی، پردازش و پاسخها همگی از قبل تعريف شده هستند و حد زمانی مشخصی دارند و به نحوی بهينه میشوند که هر حالت ورودی يک حالت خروجی قابلپیشبینی دارد که هميشه در یکزمان و به يک روش اتفاق میافتد.
3-6-1-1 سیستم مدیریت پایگاهداده تحملپذیر خطا
سيستم تحملپذير خطا (Fault Tolerance DataBase Management System) سرويسهایی را دارد که با ناتوانیهای اجزای سختافزاری و نرمافزاری برخورد میکند. برای رسيدن به اين منظور بايد کليه نقاطی که احتمال نقصی در آنها وجود دارد از قبل بررسی شده، ابزارهایی برای تشخيص، اصلاح و يا ترميم آنها به نحوی طراحی شود که کمترين تأثیر را روی برنامههای کاربردی بگذارند. مکانیسمهای RAID، Shadow Memory و کپی از جمله روشهایی هستند که استفاده میشوند.
4-6-1-1 سیستم مدیریت پایگاهداده امن
در يک سيستم پایگاهداده مطمئن (Secure DataBase Management System) کليه اعمالی که کاربران و برنامههای کاربردی اجازه دارند انجام دهند همچنين زمان و مقدار انجام آنها کنترل میشوند. بهعنوان مثال يک سيستم پرسنلی ممکن است درنظرداشته باشد به کليه کاربران اجازه دستيابی به سابقه پرسنلی خودشان و استخراج اطلاعات شغلیشان را بدهد اما دسترسی به سابقه کارمندان ديگر يا حتی برخی اطلاعات مربوط به خودشان امکانپذير نباشد. برای دادن چنين سرويسی سيستم پایگاهداده بايد قابليـت تعريف حقوق دسترسی و رسيدگی به آنها را درقبال کاربرانی که به داده دسترسی دارند داشته باشد.
5-6-1-1 سیستم مدیریت پایگاهداده ناهمگون
سيستم ناهمگون (Hetrogenouse DataBase Management System) از DBMSهای مختلف تشکيل شده است. برای مثال شعب يک شرکت هرکدام منحصراً نيازهای پردازشی خود را با سختافزار و نرمافزار جداگانه برطرف میکنند. اگر نياز باشد اين سيستمها با هم فعلوانفعال داشته باشند و از طريق شبکه به همپیوند داده شوند يک HTDBMS ايجاد میشود تا پایگاهدادههای مختلف با هم ارتباط برقرار کند.
6-6-1-1 سیستم مدیریت پایگاهداده چندرسانهای
سيستمهای محاسباتی چندرسانهای (Multimedia DataBase Management System) انواع متنوعی از منابع دادهای گرافيکی، تصاوير ويدئويی، صوت و متن را استفاده و يا با هم ترکيب میکنند. اين منابع دادهای پيچيده بايد برای سيستم محاسباتی بهسهولت قابلدسترس باشند. برای استفاده در برنامههای کاربردی interactive چنين سیستمهایی از ترکيب الزامات پایگاهدادههای بلادرنگ با سیستمهای گرافيکی تعاملی استفاده میکنند تا ارائه اطلاعات سنکرون شده و بلادرنگ حاصل شود.
7-6-1-1 سیستم مدیریت پایگاهداده متحد
Federated DataBase Management System، نسل جديد سيستمهای مديريت پایگاهداده سعی دارند اطلاعات جمعآوریشده از سنسورها را مستقیماً ذخيره کنند. اين سیستمها از پایگاههای دانش نیز حمايت میکنند.
7-1-1 کاربران پایگاهداده
کاربران يک سيستم پایگاهداده توسط روشهایی که با سيستم تعامل میکنند از هم تفکيک میشوند.
1-7-1-1 تحلیل گران سیستم
تحليل گران سيستم (system analysts) با گروه کاربران پایگاهداده بهمنظور درک نیازهای اطلاعاتی و پردازشی آنها ارتباط دارند. نیازهای اطلاعاتی و پردازشی هر گروه را مجتمع میکنند و مستندسازی میکنند.
2-7-1-1 طراحان پایگاهداده
طراحان پایگاهداده (database designers) ساختار مناسبی را برای نمایش اطلاعات مشخص شده توسط تحلیلگر سیستم به طریق نرمالسازی شده بهمنظور تضمین جامعیت و سازگاری داده انتخاب میکنند و با استفاده از DDL دادههای پایگاهداده را تعريف میکنند.
1-1-7-3 پیاده سازان برنامههای کاربردی
برنامهنويسان برنامههای کاربردی (Application Developers) برای برآوردن نيازهای کاربران و کار با پایگاهداده برنامههایی را آماده میکنند. تست، اشکالزدایی و مستندسازی برنامه و پایگاهداده از وظايف برنامهنویسان است. برنامهنویسان با سيستم توسط احکام DML ارتباط برقرار میکنند.
1-1-7-4 مدیر پایگاهداده
مدير پایگاهداده (database administrator) يا به طور خلاصه DBA فردی است که مسئول کنترل عمليات کل سيستم پایگاهداده است. DBA کلیه فعالیتهای سیستم پایگاهداده را هماهنگ میکنند. اين فرد بايد درک خوبی از منابع و نیازهای اطلاعاتی کل سازمان داشته باشد و برای حصول اطمينان از اينکه داده موردنياز قابلدسترس کاربران قرار میگیرد با آنها در ارتباط باشد.
بعضی از وظایف DBA شامل:
• تعريف شِماها توسط DDL
• تعريف ساختار ذخيرهسازی و متدهای دسترسی توسط DDL
• اصلاح شِما و سازماندهی فيزيکی
• اعطای مجوز دسترسی پایگاهداده به کاربران
• تعيين قيدهای جامعيت
• عامل ارتباطی کاربران
• نظارت اجرا و واکنش برای تغییر درصورت نیاز
• برقراری ديکشنری داده
1-1-7-5 کاربران نهائی
کاربران نهائی (End Users) شامل:
• کاربران پارامتری: که توسط برنامههای کاربردی نوشته شده با سيستم سروکار دارند. مانند تحويلدار بانک و کارکنان دفتری.
• کاربران ماهر: که نیازهای پیچیدهتری دارند و باقابلیتهای DBMS آشنائی کامل دارند. درخواستهای خود از پایگاهداده را توسط یک زبان پرسوجو میسازند.
• کاربران نهایی اتفاقی: کسانی که دسترسی گاهوبیگاه به پایگاهداده دارند اما ممکن است هر بار نیازهای متفاوتی داشته باشند. از زبانهای پرسوجوی و مرورگرهای حرفهایتر استفاده میکنند.
1-1-8 ديکشنری داده
دیكشنری دادهها (Data Catalog) یكی از امكاناتی است كه در سيستم پایگاهداده در اختيار DBA قرار میگیرد. دیكشنری دادهها كه به آن راهنمای سیستم نیز میگویند يک متا داده است يعنی اطلاعاتی درباره خود پایگاهداده و دادههای ذخیره شده در آن را نگهداری میکند.
دیکشنری داده تعيين میکند چه دادهای موجود است و چه معنی دارد، داده چگونه ذخیره میشود و در کجا قرار دارد، مالک آن چه کسی است و چه کسانی اجازه دسترسی به داده را دارند، تاریخچه و آمار استفاده از داده را در بردارد.
1-1-9 پایگاهداده XML
يک پایگاهداده XML سيستم نرمافزاری است که اجازه میدهد داده در فرمت XML وارد، پردازش و ارسال شود.
دودسته اصلی پایگاهداده XML وجود دارد:
XML-enabled – پایگاه دادهای که مستند XML را بهعنوان ورودی گرفته به يک پایگاهداده ديگر نظير رابطهای تبديل میکند و پس از انجام عمليات آنها را مجددا به XML بر می گردند.
Native XML (NXD) – مدل داخلی چنين پایگاهداده ای بر پايه XML است و مستندات XML را بهعنوان منبع ذخیرهسازی مستقیماً استفاده میکند.
دليل استفاده XML در پایگاهداده شفافيت داده است. داده از پایگاهداده استخراج میشود و در مستندات XML قرار میگیرد و برعکس. به اين صورت هزينه ذخيره داده در فرمت XML هم کمتر میشود.