انبارداده (Data Warehouse) و دریاچه داده (Data Lake) و بازار داده (Data Mart) و دیتا کیوب

تفاوت انبارداده (Data Warehouse) و دریاچه داده (Data Lake)

دریاچه داده محلی برای نگهداری بیگ دیتا است. با بیان ساده، مفهوم دریاچه داده را می‌توان اینگونه توضیح داد که اگر انبار داده را مشابه یک بطری آب تصفیه‌شده، بسته‌بندی شده و آماده مصرف در نظر بگیریم، دریاچه داده (همانند نام آن) دریاچه‌ای است که آب از منابع مختلف ( آب باران، چشمه‌ها، رودها یا منابع دیگر) در آن سرازیر شده و افراد می‌توانند از آب دریاچه برای شنا، آشامیدن یا حتی نمونه‌برداری! استفاده کنند.

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

دریاچه داده
دریاچه داده

در انبارداده، داده‌های ساختاریافته (Structured Data) قرار می‌گیرند در حالی که در دریاچه داده  هر نوع داده‌ای (چه ساختاریافته و چه غیرساختاریافته) می‌توانند در دریاچه داده یا همان Data Lake ذخیره شوند.

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

انبارداده (Data Warehouse)
انبارداده (Data Warehouse)

تفاوت بازار داده (Data Mart) با انبار داده (Data Warehouse)

اگر شما بخواهید یک بسته آدامس بخرید، طبیعتا به انبار آدامس رجوع نمی‌کنید و به سراغ بازار (همان سوپر مارکت‌ها) رفته و از آن‌جا خرید خود را انجام می‌دهید. انبار داده (Data Warehouse) و بازار داده (Data Mart) نیز این چنین تفاوتی نسبت به یکدیگر دارند.

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

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

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

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

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

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

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

رابطه بازار داده و انبار داده
رابطه بازار داده و انبار داده

البته بازار داده لزوما نباید از انبار داده استخراج شود. برای مثال می‌توانید بازار داده را از منابع داده‌ی عملیاتی (Operational Data Sources) مستقیما استخراج کنید. یعنی به جای اینکه اول انبار داده را ساخته و سپس از روی آن بازار داده را بسازید، می‌توانید مستقیما بازار داده را از منابع عملیاتی بسازید. مانند این است که برای ایجاد یک بازار واقعی (مثلا سوپر مارکت) لزوما نیاز به یک انبار ندارید.

ساخت یک بازار داده (Data Mart) به مراتب ساده‌تر و کم‌هزینه‌تر از ساخت یک انبار داده است و در زمان نیز صرفه‌جوبی می‌شود. بسیاری از سازمان‌ها یا شرکت‌های بزرگ که به واحدهای کوچک‌تر تقسیم‌بندی می‌شوند، می‌توانند از بازار داده به جای انبار داده برای طراحی‌های خود استفاده کنند.

لایه های معماری انباره داده

لایه پایینی:

سرور معماری انبار داده، شامل سرور پایگاه داده رابطه‌ای است که از ابزارهای  Back-End و دیگر ابزارهای کاربردی برای انتقال اطلاعات از منابع مختلف داده‌ای مانند پایگاه داده‌های تراکنشی و غیره، به لایه پایینی استفاده می‌شود. این ابزارهای کاربردی و ابزارهای  Back-End عملکردهای Extract، Clean ،Load و Refresh را انجام می‌دهند.

لایه میانی:

لایه‌ی میانی یک سرور OLAP را در اختیار می‌گیرد که به وسیله‌ی آن داده‌ها را به یک ساختار مناسب‌تر تبدیل می‌کند تا بتوان به کوئری‌های پیچیده بر روی داده‌ها و تحلیل آن‌ها دسترسی داشت. این سرور به دو روش می‌تواند کار کند:

