MIDOONY Logo

دریاچه داده و انبار داده - تعاریف، معماری، ویژگی ها Data Lake and Data Warehouse

1400/09/23
دریاچه داده و انبار داده - تعاریف، معماری، ویژگی ها          Data Lake and Data Warehouse

#دریاچه_داده ( #Data_Lake ) و #انبار_داده ( #Data_Warehouse ) دو نوع معماری ذخیره داده با ویژگی ها و توانایی های متمایز هستند. انتخاب هر کدام به نحوه استفاده از داده و اهداف سازمان بستگی دارد. اما آنها در یک چیز مشترک هستند، هر دو، داده ها را ذخیره می کنند، ولی نحوه مدیریت داده آنها کاملاً متفاوت است. 
امروزه داده ها با ارزش ترین دارایی محسوب می شوند. شرکت‌هایی که داده‌ها را بهتر مدیریت می‌کنند، سریعتر به پیش می روند و بر صنعت خود تسلط می یابند. داده ها تصمیمات را تغذیه، استراتژی را تعریف و کسب و کار را هدایت می کنند. بنابراین، جمع آوری، مدیریت و ذخیره داده ها گام های اساسی برای شرکت های موفق می باشند.
سازمان ‌های داده محور که از داده‌ها در استراتژی کسب ‌و کار خود استفاده می کنند، می‌دانند که ذخیره ‌سازی داده صرفاً یک مسئله فنی نیست. معماری داده باید پاسخگوی حجم عظیم داده ها باشد. کسب ‌و کارها برای اینکه سریعتر به نیاز بازار واکنش نشان داده، مطابق با قوانین داده‌ عمل کرده و اقدامات آتی خود را تحلیل و طراحی کنند، نیاز به یک سیستم مدیریت داده مؤثر دارند تا در محیطی پرسرعت و پر از اطلاعات، قادر به رقابت باشند.
دو رویکرد اصلی برای معماری داده، دریاچه داده و انبار داده هستند.

دریاچه داده (Data Lake) چیست؟
دریاچه داده عبارت است از، مجموعه عظیم داده هایی که با قالب اصلی خود ذخیره شده اند. در دریاچه داده، ساختاردهی و پردازش داده در لحظه بازیابی انجام می شود. دریاچه‌ داده مخزنی است که اطلاعات مورد استفاده برای کارهای تحلیلی، نظیر یادگیری ماشین و مصور ‌سازی، را در خود نگهداری می ‌کند و اخیراً هم برای #کلان_داده ( #Big_Data ) استفاده می گردد.
ویژگی اصلی دریاچه داده، متمرکز کردن است. دریاچه داده راهکاری عملی و کم هزینه برای جمع آوری و ذخیره داده ها از هر نوع و  مقیاسی است که داده های خام، بدون ساختار، نیمه ساختیافته و ساختیافته را بدون نیاز به پردازش قبلی ذخیره می کند و امکانات جدیدی را به #متخصصان_داده ( #Data_Scientists ) ارائه می نماید. دریاچه داده بسیار انعطاف پذیر بوده و مدیریت آن آسان است. هیچ مانعی برای تعریف انواع جدید داده وجود ندارد که این امر استفاده از برنامه های مختلف را آسان تر می کند. به دلیل مقیاس پذیری خوب، از معماری های مورد علاقه برای کلان داده ها است.
این رویکرد برای کسب ‌و کارهایی ارزشمند است که داده‌ها را در زمان واقعی جمع‌آوری کرده و هر بخش از اطلاعات برایشان با ارزش است. 
دریاچه داده، داده های یک سازمان را در یک محیط قابل کنترل و مدیریت، یکپارچه می کند تا از کارهای تحلیلی و فعالیت های تولیدی پشتیبانی کند. دریاچه داده بستر های داده مختلفی مانند انبارهای داده  رابطه ای، خوشه های آپاچی هدوپ و ابزارهای تحلیلی را شامل شده و همگی آنها را از طریق یک برنامه حکمرانی (Governance Program) مشترک مدیریت می کند. این بسترهای  داده را می توان بصورت جغرافیایی توزیع کرد. دسترسی به بستر های داده تنها از طریق خدمات دریاچه داده و موتورهایی که داده ها را مدیریت می کنند امکان دارد و نرم افزارها و افراد از طریق خدمات دریاچه داده به داده ها دسترسی دارند. دریاچه داده به سازمان‌ها امکان می‌دهد داده‌ها را بصورت ایمن و مناسب اداره نمایند.
شکل زیر معماری دریاچه داده را نشان می دهد. مخازن دریاچه داده که در بستر های داده قرار دارند توسط خدمات دریاچه داده احاطه و محافظت شده و زیربنای حکمرانی و مدیریت اطلاعات را تشکیل می دهند.
 

Data Lake

