تفاوت انبار داده و پایگاه داده

تفاوت انبار داده و پایگاه داده

انبار داده (Data Warehouse و یا به اختصار DW) پایگاه داده ای است که جهت ذخیره اطلاعات استفاده می­ شود و یک مخزن مرکزی ست که داده ها از منابع مختلف در آن تجمیع می ­گردند، سپس این اطلاعات جهت گزارشگیری و تحلیل های اطلاعاتی مورد استفاده قرار  می گیرند. در مقایسه با آن، یک پایگاه داده (Database و یا به اختصار DB)، پایه هر مخزن اطلاعاتی و مجموعه ای سازماندهی شده از داده­ هاست.

یک پایگاه داده صرفا جهت ذخیره و دستیابی به اطلاعات استفاده می ­شود در حالی­که انبار داده غالبا جهت تسهیل گزارشگیری و تحلیل اطلاعات در مقیاس­ های کلان مدیریتی کاربرد داد و با نام «انبار داده تجاری» (Enterprise Data Warehouse) نیز شناخته می ­شود و می­ تواند گزارشاتی متنوع و پرطرفدار برای گزارشگیری های مدیریتی ایجاد کند، مانند مقایسه های فصلی و سالانه.

Data Warehouse به طور معمول ترکیبی از تعداد زیادی پایگاه داده در سراسر یک سازمان واحد است. این مجموعه، اطلاعات جاری و همچنین اطلاعات تاریخی Database های اصلی را ذخیره می­کند.

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

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

رایج­ ترین مدلی که برای پایگاه داده استفاده می­ شود مدل ارتباطی (Relational Model) است، از دیگر مدل های دیتابیس می­ توان به مدل سلسله مراتبی (Hierarchical Model)، مدل شبکه ای (Network Model) و… اشاره نمود.

برای بازیابی داده ها از یک پایگاه داده، نیاز است تا از یک سیستم مدیریت پایگاه داده (Data Base Management System و به اختصار DBMS) استفاده شود. سیستم های مدیریت پایگاه داده برنامه های کاربردی هستند که با کاربر، برنامه های دیگر، و پایگاه داده خود، برای دریافت و آنالیز داده ها تعامل برقرار می­ کنند. ساختار DBMS ها به شکلی طراحی می­ شوند تا امکان تعریف و درج اطلاعات، ایجاد پرس ­و­جو و گزارشگیری، به روزرسانی و مدیریت پایگاه های داده را برای کاربر فراهم آورند. از DBMS های رایج می ­توان به PostgreSQL،  SQLite، Microsoft SQL Server، Microsoft Access، Oracle و… اشاره نمود.

در نگاه اول پایگاه داده و انبار داده ممکن است شبیه نظر برسند اما آن­ ها از یک جنبه کلیدی متفاوت هستند. یک Database فقط برای ذخیره­ سازی و دستیابی به داده ها استفاده می شود در حالی که بیشترین استفاده Data Warehouse برای تسهیل گزارشگیری و تجزیه و تحلیل­­های آماری است.

اساسا، پایگاه داده جایی است که داده ها فقط ذخیره می شود. برای دسترسی به این داده ها یا تجزیه و تحلیل آن یک سیستم مدیریت پایگاه داده (DBMS) مورد نیاز است، درحالی ­که یک انبار داده لزوما نیاز به DBMS ندارد. هدف از انبار داده ها ایجاد یک دسترسی آسان به داده ها برای کاربر است. انبار داده همچنین ممکن است برای تجزیه و تحلیل اطلاعات استفاده شود. لازم به ذکر است که روند واقعی تجزیه و تحلیل اطلاعات، داده کاوی (Data Mining) نامیده می­ شود.

