02128426201
تهران، ضلع شمالی دانشگاه شریف، جنب جهاد دانشگاهی شریف
info@karnosoft.com

طراحی و ساخت انبار داده

آشنایی با انبار داده

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

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

برای سالیان متوالی از سیستم های اطلاعات مدیریت موجود مانند: MIS,DSS,ES,EIS استفاده می شد اما این سیستم ها قادر به ایجاد یکپارچگی میان داده های پراکنده و ناهمگن و شناسایی مناسب وابستگی های موجود میان داده های جدید نبودند. برای اینکه سازمان ها قادر به واکنش سریع در برابر تغییرات بازار باشند، نیاز به سیستم های اطلاعات مدیریتی دارند که بتوانند از سازمان و محیط آن تحلیل های علت و معلولی مختلف انجام دهند.

Data-Warehouse-چیست
بکگروند نقطه چین

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

واژه هوش تجاری توسط گروه گارتنر 1در اواسط دهه 1991 رواج پیدا کرد. با این حال، این واژه اخیراً رواج بسیار زیادی یافته است و در سیستم های گزارش دهی MIS دهه 1971 ریشه دارد. در آن دوران، سیستم های گزارش دهی ایستا، دو بعدی و فاقد قابلیت تحلیل بودند. در اوایل دهه 1981 ، مفهوم سیستم اطلاعات اجرایی ( EIS ) به وجود آمد. این مفهوم سیستم های پشتیبانی کامپیوتری را به سطوح مدیران عالی و اجرایی برد. این سیستم ها از قابلیت گزارش دهی پویا و چند بعدی (ادهاک 4 یا بر مبنای خواسته)، پیش بینی، تجزیه و تحلیل روند، پرداختن به جزئیات، دسترسی به وضعیت و عوامل کلیدی موفقیت برخوردار بودند. تا اواسط دهه 1991 بسیاری از محصولات تجاری از این ویژگی ها برخوردار بودند. سپس برخی از محصولات جدید تحت نام هوش تجاری پا به عرصه گذاشتند. امروزه همگی به این نتیجه رسیده اند که کلیه نیازهای اطلاعات مدیران اجرایی در قالب یک سیستم اطلاعات مبتنی بر هوش تجاری قابل پاسخ است. بنابراین، مفهوم اصلی سیستم اطلاعات اجرایی به هوش تجاری تغییر یافت.

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

 
مفهوم هوش تجاری:

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

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

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

  • دسترسی، جمع آوری و پالایش داده ها و اطلاعات مورد نیاز.
  • پردازش، تحلیل و نتیجه گیری براساس دانش.
  • اعمال نتیجه و نظارت بر پیامد های اجرای آن.

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

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

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

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

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

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

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

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

مراحل هوش تجاری در DW

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

اطلاعات جمع آوری شده طی فرایند ETL در پایگاه داده تحلیلی یا همان انبار داده DW ) WareHouse ) بارگذاری می شود.

داده در پایگاه داده تحلیلی در بخش های مجزایی به نام داده گاه (Data Mart) قرار می گیرد.

در مرحله بعد هوش تجاری وارد عمل شده و روی اطلاعات طبقه بندی شده تجزیه و تحلیل انجام می دهد.

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

تکنیک های مورد استفاده در هوش تجاری

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

On-Line Analytical Processing (OLAP1) 

On-Line Transaction Processing (OLTP2)

Data Warehousing (DW3)

Data Mining (DM4)

Intelligent Decision Support System (IDSS5)

Intelligent Agent (IA6)

Knowledge Management System (KMS7)

Supply Chain Management (SCM8)

Customer Relationship Management (CRM9)

Enterprise Resource Planning (ERP 10)

Enterprise Information Management (EIM11)

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

انباره داده یا( DW  WareHouse ) چیست؟

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

انبار داده یا( DW  WareHouse ) پایگاه داده‌ای است که برای گزارش‌گیری و تحلیل داده به کار می‌رود و بعنوان هسته اصلی یک سیستم BI به شمار می‌آید. به عبارت دیگر انبار داده یک مخزن داده مرکزی از داده‌های تجمیع شده است که از سیستم‌ها و منابع مختلف سازمان جمع‌آوری شده است.

