مدیریت پایگاه داده

تاريخچه
پايگاه داده‌ها در اولين روزهاي پيدايش محاسبات الكترونيك به كار گرفته شدند. اما اكثر آنها برنامه‌هاي سفارشي‌اي بودند كه براي دستيبابي به پايگاه داده‌هاي سفارشي نوشته مي‌شدند . اين سيستم‌ها بر خلاف سيستم‌هاي مدرني كه مي‌توانند در پايگاه داده‌هاي مختلف به كار گرفته شوند، ارتباط تنگاتنگي با پايگاه داده‌ها دارند. انواع پايگاه داده‌ها عبارتند از:
تعريف پايگاه داده
سيستم بانک اطلاعاتي يک سيستم ک مپيوتري نگهداري رکوردهاست در وا قع آن را مي توان بعنوان يک قضيه الکترونيکي براي نگهداري دادها رکوردها در نظرگرفت.
تعريف ديگري از پايگاه داده:مجموعهاي از دادهاي پايدار که توسط سيستم هاي کاربردي موجود در موسسات مورد استفاده قرار مي گيرد.

انواع پايگاه داده
۱-پايگاه داده پيمايشي
۲-پايگاه داده رابطه اي
۳-پايگاه داده چند بعدي(سلسله مراتبي)
۴-پايگاه داده شي گرائي
۵- پايگاه داده شبکه هاي

پايگاه داده‌هاي پيمايشي
رشد كاربري كامپيوتر، پيدايش سيستم‌هاي پايگاه داده‌هاي همه منظوره را موجب گرديد. و در اواسط ۱۹۶۰ چنين سيستم‌هايي در بخش تجاري به كار گرفته شد. چارلز بچ من، نويسنده يكي از چنين محصولاتي با نام IDS، گروه Database Task Group را بنيان نهاد كه اين گروه مسوول ايجاد و استاندارد سازي COBOL شد. آنها در سال ۱۹۷۱ استاندارد خود را عرضه نمودند. اين استاندارد Codasyle approach نام داشت. اين شيوه مبتني بر پيمايش دستي مجموعه داده‌ها بود. هنگامي كه پايگاه داده‌ها براي اولين بار برنامه را باز مي‌كرد، به اولين ركورد در پايگاه داده‌ها و به همين ترتيب نيز به ساير بخش‌هاي داده نيز اشاره مي‌شد. برنامه نويس براي دسترسي به يك ركورد خاص مجبور بود تا اين اشاره‌گرها رابه ترتيب دنبال كند تا به ركورد موردنظر برسد. در query هاي ساده مانند ” يافتن تمام افرادي كه در سوئد زندگي مي‌كنند ” بايد براي جستجو در كل مجموعه داده‌ها برنامه نويسي مي‌شد و دستوري به نام find وجود نداشت. شركت IBM سيستم مديريت پايگاه داده‌هايي به نام IMS داشت. اين سيستم از نظر مفهوم مشابه codasyle بود، اما برخلاف آن كه از مدل شبكه‌اي استفاده مي‌نمود، IMS مدل سلسله مراتبي را به كار مي‌برد.

