پایگاه داده و انبار داده هر دو سامانههایی هستند که برای ذخیرهسازی دادهها استفاده میشوند، اما کاربردهای متفاوت از یکدیگر دارند.
پایگاه داده چیست؟
پایگاه داده (database) اطلاعات لحظهای در مورد یک بخش خاص از کسبوکار را ذخيره میکند. وظیفه اصلی آن پردازش تراکنشهای روزانهای (مثل ثبت محصولاتی که فروخته شده) است که یک شرکت تولید میکند. پایگاههای داده میتوانند با سرعت بالایی حجم عظیمی از محاورهها را مدیریت کنند.
انبار داده (Data Warehouse) چیست؟
انبار داده سیستمی است که دادهها را از منابع مختلف یک سازمان برای گزارشگیری و تجزیه و تحلیل جمعآوری میکند. این گزارشات که بر مبنای محاورههای پیچیده درون یک انبار داده ایجاد میشوند برای اخذ تصمیمات تجاری استفاده میشوند. معمولا از یک انبار داده برای اتصال و تجزیه تحلیل دادههای تجاری از منابع ناهمگن استفاده میشود. انبار داده هسته مرکزی یک سیستم هوش تجاری (BI) را شکل میدهد که برای تحلیل و گزارشگیری از دادهها ساخته میشود. انبار داده را میتوان مخزن عظیمی از تمامی اطلاعات سازمان در نظر گرفت که شامل تاریخچهای از اطلاعات مربوط به کسبوکار است. مخزنی که با تجزیه و تحلیل اطلاعات درون آن امکان دنبال کردن استراتژیهای فعلی یا اعمال تغییراتی در استراتژیهای تجاری فراهم میشود. دقت کنید در حالت کلی، انبار داده اطلاعات فعلی را ذخیره نمیکند و به شکل بلادرنگ نیز بهروزرسانی نمیشود. پایگاه داده پشتیبان تصمیمگیریها یا به عبارت دقیقتر انباره داده جدا از پایگاه داده عملیاتی سازمان نگهداری میشود. انبار داده الگوی معماری مبتنی بر یک سامانه اطلاعاتی است که اطلاعات پشتیبان مربوط به تصمیمگیریهای حال و گذشته را نگهداری کرده و به کاربران اجازه میدهد به سادهترین شکل به اطلاعات دسترسی داشته باشند. به همین دلیل انبار داده یک محصول نیست، بلکه یک محیط است. انبار داده کاری را انجام میدهد که بانکهای اطلاعاتی سنتی در انجام آن با دشوارییهای زیادی روبرو هستند.
احتمالا با پایگاههای داده نرمال شده سطح سه (3NF) که برای یک سیستم فهرست موجودی به کار گرفته میشوند، آشنا هستید. پایگاههای دادهای که متشکل از یکسری جداول مرتبط با یکدیگر هستند. بهطور مثال، یک گزارش از اطلاعات فهرست موجودیها میتواند شامل بیش از 12 شرط پیوسته باشد. یک چنین سناریوهایی میتواند به سرعت زمان پاسخدهی به کوئریها و گزارشگیری را کاهش دهد. انبار داده با ارائه طراحی جدید میتواند به کاهش زمان پاسخگویی و بهبود وضعیت عملکرد کوئریگیری برای ساخت گزارشها و تجزیه تحلیلها کمک کند. در مقالات فنی و تخصصی یک سامانه انبار داده با نامهای زیر توصیف میشود (شکل زیر):
- سیستم پشتیبان تصمیمگیری (Decision Support System)
- سیستم اطلاعات اجرایی (Executive Information System)
- سیستم اطلاعات مدیریتی (Management Information System)
- راهحل هوش تجاری (Business Intelligence Solution)
- اپلیکیشن تحلیلی (Analytic Application)
- انبار داده (Data warehouse)
انبار داده چگونه کار میکند؟
انبار داده، یک مخزن مرکزی است که اطلاعات منابع دادهای مختلف به آن وارد میشود. دادهها از سیستم تراکنش و سایر پایگاههای داده رابطهای به یک انبار داده انتقال پیدا میکنند. این دادهها میتوانند قالبهای زیر را داشته باشند:
- ساختیافته
- نیمهساختیافته
- دادههای فاقد ساختار
در یک انبار داده، اطلاعات پردازش، تبدیل و ذخیره میشوند تا کاربران بتوانند از طریق ابزارهای هوش تجاری، کلاینتهای SQL و صفحات گسترده به آنها دسترسی پیدا کنند. به عبارت سادهتر، یک انبار داده اطلاعات دریافتی از منابع مختلف را درون یک پایگاه داده جامع ادغام میکند. با ادغام اطلاعات در یک محل واحد، سازمان میتواند مشتريان خود را بهطور همه جانبه تجزیه و تحلیل کند. در این حالت سازمان اطمینان حاصل خواهد کرد که تمامی اطلاعات در دسترس برای تجزیه و تحلیل الگوهای رفتاری مشتریان استفاده شدهاند. انبارهای داده به سازمانها اجازه میدهند فرآیند دادهکاوی را به بهترین شکل پیادهسازی کنند. در رویکرد دادهکاوی هدف پیدا و دنبال کردن الگوهای مستتر در دادهها است تا فروش رونق یافته و سودآوری بیشتر شود.
انواع انبار داده
انبارهای داده به انواع مختلفی تقسیم میشوند که سه نوع پر کاربرد آنها به شرح زیر است:
1. انبار داده سازمانی (Enterprise Data Warehouse)
انبار داده سازمانی، یک پایگاه داده یا مجموعهای از پایگاههای دادهای است که اطلاعات تجاری را از منابع و برنامههای مختلف دریافت و تجمیع میکند تا اطلاعات برای انجام تحلیلها و بهکارگیری در بخشهای مختلف یک سازمان به سهولت در دسترس و قابل استفاده باشند. انبار داده یک رویکرد یکپارچه برای ساماندهی و ارائه اطلاعات فراهم میکند. انبارهای داده سازمانی را میتوان در سرورهای درون سازمانی یا در ابر میزبانی کرد. همچنین، امکان طبقهبندی دادهها بر مبنای موضوعات مشخص را فراهم میکند تا بخشهای مختلف یک سازمان به راحتی به اطلاعات موردنیاز دسترسی داشته باشند.
2. ذخیرهساز دادههای عملیاتی (Operational Data Store)
ذخیرهساز دادههای عملیاتی (ODS) زمانی استفاده میشوند که نه انبار داده و نه سامانههای OLTP برای اهدافی همچون گزارشگیری سازمانی استفاده نمیشوند. در چنین شرایطی ذخیرهساز دادههای عملیاتی وظیفه ذخیرهسازی دادهها را بر عهده دارد. در ODS انبار داده به صورت بلادرنگ نوسازی میشود. از این رو ، بیشتر برای فعالیتهای روزمره مانند ذخیره سوابق کارمندان کاربرد دارد.
3. دادهگاه (Data mart)
یک دادهگاه زیرمجموعهای از انبار داده است که بهطور ویژه برای یک استراتژی خاص تجاری از قبیل فروش یا امور مالی طراحی میشود. در یک دادهگاه مستقل دادهها میتوانند مستقیما از منابع جمعآوری شوند. یک دادهگاه مجموعه خاصی از اطلاعات را در خود نگه میدارد که برای گروهی ار کاربران انبار داده مورد نیاز است. بهطور مثال، دادهگاه میتواند متشکل از اطلاعات فروش باشد. لازم به توضیح است که انبار داده میتواند شامل چند دادهگاه باشد.
بهکارگیری انبار دادهها
در گذشته، کاربرد انبار دادهها محدود بود و سازمانها به شکل سادهای از آن استفاده میکردند، اما با گذشت زمان، کاربردهای پیشرفتهای برای این فناوری تعریف شد که باعث شد انبار داده به یکی از ارکان اصلی هوش تجاری تبدیل شود. امروزه انبار دادهها به روشهای مختلفی استفاده میشوند که به شرح زیر هستند:
پایگاه داده عملیاتی آفلاین
دادهها فقط از یک سیستم عملیاتی به سرور دیگر کپی میشوند. در این روش بارگیری، پردازش و گزارشگیری دادههای کپی شده بر عملکرد سیستم عملیاتی تاثیر نمیگذارد.
انبار داده آفلاین
دادههای موجود در انبار داده بهطور مرتب از پایگاه داده عملیاتی بهروزرسانی میشوند. این دادههای درون انبار داده برای تحقق اهدافی مختلفی استفاده میشوند.
انبار داده بلادرنگ
انبارهای داده بلادرنگ هر زمان تراکنشی در پایگاه داده عملیاتی انجام شود بهروز میشوند. بهطور مثال، سیستم رزرو مربوط به خطوط هوایی یا راهآهن از جمله این موارد است.
انبار داده یکپارچه
انبارهای داده هر زمان که سیستم عملیاتی تراکنشی را انجام میدهد بهطور مداوم بهروزرسانی میشود. در ادامه انبار داده تراکنشهایی را توليد میکند که به سیستم عملیاتی برگشت داده میشود.
چه کسانی به انبار داده نیاز دارند؟
انبار داده برای انواع مختلفی از کاربران کاربرد دارد:
- تصمیمگیرندگانی که به حجم عظیمی از دادهها متکی هستند.
- کاربرانی که برای به دست آوردن اطلاعات از چندین منبع داده از پردازشهای پیچیده و سفارشی استفاده میکنند.
- افرادی که میخواهند برای دسترسی به دادهها از یک فناوری ساده استفاده کنند.
- افرادی که میخواهند تصمیمگیریها بر مبنای یک قالب منظم انجام شود.
- کاربرانی که میخواهند پردازش سریعی روی حجم عظیمی از دادهها داشته باشد که برای گزارشگیری و ترسیم نمودارها ضروری است.
- افرادی که به دنبال کشف الگوهای پنهان درون جریانهای دادهای یا دادههای گروهبندی شده هستند.
- چه صنایع و کسبوکارهایی به شکل گسترده از انبار داده استفاده میکنند
از مهمترین کسبوکارها و صنایعی که از انبار دادهها استفاده میکنند به موارد زیر میتوان اشاره کرد:
آژانسهای هواپيمایی
در سیستم هواپيمایی از انبار داده برای اهداف عملیاتی مانند شرح وظایف خدمه، تجزیه و تحلیل سودآوری مسیر، تبلیغات مکرر برنامه پرواز و غیره استفاده میشود.
بانکداری
از انبار داده بهطور گستردهای در حوزه بانکداری استفاده میشود تا منابع موجود به شکل موثری مدیریت شود. تعداد کمی از بانکها نیز از انبار داده برای تحقيقات بازار، تجزیه و تحلیل عملکرد محصول و فرآیندهای اجرایی استفاده میکنند.
بهداشت و سلامت
بخش بهداشت و سلامت نیز از انبار داده برای بررسی نتایج استراتژیک و پیشبینی، تولید گزارشات درمانی بیماران، بهاشتراکگذاری دادهها با شرکتهای بیمه، خدمات پزشکی و غیره استفاده میکند.
بخش دولتی و عمومی
در این بخش از انبار داده برای جمعآوری سریع اطلاعات استفاده میشود. این فناوری به سازمانهای دولتی کمک میکند سوابق مالیاتی، سوابق سیاستگذاری بهداشتی و نمونههای مشابه را برای هر بخش به شکل مستقل نگهداری و تجزیه و تحلیل کنند.
بخش سرمایهگذاری و بیمه
در این حوزه از انبار دادهها برای تحلیل الگوهای دادهای، پیگیری حرکات بازار و ترندهای مورد توجه مشتریان استفاده میشود.
چرا به انبار داده نیاز داریم؟ (مزایا و معایب)
مهمترین مزایای انبار دادهها
- انبار داده به کاربران تجاری اجازه میدهد به سرعت به دادههای جمعآوری شده از منابع مختلف در یک مکان واحد دسترسی داشته باشند.
- انبار داده اطلاعات ثابتی در مورد فعالیتهای مختلف چند منظوره فراهم میکند. همچنین از گزارشگیری و کوئریگیری برای فعالیتهای تجاری خاص پشتیبانی میکند.
- انبار داده به یکپارچگی منابع مختلف داده کمک میکند تا خطوط تولید به شکل بهتری به کار خود ادامه دهند.
- انبار داده به کاهش زمان گردش کار برای تجزیه و تحلیل و گزارشگیری کمک میکند.
- تجدید ساختار و یکپارچهسازی فرآیند گزارشگیری و تجزیه و تحلیل را سادهتر میکند.
- انبار داده به کاربران اجازه میدهد به دادههای حیاتی موجود در چند منبع مختلف در یک مکان واحد دسترسی داشته و همچنین زمان دسترسی به دادههای موجود در منابع مختلف را کاهش میدهد.
- انبار داده حجیم زیادی از سوابق دادهها را در خود ذخیره میکند. رویکرد فوق به کاربران کمک میکند دورههای زمانی مختلف را تجزیه و تحلیل کرده و به پیشبینی چشماندازهای آتی بپردازند.
معایب انبار داده
- گزینهای ایدهآل برای دادههای بدون ساختار نیست.
- ایجاد و پیادهسازی انبار داده به تلاش و زمان زیادی نیاز دارد.
- انبار داده میتواند به سرعت منسوخ شود.
- ایجاد تغییر در طیفها و انواع دادهها، الگوبرداری از منابع داده، ایجاد نمایهگذاری و پیادهسازی کوئری روی انبار داده کار دشواری است.
- انبارداری داده ممکن است ساده به نظر برسد، اما در واقع برای خیلی از کاربران بیش از حد پیچیده است.
- سازمانها باید منابع زیادی را صرف آموزش و پیادهسازی انبار دادهها کنند.
ابزارهای انبار داده
ابزارهای زیادی برای طراحی و مدیریت انبار دادهها موجود است. در ادامه به تعدادی از ابزارهای پر کاربرد در این زمینه اشاره میکنیم:
1. MarkLogic
MarkLogic ابزاری است که اجازه میدهد یک انبار دادهها را به شکل بهینه طراحی کرده و با استفاده از آرایهای متشکل از قابلیتهای سازمانی به سادهترین و سریعترین شکل فرآیند یکپارچهسازی دادهها مدیریت کنید. این ابزار به راحتی قادر به انجام عملیات جستوجوی پیچیده بوده و قادر است از انواع مختلفی از دادهها همچون اسناد، ارتباط میان مولفههای درون بانکهای اطلاعاتی و متادیتاها کوئری بگیرد.
https://developer.marklogic.com/products/
2. Oracle
اوراکل یک پایگاه داده پیشرو در این صنعت است که طیف گستردهای از راهحلهای پیرامون انبار داده را هم برای محیطهای ابری و هم برای محیطهای درون سازمانی ارائه کرده است. این ابزار با افزایش راندمان عملیاتی به بهینهسازی تجربيات مشتریمداری کمک میکند.
https://www.oracle.com/index.html
3. Amazon RedShift
Amazon RedShift یک ابزار انبار داده ساده و مقرون به صرفه برای تجزیه و تحلیل همه نوع داده با استفاده از SQL استاندارد و ابزارهای هوش تجاری است. همچنین، RedShift با استفاده از تکنیک بهینهسازی کوئری، امکان اجرای کوئریهای پیچیده در دادههای ساختیافته پتابایتی را فراهم میکند.
https://aws.amazon.com/redshift/?nc2=h_m1
به این مطلب چند ستاره میدهید؟(امتیاز: 4.5 - رای: 1)
- منبع: ماهنامه شبکه
- نویسنده: محسن آقاجانی