مزایای دریاچه داده برای کسب و کار عبارتند از:
•    اعتماد به داده‌ها- در صورت عدم اعتماد به داده ها سازمان‌ها تصمیمات خود را با احساس درونی می گیرند.
•    خدمات هوش کسب و کار - که اجازه می دهند کاربران گزارشات هوشمند و سریع تولید نمایند.
•    انجام تحلیل های پیشرفته – تحلیل های جدید به رویکردهایی برای سازماندهی انواع مختلف داده از داخل و خارج سازمان نیاز دارند.

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

شکل زیر گروه های اصلی خدمات دریاچه داده را نشان می دهد.
 

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

انبار داده چیست؟
انبار داده عبارت است از یک سیستم مدیریت داده که برای ذخیره مقادیر زیاد داده های ساختیافته از منابع متعدد طراحی شده است. هدف از انبارهای داده جمع آوری و سازماندهی داده ها طی فرایندی خاص، جهت ارائه سریع بینش و بهبود تصمیم گیری در کسب و کارها است. یعنی نحوه استفاده از داده ها باید قبل از بارگذاری آنها در انبار داده تعریف شود. انبارهای داده از دهه 1980 مورد استفاده می باشند.
چون نحوه استفاده داده ها از قبل تعیین شده است، معماری انبار داده نیاز به برنامه ریزی دقیق دارد، چه نوع داده ای دریافت و چه ابزاری برای جمع آوری، سازماندهی، پردازش و بازیابی داده ها استفاده می شود؟ هدف این است که مجموعه ای باثبات از داده ها در قالب های تعریف شده و آماده برای تحلیل وجود داشته باشد.
از آنجایی که انبار داده یک سیستم مدیریت داده است که از فناوری های مختلف تشکیل شده و تنها یک مخزن داده نیست، سرمایه گذاری بیشتری را می طلبد و داده های با کیفیت تری برای تصمیم گیری سریع فراهم می کند.
داده ها از سیستم های مختلف استخراج، قالب ‌بندی و در محل ‌های خاص در انبار داده ذخیره می‌شوند. سپس برای ایجاد خروجی های متناسب جهت فرایند تصمیم گیری در کسب و کار، پردازش می گردند.
سازگاری و باثبات بودن فرمت، یکی از نقاط قوت انبارهای داده است که باعث می شود تحلیل و استفاده داده ها بدون تاخیر، با حفظ یکپارچگی و کیفیت اطلاعات انجام شود.
هنگام برنامه ریزی و پیاده سازی انبار داده، تصمیم مهمی باید اخذ گردد و آن این است که داده ها در کجا ذخیره شوند. باید نوع مخزن (repository) انبار داده مورد نیاز تعیین شود. همچنین باید بهترین رویکرد و توپولوژی پیاده سازی جهت تامین نیازها معین  گردد.
معماری انبار داده، محل قرار گیری مخزن انبار داده و کنترل آنرا تعیین می کند، از قبیل متمرکز یا توزیع شده و با مدیریت متمرکز یا مستقل. یک تصمیم این خواهد بود که آیا یک پایگاه داده بزرگ داشته باشیم یا تعدادی پایگاه داده کوچکتر که با موجودیت های  سازمانی مشخصی مرتبط هستند.
گزینه های ممکن برای مخزن انبار داده عبارتند از #انبار_داده_سازمانی ( #Enterprise_Data_Warehouse#مراکز_داده ( #data_marts )، ذخایر داده عملیاتی (Operational data stores) و نواحی میانی داده (Data staging areas)، که بسته به نیاز، می توانند انتخاب شوند.
 

منظور از انبار داده سازمانی  یا EDW مخزنی است که از یکپارچه شدن داده های سازمان حاصل می گردد و با مخزن تکی و متمرکز تفاوت دارد. معمولا تصور این  است که EDW دارای مدل داده رابطه ای است که این رابطه استفاده از داده های نرمال شده را لازم دارد. ولی بسته به نیاز، می توان ترکیبی از مدل های رابطه ای و نرمال شده، با مدل های چند بعدی و نرمال نشده را استفاده کرد. 
مراکز داده (data marts) معمولا بجای مدل رابطه ای بر پایه مدل داده چند بعدی ساخته می شوند به این دلیل که استفاده و توسعه آنها آسان تر بوده و در وضعیت های مختلف عملکرد خوبی دارند. آنها زیرساخت مناسب برای پرس و جوها و تحلیل های #OLAP را فراهم می نمایند. دو نوع مرکز داده وجود دارد که عبارتند از وابسته و مستقل. در نوع وابسته داده ها مستقیما از انبار داده استخراج می شوند ولی در نوع مستقل داده ها از خارج از انبار داده کسب می گردند از قبیل نرم افزارها، پایگاه های داده #OLTP یا منابع داده عملیاتی (ODS).
ذخایر داده عملیاتی، جزیی ترین داده ها را نگهداری می کنند که در زمان واقعی یا نزدیک به آن از سیستم های OLTP دریافت می شوند و از پایگاه های داده یکسان یا خیلی مشابه و نرمال شده استفاده می نمایند. 
نواحی میانی داده، مخازنی هستند که برای ذخیره نتایج موقت، هنگام فرایند جمع آوری، پاکسازی، تبدیل، انتقال و بارگذاری داده (ETL)  استفاده می شوند. 
شکل زیر انواع پیاده سازی انبار داده را نشان می دهد :
 

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