انبار داده یک بانک اطلاعاتی رابطه‌ای غیرنرمال است که داده‌های حال و گذشته را در یک مکان واحد تجمیع کرده است و هدف اصلی آن پوشش گزارش‌گیری و نیازهای تحلیلی یک سازمان به کار گرفته می‌شود.
از اواسط سال های ۱۹۸۰ نیاز به انبار داده‌ها به وجود آمد و در کنار سیستم‌های اطلاعاتی (OLTP) سیستم‌های تحلیلی (OLAP, DW/BI) ایجاد شد.

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

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

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

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

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

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

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

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

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

  1. استخراج داده های تراکنشی از پایگاه های داده به یک مخزن واحد شناخت منابع داده های سازمان و استخراج داده های ارزشمند از آنها یکی از اصلی ترین مراحل ایجاد انبار داده می باشد.
  2. تبدیل داده ها از آنجائیکه سیستم های اطلاعاتی و برنامه های کاربردی یک سازمان غالبا توسط افراد و پروژه های مختلف به مـرور زمان در مواجهـه با نیـازهای جدید سـاخته یا تغییر شـکل داده می شـوند، یکسـان سـازی آنها امری ضروری می باشد.در بسیاری از موارد نیز سیستم های اطلاعاتی در بستر های مختلف پایگاه داده مانند Microsoft SQL Server ،Oracle ، Sybase ، MicrosoftAccess و غیره طراحی گردیده اند. بررسی جداول، برقراری ارتباط بین فیلدها و یک شکل سازی داده ها در این مرحله صورت می پذیرد.
  3. بارگذاری داده های تبدیل شده به یک پایگاه داده چند بعدی بر خلاف پایگاه داده سیستم های عملیاتی (OLTP) که دارای معماری رابطه ای می باشند و از اصول نرمالیزه استفاده می کنند، طراحی انبار داده به شکلی ویژه بدون بهره گیری از اصول نرمالیزاسیون می باشد. درانبار داده فیلدها در جاهای مختلفی تکرار می شوند و روابط بین جداول کمتر به چشم می خورند. علت آن هم افزایش سرعت پردازش اطلاعات هنگام گزارشات و عملیات آماری می باشد.
  4. تولید مقادیر از پیش محاسبه شده جهت افزایش سرعت گزارش گیری مـقادیر از پیـش محاسـبه شده را تراکـم نیـز مـی نامـند. ایـن مرحلــه توســط سیستـم هایی نظــیر MicrosoftSQL Server Analysis Services بسیار ساده تر شده است. ایـن تراکم ها کـه در ابـعاد مختلـف انبار داده سـاخته می شوند، موجب می شوند که سرعت انجام عملیات گزارش گیری به شکل محسوسی افزایش یابد. باید توجه داشت که عملیات ساخت این مقادیر بسیار زمان گیر بوده و نیازمند حافظه زیادی بر روی سروراست.
  5. ساخت (یا خرید) یک ابزار گزارش گیری پس از انجام مراحل فوق، شـما می توانـید نسبـت به ساخت یا خـرید یـک نرم افزار گزارش گیـری تصمیم گیری نمایید. به طور معمـول هزینه سـاخت یک نرم افزار گزارش گـیری، بالاتـر از هزینـه خریـد آن از یک شرکت خارجـی می شود.

 

نیاز به داده‌های تاریخی یکی از موارد مهم درشیوه انبار داده‌هاست. داده‌های تاریخی برای تحلیل روند کسب و کار ضروری هستند. البته هزینه نگهداری این گونه داده‌ها نیز باید مورد توجه قرار گیرد. بعلاوه، داده‌های انبار داده‌ها ثابت هستند، برای مثال دسترسی به DW ) WareHouse ) از نوع خواندنی است. انجام اصلاحات در این داده‌ها فقط هنگامی صورت می‌گیرد که اصلاحات داده‌های منبع در انبار انتشار یابند. DW ) WareHouse ) داده‌های دیگری به نام داده‌های اشتقاق یافته (derived data) دارد. این داده‌ها به طور صریح در منابع عملیاتی ذخیره نمی‌شوند، بلکه در حین بعضی از فرایندها از داده‌های عملیاتی، اشتقاق می‌یابند. برای مثال داده‌های فروش را می‌توان در سطوح مختلف (هفتگی، ماهانه، فصلی) در انبار ذخیره نمود.