پايگاه داده‌هاي رابطه‌اي
ادگار كاد كه در شركت آي‌بي‌ام كار مي‌كرد در سال ۱۹۷۰ مقالاتي در زمينه شيوه جديدي براي ساخت پايگاه داده‌ها نوشت. يكي از مقالات وي كه Relational Model of Data for Shared Data Bank نام داشت، به بررسي سيستم جديدي براي ذخيره سازي و كار با پايگاه داده‌هاي بزرگ پرداخته بود. در اين شيوه به جاي اينكه ركورد به صورت ركوردهاي free-form همانگونه كه در روش codasyle آمده بود، ذخيره شوند، از جدولي با ركوردهايي با طول ثابت استفاده مي‌شد.
چنين سيستمي براي ذخيره سازي پايگاه داده‌هاي پراكنده و در جاييكه بعضي از داده‌هاي ركورد خالي هستند، كارآيي ندارد. مدل رابطه‌اي اين مشكل را حل كرده است. بدين صورت كه داده‌ها به يكسري جدول تقسيم مي‌شوند و عناصر اختياري از جدول اصلي خارج مي‌گردند و در صورت نياز در جدول قرار مي‌گيرند. چنين سيستمي براي رديابي اطلاعات كاربران، اسامي و نشاني آنان و غيره به كار مي‌رود. داده‌ها در روش پيمايشي در يك ركورد جاي مي‌گيرند و آيتم‌هايي كه مورد استفاده قرار نگيرند، در پايگاه داده‌ها نيز نخواهند بود. داده‌ها در شيوه رابطه‌اي در جداول جداگانه‌اي، مثلا جدول اسامي، جدول نشاني‌ها و غيره جاي مي‌گيرند. برقراري ارتباط بين اطلاعات نكته مهم در اين سيستم است. درمدل رابطه‌اي بعضي از بيت‌هاي اطلاعات به عنوان كليد معرفي مي‌شوند و منحصرا بيانگر ركورد خاصي هستند. هنگامي كه اطلاعات كاربر جمع آوري مي‌شود، مي‌توان اين اطلاعات را كه در جداول اختياري ذخيره مي‌شوند، با جستجوي كليد مربوطه يافت.

پايگاه داده‌هاي چند بعدي
پايگاه داده‌هاي رابطه‌اي توانست به سرعت بازار را تسخير كند، هرچند كارهايي نيز وجود داشت كه اين پايگاه داده‌ها نمي‌توانست به خوبي انجام دهد. به ويژه به كارگيري كليدها در چند ركورد مرتبط به هم و در چند پايگاه داده مشترك، كندي سيستم را موجب مي‌شد. براي نمونه براي يافتن نشاني كاربري با نام ديويد، سيستم رابطه‌اي بايد نام وي را در جدول كاربر جستجو كند و كليد اصلي (primary key ) را بيابد و سپس در جدول نشاني‌ها، دنبال آن كليد بگردد. اگر چه اين وضعيت
از نظر كاربر، فقط يك عمليات محسوب، اما به جستجو درجداول نيازمند است كه اين كار پيچيده و زمان بر خواهد بود. راه كار اين مشكل اين است كه پايگاه داده‌ها اطلاعات صريح درباره ارتباط بين داده‌ها را ذخيره نمايد. مي‌توان به جاي يافتن نشاني ديويد با جستجو ي كليد در جدول نشاني، اشاره‌گر به داده‌ها را ذخيره نمود. در واقع، اگر ركورد اصلي، مالك داده باشد، در همان مكان فيزيكي ذخيره خواهد شد و از سوي ديگر سرعت دسترسي افزايش خواهد يافت.
چنين سيستمي را پايگاه داده‌هاي چند بعدي مي‌نامند. اين سيستم در هنگامي كه از مجموعه داده‌هاي بزرگ استفاده مي‌شود، بسيار سودمند خواهد بود. از آنجاييكه اين سيستم براي مجموعه داده‌هاي بزرگ به كار مي‌رود، هيچگاه در بازار به طور مستقيم عموميت نخواهد يافت.

پايگاه داده‌هاي شيء
اگر چه سيستم‌هاي چند بعدي نتوانستند بازار را تسخير نمايند، اما به توسعه سيستم‌هاي شيء منجر شدند. اين سيستم‌ها كه مبتني بر ساختار و مفاهيم سيستم‌هاي چند بعدي هستند، به كاربر امكان مي‌دهند تا اشياء را به طور مستقيم در پايگاه داده‌ها ذخيره نمايد. بدين ترتيب ساختار برنامه نويسي شيء گرا (object oriented ) را مي‌توان به طور مستقيم و بدون تبديل نمودن به ساير فرمت‌ها، در پايگاه داده‌ها مورد استفاده قرار داد. اين وضعيت به دليل مفاهيم مالكيت (ownership) در سيستم چند بعدي، رخ مي‌دهد. در برنامه شيء گرا (OO)، يك شيء خاص “مالك ” ساير اشياء در حافظه است، مثلا ديويد مالك نشاني خود مي‌باشد. در صورتي كه مفهوم مالكيت در پايگاه داده‌هاي رابطه‌اي وجود ندارد.

