تا به اینجا به صورت خلاصه در دوره انبارداده (Data Warehouse) به این نتیجه رسیدیم که بایستی برای تحلیل و دادهکاوی بر روی دادههای زیاد، دادهها را در یک مکان به اسم انبار داده یا همان Data Warehouse ذخیره و انبار میکنیم تا بتوانیم دادهها را برای عملیات هوشتجاری (Business Intelligence) آماده کنیم. اما این فرآیند (تبدیل دادهها از منابع مختلف سازمان، به انبارداده) به همین سادگی نیست و مسیر پر پیچ و خمی دارد. به همین دلیل مفهومی به نام ETL به وجود آمده است که فرآیند این انتقال را برای ما سازمان میدهد.
در درس هوشتجاری به یک شمای کلی اشاره کردیم:
اجازه بدهید دوباره با هم فرآیند ایجاد یک انبار داده را مرور کنیم. برای شکلگیری انبار داده، دادهها از منابع مختلف که احتمالا توسط نرمافزارهای مختلف ایجاد شده است، از طریق فرآیندهای ETL جمعآوری شده و در یک انبار داده مجتمع جمعآوری میشوند. فرآیند ETL که در واقع عملیات اصلی در درست کردن انبارداده است، خود از سه قسمت تشکیل شده است. استخراج (Extract)، تبدیل (تغییرات) (Transformation) و بارگزاری (Load). شکل زیر نمایشگر فرآیند ETL است:
در مرحله اولی، دادهها از منابع مختلف، توسط فرآیند استخراج (Extract)، استخراج شده و در مخزنی به نام محل استقرار (Staging Area) قرار میگیرد. در واقع در مرحله استخراج داده، که مرحله اول ETL است، دادهها از منابع دادهای استخراج شده و در Staging Area ذخیره میشوند. مرحله استخراج باعث میشود دادههایی که در منابع مختلف بوده و دارای سیستم عاملهای متفاوت و ساختار بازیابی گوناگون هستند جمعآوری شوند تا بتوان بر روی آنها عملیات پردازشی را انجام داد.
مرحله دوم تبدیل (Transformation) است. این مرحله که قلب اصلی فرآیند ETL به شمار میرود در Staging Area انجام میشود تا انجام عملیات (بعضا سنگین) مزاحم انبارداده و یا منابع دادهای منبع نباشد. حتما توجه دارید که دادههایی که در منابع دادهای مختلف هستند به صورت خام ذخیره شدهاند و قبل از اینکه در انبارداده ذخیره شوند نیاز به تغییراتی دارند. با این تغییرات و تبدیلها، دادهها آماده انبار کردن میشوند. مثلا اگر بخواهید نام و نام خانوادگی یک شخص را همراه با پسوند این شخص در یک فیلد انبار کنید و هر کدام از اینها در مخزن جدایی باشد، در این مرحله (مرحله تبدیل) بایستی این تغییرات را انجام دهید.
مرحله سوم بارگزار (Load) است که دادههای تغییریافته و آماده شده توسط مرحله قبل (مرحله تبدیل-Transformation) در انبارداده بارگزاری میگردد.
برای درک بهتر ETL، فرض کنید شما یک تاجر چایی هستید. بایستی چایی را از منابع آن، یعنی باغها و مزارع مختلف چایی استخراج کنید. در مرحله استخراج (Extract) کردن، چاییها را از باغها و مزارع استخراج میکنید و قبل از انبار کردن در سولههایی مخصوص قرار میدهید (مانند Staging Area). در این سولهها چاییهای خام را به چاییهای فرآوری شده تبدیل (Transform) میکنید و بعد از بسته بندی آنها را در انبارهای چایی، بارگزاری (Load) میکنید تا آماده عملیات فروش و صادرات شوند. اینجا هم شما سه مرحله ETL را برای فروش چایی انجام دادهاید تا دادههای خود را آماده انبار کردن کنید.
- ۱ » هوش تجاری (Business Intelligence) چیست؟
- ۲ » انبار داده (Data Warehouse) چیست؟
- ۳ » مفهوم مکعب داده (Data Cube) در انباردادهها
- ۴ » پردازش تحلیلی برخط یا همان OLAP چیست؟
- ۵ » تفاوت OLAP و OLTP چیست؟
- ۶ » فرآیند ETL در انبار داده (Extract, Transformation, Load)
- ۷ » ELT در انبار داده و تفاوت آن با ETL
- ۸ » طراحی انبار داده با شِمای چند بُعدی (Multidimensional Schema)
- ۹ » بازار داده (Data Mart) چیست و چه تفاوتی با انبار داده (Data Warehouse) دارد؟
- ۱۰ » دریاچه داده (Data Lake) چیست؟
بسیار عالی بود وخیلی ساده و کاربردی بیان شده بود . با تشکر
ممنون از توضیحات خوب و روان شما .
شما به معنای واقعی استاد هستید که این حجم از مطالب تخصصی و سنگین رو تونستید اینقدر روان و ساده بیان کنید و از همه مهمتر به خواننده مطالبتون انتقال بدید
واقعا دست مریزاد
عالی بودین خداقوت