تفاوت انباره داده (DW  WareHouse ) با پایگاه داده(DB) در چیست؟

۱- بانک اطلاعاتی (پایگاه داده) برای ثبت سریع و بی‌درنگ تراکنش‌های یک سیستم استفاده می‌شود (OLTP) . درصورتی‌که از انباره‌های داده برای آنالیز و تصمیم‌گیری‌های کلان استفاده می‌شود (OLAP).

۲- روابط بین جداول در بانک‌های اطلاعاتی پیچیده می‌باشند درحالی‌که انباره‌های داده روابط پیچیده‌ای ندا ردند و برای بالا بردن سرعت تقریباً نرمال‌سازی نمی‌شوند.

۳- بانک اطلاعاتی موجودیت محور هست یعنی در طراحی آن موجودیت‌ها نقش اصلی را بازی می‌کنند درحالی‌که در انباره داده این مدل‌های داده‌ای هستند که نقش اصلی رو در طراحی ایفا می‌کنند.

۴- بانک‌های اطلاعاتی جهت درج داده طراحی می‌شوند درحالی‌که انباره‌های داده بیشترین تمرکز را در سرعت در خواندن داده دارند.

۵-سرعت بانک اطلاعاتی در گزارش‌هایی جهت آنالیز اطلاعات بسیار پایین است اما سرعت آنالیزها در انباره داده بیشتر هست.

و درنهایت یک انباره داده معمولاً یک بانک اطلاعاتی است و همچنین ممکن است یک انباره داده از چند بانک اطلاعاتی داده دریافت کند.

 : Online Transaction Processing  سیستم‌هایی می‌باشند که برای اهداف اصلی سازمان استفاده می‌شوند و این سیستم‌ها کار پردازش و ذخیره کردن داد‌ه‌ها را در OLTP Database انجام می‌دهند. مانند تمامی سیستم‌های ERP,MIS,…

سیستم‌های عملیاتی (OLTP)

سیستم‌هایOLTP که به آن‌ها سیستم‌های پردازش تراکنش آنلاین نیز می‌گویند معمولا دارای ویژگیهای زیر هستند:

محیطی برای ورود داده‌ها و فعالیت‌های روزانه کسب و کار هستند.

به دلیل کوتاهی عملیات حذف، تغییر و ویرایش اطلاعات دارای سرعت قابل توجهی می‌باشند.

کاربران این سیستم‌ها، عموما اپراتورها هستند.

الگو و ساختار پایگاه داده این سیستم‌ها از فرم سوم نرمال‌سازی استفاده می‌کند. به طور معمول هر تراکنش کاربر در کمترین زمان ممکن برروی این سیستم‌ها ذخیره می‌گردد و در طول روز بار‌ها دستورات (Insert/Update/Delete ) برروی آنها انجام می‌شود. این پایگاه‌های داده، همان Main Data ‌ها یا Source System ‌ها می‌باشند.

سیستم‌های تحلیلی (OLAP)

این سیستم شامل تاریخچه اطلاعات به منظور ایجاد گزارش‌های تحلیلی است تا در اختیار مدیران سازمان قرار گیرد.

به دلیل تحلیل حجم بالایی از داده‌ها معمولاً کندتر از سیستم‌های عملیاتی می‌باشند.

استفاده کنندگان این سیستم‌ها معمولاً مدیران و تصمیم گیرندگان سازمان می‌باشند.

صرف نظر از منابع داده یک مدل داده مشترک برای تمام داده‌های مورد علاقه ارائه می‌دهد.

ساختار پایگاه داده این سیستم‌ها معمولا بانک اطلاعاتی رابطه‌ای غیرنرمال است.

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

Data Mart

Data Mart یک فرم ساده از یک انبار داده‌ها است که در مورد یک موضوع واحد از قبیل فروش، امور مالی یا بازاریابی متمرکز است. Data Mart اغلب توسط یک بخش از سازمان ساخته و کنترل می‌شود. با توجه به تمرکز Data Mart بر روی یک موضوع، معمولا داده‌های تعداد محدودی از منابع را ترسیم می‌کند. این منابع می توانند سیستم‌های عملیاتی داخلی، یک انبار داده مرکزی، و یا داده‌های خارجی باشند.

