درباره انبار داده چه می‌دانید؟

درباره انبار داده چه می‌دانید؟

نوشته شده توسط: تیم فنی نیک آموز
تاریخ انتشار: ۰۸ آذر ۱۴۰۰
آخرین بروزرسانی: 28 آبان 1403
زمان مطالعه: 9 دقیقه
۰
(۰)

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

الزامات تجاری: داشبوردها و تحلیل ‌ها

فرض کنیم شما برای یک شرکت تجارت الکترونیک کار می ‌کنید و در آنجا فروشندگان (Merchant) می‌ توانند اقلام را برای فروش عرضه کنند و خریداران (Customer) برای خرید آنها اقدام نمایند. فرض می ‌کنیم دو تا میکروسرویس برای بخش خریداران و فروشندگان طراحی شده است.

الزامات تجاری: داشبوردها و تحلیل ‌ها

مشاهده و خرید کامل‌ترین دوره Power bi از نیک آموز

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

  • ده فروشنده ‌ای که بالاترین تعداد اقلام فروش را داشته‌ اند.
  • میانگین زمان برای انجام یک سفارش.
  • شناسایی مشتریانی که اقلام مشابه را با هم خریداری نموده ‌اند.
  • ایجاد داشبورد فروشندگان که اقلام فروش با بالاترین عملکرد را به ازای هر فروشنده نشان دهد.

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

تعریف انبار داده (Data Warehouse)

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

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

  • Dimensional modeling – Kimball
  • Data vault – Inmon
  • Data mart
  • Flat table

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

مقایسه OLTP با OLAP مبتنی بر انبار داده

دو نوع پایگاه داده اصلی وجود دارد که در جدول زیر آن ‌ها را با هم مقایسه می‌ کنیم.OPLAP VS OLTPمهم ‌ترین نقطه قوت در کوئری ‌های تحلیلی روی OLAP به دلیل استفاده از تکنیک ذخیره ستونی در این نوع پایگاه داده است. با یک مثال این مورد را توضیح می ‌دهیم. جدول زیر را در نظر بگیریدOPLAP VS OLTPدر صورتی که این جدول را به دو صورت مبتنی بر ستون و مبتنی بر ردیف ذخیره کنیم به صورت زیر در می آید. داده‌ ها به صورت صفحات (گروهی از رکوردها) روی دیسک ذخیره می شوند.

ذخیره‌ سازی مبتنی بر ردیف

Page 1: [1,item_1,gaming,10,'2021-10-02 00:00:00','2021-11-02 13:00:00'],
Page 2: [2,item_2,gaming,20,'2021-10-02 01:00:00','2021-11-02 14:00:00']
Page 3: [3,item_3,biking,30, '2021-10-02 02:00:00','2021-11-02 15:00:00'],
Page 4: [4,item_4,surfing,40, '2021-10-02 03:00:00','2021-11-02 16:00:00'],
Page 5: [5,item_5,biking,50, '2021-10-02 04:00:00','2021-11-02 17:00:00']

ذخیره‌ سازی مبتنی بر ستون

Page 1: [1,2,3,4,5],
Page 2: [item_1,item_2,item_3,item_4,item_5],
Page 3: [gaming,gaming,biking,surfing,biking],
Page 4: [10,20,30,40,50],
Page 5: ['2021-10-02 00:00:00','2021-10-02 01:00:00','2021-10-02 02:00:00','2021-10-02 03:00:00','2021-10-02 04:00:00'],
Page 6: ['2021-11-02 13:00:00','2021-11-02 14:00:00','2021-11-02 15:00:00','2021-11-02 16:00:00','2021-11-02 17:00:00']

برای کوئری زیر بررسی می ‌کنیم هر کدام از دو حالت ذخیره‌ سازی مبتنی بر ردیف و مبتنی بر ستون چه باز خوردی خواهد داشت و چه سرباری برای سیستم ایجاد می‌ کند.
[gap height=”20″]

SELECT item_type,
    SUM(price) total_price
FROM items
GROUP BY item_type;

در حالتی که پایگاه داده مبتنی بر ردیف ذخیره‌سازی را انجام دهد برای اجرای کوئری فوق نیاز است تمام صفحات به طور کامل روی حافظه بارگزاری شود، جمع ستون price برای گروه بندی مبتنی بر ستون item_type محاسبه شود.
در حالتی که پایگاه داده مبتنی بر ستون ذخیره‌ سازی را انجام دهد برای اجرای کوئری فوق نیاز است فقط صفحات ۳ و ۴ روی حافظه بارگذاری شود و جمع ستون price برای گروه‌ بندی مبتنی بر ستون item_type محاسبه شود.
همان ‌طور که مشاهده می ‌کنید، در رویکرد ذخیره ‌سازی مبتنی بر ستون فقط باید ۲ صفحه در پایگاه داده بارگذاری شود و در مقابل ۵ صفحه در رویکرد ذخیره‌ سازی مبتنی بر ردیف باید بارگذاری شود. به علاوه پایگاه داده‌ هایی که مبتنی بر ستون ذخیره ‌سازی را انجام می ‌دهند مزایای زیر را نیز دارا هستند.

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

سخن پایانی

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

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

چه رتبه ای می‌دهید؟

میانگین ۰ / ۵. از مجموع ۰

اولین نفر باش

title sign
دانلود مقاله
درباره انبار داده چه می‌دانید؟
فرمت PDF
6 صفحه
حجم 1 مگابایت
دانلود مقاله
گوش به زنگ یلدا
title sign
معرفی نویسنده
تیم فنی نیک آموز
مقالات
401 مقاله توسط این نویسنده
محصولات
0 دوره توسط این نویسنده
تیم فنی نیک آموز
title sign
معرفی محصول
title sign
دیدگاه کاربران

  دوره حضوری و غیرحضوری  

هوش تجاری
Enterprise BI

Data Warehouse - ETL - OLAP
با تدریس: مسعود طاهری
مشاهده سرفصل دوره
close-link
close-image