ETL فرایندی است که دادهها را از سیستمهای مختلف منبع داده استخراج میکند، سپس آنها را تغییر میدهد (مانند اعمال محاسبات، الحاق ها و غیره) و در نهایت دادهها را در سیستم انبار دادهها (Data Warehouse) جهت استفاده دانشمندان داده بارگذاری میکند. روند کامل این فرایند را ETL مینامند که مخفف سه کلمه استخراج (Extract)، تبدیل (Transform) و بارگذاری (Load) است.
این باور کاملا دور از ذهن است اگر فکر کنید ایجاد یک انبار داده صرفاً استخراج اطلاعات از چندین منبع و بارگیری در پایگاه داده یک انبار داده است. این نوع تفکر به طور کامل به دور از حقیقت بوده و اصل ماجرا به یک فرآیند پیچیده ETL نیاز دارد. این روند به ورودیهای فعال ذینفعان مختلف از جمله توسعهدهندگان، تحلیلگران، آزمایشگران، مدیران ارشد نیاز دارد و از نظر فنی بسیار چالش برانگیز است.
برای اینکه این روند ارزش خود را به عنوان ابزاری برای تصمیم گیرندگان حفظ کند، در سیستم انبار داده، باید همواره با تغییرات مکرر کسب و کار پیش برود. به بیان دیگر ETL فعالیت تکراری (روزانه، هفتگی، ماهانه) یک سیستم انبار داده است و باید چابک، خودکار و مستند باشد.
چرا به ETL نیاز دارید؟
دلایل زیادی برای پذیرش ETL در سازمان وجود دارد:
- این مهم به شرکتها کمک میکند تا دادههای خود را برای تصمیمگیری مهم در مورد کسب و کار تجزیه و تحلیل کنند
- پایگاه دادههای معاملاتی نمیتوانند به سوالات پیچیده کسب و کار پاسخ دهند اما آنها توسط ETL پاسخ داده میشوند
- انبار داده یک مخزن مشترک داده را فراهم میکند
- ETL روشی را برای انتقال دادهها از منابع مختلف به انبار داده فراهم میکند
- با تغییر منابع داده، انبار داده نیز به طور خودکار به روز میشود
- سیستم ETL به خوبی طراحی شده و برای موفقیت مستند یک پروژه در انبار داده بسیار ضروری است
- تأیید قوانین تغییر داده، تجمیع و محاسبات را مجاز میکند
- فرآیند ETL امکان مقایسه نمونه دادهها بین منبع و سیستم هدف را فراهم میکند
- فرآیند ETL می تواند تحولات پیچیدهای را انجام دهد و به منطقه اضافی برای ذخیره دادهها نیاز دارد
- ETL به مهاجرت دادهها به انبار داده کمک میکند. به قالبها و انواع مختلف تبدیل میشود تا به یک سیستم سازگار پایبند باشد
- این روند یک فرایند از پیش تعیین شده برای دستیابی و دستکاری دادههای منبع به پایگاه داده هدف است
- ETL زمینه تاریخی عمیقی برای کسب و کار فراهم میکند
- به بهبود بهرهوری کمک میکند زیرا بدون نیاز به مهارتهای فنی کدگذاری و استفاده مجدد کار میکند
فرآیند ETL در انبارهای داده
ETL یک فرآیند ۳ مرحلهای است.
مرحله اول: استخراج
در این مرحله، دادهها از سیستم منبع به منطقه مرحلهبندی استخراج میشوند. در صورت وجود تغییراتی در منطقه مرحلهبندی، تغییرات انجام میشوند تا عملکرد سیستم منبع تخریب نشود. همچنین، اگر دادههای خراب مستقیماً از منبع در پایگاه داده انبار داده کپی شود، بازگشت مجدد آنها یک چالش خواهد بود. منطقه صحنهسازی، فرصتی برای اعتبارسنجی دادههای استخراج شده قبل از انتقال به انبار داده میدهد.
انبار دادهها نیاز به تلفیق سیستمهایی دارند که متفاوت هستند. مانند:
DBMS، سخت افزار، سیستم عامل و پروتکلهای ارتباطی. این منابع میتوانند شامل برنامههای قدیمی مانند Mainframes، برنامههای سفارشی، دستگاههای نقطه تماس مانند ATM، سوئیچهای تماس، پروندههای متنی، صفحات گسترده، ERP، دادههای فروشندگان و شرکای دیگر نیز باشند.
از این رو قبل از استخراج و بارگیری فیزیکی دادهها، به یک نقشه داده منطقی نیاز است. این نقشه داده رابطه بین منابع و دادههای هدف را توصیف میکند.
سه روش استخراج داده:
- استخراج کامل
- استخراج جزئی: بدون اطلاع رسانی و به روزرسانی
- استخراج جزئی: با اطلاع رسانی و به روز رسانی
صرف نظر از روش استفاده شده، استخراج نباید بر عملکرد و زمان پاسخ سیستمهای منبع تأثیر بگذارد. این سیستمهای منبع و پایگاه تولید مستقیم دادهها هستند. تاثیر منفی آن میتواند کاهش سرعت یا قفل شدن برنامه و تاخیر در نتیجه کار شرکت باشد.
برای جلوگیری از عملکرد نادرست، برخی از اعتبار سنجیها را در حین استخراج انجام دهید. به عنوان مثال:
- سوابق را با دادههای منبع ارتباط دهید
- اطمینان حاصل کنید که هیچ اطلاعات هرزنامه / ناخواسته بارگیری نشده است
- نوع داده را حتما بررسی کنید
- انواع دادههای تکراری / قطعه قطعه شده را حذف کنید
- بررسی کنید که آیا همه کلیدها در جای خود قرار دارند یا نه
مرحله دوم: تبدیل
دادههای استخراج شده از سرور منبع، خام هستند و به شکل اصلی قابل استفاده نیست. بنابراین باید تمیز، نقشه برداری و تغییر شکل یابد. در واقع، این مرحله کلیدی است که در آن فرآیند اصلی، ارزش افزوده و دادهها را تغییر میدهد به طوری که میتوان گزارشهای هوش تجاری (Business Intelligence) ایجاد میشوند.
در این مرحله، شما مجموعهای از توابع را روی دادههای استخراج شده اعمال میکنید. دادههایی که به هیچگونه تغییر و تحولی احتیاج ندارند، حرکت مستقیم یا عبور از دادهها نامیده میشوند.
در مرحله تحول، میتوانید عملیات سفارشی را روی دادهها انجام دهید. به عنوان مثال، اگر کاربر درآمد مجموع فروش خود را در بانک اطلاعاتی بخواهد. یا اگر نام و نام خانوادگی در جدول در ستونهای مختلف باشد. قبل از بارگیری میتوان آنها را بهم پیوست.
برخی از مشکلات یکپارچگی دادهها عبارتند از:
- هجیهای مختلف همان شخص مانند جون، جان و …
- چندین روش برای نشان دادن نام شرکت مانند Google، Google Inc وجود دارد
- استفاده از نامهای مختلف مانند کِلیولند، کلِولند.
- ممکن است موردی ایجاد شود که شمارههای مختلف حساب توسط برنامههای مختلف برای همان مشتری ایجاد میشود
- در برخی از دادهها، پروندههای مورد نیاز خالی هستند
- محصول نامعتبر جمع آوری شده در پایانه فروش (POS) به عنوان ورود دستی میتواند منجر به اشتباه شود
اعتبارسنجیهای مورد نظر در این مرحله
_ فیلتر کرده و فقط ستونهای خاصی را برای بارگیری انتخاب کنید
_ استفاده از قوانین و جداول جستجو برای استاندارد سازی دادهها
_ کاراکتر تنظیم، تبدیل و کدگذاری شود
_ تبدیل واحدهای اندازهگیری مانند تبدیل زمان تاریخ، تبدیل ارز، تبدیل عددی و غیره
_ بررسی اعتبار آستانه داده به عنوان مثال، سن نمیتواند بیش از دو رقم باشد
_ اعتبار سنجی جریان داده از منطقه مرحلهبندی به جداول میانی
_ قسمتهای مورد نیاز نباید خالی بمانند.
_ تمیز کردن (به عنوان مثال، نگاشت NULL به ۰ یا جنسیت مرد به “M” و زن به “F” و غیره)
_ یک ستون را به چند برابر تقسیم کنید و چندین ستون را در یک ستون ادغام کنید
_ جابجایی ردیفها و ستونها
_ برای ادغام دادهها از جستجوها استفاده کنید
_ با استفاده از اعتبار سنجی پیچیده دادهها (به عنوان مثال، اگر دو ستون اول یک ردیف خالی باشد، پردازش ردیف به طور خودکار رد میشود)
مرحله سوم: بارگذاری
مجموعه
هوش تجاری
- وقتی از هوش تجاری صحبت میکنیم، از چه حرف میزنیم؟
- تبدیل داده به اطلاعات با هوش تجاری
- کلان داده (Big Data) چیست؟
- تجزیه و تحلیل کلان داده (Big Data) چیست و چگونه انجام میشود؟
- مقایسه مفاهیم تحلیل داده، علوم داده و کلان داده (Big Data)
- هوش تجاری (BI) چیست و چه تفاوتی با آنالیز تجاری (BA) دارد؟
- آنچه باید درباره هوش تجاری بدانیم
- هوش تجاری (BI) چطور میتواند به کسب و کار شما کمک کند؟
- معرفی ۵ کتاب برتر درباره هوش تجاری
- ۷ کلید برای یک استراتژی موفقیت آمیز در زمینه هوش تجاری
- ۹ راه عدم موفقیت هوش تجاری
- ۱۰ تکنیک اساسی تجسم داده در ایجاد گزارشهای هوش تجاری
- تفاوت داشبورد و گزارش چیست؟
- ۱۳ مثال عملی از تحلیل داده با هوش تجاری
- کاربرد هوش تجاری در صنایع مختلف
- معرفی نرم افزارهای مختلف هوش تجاری
- پاور بی آی (Power BI) چیست و در هوش تجاری چه کاربردی دارد؟
- راهنمای کامل پاور بی آی (Power BI)
- ویژگیهای نرم افزار Power BI
- تفاوت پاور بی آی و اکسل
- راهنمای انتخاب ابزار مناسب بین پاور بی آی و اکسل
- آموزش توابع زبان DAX در هوش تجاری با پاور بی آی (Power BI)
- تفاوت زبان M و DAX در نرم افزار Power BI
- مقایسه ابزار Power BI و Tableau در هوش تجاری
- آموزش Power BI Report Server
- آموزش نصب و راه اندازی Power BI Report Server
- مسیر شغلی در هوش تجاری
- مهمترین تکنیکهای هوش تجاری
- پیاده سازی هوش تجاری در سازمانها
- داده کاوی چیست و چه تکنیکهایی دارد؟
- همهچیز درباره علم داده و نحوه استفاده از آن
- دانشمند داده کیست و چه نقشی در کسب و کار دارد؟
- معرفی برترین زبانهای برنامهنویسی علم داده
- زبان برنامهنویسی پایتون چیست و چرا باید آن را یاد بگیرید؟
- پایگاه داده چیست و چه اجزایی دارد؟
- زبان برنامه نویسی R چیست؟
- انبار داده چیست؟
- مفاهیم، معماری و اجزای انبار داده
- فرایند ETL در ایجاد انبار داده چیست؟
- مدلسازی داده چیست؟
- سیستمهای پشتیبانی تصمیمگیری چیست و چه کاربردهایی دارد؟
- تحلیلهای پیشبینی کننده چیست و چگونه انجام میشود؟
- علم تصمیمگیری چیست و چگونه میتوانیم تصمیمات دادهمحور بگیریم؟
- تصمیمگیری مبتنی بر داده چیست و چه تاثیری در موفقیت کسب و کار دارد؟
- کاربرد تحلیل داده در بانکداری و شرکتهای خدمات مالی