ویژگی‌های داده‌های درون انبار داده( DW  WareHouse )

داده‌های DW از نگاه Inmon دارای ۴ ویژگی اصلی زیر هستند:

  • غیرفرار و ماندگار(Non-Volatile)

هیچ رکوردی و یا داده‌ای Update نخواهد شد و صرفاً رکوردهایی که محتوای مقادیر جدید داده‌ها هستند، به سیستم اضافه خواهند شد.

  • موضوع گرا (Subject-Oriented)

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

  • یکپارچه (Integrated)

باید تمامی کدهایی که در سیستم‌های عملیاتی وجود دارند و معانی یکسانی دارند، برای مثال کد جنسیت، در  (DW WareHouse ) به یک روش ذخیره و نمایش داده شوند. با توجه به اینکه داده‌ها از سیستم‌ها و منابع مختلف جمع‎اوری می‌گردند تکنیک های مختلف عملیات یکپارچه‌سازی و تجمیع داده‌ها به منظور تامین یکپارچگی داده به کار گرفته می‌شود.

  • زمانگرا (Time Variant)

هر رکورد باید حاوی فیلد و یا کلیدی باشد که نمایانگر این باشد که این رکورد در چه زمانی ایجاد، استخراج و ذخیره شده است. از آنجا که داده‌های درون سیستم‌های عملیاتی آخرین و به روز‌ترین داده هر سیستم می‌باشد، نیازی به وجود چنین عنصری در سیستم‌های OLTP احساس نمی‌گردد، ولی چون در DW ) WareHouse ) تمام داده‌های نسخ قدیمی داده‌های سیستم‌های عملیاتی موجود می‌باشد، باید حتماً مشخص گردد که هر داده‌ای در سیستم‌های عملیاتی در چه زمانی، چه مقادیری داشته است.

ساختار ذخیره‌سازی انبارداده( DW  WareHouse )

ساختار ذخیره سازی انبار داده از دو نوع جدول Fact و Dimenstion است.

 :Dimenstion جدول‌هایی حاوی اطلاعات توصیفی هستند. اطلاعات توصیفی داده‌های مانند نام مشتری، عنوان شغل، نام شرکت و حتی اطلاعات جغرافیایی محل سکونت مشتری می‌باشند. هر جدول Dimension حاوی فهرستی از فیلدها است که به آن‌ها مشخصه (Attribute) می‌گویند. هر مشخصه حاوی اطلاعات توصیفی است و مشخصه‌هایی که به یکدیگر مرتبط هستند در یک Dimension قرار می‌گیرند.

Fact: جدولی حاوی فیلدهایی از نوع Measure و تعدادی Foreign Key است که به جداولی از نوع Dimension اشاره می‌کند. جدول‌های Fact معمولاً تعداد زیادی از رکوردها را در خود ذخیره می‌کنند. اغلب فضای انبار داده‌ – چیزی در حدود ۸۰ درصد – را به خود اختصاص می‌دهند.

 

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

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

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

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

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

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

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

  • تولید مقادیر از پیش محاسبه شده جهت افزایش سرعت گزارش گیری

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

 

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

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

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

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

داده‌های دیگری به نام داده‌های اشتقاق یافته (derived data) دارد. این داده ها به طور صریح در منابع عملیاتی ذخیره نمی‌شوند، بلکه در حین بعضی از فرایندها از داده های عملیاتی، اشتقاق می‌یابند. برای مثال داده های فروش را می‌توان در سطوح مختلف (هفتگی، ماهانه، فصلی) در انبار ذخیره نمود.

طراحی انبار داده ها

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

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

ETL ( extract, transform, and load ) : مراحل انتقال داده از OLTP Database به پایگاه داده‌ی Stage می‌باشد .

ETL سیستمی می‌باشد که توانایی اتصال به OLTP را دارد و اطلاعات را از OLTPواکشی می‌کند و به پایگاه داده‌ی Stage انتقال می‌دهد.

