فناوری اطلاعات و نرم افزار

فناوری اطلاعات , نرم افزار - هوش تجاری - داده کاوی - سیستم های اطلاعاتی مدیریت - مشاوره و اجرای پروژه

فناوری اطلاعات و نرم افزار

فناوری اطلاعات , نرم افزار - هوش تجاری - داده کاوی - سیستم های اطلاعاتی مدیریت - مشاوره و اجرای پروژه

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

یک انبار داده 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. دکتر حسین مجاهدی( کارشناس ارشد مدیریت فناوری اطلاعات پزشکی)


نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد