پروژه BI – آموزش کامل مفاهیم هوش تجاری از ابتدا تا انتها

پروژه انبار داده

 مقدمه هوش تجاری

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

به منظور مشاوره رایگان در خصوص مباحث مربوط به هوش تجاری، و رزور دوره های خصوصی با قیمت ارزانتر از دوره های عمومی شرکت ها با آی دی تلگرام research_moghimi@ ارتباط برقرار کنید. یا با شماره تلفن ۰۹۳۶۷۹۳۸۰۱۸ تماس حاصل فرمایید. همچنین لیسن قیمت برخی از دوره ها در اینجا وجود دارد.

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

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

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

يك انبار داده Data Warehouse ، مخزن اصلي داده هاي تاريخي يك سازمان يا حافظه‌ي مشترك و گروهي ( Corporate memory ) آن است.اين انبار شامل مواد خام براي سيستم حمايت تصميم گيري مديريتي يا DSS(decision support systems) مي باشد.فاكتور اصلي اي كه منجر به استفاده از يك انبار داده (Data Warehouse) مي شود اين است كه يك تحليل گر ميتواند آناليزها و جستجو هاي پيچيده اي مثل استخراج داده (Data Mining) را روي اطلاعات انجام دهد بدون اينكه سيستم هاي اجرائي (Operational System)‌كند شوند.

هدفاز ارائهاين مقاله آشنايي خواننده با مفاهيم انباره هاي دادهData wareHouseو فن آوري هاي مرتبط مي باشد. انباره هاي داده پايه گذار فن آوري لازم براي ساخت وبهره برداري از برنامه هاي هوشمندي هستند كه بعضا در برخي فيلم هاي تخيلي با آنهاآشنا شده ايم. برنامه هايي كه اطلاعات را براي صاحبان خود جمع آوري نموده و پس ازتجزيه و تحليل با آنها به مشاوره مي پردازند.

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

 

انبار داده  Data Warehouse

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

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

از آنجائیکه انجام عملیات آماری و گزارشات پیچیده دارای بارکاری بسیار سنگینی برای سرورهای پایگاه داده می باشند، وجود انبار داده سبب می گردد که اینگونه عملیات تاثیری بر فعالیت برنامه های کاربردی سازمان(OLTP)نداشته باشد.

همانگونه که پایگاه داده سیستمهای عملیاتی سازمان(برنامه های کاربردی)به گونه ای طراحی می شوند که انجام تغییر و حذف و اضافه داده به سرعت صورت پذیرد، در مقابل انبار داده ها دارای معماری ویژه ای می باشند که موجب تسریع انجام عملیات آماری و گزارش گیری می شود(OLAP).

Billinmon ، از اولين كاربرهاي اين مبحث ، يك انبار داده (DataWarehouse)را با واژه هاي زير تعريف كرده است:

Subject Oriented( مرتبط با موضوع):

داده ها در يك انبار داده (DataWarehouse) به نحوي سازمان دهي مي شوند كه تمام اجزاي داده كه با همان واقعه يا موضوع مرتبط هستند،به هم متصل باشند.

Time Variant( متغير با زمان ):

تغييرات داده ها در يك انبار داده (DataWarehouse) ، رديابي و ثبت مي شوند تا امكان تهيه ي گزارش هايي كه تغييرات را در طول زمان نشان مي دهند ، فراهم شود.

Non Volatile (غير فرار ) :

داده هاي موجود در انبار داده (DataWarehouse) ، هيچگاه دوباره نويسي يا پاك نمي شوند ، داده ثابت و بدون تغيير است و براي گزارش هاي آينده حفظ مي شود.

Integrated( منسجم ) :

انبار داده ها (DataWarehouse) حاوي داده هايي از همه يا اكثريت فعاليت هاي اجزاي سازمان مي باشد و اين داده ها پايدار است.

بعنوان مثال : يك انبار داده ممكن است براي يافتن روزي از هفته كه در ان يك شركت حداكثر فروش را در يك ماه مي ۱۹۹۲ كرده است .

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

اغلب ، داده هاي موجود در انبار داده ها به شدت دنوماليزه (غير نرماليزه ) هستند و يا خلاصه شده اند و يا بر اساس يك مدل مبتني بر بعد ذخيره شده اند.با اين وجود ، اين هميشه منجر به دستيابي به زمان هاي پاسخ دهي و جستجوي قابل قبول نمي شود.

 

تاریخچه و دلایل استفاده از انبار داده

از اواخر سال ۱۹۸۰میلادی،  انبـار های داده به عنـوان نـوع متـمـایزی از پایـگاه هـای داده مـورد استـفاده اغلـب سـازمـانـها وشرکت های متوسط و بزرگ واقع شدند. انبار های داده جهت رفع نیاز رو به رشد مدیریت داده ها و اطلاعات سازمانی که توسط پایگاه های دادهسیستم های عملیاتی غیر ممکن بود، ساخته شدند. انبار داده ها  در اواخر دهه ي ۸۰ و اوايل دهه ي ۹۰ به نوع خاصي از (Computer Databases) مبدل شد . اين انبار ها به منظور برآورده كردن تقاضاي روز افزون براي كنترل اطلاعات و آناليز ايجاد شدند كه توسط سيستم هاي اجرايي قابل برآورده سازي نبود.

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

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

در نتيجه بانك داده هاي كامپيوتري (ComputerDatabases) مجزايي شروع به ساختن كردند كه به طور خاص براي تامين كنترل اطلاعات و اهداف اناليزي طراحي شده بودند. اين انبار داده ها قادر بودند كه داده ها را از منابع مختلفي مثل پردازنده هاي مركزي(MainframeComputers) كامپيوترهاي كوچك (MiniComputer) و همچنين كامپيوترهاي شخصي (PC) و نرم افزار هاي اتوماتيك اداري مثل برگه گسترده (SpreadSheet) گرد هم آورند و اين داده ها را در يك محل واحد جمع كنند.

اين توانايي به همراه ابزارهاي گزارش دهي با شيوه استفاده ي اسان (UserFriendly) و جدا بودن از اثرات اجرايي ، منجر به رشد و توسعه ي اين نوع از سيستم هاي كامپيوتري شد.

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

۱-Off line Operation Databases

در اين مرحله اوليه ، انبار داده به سادگي با  كپي كردن بانك داده  از يك سيستم اجرايي به  يك (Off line Server) كه در انجا بار فرايند گزارش ، روي اجرا و عملكرد سيستم اجرايي اثر نمي‌گذاشت،ايجاد مي شدند.

۲-Off Line Warehouse

در اين مرحله از تكامل،انبار داده ها طي يك دوره ي زماني منظم(معمولا روزانه ، هفتگي يا ماهيانه) از روي سيستم هاي اجرايي ، به روزسازي مي شدند و داده،با يك ساختار منسجم و مناسب جهت گزارش دهي ذخيره مي شدند.

۳-Real Time Data Warehouse

در اين مرحله،انبار داده بر اساس يك تبادل (Transection) و يا رويداد (EventBase) به روزسازي مي شوند ، يعني هر زماني كه يك سيستم اجرايي ، يك تبادل انجام مي دهد(مثل يك سفارش يا يك تحويل يا يك ثبت اطلاعات بيماري و ….).

۴-Integrated Data Warehouse

در اين مرحله،انبار داده براي ايجاد تبادلات يا فعاليت هايي به كار مي روند كه براي استفاده در فعاليت هاي روزانه ي سازمان،به سيستم هاي اجرايي باز گردانده مي شوند.

 

 ARCHITECTURE( معماري يا ساختار ):

