مفاهیم انبار داده

collaboration desk

(OLTP ( Online Transaction Processing

این سیستم‌ها کار پردازش و ذخیره‌سازی داده‌ها بروی OLTP DataBase را انجام می‌دهند و برای اهداف اصلی سازمان طراحی می‌شوند. سیستم‌های ERP  و MIS نمونه‌هایی از این سیستم می‌باشند. انبار داده

OLTP Database: این پایگاه‌های داده که همان Main Data  یا Source System می‌باشند وظیفه ذخیره‌سازی تراکنش‌های کاربران را در کمترین زمان ممکن را دارند بطوریکه دستوراتInsert  و Update و Delete بارها در طول روز بروی آن‌ها اعمال می‌شوند.

(ETL(extract, transform, and load: انبار داده

 به دلیل قابلیت اتصال به OLTP وظیفه واکشی اطلاعات از OLTP بروی Stage DataBase را دارد سپس داده‌ها توسط ETL مجتمع شده و به DDS ( Dimensional Data Source ) منتقل می‌شوند.عملیات واکشی داده‌ها بر اساس قواعد و قوانینی انجام می‌پذیرد که به آن Retrieves Data می‌گویند . پس بطور خلاصه  مراحل انتقال داده‌ها از OLTP به Stage DataBase  و سپس به DDS را شامل می‌شود.

عملیات ETL را می‌توان با ورود اطلاعات به انبار داده(Data Warehouse) و سپس انجام پاکسازی و اجتماع (Integrate And Data Cleansing) انجام داد  ویا برعکس این روال یعنی انجام عملیات پاکسازی و اجتماع و سپس وارد کردن آن به انبارداده را در پیش گرفت. البته در بعضی سازمان‌ها به دلیل تعدد پایگاه‌های داده باید داده‌ها را ادغام نمود(Consolidates Data) و سپس به ورود آنها به انباره داده اقدام کرد.

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

Data availability : در هر سیستم ممکن است داده هایی وجود داشته باشند که در سیستم دیگر وجود نداشته باشد و یا شکل ذخیره سازی و نگه داری آن متفاوت باشد بعنوان مثال ممکن است در یک سیستم نام مستعار شخص وجود نداشته باشد و در سیستم دیگر موجود باشد یا آدرسها در تعداد فیلدهای مختلف ذخیره شده باشند.

  1. Time ranges: بعد زمانی نیز ممکن است در سیستم های مختلف بصورت متفاوتی اعمال شده باشند مثلا بصورت ساعتی ، روزانه ، هفتگی ویا ماهیانه باشد.
  2. Definitions: تعاریف نیز ار جمله مواردی است که می تواند بصورت متفاوتی در نظر گرفته شود . مثلا در یک سیستم به فیلدهایی مالیات تعلق می گیرد ولی در سیستم دیگر تعلق نمی گیرد .
  3. Conversion: در فرایند ETL باید از قواعد و قوانین سیستم های مختلف آگاهی داشته باشیم چراکه ممکن است دریک سیسنم از فارنهایت و در سیستم دیگر از سلسیوس برای اندازه گیری دما استفاده شده باشد.
  4. Matching: تشخیص اینکه داده ها به کدام سیستم مرتبط تر هستند و یا بعبارت دیگر کدام سیستم مالک داده می باشد.مثلا مقادیر مرتبط با نیروی انسانی در سیستم حسابداری و پرسنلی می باشد ولی بصورت کلی این داده ها از سیستم پرسنلی واکشی می شود.

6.Periodically :در فرایند ETL ، واکشی اطلاعات ( Retrieves Data ) و مجتمع سازی داده ها ( Consolidates Data ) در بازه ههای زمانی مختلف صورت می گیردو بسته به سیاست Data Warehouse بصورت روزانه یا چندبار در روز انجام پذیرد

(DDS (Dimensional Data Source) (Data Warehouse :انبار داده

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

Dimensional Data Mart : به جداول Dimensional fact  مرتبط و مشترک در کسب و کارهای مختلف را می گویند.

(انواع مختلف Dimensional fact  در DDS ( dimensional data store schemas :

  1. Star schema : ساده‌ترین روش پیاده سازی انبار داده
  1. Snowflake: برای سیستم های آنالیز داده مناسب هستند و نسبت به مدل Star، جداول Dimention به نرمال سازی بیشتری نیاز دارد.
  2. Galaxy schemas : با اینکه فرایند ETL در این طراحی بهتر کار می کند اما پیاده سازی آن بسیار سخت و دشوار می باشد.

تفاوت‌های DDS و NDS :انبار داده

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

3.NDS مناسب برای انبار های داده بسیار بزرگ می باشد و DDS برای انبارهای داده کوچک و متوسط .

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

(سه روش نگهداری سوابق تغییرات History (slowly changing dimension (SCD)

نوع اول : هیچگونه سوابقی را نگهداری نمیکند .

نوع دوم : در این روش تعداد نامحدودی از تغییرات در ردیف ها نگهداری می شود .

نوع سوم : در این روش فقط آخرین تغییرات در ستون ها نگهداری می شود .

 Query : اجازه تغییرات فقط در اختیار ETL می باشد و کاربران بجر کوئری کردن انبارداده اجازه تغییر در انباره داده را ندارند.

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

سه دسته اصلی از فعالیت‌های هوش تجاری (BI) :انبار داده

  1. Reporting : گزارشاتی که عمدتا به صورت tabular form می‌باشند. این گزارشات از انبار داده گرفته می شود و به برای کاربر به نمایش گذاشته می شود.
  1. OLAP : فعالیت هایی که برای ایجاد گزارشات Drill-Down و … بروی MDBانجام می پذیرد
  2. Data mining : کشف الگوها ، رفتارها و ارتباطات درون سیستم بوسیله فرایند واکشی و داده کاوری را شامل می شود.
  1. descriptive analytics : این داده کاوی برای برسی و تشریح وقایع حال و گذشته استفاده می شود.
  1. predictive analytics : این داده کاوی برای پیش بینی وقایع گذشته استفاده می شود.

انبارداده هایی که تغییرات 5 دقیقه تا یک ساعت پیش را در سوابق خود دارند و در کمترین زمان ممکن تغییرات را در خود اعمال می کنند.

روش هایی که میتوان به Real time data warehouse  دسترسی پیدا نمود:

1.برای هر جدول از انبارداده ، Trigger هایی در نظر گرفته شود تا باعث انتقال تغییرات به انبارداده شود.

2.با ایجاد تغییرات در سورس برنامه اصلی علاوه براینکه OLTP Database ها تغییر می کنند بروی انبار داده نیز تغییرات اعمال می شود و باعث افزایش سرعت و کارایی برنامه اصلی می شود.

(NDS ( Normalize Data Source: طراحی انبار داده براساس نرمالایز(Normalize) را NDS میگویند .

به خاطر داشته باشید که Source System ‌ها جزئی از Data Warehouse نمی‌باشند.

از کاربرد‌های Data Warehouse می‌توان به موارد زیر اشاره کرد:

  1. Data Mining
  1. استفاده در گزارشات
  1. تجمیع داده ها

 Data Mining  باعث کشف دانش هایی از درون داده ها می شود و به درک بهتر کسب و کار کمک زیادی می کند . برای انجام داده کاوی یا دیتاماینینگ میتوان از انواع پایگاه داده(رابطه ای ، سلسله مراتبی و چند بعدی) ، فایلهای XML و Excel نیز استفاده نمود.

(Customer Relationship Management (CRM: سیستم CRM از برنامه هایی تشکیل شده است که تمام فعالیت های مشتریان را پشتیبانی میکند . در این تعریف مشتری به شخصی گفته می شود که از سرویس ارائه شده توسط سازمان شما استفاده مینماید.

(Operational Data Store (ODS: پایگاه داده از نوع ODS شامل تجمع تمام اطلاعات OLTP Database می باشد.این نوع پایگاه داده بصورت نرمالایز و رابطه ای میباشد. تفاوت بارز بین ODSها و DWها در این است که در ODSها داده ها با هر تراکنشی بروز می شوند.بعبارت دیگر سرعت بروز رسانی در ODSها نسبت به DWها بسیار بالاتر می باشد.

(Master Data Management (MDM

2 دسته مهم داده ها: انبار داده

1-داده های تراکنشی(Transaction Data)

2- داده های اصلی (Master Data)

داده های تراکنشی در سیستم های OLTP قرار دارند .

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

جهت تشخیصTransaction Data و Master Data باید کسب و کار سازمان را به درستی شناخت. رویداد‌های کسب و کار که همان داده های تراکنشی یا transaction data می‌باشند و master data پاسخ‌های سوالاتی  همچون چه کسی ، چه چیزی و کجا می باشد.

(Customer data integration (CDI: واکشی، پاک سازی ، ذخیره سازی ، نگه داری و به اشتراک گذاشتن داده های مشتری می باشد.

Unstructured Data: داده هایی مانند تصاویر(Photo)،ویدئو(Movie) و صدا(Voice)    که در DataBase دخیره سازی شده است را structured Data می گویند.

(Service-Oriented Architecture (SOA: ساخت برنامه به روش ماژولار که در آن تمام قسمتهای برنامه بصورت یک سرویس با سیستمهای دیگر در ارتباط هستند را SOA می گویند .

 Real-Time Data Warehouse: انباره داده ای که در هنگام ایجاد یک تراکنش برروی OLTP بوسیله ETL بروزرسانی می شود.

Data quality : مکانیزمی جهت برسی داده های نامناسب و ممانعت از ورود آنها در انباره داده می باشد .

برای بهتر مشخص شدن مکان DQ شکل زیر را در نظر بگیرید.

`نحوه‌ی حرکت داده ای از OLTP به MDB اولین چیزی می‌باشد که شما باید به آن فکر کنید و برای آن روشی را انتخاب نمایید قبل از ساخت   Data Warehouse .

چهار معماری انتقال اطلاعات از OLTP به DW :انبار داده

(البته به عنوان نمونه و شما می‌توانید از روش‌های دیگر و طراحی‌های مختلف و ترکیبی نیز بهره ببرید)

  1. single DDS : در این روش فقط Stage , DDS وجود دارد.
  2. NDS + DDS : در این روش علاوه بر Stage,DDS از NDS نیز استفاده می‌شود.
  3. ODS + DDS : در این روش از Stage,ODS,DDS استفاده می‌گردد.
  4. federated data warehouse (FDW ) : استفاده از چندین DW که با هم تجمیع شده اند.

این چهار دسته اصلی می باشند و روشها و طراحی های ترکیبی نیز می تواند.راه کار مناسبی برای سازمان باشد.

 

نوشتهٔ پیشین
انباره داده و روش طراحی و پیاده سازی آن
نوشتهٔ بعدی
آخرین تغییرات پاور بی ای دسکتاپ (Power BI Desktop)

آخرین مطالب


گوگل با معرفی مدل جدید زبان بزرگ خود (LLM)، Gemini…
گوگل بارد Bard یک چت بات، انقلابی برای هوش مصنوعی…
چگونه یک متخصص BI تبدیل؟ این یک مسیر خطی نیست،…
برنامه Microsoft Power BI خود را به عنوان یک ابزار…
Api‌های POWER BI REST (رابط‎‌های برنامه نویسی برنامه) یک مجموعه…
فهرست