ويژگي‌هاي سيستم مديريت پايگاه داده‌ها
پس از اين مقدمه به توصيف سيستم مديريت پايگاه داده‌ها مي‌پردازيم. سيستم مديريت پايگاه داده‌ها، مجموعه‌اي پيچيده از برنامه‌هاي نرم‌افزاري است كه ذخيره سازي و بازيابي داده‌هاي (فيلدها، ركوردها و فايل‌ها) سازمان را در پايگاه داده‌ها، كنترل مي‌كند. اين سيستم، كنترل امنيت و صحت پايگاه داده‌ها را نيز بر عهده دارد. سيستم مديريت پايگاه داده‌ها، درخواست‌هاي داده را از برنامه مي‌پذيرد و به سيستم عامل دستور مي‌دهد تا داده‌ها ي مناسب را انتقال دهد. هنگامي كه چنين سيستمي مورد استفاده قرار مي‌گيرد، اگر نيازمنديهاي اطلاعاتي سازماني تغيير يابد، سيستم‌هاي اطلاعاتي نيز آسانتر تغيير خواهند يافت. سيستم مذكور از صحت پايگاه داده‌ها پشتيباني مي‌كند. بدين ترتيب كه اجازه نمي‌دهد بيش از يك كاربر در هر لحظه، يك ركورد را به روز رساني كند. اين سيستم ركوردهاي تكراري را در خارج پايگاه داده‌ها نگاه مي‌دارد. براي مثال، هيچ دو مشترك با يك شماره مشتري، نمي‌توانند در پايگاه داده‌ها وارد شوند. اين سيستم روشي براي ورود و به روز رساني تعاملي پايگاه داده‌ها فراهم مي‌آورد. يك سيستم اطلاعات كسب و كار از موضوعاتي نظير (مشتريان، كارمندان، فروشندگان و غيره) و فعاليت‌هايي چون (سفارشات، پرداخت‌ها، خريدها و غيره) تشكيل شده است. طراحي پايگاه داده‌ها، فرايند تصميم گيري درباره نحوه سازماندهي اين داده‌ها در انواع ركوردها و برقراري ارتباط بين ركوردهاست.سيستم مديريت پايگاه داده‌ها مي‌تواند ساختار داده‌ها و ارتباط آنها را در سازمان به طور اثر بخش نشان دهد. سه نوع مدل متداول سازماني عبارتند از: سلسله مراتبي، شبكه‌اي و رابطه‌اي. يك سيستم مديريت پايگاه داده‌ها ممكن است يك، دو يا هر سه روش را فراهم آورد.
سرورهاي پايگاه داده‌ها، كامپيوترهايي هستند كه پايگاه داده‌هاي واقعي را نگاه مي‌دارند و فقط سيستم مديريت پايگاه داده‌ها و نرم‌افزار مربوطه را اجرا مي‌كنند. معمولا اين سرورها كامپيوترهاي چند پردازنده‌اي با آرايه‌هاي ديسك RAID براي ذخيره سازي مي‌باشند.

فهرست سيستم‌هاي متداول مديريت پايگاه داده‌ها
Closed source :
• IBM (DB2)
• FileMaker, Inc (FileMaker Pro)
• IBM (IMS)
• Informix
• Computer Associates (Ingres)
• Borland (InterBase)
• Micosoft (Microsoft SQL Server)
• Microsoft (Microsoft Access)
• Mimer AB (Mimer SQL)
• Oracle
• Sybase
• NCR Corporation (Teradata)
Open Source :
• Sleepycat software (Berkeley DB )
• IBPhoenix (Firebird)
• My SQL AB (My SQL)
• PostgreSQL
• MaxDB
• SQLite

– Data warehousing