مفهوم انبار داده (DataWarehouse) حداقل به اواسط دهه ۸۰ و حتي قبل از ان بر ميگردد.اصولا اين انبار ها به منظور تامين يك مدل ساختاري (Architectural Model) براي جريان داده ها از سيستم هاي اجرايي به شرايط پشتيباني از تصميم ها(Decision Support) ساخته شده بودند و تلاش مي شد كه مشكلات مختلفي را كه در رابطه با اين جريان داده(data) بود و نيز هزينه هاي سنگين مرتبط با ان را ، مخاطب قرار دهد.

در شرایط عدم وجود چنین ساختاری، اغلب مقدار زیادی داده های زاید در تحویلِ اطلاعات مدیریتی وجود داشت.

در شرکت های بزرگتر ، رسم بر آن بود که برای پروژه هایی با  پشتیبان  تصمیم  گیری  متعدد  (Multiple Decision Support Projects)انبار داده ها(DataWarehouses) بصورت مستقل عمل کنند و هریک به کاربران متفاوتی ارائه خدمات کند اما اغلب مقدار زیادی از داده هایی مورد نیاز، مشابه بود.

فرایند جمع آوری، پاک سازی و منسجم کردن داده ها از منابع مختلف(اغلب سیستم های بازمانده(Legacy Systems)، برای هر پروژه تکرار می شد. علاوه براین، هنگامی که یک تقاضای جدید مطرح می شد، سیستم های بازمانده(Legacy Systems)به وفور مجدداً بازبینی می شدند که هریک نیاز به یک نمای متفاوت از داده های بازمانده داشتند.

بر اساس شباهت های موجود با انبارهای واقعی در زندگی معمول،انبار داده(Data Warehouse)به عنوان نواحی جمع آوری/ذخیره سازی و مرحله بندی درمقیاس وسیع برای ثبت داده ها شناخته می شود.

از اینجا می توان داده ها را در انبارهای کوچکتر(Retail Stores)یا بازارهای داده (Data Mart)پخش کرد که برای دسترسی توسط کاربران پشتیبانی تصمیم گیری (یا مصرف کنندگان)فراهم و مناسب شده اند.

زمانی که انبار داده(Data Warehouse) به منظور کنترل حجم دادهها از ارائه کنندگان آنها (مثلاً سیستم های اجرایی) و کمک به سازماندهی و ذخیره سازی این داده ها طراحی شدند، «بازارهای داده» یا «انبارهای کوچک» روی بسته بندی(Packaging)و ارائه داده ها به کاربران نهایی(End users)متمرکز شده اند تا احتیاجات خاص اطلاعات مدیریتی را برآورده سازند.

جایی در طول سیر ساختاری(Data Warehousing)، این دیدِ مقایسه ای و(Architectural Vision) از بین رفته است . چون برخی فروشندگان و سخن گویان صنعت، انبار داده را بعنوان یکdatabaseگزارشی ساده مدیریتی تعریف کرده اند. که البته این مسئله یک انحراف معیار مبهم اما بسیار مهم از نسخه‌ی اصلی انبار داده ها بعنوان مرکز ساختاری اطلاعات مدیریتی است که در آن سیستم های پشتیبانی تصمیم(DSS)حقیقتاً «بازارهای داده» و یا «انبارهای کوچکتر» هستند.

 

OLTP & OLAP

در اینجا لازم است قبل ادامه و شروع مبحث ذخیره(Storage) درمورد این دو اصطلاح توضیح مختصری ارائه شود .

:OLTP(Online Transaction Processing)در اصل اشاره به گروهی ازسیستمها است کهTransaction oriented applicationرا تسهیل و مدیریت میکنند بخصوصدر مواردData entryوRetrievalTransaction processing .

بطور کلیOLTPبهProcessingهایی اطلاق میشود که سیستم در پاسخهای سریع خود به درخواست های کاربر انجام می دهد .

این تکنولوژی در زمینه های بسیاری از جمله E Commerce، E Banking ,E Healthکاربرد دارد.

:OLAP(Online Analitycal Processing)یک رویکرد برای بدست آوردن پاسخ های سریع سیستم ها درAnalitycal queries که بصورتMulti dimensional هستندمیباشد.

OLAPبخشی ازBusiness Intelligenceبوده که خود شامل مواردی همچونETI (Extract Transform Load )وRelational Reportingو Data Miningمیباشد.

از کاربرد های رایج OLAPاستفاده در گزارش گیری ها مثلBPM (Business Process Management)و بودجه بندی ها(Budgeting)و پیش بینی های مالی است .

خروجی اصلیOLAP QUERYبطور معمول در یک ماتریکس نمایش داده میشود و از تغییر جزئی در همان واژه OLTPاقتباس شده است .

 

 STORAGE

در بحث ذخیره سازیOLTPدر طراحی بانک داده های ارتباطی ازقاعده ی مدل سازی داده ها(Data Modeling)استفاده می کنند و عموماً قواعدCoddرابرای نرمال سازی داده ها(Data Normalization)به منظور اطمینان حاصل کردن از انسجام کامل داده ها به کار می برند.

اطلاعاتی که پیچیدگی کمتری دارند به ساده ترین ساختارهای خود شکسته می شوند (در یک جدول) که در آن هر سطح جزئی و کوچک با یکدیگر در ارتباط هستندو از قواعد نرمال سازی پیروی می کنند.

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

طراحی های بانک داده یOLTPبا حداکثر نرمال سازی، اغلب منجر به این می شود که اطلاعات ناشی از یک تبادل(Transaction)تجاری در ده ها تاصدها جدول ذخیره شود. مدیران بانک داده های ارتباطی(Relational DatabaseManagers)در کنترل رابطه ی بین جداول و نتایج با اجرای یکInsert/Updateسریع ، بسیار کارا عمل میکنند چون مقدار کمی از داده ها در هر تبادل ارتباطی(Relational Transaction)، تحت تأثیر قرار می گیرد.

بانک داده هایOLTPبسیار کارا هستند چون آنها اصولاً فقط با اطلاعات حول و حوش یک تبادل(Transaction) واحد سروکار دارند. در گزارش و آنالیز،هزاران تا بیلیون هاTransactionممکن است احتیاج به جمع آوری مجدد داشته باشند که سبب تحمیل یک بار کاری عظیم به بانک داده های ارتباطی می شود.

با دادن زمان کافی، نرم افزار معمولاً می تواند نتایج دلخواه راپس بدهد، اما بعلت اثر منفی رول اجرایی ماشین و همه ی تقاضاهایش، متخصصین انبارداده(Data Warehousing)، پیشنهاد می کنند که بانک داده های گزارش دهنده(Reporting Databases)به صورت فیزیکی ازOLTP Database جدا شوند.

علاوه بر این،انبار سازی داده هاData Warehousingپیشنهاد میکندکه بهتر است داده ها(Data)به منظور تسهیل مقایسه و آنالیز توسط کاربران تازه کار،بازسازی و مجدداً مرتب شوند.

بانک داده هایOLTPبرای تأمین یک عملکرد خوب در پاسخ به درخواست های دقیق، توسط برنامه ریزی های ماهر در زمنیه ی محدودیت ها و آداب و رسوم تکنولوژی طراحی شده اند.

علاوه بر تقویت های بسیار، یک بانک داده(Database)هنوز فقط یک مجموعه از نام های مبهم و نامربوط به نظر می رسد و دارای ساختار غیر قابل درکی است که با استفاده از کدهای نامفهوم، داده(Data)را ذخیره می کنند. و اینها همه فاکتورهایی است که ضمن بهبود عملکرد، سبب پیچیده شدن استفاده توسط افراد آموزش ندیده می شود.

در نهایت، انبار داده ها(Data Warehouses) نیاز به تأمین حجم های بالایی از داده های گردآوری شده از میان دوره های وسیعی از زمان دارند و درمعرض مقایسات پیچیده قرار دارند وضمنا به فرمت های متعدد و توضیحات بر گرفته شده ازسیستم های بسته بندی(Package) و بازمانده(Legacy Systems) که به طور مستقل طراحی شده، نیاز دارند.

طراحی انبار داده(Data warehouse)به صورت هم زمان با ساختمان داده(Data Architecture)، هدف آرشیتکت های انبارهای داده است.

هدف اصلی(Goal Target)یک انبار داده(Data Warehouse)، گرد همآوردن داده ها از انواعی از بانک داده های(Databases)موجود برای تأمین نیازهای گزارش دهی و مدیریتی است.

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

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

۲رویکرد اصلی برای سازماندهی داده ها در یک انبار داده وجوددارد:

۱)رویکرد ابعادی(Dimensional Approach)که توسطRalph Kimballمطرح شده است و

