انبار داده به سیستمی گفته میشود که جهت راهاندازی و پشتیبانی همه فعالیتهای هوش تجاری مورداستفاده قرار میگیرد. در انبارهای داده تعداد زیادی داده از نوع تاریخی وجود دارد که بیشتر برای بررسی و تجزیهوتحلیل کاربرد دارند.
این دادهها از همه منابع موجود که شامل گزارشها وغیره است دریافت میشوند و انبارهای داده آنها بهصورت یکپارچه ذخیره میکنند. به انبار داده در هوش تجاری مخزن واحد حقیقت گفته میشود زیرا همه دادهها را بر اساس تاریخ آنها حفظ میکند و یک منبع باارزش برای تحلیلگران است.
در سازمانها از این نوع انبار برای طبقهبندی داده، تجزیهوتحلیل داده و ارائه اطلاعات مناسب در قالب گزارش استفاده میشود. یکی از مهمترین نکاتی که در شرکتهای پیشرو در علم بهخوبی انجام میشود، ادغام تعدادی منبع داده است تا با کمک آنها تصمیمات تجاری بهتری اخذ شود.
کمک به داده کاوی و ارائه الگو و نتایج بهتر یکی از وظایف انبار داده در هوش تجاری است. از جمله کاربردهای انبار داده سیستم اطلاعاتی میتوان به سیستم بانکی، مالی، پزشکی، بهداشتی وغیره اشاره کرد.
انواع مدل انبار داده
معماری سنتی انبارهای داده به سه مدل مختلف تقسیم میشود که در ادامه به معرفی آنها میپردازیم.
- انبار مجازی مدل اول است و از چندین پایگاهداده تشکیل شده که بهصورت جداگانه کار میکنند. با استفاده از این مدل انبار میتوان بهراحتی به همه داده آنها دسترسی داشت. برای یافتن اطلاعات موردنظر کافی است یکبار جستوجو را انجام داد تا همه پایگاهها بررسی شوند.
- دیتا مارت مدل دوم است که در تهیه گزارش و تحلیل و بررسی مسیر کسبوکار بهخوبی عمل میکند. در این مدل همه دادههایی که به درخواست موردنظر مربوط باشند از همه منابع متصل به سیستم جمعآوری میشوند.
- انبار داده سازمانی سومین مدل است که با کمک آن میتوان حجم زیادی از اطلاعات یک سازمان را در یک انبار ذخیره کرد. اگر سیستم سازمان قلبی داشته باشد، بی شک همین مدل انبار دادهها در داده کاوی قلب سیستم است.
اجزای کلیدی انبار داده
انبار دادهها و دادهکاوی از 4 بخش مهم تشکیل شده که هرکدام وظیفه خاص خود را دارند. با انجام صحیح عملیات توسط این بخش، اطلاعات موردنیاز در کوتاهترین زمان در اختیار کاربر قرار میگیرد. 4 جز اصلی آن شامل موارد زیر است:
-
پایگاه داده اصلی (مرکزی)
این بخش پایه انجام عملیات در انبار پایگاه داده است. عملیات اجرایی در این مرحله باید در فضای ابری یا حافظههایی چون هارد انجام گیرد اما به دلیل نحوه عملیات قابلاجرا روی کلان دادهها و شرایط موردنیاز آن (در سایر مطالب موجود در سایت کاملا به این موضوع پرداختهایم) بهتر است که از فضای ابری استفاده شود.
-
یکپارچه ساختن دادهها
برای اینکه تحلیل دادههای موجود در منبع راحتتر باشد باید بهصورت یکپارچه درآیند. برای انجام این کار از انواع عملیات مانند تبدیل، استخراج و غیره استفاده میشود.
-
فراداده
به ویژگی هر داده که شامل منبع، مقدار، نحوه استفاده وغیره میشود فراداده گفته میشود.
-
ابزار دستیابی به انبار دادهها
ابزاری مانند OLAP، توسعه برنامه و غیره این امکان را برای کاربر فراهم میکند که به دادههای موجود در انبار دسترسی داشته باشد و از آنهای بهصورت دستی استفاده کند.
انبار داده همان دریاچه داده است؟
درست است که هر دو این منابع برای ذخیره دادهها مورداستفاده قرار میگیرند اما به دلیل ویژگیهای متفاوت، نمیتوان آنها را یکی دانست. بهعنوانمثال دادههای موجود در دریاچه داده برای هدف مشخصی جمعآوری نشدهاند اما برای دادههای موجود در انبار پایگاه داده یک هدف خاص و از پیش تعیین شده وجود دارد. همچنین تنها مورداستفاده از دریاچه داده برای سازمانها و شرکتها است. بهطورکلی تنها شباهت بین این دو مخزن حاوی داده، حجم زیاد اطلاعات موجود در آنها است.
در یک انبار داده فعال، دادهها بهصورت فرآوری شده وجود دارند و برای هدف از پیش تعیین شده در حال استفادهاند. همه افراد متخصص در انبار داده و مجازیسازی داده میتوانند از اطلاعات آن استفاده کنند. اعمال تغییرات در دادههای آن تا حدودی پیچیده است و بهصرف هزینه بالا نیاز دارد. اما هدف دادهها خام موجود در دریاچه داده مشخص نیست و تنها دانشمندان رشته داده میتوانند از آنها استفاده کنند. به دلیل خام بودن دادهها، ایجاد تغییر در آنها دشوار نیست.
پایگاه داده مناسب برای انبار داده کدام است؟
پردازش دادهها، تبدیل آنها و ارائه یک اطلاعات خوب از جمله وظایف انبار دادهها است. نرمافزار نصب شده روی این بخش دادههای موجود در منابع مختلف را یکپارچه کرده سپس آنها را تجزیهوتحلیل میکند. گزارش دقیقی که از انبار دادهها و داده کاوی به دست میآید از ترکیب CRM، پلتفرم انواع اتوماسیونها، ERP و غیره به دست میآید. برای اینکه بتوان الگوها را بهتر ترسیم کرد میتوان از هوش مصنوعی نیز استفاده کرد.
دادههای انبارهای داده در 4 نوع فضا، یعنی ابرهای خصوصی، ترکیبی، عمومی یا فضای داخلی ذخیره میشوند. برخی از ابزار برتر مناسب برای انبار داده فعال شامل Redshift آمازون، دانه برف، IBM Db2، Google Big Query، Vertica، پلتفرم دیتابریکس لیک هاوس و غیره میشود.
انواع انبار داده
انبار داده در هوش تجاری به سه دسته کلی تقسیم میشود که در ادامه به معرفی آنها خواهیم پرداخت.
-
سازمانی
نوعی انبار متمرکز بهحساب میآید که وظیفه اصلی آن پشتیبانی از تصمیم در شرکتها است. دستهبندی دادهها بر اساس برچسب و دسترسی راحت به آنها از جمله کارهایی است که این نوع انبار در کنار سازماندهی دادهها انجام میدهد.
-
ذخیره اطلاعات هر عملیات
زمانی که گزارشهای سازمان توسط OLAP و انبار داده عملیاتی پشتیبانی نمیشود از ODS برای ذخیره اطلاعات استفاده میشود. به همین دلیل برای ذخیره اطلاعات مربوط به سابقه کارمندان، طرفدار بیشتری دارد.
-
Data Mart
از این مورد برای بخشی خاصی از فرایند کار مانند فروش بهره گرفته میشود و دادههای مستقل را مستقیما از منبع دریافت میکند.
ویژگیهای انبار داده
یک انبار دادهها در داده کاوی مزایای زیادی دارد که به افراد در سازمانها اجازه میدهد انواع دادهها را مورد تجزیهوتحلیل قرار دهند. 4 ویژگی برجسته این انبار که توسط ویلیان اینمون مشخص شده، چنین مزیتهایی را به وجود آورده که برای آشنایی شما، در ادامه به بیان آنها پرداختهایم.
-
موضوع محور
به دلیل اینکه ارائه اطلاعات درباره یک موضوع بخش عمده کار انبارهای داده را تشکیل میدهد، میتوان گفت که نوآوری موضوع محور است. با کمک آن میتوان دادههایی با موضوع ویژه را در بخشهای مدنظر ذخیره کرد. مخزن داده به طور همزمان بر روی به نمایش گذاشتن و انجام تجزیهوتحلیل روی دادههای متمرکز است. در صورت لازم نیز به حذف دادههای اضافی میپردازد.
-
یکپارچه کردن دادهها
بدین معنی است که یک ویژگی و موجودیت ایجاد میشود و طبق آن دادههایی که تشابه دارند مقیاسبندی میشوند. این نوع انبار با دریافت و ترکیب دادهها از منابع مختلف همچون پردازنده مرکزی عمل میکند و توانایی برچسبگذاری و قالببندی دارد. این منبع بسیار قابلاطمینان است و بین دادههایی که از منابع متفاوت دریافت کرده، سازگاری ایجاد میکند.
-
دارای متغیر زمانی
این نوع مخزن دادهها را بر اساس زمان تعیین شده (ماهیانه، هفتگی و…) دستهبندی کرده و ساختار مناسب در تراکنش آنلاین را تعیین میکند. اطلاعات ارائه شده توسط این سیستم بر پایه تاریخ است و عنصر زمان در آن بهصورت صریح یا ضمنی موثر است. البته باید گفت که دادههای آن قابلیت تغییر یا بهروز شدن را ندارند. حال اگر از طراحی خوبی برخوردار باشد توان عملیاتی و انعطاف بالایی داشته و اطلاعات را بهسرعت در اختیار کاربر قرار میدهد.
-
داده غیرفرار
داده موجود در این نوع انبار غیر فرار یعنی دائمی است و پس از ورود به آن دچار تغییر یا حذف نخواهد شد. این دادهها خواندنیاند و به طور منظم و از پیش تعیین شده، بهروزرسانی میشوند که برای تجزیهوتحلیل زمانی بسیار مفید است. دو نوع عملیات بارگذاری داده و دسترسی به داده در این نوع انبار قابلاجرا است.
تفاوت بین رویکردهای بیل اینمون و رالف کیمبال در معماری انبار داده چیست؟
بیل اینمون و رالف کیمبال مخزنی از داده اتمی دارند که در معماری اینمون با نام انبار داده سازمانی و در معماری کیمبال با عنوان انبار داده ابعادی شناخته میشود. داشتن تمرکز سازمانی در هر دو معماری باعث شده بهراحتی از تجزیهوتحلیل سازمانی پشتیبانی شود. بااینحال چندین تفاوت عمده بین آنها وجود دارد.
- در ساماندهی داده کیمبال از مدل ابعادی (مثل دانه برف) در انبار بعد دار داده استفاده میشود اما در مدل اینمون در انبار سازمانی داده از مدل ER استفاده میشود.
- اینمون از Data marts برای تفکیک فیزیکی در انبار داده فعال استفاده میکند درحالیکه کیمبال به این سیستم نیازی ندارد.
- در اینمون سیستم تحلیلی تنها با کمک دیتا مارتس میتوان به انبار سازمانی داده دسترسی پیدا کرد اما این امر در کیمبال بهصورت مستقیم قابلاجرا است.
نقش MongoDB در عملکرد انبار داده چیست؟
پروژه انبار داده شرکتی معمولا سنتی و بر اساس RDBMS عمل میکند که انعطافپذیری لازم را ندارد به همین دلیل اگر بتوان آن را با MongoDB ادغام کرد، انعطافپذیری انبار بالاتر میرود. بهاینترتیب میتوان بسیار راحتتر به انبار دادهها دسترسی پیدا کرده و به آن داده اضافه نمود.
آیا SQL Server یک انبار داده است؟
SQL Server نوعی پایگاه داده است که از فضای ابری برای ذخیرهسازی اطلاعات استفاده میکند. استفاده از فضای ابری شده بسیاری از نگرانیها صاحبان کسبوکار مانند پچ کردن سیستمعامل را زدوده است. از طرفی به دلیل اینکه قیمتگذاری در Azure SQL جایداده شده، به دریافت مجوز بیشتر نیازی ندارید به همین دلیل استفاده از آن راحت و بدون دردسر است.
EDW در انبار داده چیست؟
EDW یک انبار داده عملیاتی است که کاربرد اصلی آن برای سازمانها است زیرا دادهها را از تمام بخشهای شرکت دریافت و ذخیره میکند و بهعنوان مخزن کلی دادههای شرکت شناخته میشود. EDW یک منبع عالی برای داده مربوط به سیستمهای مختص عملیات و تراکنش است و از یک محل خاص برای جمعکردن و مرتبسازی دادهها برخوردار است. وجود یک فضا برای دسترسی و تجزیهوتحلیل دادهها و استفاده از فناوری ترکیب دادهها و API از دیگر ویژگیهای آن است.
از جمله مزایای EDW میتوان به در اختیار گذاشتن بیشتر اطلاعات معنیدار، ایجاد یک درک کلی در کاربر از نتایج بهدستآمده و امکان اخذ تصمیمات علمی و قطعی برای مدیران اشاره کرد. بدین ترتیب به اخذ تصمیم سریع و درست کمک کرده و باعث رشد بیشتر شرکت خواهد شد.
ODS در انبار داده به چه معناست؟
ODS به معنی ذخیره کردن اطلاعات عملیاتی است که میتواند یک جایگزین مناسب برای DSS باشد. البته هر دو مورد ذکر شده به یک برنامهریزی قبلی نیاز دارند اما بیشتر تمرکز ODS بر روی انجام یک عملیات تجاری خاص است. همچنین یک معماری از انبارهای داده را ایجاد میکند تا بهراحتی جهت تجزیهوتحلیل به داده موردنظر دسترسی پیدا کرد. از دیگر کارهای آن میتوان به پشتیبانی از تعداد زیادی برنامه اشاره کرد.
مراحل ساخت انبار داده چیست؟
-
استخراج داده مورد نظر از تمام منابع و قرار دادن آنها در یک محل
این مرحله از سایر مراحل بسیار دشوارتر است زیرا باید اطلاعات زیادی برای انجام تمامکارها داشته باشید. پس از استخراج دادهها باید سیستم مناسب را برای دستهبندی آنها انتخاب کنید. حال باید بدانید که چگونه داده موردنظر را در دسته مربوط به خود قرار دهید. اما خوشحال باشید زیرا ابزار زیادی توسط شرکت مایکروسافت برای کمک به شما در پشت سر گذراندن این مرحله به بازار آمده است.
-
تبدیل دادهها
چالشهای موجود در این مرحله از مراحل قبلی کمتر است. ممکن است برای تبدیل دادهها معاملاتی راهحل شما با سایر افراد کمی متفاوت باشد اما درهرصورت باید تبدیلهای نهایی درست باشند. بیشتر شرکتها از سیستمهای مخصوص مدیریت پایگاه داده استفاده میکنند و دادههای خود را در آنها دستهبندی میکنند. برخی نیز این دادهها را در صفحات گسترده، فایلها وغیره نگهداری میکنند.
نحوه ذخیره اطلاعات تفاوت زیادی ندارد مهم این است که بین تمام منابع ارتباط برقرار شود. در این حالت باید یک منطقه ایجاد کنید که در آن دادهها دستهبندی شوند و مدیریت دادهها از همه سیستمها امکانپذیر باشد.
-
آپلود دادههای تبدیل شده در یک مدل چندبعدی
یکی از ویژگیهای سیستمهای مدرن معاملاتی این است که از پایگاه داده دارای ارتباط استفاده میکنند. در طراحی این سیستم یک کلید اصلی با ستونهای اضافی جایگزین میشود. درست است که این نوع سیستم در مورد OLTP عملکرد خوبی دارد اما در حیطه گزارش ضعیف است. البته اگر تمایل دارید بدون اینکه یکپارچگی دادههای شما به هم بریزد سطح کیفی پرسوجو را بالا ببرید، بهتر است از این سیستم استفاده کنید.
با اینکه این نوع پایگاه داده به فضای بیشتری نیاز دارد اما با تهیه فضای ذخیره با قیمت مناسب این مشکل را حل نمایید. برای اینکه قادر باشید در این مدل ابعاد مناسبی برای دادهها بسازید، باید بسیار تمرین کرده و با افراد باتجربه مشورت کنید.
هر شرکت شامل چند بخش است که هریک نیز به قسمتهای مختلفی تقسیم میشوند به همین دلیل دادههای زیادی از آنها برای کسب اطلاعات ارسال میشوند. از طرفی ممکن است هر یک فیلدهایی که در یک مدل جایگذاری میکنید، به مدل بعدی منتقل نشود. شما باید تمام این موارد را در نظر بگیرید و پیش از ساخت مدل خود تدبیر لازم را برای مشکلات احتمالی بیندیشید.
پس از اینکه مدل ابتدایی را طراحی کردید حال باید با استفاده از دادههایی که در پایگاه قرار دارند به تکمیل ابعاد آن بپردازید. این نکته را به یاد داشته باشید که در حین انتقال دادهها یا در زمان بارگذاری آنها باید تبدیل را روی آنها اعمال کنید و باتوجهبه ماهیت پروژه بهترین گزینه انتخاب نمایید.
-
ایجاد مقدارهای خلاصه
در این مرحله باید مقادیر خلاصهای را ساخت که از پیش محاسبه شدهاند که این عمل تجمیع نامیده میشود. این عمل توسط SQL یا OLAP انجام میشود. بسته به اینکه تعداد ابعاد پر شده توسط دادههای شما چقدر است، عمل انبوهسازی که بهوسیله SQL Server Analysis Services انجام میگیرد ممکن است بیشتر طول بکشد. بهطورکلی به یاد داشته باشید که هرچه اندازه و ابعاد مدل بیشتر باشد، زمان بیشتر برای انبوهسازی نیاز است.
قبل از اینکه به ایجاد تجمیع بپردازید انتخاب کنید که قصد ساختن مدل رابطهای (ROLAP)، مدل ترکیبی (HOLAP) یا مدل چندبعدی (MOLAP) را دارید.
- مدل رابطهای برای ذخیرهسازی از جدول استفاده میکند و به فضای زیادی نیاز دارد.
- مدل ترکیبی برای ذخیره دادههای از قالبسازی استفاده میکند و قالبهای آن چندبعدی است.
- مدل چندبعدی، دادهها را بهصورت بعد دار ذخیره میکند و بسیار کارآمد است.
-
ساخت ابزار ارائه گزارش
حال باید درباره چگونگی ابزار گزارشدهی خود تصمیمگیری کنید. درصورتیکه کار شما سطحی و تمرینی است، استفاده از اکسل نیاز شما را برطرف میکند؛ در غیر این صورت بهتر است از برنامههای حرفهای استفاده کنید. ابزارهای تحلیلی مایکروسافت در انواع مختلف ارائه شدهاند که Data Analyzer یکی از جدیدترین آنها است.
هزینه راهاندازی پروژه انبار داده
در ساخت انبار داده و مجازیسازی باید دادهها کارهای زیادی انجام داد و درنهایت هم به رسیدگیهای زیادی نیاز دارد. همه این موارد پرداخت هزینه زیادی با خود به همراه دارند که باید پیش آغاز پروژه انبار داده از مقدار حدودی آنها مطلع باشید.
برای ذخیره هر یک ترابایت باید هزینهای معادل 1000 دلار پرداخت کنید. اگر فرض کنیم که انبار شما دارای اندازه متوسط است، باید در سال حدود 12000 دلار برای ذخیره اطلاعات صرف نمایید. به نرمافزارهایی برای مدیریت دادههای موجود در انبار پایگاه داده نیاز دارید که باتوجهبه نوع آنها حدود 24000 دلار در سال را به خود اختصاص میدهند.
پرداخت هزینهها تنها به همین موارد ختم نمیشود و هنوز مهمترین بخش برای پرداخت هزینه را مطرح نکردهایم. درصورتیکه برای هر قسمت بیان شده یک نفر استخدام کنید باید سالیانه حدود 432000 دلار به آنها پرداخت نمایید.
اگر انبار دادهها و داده کاوی معمولی بسازید یعنی ظرفیت ذخیره آن 1 ترابایت باشد و از 100000 جستوجو در هر ماه بهره ببرد، کل هزینههای پرداختی شما در سال حدودا 468000 دلار خواهد بود.
البته به این نکته نیز دقت کنید که هزینه هر بخش در ماههای مختلف ممکن است تغییر کند به همین دلیل نمیتوان به طور دقیق مشخص کرد که باید چه مقدار هزینه صرف کنید.
کلام آخر
انبار داده یکی از مهمترین بخشها برای ذخیره اطلاعات در حجم گسترده است. البته تنها وظیفه آن ذخیره اطلاعات نیست بلکه قابلیت ادغام دادههای حاصل از چندین منبع داده و مزایای دیگر نیز دارد که با مطالعه این مطلب، همه اطلاعات مربوط به آن را به دست خواهید آورد.