انبار داده‌ها
تكنولوژي انبار داده‌ها شامل مجموعه‌اي مفاهيم و ابزارهاي جديدي است كه با فراهم آوردن اطلاعات از دانشگران (افراد اجرايي، مدير و تحليلگر) در تصميم گيري پشتيباني مي‌نمايد. دليل اصلي ساخت انبار داده ها، بهبود كيفيت اطلاعات در سازمان است، در واقع دسترسي به داده‌ها از هر جا درون سازمان داده‌ها از منابع داخلي و خارجي تهيه مي‌شوند و به اشكال گوناگون از داده‌هاي ساختاري گرفته تا داده‌هاي ساخت نيافته مانند فايل‌هاي متني يا چند رسانه‌اي، در مخزني مجتمع مي‌شوند. انبار داده‌ها يا DWH مخزني از اين داده‌هاست كه به صورتي قابل درك در دسترس كاربران نهايي كسب و كار قرار مي‌گيرد.
از اواسط سالهاي ۱۹۸۰ نياز به انبار داده‌ها به وجود آمد و دريافتند كه سيستم هاي اطلاعاتي بايد به صورت سيستم‌هاي عملياتي و اطلاعاتي مشخص شوند. سيستم‌هاي عملياتي از فعاليت‌هاي روزانه كسب و كار پشتيباني مي‌نمايند و براي پاسخگويي سريع به ارتباطات از پيش تعريف شده مناسب هستند. داده‌هاي عملياتي ارائه بي‌درنگ و فعلي وضعيت كسب و كار مي‌باشند. اما سيستم‌هاي اطلاعاتي براي مديريت و كنترل كسب وكار به كار مي‌روند. اين سيستم‌ها از تجزيه و تحليل داده‌ها براي اتخاذ تصميم درباره عملكرد آني و آتي سازمان پشتيباني مي‌كنند و براي در خواست‌هاي موردي، پيچيده و به طور عمده فقط خواندني طراحي شده‌اند.داده‌هاي اطلاعاتي تاريخي هستند، به عبارتي بيانگر ديدگاه ثابتي از كسب وكار در يك دوره زماني مي‌باشند.

ويژگيهاي اصلي داده‌هاي انبار داده‌ها
داده‌هاي موجود در انبار داده‌ها از سيستم‌هاي عملياتي متنوع (نظير سيستم‌هاي پايگاه داده‌ها) و منابع داده‌اي خارجي (نظير پايگاه داده‌هاي آماري و WWW )يكپارچه مي‌شوند. تفاوتهاي ساختاري ومعنايي داده‌ها بايد پيش از يكپارچه سازي انسجام يابند. براي مثال داده‌ها بايد مطابق با مدل داده‌اي يكپارچه “همگن” شوند. بعلاوه، مقادير داده‌اي سيستم‌هاي عملياتي بايد پاك شوند تا داده‌هاي صحيحي در انبار داده‌ها وارد شوند. نياز به داده‌هاي تاريخي يكي از موارد مهم درشيوه انبار داده‌هاست. داده‌هاي تاريخي براي تحليل روند كسب وكارضروري هستند. البته هزينه نگهداري اين گونه داده‌ها نيز بايد مورد توجه قرار گيرد. بعلاوه، داده‌هاي انبار داده‌ها ثابت هستند، براي مثال دسترسي به DWH از نوع خواندني است. انجام اصلاحات در اين داده‌ها فقط هنگامي صورت مي‌گيرد كه اصلاحات داده‌هاي منبع در انبار انتشار يابند. DWH داده‌هاي ديگري به نام داده‌هاي اشتقاق يافته (derived data) دارد. اين داده‌ها به طور صريح در منابع عملياتي ذخيره نمي‌شوند، بلكه در حين بعضي از فرايندها از داده‌هاي عملياتي، اشتقاق مي‌يابند. براي مثال داده‌هاي فروش را مي‌توان در سطوح مختلف (هفتگي، ماهانه، فصلي) در انبار ذخيره نمود.