۲(رویکرد نرمالیزه شده(Normalization Approach)که توسطBill Inmon مطرح شده است.

در حالیکه رویکرد ابعادی(Dimensional Approach)در طراحی بازارداده ها(Data Mart Design)بسیار مفید است، می تواند منجر به انبوهی از الحاقات داده ای طولانی مدت و عوارض پیچیده ای در صورت استفاده از آن در یک انبار داده شود.

در رویکرد ابعادی(Dimensional Approach)، داده های تبادلات(Transaction Data)به وقایع(Fact)قابل اندازه گیری که عمدتاً داده های عددی هستندو مقدارهای خاصی دارند و یا به «ابعادی»(Dimensionalکه حاوی اطلاعات مرجع(Reference) هستند که محتوای هرTransactionرا تعیین می کنند،تقسیم می شوند. بعنوان مثال، یک معامله ی فروش به وقایعی(Facts)مثل تعداد محصولات سفارش داده شده و یا قیمت پرداخت شده تقسیم شود و یا به ابعادی(Dimension)مثل تاریخ، خریدار،محصولات و موقعیت جغرافیایی و فروشنده تقسیم شود.

از مزایای اصلی(Main Advantages)یک رویکرد ابعادی(Dimensional Approach)این است که انبار داده(Data Warehouse)برای کارکنانی که در زمینه ی(IT)تجربیات کمتری دارند، به لحاظ درک و کاربرد راحت تر است. همچنین، چون داده ها بصورت ابعادی(Dimensionalبهم متصل هستند، انبار داده بسیار سریع عمل می کند.

نکته‌ی منفی اصلی(Main Disadvantage)در رویکردابعادی((Dimensionalاین است که اضافه کردن یا تغییرات بعدی در صورتی که شرکت رویه ی خود را در تجارت تغییر دهد، مشکل خواهد بود.

در رویکرد نرمالیزه شده(Normalization Approach)از نرمال سازی بانک داده(Database Normalization)استفاده می شود. در این روش، داده ها در انبارداده به شکل سومِ نرمال(Third Normal Form)ذخیره می شوند. سپس جداول توسطSubject Areaگرد هم آوری می شوند که منعکس کننده ی تعریف کلی داده(Data)هستند،مثل(خریدار، محصول، اعتبارات و…).

مزیت اصلی این رویکرد این است که برای اضافه کردن اطلاعات جدید به بانک داده(Database)تقریباً مستقیم (Straightforward)عمل می کندو نکته ی منفی اولیه در رابطه با آن این است که بعلت تعدد جدولهای درگیر، تولید اطلاعات و گزارش ها، ممکن است نسبتاً آهسته باشد.

علاوه بر این، از آنجایی که جداسازی وقایع(Facts)وابعاد(Dimensions)در این نوع از مدل داده ها(Data Model)، روشن نیست، برای کاربران مشکل است که اجزای داده های مورد نیاز را به هم بپیوندند و اطلاعات معنی داری بدوندرک ساختار داده ها پیدا کنند.

Subject Areas، فقط روشی برای سازماندهی اطلاعات هستند و میتوانند در طول هر خطی تعریف شوند.

 

ADVANTAGES  (مزایا)

بطور کلی مزایای بسیاری در استفاده از یک انبار داده(Data Warehouse)وجود دارد، که برخی از آنها شامل:

۱-دسترسی کاربران نهایی(End Use Access)را به طیف متنوعی و وسیعی از داده ها میسر می کند.

۲-کاربران سیستمهای پشتیبانی تصمیم(DSS Users)می توانندگزارشات خاصی را بدست آورند یعنی مثلاً کالایی که بیشترین فروش را در یک منطقه/کشورخاص در طول ۲ سال گذشته داشته است.

۳-یک انبار داده(Data Warehouse)می تواند یک وسیله ی مهم در درخواست های تجاری باشد بخصوص مدیریت ارتباط با خریدار،

CRM(Customer Relationship Management)

 

CONCERNS

از نکات مهمی که در این زمینه وجود دارد می توان به موارد ذیل اشاره کرد:

۱-استخراج، جابجایی و بار کردن داده ها(Loading)، زمان زیادی میبرد و منابع کامپیوتری زیادی نیاز دارد.

۲-گستره ی پروژه ا ی انبار داده ها(DataWarehouse)باید بطورفعال کنترل شود تا مجموعه ای از مقادیر و محتویات تعریف شده ارائه گردد.

۳-مشکلات مربوط به سازگاری با سیستم های قبلی موضوع قابل اهمیتی است.

۴-امنیت (Security)می تواند تبدیل به موضوعی جدی شود، بخصوص اگر انبار داده توسطweb قابل دسترسی باشد.

۵-اختلاف نظرهای موجود درباره ی طراحی دخیره سازی داده‌ها(DataStorageDesign) مستوجب ملاحظات دقیقی می باشد و نیز شاید پیش سازی راه حل های انبارهای داده (DataWarehouses) را برای شرایط هر پروژه، ایجاب کند.

 

مراحل و نحوه ایجاد انبار داده در سازمان

بسیاری از شرکت ها و سازمانها به این باور رسیده اند که گردآوری، سازمان دهی و یکپارچه سازی داده ها در یک مخزن داده برای مدیریت بهینه و اتخاذ تصمیمات کلان یک ضرورت می باشد.

به طور کلی ساخت یک انبار داده، به شکل یک پروژه شامل مراحل اصلی زیر می باشد:

– استخراج داده های تراکنشی از پایگاه های داده به یک مخزن واحد

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

– تبدیل داده ها

از آنجائیکه سیستمهای اطلاعاتی و برنامه های کاربردی یک سازمان غالبا توسط افراد و پروژه های مختلف به مـرور زمان در مواجهـه با نیـازهای جدید سـاخته یا تغییر شـکل داده می شـوند،  یکسـان سـازی آنها امری ضروری میباشد.در بسیاری از موارد نیز سیستمهای اطلاعاتی در بستر های مختلف پایگاه داده مانندMicrosoftSQLServer،Oracle، Sybase، MicrosoftAccessو غیره طراحی گردیده اند. بررسی جداول، برقراری ارتباط بین فیلدها و یک شکل سازی داده ها در این مرحله صورت می پذیرد.

– بارگذاری داده های تبدیل شده به یک پایگاه داده چند بعدی

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

مـقادیر از پیـش محاسـبه شده را تراکـم نیـز مـی نامـند. ایـن مرحلــه توســط سیستـمهایی نظــیر Microsoft SQL  Server Analysis  Services  بسیار ساده تر شده است. ایـن تراکم ها کـه در ابـعاد مختلـف انبار داده سـاخته می شوند، موجب می شوند که سرعت انجام عملیات گزارش گیری به شکل محسوسی افزایش یابد. بایدتوجه داشت که عملیات ساخت این مقادیر بسیار زمان گیر بوده و نیازمند حافظه زیادی بر روی سروراست.

– ساخت ( یا خرید ) یک ابزار گزارشگیری

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

 

ويژگيهاي اصلي داده‌های انبار داده‌ها 

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

 

سيستم‌هاي انبار داده‌ها

سيستم انبار داده‌ها (DWS) شامل انبار داده‌ها و همه مولفه‌هايي است كه براي ساخت، دستيابي و نگهداری DWH به كار مي‌روند. انبار داده‌ها بخش مركزی سيستم انبار داده‌ها را تشكيل مي‌دهد. گاهي اوقات انبار داده‌ها حجم عظيمي از اطلاعات را در واحدهای منطقي كوچكتر به نام Data Mart نگهداري مي‌كند. مولفه آماده سازی، مسووليت كسب يا دريافت داده‌ها را بر عهده دارد. اين مولفه شامل همه برنامه‌ها و‌برنامه‌های كاربردی‌هايی است كه مسوول استخراج داده‌ها از منابع عملياتي هستند. مولفه دستيابي شامل برنامه‌های كاربردی مختلف (OLAP يا برنامه‌های كاربردی داده كاوی) است كه امكان استفاده از اطلاعات ذخيره شده در انبار داده‌ها را فراهم مي‌آورند.

مولفه مديريت Metadata، وظيفه مديريت، تعريف و دستيبابي به انواع مختلف Metadata را بر عهده دارد. در اصل ،‌Metadata  “داده‌هايي درباره داده‌ها” يا “داده‌هايي است كه مفهوم داده‌ها را توصيف مي‌كنند”. انواع مختلف Metadataدر انبار داده‌ها وجود دارند. مثلا اطلاعاتي درباره منابع عملياتي، ساختار داده‌هاي DWH و  كارهايي كه در حين ساخت، نگهداري و دستيبابي به DWH انجام مي‌شوند. نياز به Metadata شناخته شده است. پياده سازي يك DWS منسجم ،كار پيچيده و دشواري است و شامل دو فاز مي باشد. درفاز اول كه پيكربندي DWS نام دارد، ديدگاه مفهومي انبار داده‌ها مطابق با نيازمنديهای كاربر مشخص مي‌شود. سپس منابع داده‌ای دخيل و روش استخراج و بار گذاري در انبار داده‌ها تعيين مي‌گردد. سرانجام، درباره پايگاه داده‌های مورد نظر و روشهای دستيابي داده‌ها تصميم گيری خواهد شد. پس از بار گذاري اوليه، در فاز عمليات DWS بايد داده‌های انبار داده‌ها به منظور منظم refresh شوند.

 طراحي انبارداده‌ها

روشهای طراحي انبارداده‌ها امكان پردازش كارآمدquery را برروي حجم  عظيمي از داده‌ها فراهم مي‌آورند. نوع ويژه‌ای از الگوی پايگاه داده‌ها به نام star برای مدل سازی انبارداده‌های چند بعدی به كار مي‌رود. در اين حالت، پايگاه داده‌ها از يك جدول مركزی واقعيت يا fact و جداول چند بعدي تشكيل شده است. جدول واقعيت حاوی tuple هايي است كه بيانگر واقعيت‌هاي كسب و كار مانند فروش يا عرضه هستند. هر tuple جدول واقعيت بهtupleهای جدول چند بعدي اشاره دارد. هرtuple جدول چند بعدي مواردي نظير محصولات، مشتريان، زمان و فروشنده را نشان مي‌دهد.

مدل چرخه حیات انبار داده ها

  انبار داده‌های مجازی

هدف انبارداده‌های مجازی، پياده سازي سريع انبارداده‌ها بدون نياز به ذخيره سازي و نگهداری  كپي‌هاي متعدد از داده‌های منبع است. اغلب، انبارداده‌هاي مجازی به سازمانها كمك مي‌كند تا به نياز واقعي كاربران نهايي پي ببرند. كاربران نهايي مي‌خواهند به طور مستقيم به داده‌هاي منبع بي درنگ با كمك ابزارهای توانمند شبكه‌ای دسترسي پيدا كنند. معايب اين روش عبارتند از:

– كيفيت و سازگاري داده‌ها تضمين نمي‌شود. زيرا فعاليت‌های آماده سازی داده‌ها صورت نمي‌گيرند.

– به طور معمول، داده‌های تاريخي وجود ندارند.

– زمان دسترسي كاربر نهايي بسته به وجود يا عدم وجود منابع عملياتي، ‌بار شبكه و پيچيدگي درخواست، غير قابل پيش بيني است.

ORACLE DATA WAREHOUSING

از اواخر سال ۱۹۸۰ ميلادي، انبار داده ها ۱(DWH)به عنوان نوع متمايزي از پايگاه هاي داده مورد استفاده اغلب سازمانها و شركت هاي متوسط و بزرگ واقع شدند. انبار هاي داده جهت رفع نياز رو به رشد

مديريت داده ها و اطلاعات سازماني كه توسط پايگاه هاي داده سيستم هاي عملياتي غير ممكن بود، ساخته شدند.

سیستم های عملیاتی ۲ OLTP داراي نقاط ضعفي مي باشند كه انبار هاي داده آنها را رفع مي كنند، به اين دليل به انبار داده ها، سيستمهاي تحليلي ۳ OLAP در مقابل سيستمهاي عملياتي نيز مي گويند. از جمله اين مشكلات سيستمهاي عملياتي كه سيستمهاي تحليلي در صدد حل آن هستند مي توان به موارد زير اشاره كرد:

  • بار پردازش گزارشات موجب كندي عملكرد برنامه هاي كاربردي مي گردد.
  • پايگاه هاي داده برنامه هاي كاربردي داراي طراحي مناسبي جهت انجام عمليات آماري و گزارش نيستند.
  • بسياري از سازمانها داراي بيش از يك برنامه كاربردي (منابع اطلاعاتي) مي باشند، بنابراين تهيه گزارشات در سطح سازمان غير ممكن مي شود.
  • تهيه گزارشات در سيستمهاي عملياتي غالبا نيازمند نوشتن برنامه هاي مخصوص مي باشد كه معمولا كند وپرهزينه هستند.

۱ Data Warehouse

۲ Online Transaction Processing

۳ Online Analytical Processing

مقايسه اين نوع سيستمها در جدول زير خلاصه شده است:

OLTP

OLAP

پشتيباني از اطلاعات روزانه پشتيباني از داده هاي تاريخي
نگهداري داده ها در سطح تراكنش مجتمع كردن داده ها
طراحي پايگاه داده ها به صورت نرمال طراحي پايگاه داده ها به صورت ستاره و غير نرمال

 

تعريف انبار داده ها

انبار داده ها يك سيستم كامپيوتري از اطلاعات است كه به گونه اي مناسب براي انجام عمليات گزارشگيري و تحليلي داده ها بر اساس زمان، طراحي شده است. اين سيستم اغلب به صورت جداگانه اي از سيستمهاي عملياتي روزانه قرار ميگيرد. در ادامه سه تعريف از انبار داده ها ارائه مي شود:

Bill Inmon .1: كه از او به عنوان پدر DWH ياد مي شود آن را به اين ترتيب تعريف ميكند:

” انبار داده ها مجموعه اي از داده هاي موضوع گرا ، يكپارچه، تغيير ناپذير و متغير با زمان براي پشتيباني از تصميم هاي مديريتي مي باشد.”

  • موضوعگرا به اين معني است كه پايگاه داده به گونه اي سازماندهي شده است كه تمامي داده هاي مربوط به يك موضوع با هم دسته بندي مي شوند نه داده هاي مربوط به يك application.
  • يكپارچه بودن انبار داده ها به اين معني است كه اطلاعات موجود در پايگاه داده از سراسر سازمان جمع آوري شده‌اند و با هم سازگاري دارند.

 

داده ها در انبار داده متغير با زمان است كه به اين معني كه داده ها به عنوان يكسري از Snapshot ذخيره مي شوند كه هر يك از آنها يك دوره زماني را نشان مي دهد.

تغيير ناپذير بودن داده ها در انبار داده ها به اين معني است كه داده ها هرگز حذف نشده و يا با داده‌هاي جديد جايگزين نميشوند.

 

،Ralhp Kimball .2 يكي از نويسنده هاي مشهور در زمينه انبار داده و هوش تجاري، انباره داده را به صورت زير تعريف مي كند:

نسخه اي از داده هاي تراكنشي است كه به صورت اختصاصي براي پرس و جو ها و DWيك

گزارش گيري، سازمان دهي شده است.”

تعريف شركت Oracle 3 از انبار داده ها :

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

مدت زمان لازم براي آماده سازي داده براي پرس و جو انبار داده ها در یک سازمان در مقیاس خیلی بزرگ گیاده سازی می شود و محدوده آن کل سازمان می باشد و داده ها در انبار داده ها از تمامی موضوعات میباشد. در یک سازمان بزرگ به دلیل حجم انبار داده ها, عموماً انبار داده ها به صورت تدریجی پیاده سازی می شود و پیاده سازی آن به صورت دفعی نیست.

به همین دلیل انبار داده ها به واحدهای منطقی کوچکتری به نام Datamart تقسیم می شود . ساخت آنها انجام می گیرد.Datamart ها بر روی یک موضوع تمرکز دارند و محدوده آنها یک department است و نه کل سازمان.

در نتیجه ساخت Datamart بسیار سریع تر از کل انبار داده ها است.

یکی از گام های مهم در فرآیند ساخت انبار داده ها مرحله ETL است.در این مرحله داده ها از پایگاه داده های سیستم های تراکنشی, واکنشی شده و پس از پالایش در انبار داده ها قرار می گیرد.

داده ها در پایگاه داده های سیستم ها ی تراکنشی به صورت نرمال ذخیره می شوند, این داده ها باید پس از واکنشی از پایگاه داده ها به صورت مجتمع درآيند ( به عنوان مثال يكسان سازي كدها بر روي آن انجام شود) و پس از آن به فرمت انبار داده ها ذخيره شوند، درنتيجه نياز به تغيير شكل داده ها و بهنگام سازي آنها وجود دارد، كه براي اين منظور از پايگاه داده مياني به نام Staging area استفاده مي شود.

 

مولفه انبارها در سازمان

مؤلفه هاي يك انبار داده در شكل زير آمده است.

 

طراحي پايگاه داده ها

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

صورت سلسله مراتبي ۱۱ تعريف شوند يا خير، دوschema زير وجود دارد:

Star schema:در بيشتر DWHاز اين روش براي ايجاد مدل داده چندبعدي استفاده ميشود.در اين مدل، پايگاه داده شامل يك جدولfact و تعدادي جدول مجزا براي ابعاد است. در جدول fact ركورد اطلاعاتي شامل تعدادي اشاره گر (كليد خارجي) به جداول ابعاد و مقادير مربوط به معيارهاي عددي است.

Attributeها به همراه كليدها در جداول ابعاد قرار ميگيرند.

Snowflake schemaدر اين مدل يك يا بيش از يك جدول بعد به صورت سلسله مراتبي مي باشند. اين مدل نسبت به مدل قبل انعطاف پذيرتر است وloadداده ها در آن سريعتر است. ولي زمان مديريت آن بسيار سخت تر است و اثر منفي در مدت زمان گزارش گيري دارد.

مشخصات جدولFACT

  • شامل اطلاعات عددي سازمان است.
  • حجم بسيار بالايي از داده ها را دربر دارد.
  • رشد بسيار سريعي دارد.
  • مي تواند شامل داده هاي پايه، مشتق شده و سرجمع باشد.
  • با دريافت كليد خارجي به جداول ابعاد متصل است

مشخصات جدول بٌعد:

  • شامل اطلاعات متني سازمان است.
  • شامل داده هاي ايستا مي باشد.

با انداختن كليد خارجي به جدولFACT متصل است.

در ادامه به ترتيب يك طراحي به روشSnowflakeschemaو starschema

آمده است.

 

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

مرحله واكشي اطلاعات : داده ها در قالبهاي مختلف ( پايگاه داده هاي مختلف، انواع فايلها و حتي در سيستمهاي عامل متفاوت ) در نقاط مختلفي در سازمان پراكنده اند، در اين مرحله فيلدهاي اطلاعاتي از منابع داده اي استخراج مي شود.

مرحله پالايش اطلاعات : در اين مرحله داده ها پالايش شده و به صورت موضوع گرا در مي آيند.

 

OLTPچيست؟

فقط در سال ۲۰۰۰ ميزان ظرفيت نصب شده جهت ذخيره سازي اطلاعات از كل ظرفيت موجود در دهه۱۹۹۰بيشتر بوده است.

حيات بازرگاني نوين مبتني بر داده هاست. در حال حاضرتقريبا حجم كل اطلاعات در كامپيوترها هر ۵ سال دو برابر مي شود و با توجه به سرعت ايجاد برنامه هاي چند رسانه اي و بانكهاي اطلاعاتي پيش بيني مي شود كه شتاب رشد اطلاعات به دو برابر در سال برسد.

توليد كنندگان اين اطلاعات موسسات و شركت هاي جديدي هستند كه امور خود را توسط كامپيوترها هدايت مي كنند. سيستم هاي توليد مكانيزه اي كه داده ها را جمع آوري نموده و به مصرف مي رسانند سيستم هايOLTPناميده مي شوند. اين سيستم ها توليد كنندگان واقعي داده ها هستند.

برنامه هاي كاربردي خادم و مخدوم به دو دسته تقسيم مي شوند:

۱- سيستم هاي پشتيباني تصميم گيري (DSS)

۲-سيستم هاي پردازش زنده (OnLine) اطلاعات

اين دو دسته هر يك راههاي كاملا متفاوتي را جهت حل مسائل تجاري ارائه مي كنند. قبل از آنكه به ارزش انباره هاي داده پي ببريم لازم است تفاوتهاي اين دو را بشناسيم.

سيستم هايOLTPدر كليه خدمات بازرگاني ديده مي شوند از جمله  سيستم هاي رزرواسيون، دستگاه هاي فروش ، كنترل انبار، سهام و فروش و … . اين سيستم ها غالبا به زمان پاسخي بين ۱تا ۳ ثانيه در ۱۰۰ در صد اوقات نياز دارند. تعداد كاربران آنها در ساعات مختلف روز، هفته و ماه مي تواند بشدت متغير باشد و درتمامي اين اوقات به همان زمان پاسخ قبلي نياز دارند. در اين گونه سيستم ها معمولا مخدومين بجاي ارتباط با بانكهاي اطلاعاتي(DatabaseServers)به خادمين تعاملي (TransactionServers) متصل مي شوند. البته اين گونه ارتباط لازمه دستيابي به سرعت مورد نياز مخدومين(Clients)است.

OLTPخود نيز به دو نوع عادي(Lite)و قوي(Heavy)تقسيم مي گردد.خادمين عادي قـادرند تعامـل را در غالـب پردازشهاي ثبـت شـده در بانـك اطلاعـــاتي(StoredProcedures)به اجرا بگذارند و خادمين قوي از(TPMonitor)براي اجراي دستورات استفاده ميكنند.درOLTPبراي دستيابي به سرعت، سربار ارتباطي شبكه ها درحداقل ممكن نگاه داشته مي شود و غالبا ارتباطات در حد انتقال يك دستورSQLهستند.

امروزه حتي كوچكترين تجارتها هم قادرند بسرعت پايگاه هاي اطلاعاتي بزرگي يا با جمع آوري اطلاعات صندوق هاي فروش ايجاد كنند چه برسد به وب سرور ها كه ميتوانند ظرف مدت بسيار كوتاهي چندين گيگا بايت اطلاعات جمـع آوري نـمايند.

زماني براي هر كار مكانيزه اي نياز به ميليونها پول و ده ها متخصص بود . اما امروزه هر كسي بسادگي با خريد چند كامپيوتر شخصي و استخدام يك برنامه نويس مي تواند از امكانات رايانه اي بهره مند گردد. بعبارت ديگر دسترسي به خدمات رايانه اي براي ايجاد پايگاه هاي خصوصي از داده ها براي همه گان آسان تر شده است.

در مجموع داده هايي كه توسط سيستم هايOLTPجمع آوري مي شود مستقيمامورد استفاده افراد ايجاد كننده آن قرار دارد. آنها دقيقا مي دانند اين داده ها چيست اند و همچنين مي دانند چگونه نياز هاي اطلاعاتي لحظه اي خود را كه بطور روزمره بوجود مي آيد حل كنند.

سوالي كه مطرح است اين است كه اگر كسي خارج از مجموعهOLTPبه اين اطلاعات نياز داشته باشد چه بايد كرد. اين افراد از كجا مي دانند چه داده اي موجود است؟ كجا بايستي آنرا پيدا كرد و چگونه به آن دسترسي پيدا كنند؟ دادهها به چه شكلي(Format)است ؟ چه معنايي دارد؟ آخرين چيزي كه افرادOLTPبه آن رضايت خواهند داد آنست كه اجازه دهند ديگران به اطلاعات گرانبهاي آنان دسترسي داشته باشند. كساني كه حتي نمي دانند چه مي خواهند، درخواستهاي سيكوئل زمانگيري را بر روي بانكهاي اطلاعاتي اجرا مي كنند كه سرعت و قابليت سيستم توليد كننده داده ها راپايين مي آورد.

در گذشته افراد بيرون از سيستم ، از همكارانMISخود ميخواستند با همكاران مشابه خود در سيستم مربوطه تعامل داشته و نهايتا اطلاعات موردنظر را از سيستم استخراج نمايند. اما امروزه حتي مجموعهMISخود هم بدرستي نمي داند چه اطلاعاتي در سازمان موجود است. اطلاعات بشدت توزيع شده و پراكنده است و تقريبا روي هر كامپيوتري بخشي از اطلاعات سازمان وجود دارد.

يكي از ويژگيهاي كامپيوتر هاي شخصي و همچنين معماري خادم/مخدوم موجب شده است كه افراد اكثرا به اطلاعات سازماني و كاربرد اطلاعات در سازمان علاقه اي نداشته و ترجيح مي دهند اطلاعات را تحت مالكيت شخصي اداره كنند به اين ترتيب بين اطلاعات سازمان و شخصي (ياواحد هاي متشكله) شكاف وجود خواهد داشت. از طرف ديگر بين داده هاي سيستمي و اطلاعات استخراج شده نيز شكاف ديگري مشاهده مي شود. كساني كه از بيرون به اين اطلاعات نگاه مي كنند افرادي هستند كه بدنبال يافتن طرحها، روالها و تمايلات در داده ها هستند بطوريكه بتوانند تصميمات بهتري بگيرند. تنيدن حصار بدور اطلاعات بمعني تنيدن حصاردر برابر تجارت ديگران است و خيلي زود همه گان بازنده جنگ اين حصارها خواهندبود.

چگونه اطلاعات را در اختيار داريم اگر به ديگران اجازه دسترسي به آنرا بدهيم.

سولات زيادي مطرح هستند كه بايستي پاسخ داده شوند و از آن جمله اند:

چگونه مطمئن شويم كه عملكرد بيروني ها (غريبه ها) عملكرد سيستم ما را كند نمي كند؟

چه اطلاعاتي را بايستي در اختيار بيروني ها قرار دهيم؟

چه اطلاعاتي دروني و شخصي (فقط مربوط به سيستم توليد كننده داده) است؟

چه كسي مالك اطلاعات به اشتراك گذاشته شده است؟

چه كسي اين اطلاعات را بروز ميكند؟

آيا بايستي بگذاريم دسترسي به اطلاعات مستقيم باشد يا آنرا در بانك ديگري كپي كنيم؟

اطلاعات استخراج شده چگونه نگهداري شده و چگونه بروز مي شود؟

براي پاسخ به سوالات فوق بايستي نياز هاي استفاده كنندگان از اين اطلاعات را بشناسيم و تفاوتهاي ميان سيستمهاي پشتيبان تصميم گيري وOLTPرا درك كنيم.

چه كساني ازاين داده ها استفاده ميكنند؟

بياييد نامي براي اين دسته ازافراد انتخاب كنيم. اين افراد مصرف كنندگان اطلاعات هستند( كساني هستند كه تصميمات استراتژيك مي گيرند) فعلا نام اين افراد را شكارچي اطلاعات مي گذاريم چون اين نام معرف هر كسيست كه به يكPCدسترسي دارد و نيازمند اطلاعات است. البته بازرگانان وصنعتگران اولين دسته از اين افراد هستند.

 سيستم پشتيباني تصميم گيري چيست؟

يك سيستم كارآمد، ابزاريست براي تحليل داده ها ،يافتن ارتباط بين داده ها، توليد گزارش هاي كارآمد، دسترسي منعطف به داده ها،راهكار هاي نمايش اطلاعات در انواع ممكن، قابليت پاسخ به سوالات اگر … چه ، چاپ اطلاعات،انتقال داده ها به صفحات گسترده.

در مقايسه با سيستم هاي توليد داده،اين ابزارها از انعطاف بيشتري در زمان پاسخگويي برخوردار هستند. معمولا كنترل يكپارچگي در آنها رعايت نشده است و قابليت دسترسي همزمان كاربران به آن غالبا محدود است. جستجوي اطلاعات و يا بروز رساني اطلاعات غالبا بمعني پردازش روي تمامي اطلاعاتخواهد بود. اين برنامه ها براي غير برنامه نويسان تهيه شده و بيشتر فعاليت ها در آناز طريق نشان بده و كليك كن(Pointand Click)انجام ميشود.

 

سيستم هاي اطلاعات مديران اجرايي (Executive Information Systems)

اين دسته از برنامه ها از ابزارهايDSSقوي تر، ساده تر و كار آمدتر هستند. همچنين به يك زمينه تجاري خاص نزديكتر و طبيعتا گرانتر هم هستند. البته اختلاف بينDSSوEISبتدريج كم رنگ شده است. ابزارهايEISبتازگي دامنه عمل خود را گسترش داده و در سطح سازمان(Enterprise)خود را مطرح كرده اند بطوريكه مديران و تحليلگران نيز از اين ابزار ها استفاده مي كنند.

.ابزارهايDSS/ESS بطور خلاصه ابزارهاي(OLAP)OnLine AnalyticalProcessing يا ابزارهاي(MDA)Multidimensional Analysis ناميده مي شوند و در لايه هاي بالاتر به آنها ابزارهاي داده كاوي(Data Mining)و كارآگاهان شخصي(Intelligent Agent)گفته ميشود.

عناصر انباره داري

انباره يك محل است و انباره داري يك فرآيند.

اين فرآيند از عناصر زير تشكيل شده است:

۱- مديريت انتشار اطلاعات انباره كه وظيفه نسخه برداري و توزيع اطلاعات را بر روي بانك هاي مختلف (آنگونه كه شكارچي اطلاعات تعريف مي كند) به عهده دارد. شكارچي اطلاعاتي راكه بايستي كپي شود، مبدا و مقصد اطلاعات، تعداد بوقت رساني ها و تبديلات لازم روي اطلاعات را تعريف مي كند. اصطلاح تازه سازي(Refresh)بمفهوم كپي كامل آخرين وضعيت اطلاعات و اصطلاح بوقت رساني(Update)بمفهوم اعمال آخرين تغييرات بكار گرفته شده اند. همه كارها مي تواند بصورت خودكار و يا دستي انجام پذيرد. اطلاعات ممكن است از بانكهاي رابطه اي و غير رابطه اي تهيه شود. توجه كنيد كه كليه اطلاعات خارجي قبل ازورود به سيستم، تبديل شده و پاك سازي مي شوند.

۲- بانك اطلاع رساني يك بانك اطلاعاتي رابطه ايست كه وظيفه سازماندهي و ذخيره نمودن يك نسخه از اطلاعات و همچنين تبديلات و جمع بندي و افزودن ارزش به اطلاعات حاصله از منابع مختلف و با فرمت هاي مورد نظر بعهده دارد. نگهداري فراداده (اطلاعات در مورد اطلاعات) نيز به عهده اين بانك است . فراداده هاي سيستمي روابط بين جداول و ايندكس ها و غيره را بيان مي كنندو فراداده هاي محتوايي(semantic)ارزش اطلاعات را براي يك شكارچي اطلاعات روشن ميسازند.

۳- راهنماي اطلاعات(Informational Directory)تركيبي از يك راهنماي فني و راهنماي تجاري و يك پويشگر اطلاعات است. هدف اصلي اين راهنما كمك به شكارچي براي دانستن محل وجود اطلاعات ،شكل آن و روش دسترسي به آن است.

۴- پشتيباني ابزارهايDSS/EIS از طريق انواع دستوراتSQL انجام مي گيرد. بسياري از فروشندگان پروتكلODBC و سايرين انواع ديگر پروتكل ها را سرويس ميدهند.

سلسله مراتب انباره ها (غرفه هاي داده (DataMarts))

انواع كوچكتري از انباره هاي داده هستند. در عمل غرفه هاي داده دپارتماني و غرفه هاي داده همراه(mobile)از ابتدا برنامه ريزي نميشوند بلكه ابتدائا بوجود آمده و در صورت موفقيت تكثير شده و در نهايت مدير بانك اطلاعاتي سازمان ممكن است بتواند يك فدراسيون آزاد ار اين غرفه ها تشكيل دهد ونهايتا يك انباره داده را پايه گذاري نمايد.

 

ابزارهاي گزارش گيري

ابزارهاي تحليل داده و خواسته پردازها بما اجازه ساختن يك دستور سيكوئل را مي دهند بدون آنكه مجبور باشيم برنامه اي بنويسيم يا سيكوئل ياد بگيريم. با چند نشانه و كليك عبارتهاي سيكوئل مناسب براي گرد آوري اطلاعات و نمايش آن بشكل يك گراف / جدول و يا گزارش آماده مي شود. ابزارهاي برجسته تر در اين زمينه امكان كنترل ميزان نتايج برگشته ازيك خواسته را مي دهند و به اين ترتيب مي توان جلوي درخواستهايي را كه ممكن است ميليونها ركورد را برگردانند گرفت. در سال ۱۹۹۸ بيش از ۱۵۰ نوع از اين ابزارها دربازار وجود داشته است كهMicrosoftAccess, OracleReports, BusinessObjectsاز آنجمله اند.

OLAPو اطلاعات چند بعدي

به ساختارOLAPمثل يك مكعب از داده ها نگاه كنيد كه مي توانيد آنرا در جهات مختلف بچرخانيد تا بتوانيد سناريو هاي “قبلا چه شده” و “چه مي شد اگر …” را بررسي كنيد.
اين ابزارها ديدگاههاي چند بعدي از داده ها را توسط بانكهاي اطلاعاتي دو بعدي (و يا بانكهاي خاص چند بعدي) توليد كرده و در اختيار ما مي گذارند. توان دسترسي چند بعدي به داده‌ها درOLAPقدرت فرموله كردن خواسته هاي پيچيده تر را به ما مي دهد.

براي سادگي فرض كنيدOLAPيك صفحه گسترده با چند محور است (درصفحات گسترده متعارف فقط دو محور افقي با اختصارA,B,C, … و عمودي با ايندكس هاي۱و۲و۳,… داريم) در اين صورت مثلا مي توانيم اطلاعات فروش يك سازمان را از ديدگاههاي منطقه فروش، تاريخ، مشتري، فروشگاه، قيمت و ميزان فروش بررسي كنيم. و پاسخ سوالاتي نظير ميزان فروش به ازائ يك محصول و فروشگاه در يك ماه مشخص را خواهيم داشت.

مدل چند بعديOLAPطريقه نمايش دادن داده ها را در مقايسه با بانكهاي اطلاعاتي رابطه اي تسهيل مي كند.ROLAPبا ايجاد يك لايه محافط روي يك بانك اطلاعاتي رابطه اي سرويس فوق را ارائه ميدهد. از ديدگاه فنيOLAPفقط راهي براي ذخيره سازي و محاسبه اطلاعات چند بعدي براي پاسخ گويي به سناريوهاي كاربر است. يك خادمOLAP، داده ها را از پيش روي چندين محور جمع مي زند. توجه كنيد كه اطلاعات قبلا وارد شدن بهOLAPبايستي پاك سازي شوند . غالباOLAPداده ها را از يك انبار داده استخراج مي كند.

ابزارهايOLAPرا به چند دسته تقسيم ميكنند:

OLAP رو ميزي:

ابزارهاي ساده و مستقل كه روي كامپيوتر هاي شخصي نصب شده و مكعب هاي كوچكي مي سازند و آنها را نيز بر روي سيستم به شكل فايل ذخيره مي كنند. بيشتر اين ابزارها با صفحات گسترده اي نظيرExcelكار مي كنند.به اين ترتيب كساني كه در سفر هستند قادر به استفاده از اين دسته از محصولات هستند.(در حال حاضر Web OLAPدر حال جايگزين كردن اين محصولات است.

MOLAP

چندبعدي

بجاي ذخيره كردن اطلاعات در ركورد هاي كليد دار، اين دسته از ابزارها بانكهاي اطلاعاتي خاصي را براي خود طراحي كرده اند بطوريكه داده ها را به شكل آرايه هاي مرتب شده بر اساس ابعاد داده ذخيره مي كنند(HyperCubes)در حال حاضر نيز دو استاندارد براي اين تيپ ابزار وجود دارد. سرعت اين ابزار بالا ولي سايز بانك اطلاعاتي آن نسبتا كوچك است.

OLAP رابطه اي (ROLAP)

اين ابزار ها با ايجاد يك بستر روي بانكهاي رابطه‌اي اطلاعات را ذخيره و بازيابي مي كنند. بطوريكه اساس بهينه سازي برخي بانكهاي اطلاعاتي رابطه‌اي مانند RedBrick, MicreoStrategyبرهمين اساس استوار است. اندازه بانك اطلاعاتي اين ابزار قابل توجه ميباشد.

Hybrid OLAP (HOLAP)

در اينجا منظور ازhybrid تركيبي ازROLAPو MDBMS طرح شده درMOLAPاست
ابزار داراي بانك اطلاعاتي بزرگ و رادمان بالاترنسبت بهROLAP مي باشد.

استانداردهاي OLAP

جامعهOLAPبا دو استاندارد مواجه است، از يك طرف گروهOLAPبا استانداردMD-APIو از طرف ديگرMicrosoftبا استانداردOLEDBforOLAP(Tensor)اولي از حمايتOracleو دومي از حمايت فروشندگان كوچكتري برخوردار است كه اميدوارند فروشMS-SQL7برنامه هاي آنان را در ابعاد فروش ويندوز مطرح كند.

 

داده كاوي(Data Mining)

ابزارهاي داده كاوي با جستجوي حجم عظيم داده هاي ما مي توانند تكه طلاي كوچكي را كه در گوشه اي پنهان شده بيابند.

بازگشت هزينه صرف شده در اين ابزارها غالبا بسيار سريع است. مثلا در بررسي داده هاي يك واحد از يك فروشگاه متوجه شدند كه ميزان سرقت حين فروش از باتريها و فيلمها و قلم هاي با قيمت متوسط ماهانه حدود ۶۰۰۰۰ دلار براي فروشگاه هزينه داشته است كه به اين ترتيب با جابجاكردن اقلام و قرار دادن درقسمتهاي با ديد بهتر سالانه حدود ۷۰۰۰۰۰ دلار صرفه جويي بدنبال داشته است.

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

۱- ارتباطات كه اصطلاحا تحليل سبد بازار خوانده مي شود. ابزار بدنبال اثبات اين موضوع است كه وجود چيزي بمعني وجود چيز ديگريست. مثلا بيشتر خريداران لوازم غواصي به تعطيلات تابستاني در استراليا مي روند. يا مصرف كننده يك كالاي مشخص مصرف كرده خريدار كالاي ديگري نيز هست.

۲- ارتباطات متوالي ابزار بدنبال روابط متوالي بين موضوعات مي گردد مثلا وقتي قيمت طلا ۱۰ درصد بالا مي رود يك هفته بعد قيمت سهام ۱۵ درصد پايين مي آيد.

۳- دسته بندي بدنبال دسته بندي و طبقه بندي سطح بالاي اطلاعات هستند. مثلا ۷۰ درصد راي دهندگاني كه تصميم نگرفته اند به كه راي دهند درآمدي بالاي ۶۰۰۰۰ دلار دارند بين ۴۰ تا ۵۰سالسن دارند و در منطقه X اقامت دارند.

اگر اطلاعات جدول زير در يك گراف دو بعدي به تصوير در آيد متوجه مي شويم كه بنظر مي رسيد افراد بين ۲۳ تا ۲۹ به مكزيك وبين ۳۰ تا ۵۱ به كانادا سفر مي كنند سن مشتري كشوري كه به آن سفركرده
۲۳مكزيك
۴۵كانادا
۳۲ كانادا

۴۷كانادا
۴۶كانادا
۳۴كانادا
۵۱كانادا
۲۸مكزيك
۴۹كانادا
۲۹مكزيك
۲۶مكزيك
۳۱كانادا

يك نكته جالب ديگر كه بسادگي قابل ديدن نيست آنست كه افراد بين ۳۵ تا ۴۴ اصلا سفر نميكنند بعبارت ديگر دو دسته آدم به كانادا سفر مي كنند آنها كه بين ۳۰ تا ۳۴ و آنهاكه بين ۴۵ تا ۵۱ سال سن دارند. گروه بندي در اين مجموعه اطلاعات كوچك و دو بعدي بسادگي قابل رويت است . چنانچه ابعاد اطلاعات و حجم آن افزايش يابد موضوع به سادگي گذشته نخواهد بود. گفتني است تعداد نمونه ها، تعداد ستونهاي اطلاعاتي و مقاديري كه هر يك از ستونها مي گيرند در سرعت پردازش داده كاوي موثر هستند. مثلا براي پردازش۱۰۰۰۰۰۰نمونه با ۲۰۰ ستون اطلاعاتي كه هر يك مي توانند ۲۵ مقدار مختلف به خود بگيرند به حدود ۲ ساعت وقت نيازاست.

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

Intelligent Miner, Darwin, MineSet, KnowledgeStudioDataMind, Clementine

 

 كارآگاهان شخصي

اين مامورين برنامه هاي قابل حملي هستند كه با اتصال به انباره هاي داده اطلاعات مورد نياز را استخراح كرده و به كارفرمايان خود اطلاع مي دهند. در حال حاضر اين ابزارها بر اساس قوانين تعريف شده از طرف كارفرماي خود به جستجوي تغييرات در اطلاعات رفته و در صورت مشاهده تغيير پيغام مناسب را مي دهند.

هنوز كار هاي زيادي در اين قسمت بايستي صورت پذيرد كه در ذیل آمده است :

درك داده ها بر اساس دانش درون ابزار (هوشمند شدن)، درك علائق كارفرما و جستجو دربانكهاي اطلاعاتي مختلف براي اعلام تغييرات به كارفرما.

برنامه هاي كاريابي روي اينترنت با توجه به رزومه كاربر و يا برنامه هاي همسر يابي با توجه به مشخصات. برنامه هايي كه تغييرات را در سايتهايMicrosoftو ساير شركتها اعلام مي كنند و …. مثالهاي ساده اي از اين نوع برنامه هاهستند.

 

 نتیجه گیری

بران در سال ۱۹۹۵ده گام را که برای ایجاد یک انبار کالای داده موفق باید برداشته شود را پیشنهاد کرده است:

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

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

۳- آنچه که داده ها در یک انبار کالای داده به آن نیاز دارند ،تعیین کنید.

۴- یک انبار کالای داده را با به کارگیری یک مدل داده  که برای  حمایت از تصمیمات مناسب است، طراحی کنید.

۵- داده ها و اندازه فهرست راهنمای داده های ضروری انبار کالا و پروژه را در سال بعد تخمین بزنید.

۶-فراوانی داده های جدید که به انبار کالا اضافه خواهند شد و تخمین مقادیر داده ها  را تعیین کنید.

۷- آزمایش داده های انبار کالا با یک زیر مجموعه از داده های واقعی ، بررسی کنید.

۸-  نحوه اجرای مصرف کننده های نهایی را داشته باشید و برای دوره ای از زمان با نسخه آزمایشی کار کنید.

۹- استراتژی های تولید آینده فروشندگان را  به خصوص آنهایی را که  وابسته به انبار کالا داده  هستند، درک کنید و معیارهای موفق را ارزشیابی کنید.

۱۰- در آموزش و یادگیری تکنولوژی مشتری- خدمت گذار شبکه و یونیکس را بررسی کنید.

 

ارائه یک چهارچوب سازمان :

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

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

توسعه و استفاده مجدد سریعتر:

توسعه دهندگان انبار کالا بهتر می توانند فرآیند داده های انبار کالا را درک کنند محتویات داده های پایه و نقشهای کار با سرعت بیشتر.

ابزار های ارتباطی و مدیریتی :

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

هماهنگ کردن تلاشهای همزمان :

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

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

 

با تشکر از رضا دولتی

مراجع

  1. http://www.pcworldiran.com/ict/data-warehouse.htm
  2. http://www.sqliran.com/SQLIran/Mod_Core/Pages/Services/DataWarehousing.aspx
  3. http://www.pcpedia.ir
  4. http://tarah.somee.com/computer/default.asp
  5. http://www.softgozar.com
  6. http://www.prozhe.com
  7. دكتر حسين مجاهدي( كارشناس ارشد مديريت فناوري اطلاعات پزشكي)

پاسخ دهید

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

به پژوهشیار خوش آمدید. نیاز به مشاوره آنلاین دارید؟ ما همیشه آنلاین هستیم پس کلیک کنید