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

پیش نیاز این درس:

برای درک بهتر، درس هوش تجاری چیست را خوانده باشید. همچنین درس داده‌کاوی چیست نیز می‌تواند یک مثال کاربردی برای درک بهتر کار با داده‌ها باشد.

مدرس: مسعود کاویانی

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

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

در مورد انبار داده یک تعریف از آقای بیل اینمن (Bill Inmon) وجود دارد که بسیاری از منابع، آن را به عنوان تعریف مرجع قبول دارند:

انباره داده یک مجموعه‌ از داده‌های موضوع‌گرا (Subject Oriented)، مجتمع (Integrated)،نگهدار زمان‌های مختلف (Timevariying) و غیر فرَار (none-volatile) است که پشتیبان فرآیندهای تصمیم سازی مدیریتی است.

در این تعریف به ۴ویژگی در انبار داده اشاره شده است. اجازه بدهید تک تک این تعاریف را مورد بررسی قرار دهیم:

موضوع‌گرا (Subject Oriented): به این معنا است که انبار داده‌ای که شما می‌سازید بایستی در مورد یک موضوع مشخص (یا یک سری موضوع مشخص) باشد. مثلا یک فروشگاه می‌خواهد رفتار خریداران خود را بررسی کند. پس موضوع در این‌جا رفتار خریداران است. برای همین بایستی اطلاعاتی که در مورد رفتار خریداران در نرم‌افزارهای مختلف سازمان (مثلا CRM یا سیستم حسابداری) موجود است را در یک انبار داده جمع آوری کنید.

مجتمع (Integrated): این ویژگی بسیار واضح است. در واقع انبار داده به صورت تکه تکه در جاهای مختلف نیست و به صورت مجتمع در یک منبع ذخیره شده است. فرض کنید یک سیستم CRM و یک سیستم حسابداری دارید. یک خریدار در سازمان شما، با کد ملی در CRM مشخص می‌شود و همین شخص با شماره شناسنامه در سیستم حسابداری مشخص می‌شود. اما بعد از پردازش و بارگزاری داده‌ها در انبار داده، این شخص فقط بایستی با یک شماره مشخص شود (مثلا یک ID خاص) تا به اشتباه دو نفر مستقل برداشت نشود.

نگهدار زمان‌های مختلف (Timevariying): به این معنا که در انبار داده، داده‌های قدیمی‌تر نیز ذخیره می‌شوند. مثلا اگر اطلاعات فروش ۱ماه اخیر را خواستیم می‌توانیم از انبار داده پیدا کنیم. اگر اطلاعات فروش ۱سال پیش را نیز خواستیم بایستی در انبار داده موجود باشد.

غیر فرَار (none-volatile): به این معنا که اگر داده‌ای در انبار داده ثبت شد، دیگر امکان تغییر آن وجود ندارد. برای مثال در یک پایگاه داده عادی (غیر انبار داده‌ای) اگر یک شخص آدرس خود را عوض کرد، آدرس جدید جایگزین آدرس قبلی می‌شود، ولی در انبار داده سابقه آدرس‌های شخص ذخیره می‌شود و تغییرات آدرس یک شخص به صورت جدید‌تر در انبار داده ثبت می‌شود و آدرس‌های قبلی نیز در انبار داده جهت بررسی موجود می‌باشد.

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

منابع این بحث و اطلاعات بیشتر

» فصل چهارم کتاب داده‌کاوی آقای هان و همکاران

» وب‌سایت DataWarehouse4u

» وب‌سایت 1keydata

» وب‌سایت Guru99

» وب‌سایت InvestingAnswers

در صورت تمایل به یادگیری بیشتر، منابع بالا در نظر گرفته شده است. می توانید با خواندن این منابع، به یادگیری خود در این زمینه عمق ببخشید

4 دیدگاه دربارهٔ «انبار داده (Data Warehouse) چیست؟»

  1. بسیار معلومات موثر است تشکر دوست عزیز از این همکاری تان . میشه کتاب که مربوط انبار معلومات میشود به زبان فارسیش رابرایم در ایمیل آدرس ذیل بفرستین تشکر

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

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