از دیگر تفاوت های پایگاه داده و انبارداده می­ توان به موارد زیر نیز اشاره نمود:

  • یک پایگاه داده برای Online Transactional Processing  (OLTP) استفاده می ­شود با این حال می­ تواند برای اهداف دیگری مانند انبار داده نیز مورد استفاده قرار گیرد.
  • یک انبار داده برای Online Analytical Processing (OLAP) استفاده می­ شود و داده ­های تاریخی را برای کاربران جهت تصمیم گیری های تجاری جمع­ آوری می­ نماید.
  • در پایگاه داده، جداول و پیوندها پیچیده هستند زیرا آنها برای  Relational DataBase Management System (RDMS) نرمالسازی می ­شوند که این امر افزونگی را کاهش می­دهد و فضای ذخیره سازی را بهینه می­کند.
  • در انبار داده ها، جداول و پیوندشان ساده هستند، زیرا آن­ها نرمالسازی نشده اند. این کار برای کاهش زمان پاسخ­ دهی به پرسش های تحلیلی انجام می­ شود.
  • تکنیک های مدل سازی ارتباطی (Relational Modeling Techniques) برای طراحی پایگاه داده مورد استفاده قرار می­ گیرند، در حالی که تکنیک های مدل سازی (Modeling Techniques) برای طراحی انبار داده استفاده می شوند.
  •  یک پایگاه داده برای عملیات نوشتن بهینه شده است، در حالی که یک انبار داده برای عملیات خواندن بهینه شده است.
  • در یک پایگاه داده، سطح عملکرد برای کوئری ­های آماری و تحلیلی بسیار کم است، درحالی­که یک انبار داده، از کارایی بالا برای گزارشگیری­ های تحلیلی برخوردار است.
  • انبار داده یک قدم جلوتر از پایگاه داده است و دلیل آن استفاده از پایگاه داده در ساختار آن است.

انبار داده یا Data Warehouse چیست؟

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

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

…………………………………………

پایگاه داده تحلیلی (Data Warehouse) یا DWH مجموعه‌ای از اطلاعات است که به گونه‌ای مناسب برای انجام عملیات گزارش‌گیری و تحلیل داده‌ها طراحی شده است.
DWH  شامل یک پایگاه داده و تعدادی (component)  است این  پایگاه‌داده به گونه‌ای سازماندهی شده است که تمامی اطلاعاتی که به یک موضوع یا موجودیت خاص مربوط هستند با یکدیگر مرتبط هستند.اطلاعات موجود در پایگاه‌داده از سراسر سازمان جمع‌آوری شده‌اند و با هم سازگاری دارند.
هدف اصلی DWH ایجاد بستری مناسب برای تولید اطلاعاتی است که به Knowledg worker های سازمان (مدیران، عوامل اجرایی و تحلیلگران) برای اتخاذ تصمیم‌های درست کمک می‌کند.
بطورساده تر: Data Warehouse مجموعه ای از داده های جمع آوری شده از یک پایگاه داده است که این داده ها به منظور انجام یکسری تحلیل ها وانجام گزارش گیری آماری وکشف دانش جدید باید به طور یک پارچه و مرتبط با یک موضوع خاص جمع آماری بشن. Data Warehouseدر داده کاوی به کار میره.البته جهت انجام عملیات داده کاوی باید یکسری فرایندهایی روی  داده ها انجام بشه تا بشه تحلیل روشون انجام بدیم این فرایندها شامل مواردی مثل حذف داده های مفقود وداده های غیر مرتبط با موضوع و… می باشد .

تفاوت database , data warehouse در چیست؟

به نظرم با دانستن تفاوت هاشون می تونی تشخیص بدی که چه بانک اطلاعاتی انباره داده هم هست:

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

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

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

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

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

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

 

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

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

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

  • از لحاظ مدل‌های داده‌ای؛ پایگاه‌های داده برای مدل OLTP بهینه سازی شده که براساس مدل داده رابطه‌ای امکان پردازش تعداد زیادی تراکنش همروند_ که اغلب حاوی رکورد‌های اندکی هستند_ را دارد. اما در انبارهای داده که برای پردازش تحلیلی آنلاین طراحی شده‌اند امکان پردازش تعداد کمی‌ پرس و جو پیچیده برروی تعداد بسیار زیادی رکورد داده فراهم می‌شود. سرورهای OLAP هم می‌توانند رابطه‌ای  باشند ( ROLAP ) وهم می‌توانند چند‌بعدی باشند (MOLAP ).
  • از لحاظ کاربران؛ کاربران پایگاه داده کارمندان دفتری و مسئولان می‌باشند در حالی که کاربران انبار داده مدیران و تصمیم‌گیرنده‌ها هستند.
  • از لحاظ عملیات قابل اجرا برروی آنها؛ عملیاتی که برروی پایگاه داده‌ها صورت می‌‌گیرد، عموماً شامل عملیات ‌بهنگام سازی است در حالی که عمل خواندن از انبار، عمده عملیات قابل اجرا بر روی انبار داده را تشکیل می‌دهد.
  • از لحاظ مقدار داده‌ها؛ مقدار داده‌های یک پایگاه داده در حدود چند مگابایت تا چند گیگابایت است در حالیکه این مقدار در انبار داده در حدود چند گیگابایت تا چند ترابایت است.