تفاوت های اصلی
•    سیلو و سیستم – دریاچه داده مخزن عظیم داده است که توسط نرم افزارهای مختلف بعدا استفاده خواهد شد. انبار داده مجموعه ای از فناوری ها است که یک سیستم مدیریت داده با هدف استفاده استراتژیک از اطلاعات، ایجاد می کند. 
•    انواع داده - دریاچه داده، داده ها را به شکل خام و با قالب اصلی ذخیره می کند. انبار داده قبل از ذخیره سازی داده ها را تبدیل می کند. اینکار باعث ایجاد تفاوت در سرعت نیز می شود، زیرا در دریاچه داده دسترسی به داده ها، سریعتر می باشد.
•    ساختار داده - انبارهای داده بیشتر روی داده های ساختیافته تمرکز می کنند که ویژگی ها، معیارها و منابع آنها تعریف شده اند ولی دریاچه‌های داده انواع داده‌ها را از ساختیافته تا بدون ساختار جمع‌آوری می‌کنند. انبار داده شمای داده را قبل از ذخیره سازی تعریف می کند ولی دریاچه داده شمای داده را بعدا  تعریف می کند. دریاچه داده انعطاف پذیری بیشتری دارد چون شمای داده از قبل تعریف نشده است. می توان دریاچه داده را با توجه به داده های موجود و اهداف خاص ایجاد و بصورت موردی بازسازی کرد ولی در انبارهای داده باید مدل های داده از قبل با در نظر گرفتن تمام الزامات تعریف شوند.
•    پردازش داده - انبارهای داده از فرایند استخراج، تبدیل، بارگذاری (ETL) استفاده می کنند زیرا داده ها باید قبل از بارگذاری در انبار داده به یک قالب ساختیافته تبدیل شوند ولی دریاچه های داده از فرایند تبدیل، بارگذاری، استخراج (ELT) استفاده می کنند زیرا تبدیل داده ها پس از بارگذاری در صورت نیاز انجام می شود.
•    تحلیل داده - داده های انبار داده برای استفاده های عملیاتی بهترند زیرا از قبل سازماندهی و قالب بندی شده اند. دریاچه های داده برای تحلیل و کاربردهای تجربی بهتر هستند، اما می توانند پس از پردازش داده ها برای عملیات نیز با ارزش باشند.
•    فناوری – چون دریاچه داده شمای داده را فقط برای برخی داده ها آنهم در زمان بازیابی اعمال می کند، برای ذخیره و پردازش مجموعه داده های بزرگ می تواند از چارچوب های ساده تری استفاده نماید. انبار داده از فناوری پایگاه داده رابطه ای برای پرس و جوی سریع داده های ساختیافته استفاده می کند.
• ذخیره سازی و محاسبات – پیچیدگی انبار داده بیشتر است، زیرا هم ذخیره سازی و هم محاسبات داده را بصورت یکپارچه انجام می دهد. دریاچه داده رویکرد ذخیره‌سازی و محاسبات مجزایی دارد، آنها عمدتاً بعنوان یک مخزن داده عمل می‌کنند، بنابراین ذخیره‌سازی داده ویژگی اصلی آنهاست و محاسبات داده اولویت ندارد.
•    هزینه ها - انبارهای داده، بعنوان یک بسته فناورانه، گران تر هستند و در برابر تغییرات انعطاف پذیری کمتری داشته و برنامه ریزی کاملی لازم دارند. دریاچه های داده مقرون بصرفه تر هستند و سریعتر بروز می شوند. هر دو در صورت استفاده مناسب ROI خوبی دارند.
•    محدودیت‌ها - دریاچه‌های داده آزادی عمل بیشتری برای پردازش داده‌ها فراهم می‌کنند، داده‌ها در قالب اصلی خود نگهداری شده و برای هر کاربری تبدیل و مجددا استفاده می شوند. انبارهای داده با تبدیل داده ها هنگام دریافت آنها، اصلاحات بعدی را کاهش می دهند، اما هدف آنها تولید اطلاعات فرمت بندی شده برای مقاصد مد نظر است.
•    هدف - دریاچه‌های داده برای متخصصان داده که از تحلیل عمیق داده‌ها برای مدل سازی آماری و پیشگویانه استفاده می‌کنند، ایده‌آل هستند. انبارهای داده برای کارشناسان کسب و کار که بر اهداف عملیاتی و معیارهای عملکردی تمرکز می نمایند، ایده آل هستند. نمایش داده‌ها ساختار بهتری دارد و استفاده و درک آنها آسان ‌تر است، زیرا اطلاعات متناسب با نیازهای خاص کاربران می باشد.
 

 

1 355
دیدگاه کاربران
0 دیدگاه
شما هم دیدگاه خود را ارسال کنید