سپس ETL داده‌ها را مجتمع ( integrates ) کرده و از Stage به DDS ( Dimensional Data Source)  انتقال می‌دهد .

Retrieves Data : عملیات واکشی داده‌ها طبق یک سری قوانین و قواعد می‌باشد .

برای انجام عملیات ETL دو روش وجود دارد

Data مجتمع ( Integrate ) و تمیز ( Data cleansing ) شود و در نهایت وارد DW گردد.

Data وارد Data Warehouse گردد سپس مراحل مجتمع سازی و پاک سازی داده‌ها بر روی داده‌ها در خود  (DW  WareHouse ) انجام گردد.

 :Consolidates Data برخی شرکت‌ها داده‌های اصلی خودشان را در چندین پایگاه داده دارند. در این حالت برای انجام عملیات ETL باید داده‌ها تحکیم و مجتمع شوند و سپس در( DW  WareHouse ) ذخیره شوند.

به طور کلی موارد زیر در فرایند ETL در نظر گرفته می‌شود:

: Data availability  برخی داده‌ها در یک سیستم وجود دارند ولی در سیستم دیگری وجود ندارند و یا تفاوت در نگهداری داده‌ها در سیستم‌های مختلف داریم. مثلا در یک سیستم آدرس در سه فیلد نگه داری می‌شود (کشور-شهر-آدرس) اما در سیستمی دیگر در دو فیلد(کشور-آدرس) نگه داری می‌شود. در این حالت باید ما در ETL راه کار هایی برای مجتمع کردن این موارد در نظر بگیریم.

 :Time ranges در سیستم‌های مختلف امکان دارد بعد‌های زمانی مختلف باشد . مثلا در یک سیستم بررسی‌ها در بازه‌ی ساعتی و در سیستم دیگر بررسی‌ها در بازه‌ی روزانه یا ماهانه باشد . بنابر این در تجمیع داده‌ها باید این مورد مد نظر گرفته شود.

 :Definitions تعاریف در سیستم‌های مختلف می‌تواند متفاوت باشد. مثلا در یک سیستم، مبلغ کل فاکتور شامل مالیات می‌باشد ولی در سیستمی دیگر این مبلغ فاقد مالیات می‌باشد.

 :Conversion   در فرآیند ETL باید باز از قواعد موجود در سیستم‌های مختلف آگاهی داشته باشیم. مثلا در یک سیستم ممکن است دما را به صورت سانتیگراد و در دیگری فارنهایت نگه داری کنند.

 :Matching   باید بررسی لازم را انجام دهیم که کدام داده مرتبط با کدام سیستم می‌باشد. به عبارت دیگر کدام سیستم مالک داده می‌باشد و دقیقا داده‌ها در کدام سیستم معتبر‌تر می‌باشند. مثلا پرسنل، هم در سیستم حسابداری می‌باشند هم در سیستم پرسنلی؛ ولی معمولا داده‌های اصلی از سیستم پرسنلی می‌آیند.

 :Periodically عملیات واکشی داده‌ها ( Retrieves Data ) و مجتمع سازی داده‌ها (Consolidates Data ) در فرآیند ETL فقط یکبار اتفاق نمی‌افتد و این مراحل در بازه‌های زمانی خاص تکرار می‌گردند. این واکشی و انتقال داده‌ها می‌تواند در روز چند بار تکرار شود یا می‌تواند چند روز یک بار اجرا گردد و این بستگی دارد به سیاست موجود در DW  WareHouse

 

 

Dimensional Data Source

(DW ) WareHouse DDS (Dimensional Data Source) یک پایگاه داده از نوع نرمال شده   (Normalized ) یا بعدی ( Dimensional ) می‌باشد. که داده‌های مجتمع شده و تمیز شده سیستم‌های OLTP را در خود جای داده است. این پایگاه داده برای واکشی‌های سیستم‌های آنالیز داده مورد استفاده قرار می‌گیرد. ورود اطلاعات در Data Warehouse به صورت Batch می‌باشد و به هیچ عنوان مانند پایگاه داده‌های OLTP ویرایش داده‌ها به صورت Online و هر زمان که داده‌ها تغییر می‌کنند، صورت نمی‌گیرد. اطلاعات در (DW  WareHouse ) معمولا به صورت تجمیع شده روزانه، ماهانه، فصلی یا سالانه می‌باشد. DDS ‌ها مجموعه ای از Dimensional Data Mart ‌ها هستند. و عمدتا به صورت denormalized می‌باشند.

 :Dimensional Data Mart مجموعه ای از جداول Fact , Dimension می‌باشند که در یک بیزینس خاص باهم در ارتباط و مشترک می‌باشند.