الف) Relational OLAP (ROLAP): یک سیستم مدیریت پایگاه داده رابطه‌ای گسترده است. ROLAP عملیات بر روی داده‌های چند بعدی را به عملیات‌های رابطه‌ای استاندارد تبدیل می‌کند.

ب) Multidimensional OLAP (MOLAP): که به طور مستقیم داده‌های چند بعدی و عملیات را اجرا می کند.

لایه بالایی:

لایه بالایی، لایه client یا front-end است. این لایه، ابزارهایی را برای استفاده در زمینه‌های تجزیه و تحلیل داده، پرس وجو (کوئری) گزارش‌گیری و داده کاوی فراهم می‌آورد.

دیتا لیک و انبارداده (Data Warehouse)
دیتا لیک و انبارداده (Data Warehouse)

تعریف Data Cube

Data Cube یک محدوده سه بعدی یا بالاتر است که معمولا برای توضیح توالی زمان یک داده استفاده می شود. Data Cube ها برای نمایش داده های پیچیده، که توسط جدولی از سطرها و ستون ها توصیف می شود، استفاده می شوند که در آن داده ‌ها به صورت چند بُعدی نمایش داده شده و هر بُعد یک ویژگی از انبار داده را نشان می‌دهد. به عنوان مثال، فروش روزانه، ماهانه یا سالانه..

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

سیستم پردازش تحلیلی برخط OLAP

سیستم های OLAP نام خود را از عبارت (Online Analytical Process) با معنی تحت اللفظی سیستم های پردازش تحلیلی برخط گرفته اند.می‌ توان به جای OLAP از واژه پردازش سریع اطلاعات چند بعدی و یا به عبارت بهتر از ” فن آوری تحلیل داده ها” استفاده کرد. این سیستمها بر اساس تکامل سیستمهای OLTP به معنی پردازش آنلاین تراکنش ها (On Line Transaction Processing ) ایجاد شده اند .

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

دسته بندی Data Cube:

Data Cube ها عمدتا به دو دسته تقسیم می شوند.

  1.   Data Cubeچند بعدی : اکثر محصولات OLAP بر اساس ساختاری طراحی شده اند که داده ها را به شکل آرایه های مرتب شده بر اساس ابعاد داده ذخیره می کنند. MOLAP در مقایسه با رویکردهای دیگر و به دلیل ساختار خاص نگهداری اطلاعات، از سرعت بالایی برخوردار است و کارایی را بهبود می بخشد. وقتی که تعداد ابعاد بزرگتر است، مکعب کوچکتر می شود.
  2.   OLAP رابطه ای : OLAP ارتباطی یا ROLAP، از مدل پایگاه داده رابطه ای استفاده می کند. و عملیات OLAP را در قالب استفاده از مدل Relational ساماندهی می کند و لذا از سیستم های MOLAP کندتر عمل می کنند و به فضای بیشتری نیز نیاز دارند.
رابطه مکعب داده و انبار داده
رابطه مکعب داده و انبار داده

آدرس کانال تلگرام سایت بیگ دیتا:

t.me/bigdata_channel

آدرس کانال سروش ما:
https://sapp.ir/bigdata_channel

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

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

منابع

https://keysun-co.com/tag/%D8%AF%DB%8C%D8%AA%D8%A7-%D9%85%D8%A7%D8%B1%D8%AA-%DA%86%DB%8C%D8%B3%D8%AA/

https://researchyar.ir/%D8%A2%D8%B4%D9%86%D8%A7%DB%8C%DB%8C-%DA%A9%D8%A7%D9%85%D9%84-%D8%A8%D8%A7-%D8%A7%D9%86%D8%A8%D8%A7%D8%B1-%D8%AF%D8%A7%D8%AF%D9%87-%D9%87%D8%A7%D8%A2%D8%B4%D9%86%D8%A7%DB%8C%DB%8C-%D8%A8%D8%A7-datawa/

http://qlikiran.com/data-lake/.

https://keysun-co.com/data-cube/

دیدگاهتان را بنویسید

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