dimensional data store schemas طراحی‌های مختلفی از جداول Fact , Dimension در DDS وجود دارد که عبارتند از:

Star schema : ساده‌ترین روش پیاده سازی DW WareHouse

:Snowflake  این روش جداول Dimension کمی نرمال سازی بیشتری دارند. سیستم‌های آنالیز داده با این روش بهتر کار می‌کنند.

:Galaxy schemas  طراحی در این روش بسیار سخت و پیچیده می‌باشد. با این وجود فرایند ETL در این طراحی ساده‌تر انجام می‌شود.

 

تفاوت‌های DDS و NDS

در DDS ‌ها هیچ گونه نرمال سازی خاصی انجام نمی‌دهیم و عملا تمامی جداول را دینرمال کرده ایم، در حالی که در NDS تمامی جداول تا سطح سوم و گاهی تا سطح پنجم نرمال شده اند.

سرعت واکشی و پردازش کوئری‌ها روی DDS خیلی بیشتر از NDS ‌ها می‌باشد.

در صورتی که نیاز باشد (DW  WareHouse ) ‌های خیلی بزرگ طراحی کنیم با حجم بسیار زیاد توصیه می‌شود از NDS ‌ها استفاده شود در حالی که برای (DW  WareHouse ) ‌های کوچک و متوسط بهتر است از DDS ‌ها استفاده شود.

:History  جداول (DW  WareHouse ) میتوانند در طول زمان بسیار بزرگ شوند و دارای تعداد رکورد زیادی گردند. اینکه حداکثر داده‌های چند سال را در (DW  WareHouse ) نگه داری کنیم بستگی به سیاست‌های سازمانی دارد که سیستم OLAP برای آن تهیه می‌گردد. استفاده کردن از table partitioning می‌تواند در جبران افزایش تعداد رکورد کمک زیادی به ما بکند.

 :slowly changing dimension (SCD) سه روش برای نگه داری سابقه‌ی تغییرات در جداول Dimension وجود دارد.

  SCD type 1هیچ گونه سابقه‌ی تغییراتی را نگه داری نمی‌کنیم.

SCD type 2 سابقه‌ی تغییرات در ردیف‌ها نگه داری می‌شود. در این روش هر ردیف، شماره ردیف قبلی را دارد و تعداد نا محدودی از تغییرات را نگه داری می‌کنیم.

SCD type 3 سابقه‌ی تغییرات در ستون‌ها نگه داری می‌شوند و فقط ردیف جاری و آخرین تغییرات را نگه داری می‌کنیم.

 : Query فقط ETL حق تغییرات در ( DW WareHouse ) را دارد و کاربر نمی‌تواند DW  WareHouse  را تغییر دهد. البته کاربران حق Query کردن از (DW  WareHouse ) را دارند. دقت داشته باشید که کوئری‌های پیچیده در NDS ‌ها بسیار کندتر از همان کوئری در DDS می‌باشد.

 : Business Intelligence مجموعه ای از فعالیت‌ها که در یک سازمان برای شناخت بهتر وضعیت Business آن سازمان انجام می‌شود. نتایج BI کمک بسیاری برای تصمیم گیری‌های تکنیکی و استراتژیکی درون سازمان می‌کند. همچنین کمک به بهبود فرایند‌های Business جاری می‌کند.

سبد خرید

هیچ محصولی در سبد خرید نیست.

Select the fields to be shown. Others will be hidden. Drag and drop to rearrange the order.
  • Image
  • SKU
  • Rating
  • Price
  • Stock
  • Availability
  • Add to cart
  • Description
  • Content
  • Weight
  • Dimensions
  • Additional information
  • Attributes
  • Custom attributes
  • Custom fields
Click outside to hide the comparison bar
Compare