تسک Data Profiling در SSIS
تسک Data Profiling در SSIS برای محاسبه پروفایلهای مختلفی استفاده میشود که به ما کمک میکند تا با منبع داده آشنا شویم و مشکلات موجود در دادهها (در صورت وجود) را شناسایی کنیم که باید اصلاح شوند. در اینجا نحوه پروفایلسازی دادههای منبع با استفاده از این تسک SSIS با یک مثال نشان داده میشود.
تسک Data Profiling در SSIS فقط با SQL Server کار میکند. بنابراین، تسک Data Profiling از دادهها در سیستم فایل یا هر شخص ثالثی پشتیبانی نمیکند.
مثال تسک Data Profiling در SSIS
تسک Data Profiling در SSIS را به ناحیه Control Flow بکشید و رها کنید، همانطور که در زیر نشان داده شده است.

دوبار کلیک کردن روی آن، ویرایشگر تسک Data Profiling را برای پیکربندی آن باز میکند.
Time-out (بر حسب ثانیه): لطفاً زمان تایماوت اتصال را بر حسب ثانیه مشخص کنید. اگر اتصال بیشتر از این زمان طول بکشد، اتصال شکست خواهد خورد.
OverwriteDestination: این ویژگی تسک Data Profiling در SSIS دو گزینه دارد: True و False. اگر این ویژگی را روی True تنظیم کنیم، تسک File System فایلهای موجود در مسیر مقصد را بازنویسی خواهد کرد.
Open Profile Viewer: این دکمه دادههای پروفایلسازی را پس از اجرای بسته سرویس یکپارچگی نمایش میدهد.

DestinationType: این ویژگی تسک Data Profiling در SSIS دو گزینه دارد: File Connection و Variable. اگر این متغیر را روی True تنظیم کنیم، دادههای مقصد در یک متغیر ذخیره خواهند شد. اگر آن را روی File Connection قرار دهیم، لطفاً فایل مقصد را بهطور دستی با استفاده از File Connection Manager انتخاب کنید.
هنگامی که DestinationType را روی File Connection تنظیم میکنید، باید اتصال مقصد را با استفاده از ویژگی Destination پیکربندی کنید. اگر قبلاً File Connection Manager را ایجاد کردهاید، آن را از فهرست کشویی انتخاب کنید.
اگر قبلاً هیچ Connection Manager ایجاد نکردهاید، باید یک اتصال جدید با انتخاب <New Connection..> ایجاد کنید.

پس از کلیک بر روی گزینه <New Connection..>، ویرایشگر File Connection Manager برای پیکربندی اتصال مقصد باز خواهد شد.
اگر فایلهای تسک Data Profiling در SSIS موجود دارید، گزینه Existing File را از نوع استفاده انتخاب کنید. در غیر این صورت، گزینه Create File را انتخاب کرده و دکمه Browse را برای انتخاب فایل موجود از سیستم فایل یا ایجاد یک فایل جدید کلیک کنید.

از تصویر بالا، میتوانید مشاهده کنید که ما فایل ProductsProfiling.xml را داخل پوشه مقصد ایجاد کردهایم.

برای اتمام پیکربندی اتصال منبع، روی OK کلیک کنید. اگر در درک این موضوع مشکل دارید، لطفاً به مقاله File Connection Manager مراجعه کنید.

تسک Data Profiling هشت نوع مختلف را محاسبه میکند.
جدول زیر فهرستی از انواع موجود در تسک Data Profiling در SSIS و توضیحات آنها را نمایش میدهد.
تسک Data Profiling در SSIS | توضیحات |
---|---|
Candidate Key Profile | این تسک پروفایل داده، درصد مقادیر Null در یک ستون را گزارش میدهد. این برای بررسی اینکه کدام ستون بیشترین مقادیر Null را دارد مفید است (برای تحلیل دادهها). |
Column Length Distribution | این تسک گزارش میدهد که مقادیر در ستون وابسته چقدر به مقادیر در ستون تعیینکننده وابسته هستند (ممکن است یک ستون یا مجموعهای از ستونها باشد). این برای شناسایی معتبر بودن دادههای ستون مفید است. به عنوان مثال، اگر وابستگی بین ستونی که کدپستی هند را در بر دارد و ستونهایی که ایالتهای هند را در بر دارند پروفایل کنید، دادههای شما نادرست خواهد بود اگر وابستگی شما چندین ایالت را برای یک کدپست پیدا کند. |
Column Null Ratio | این تسک پروفایل داده، درصد مقادیر Null در یک ستون را گزارش میدهد. این برای بررسی اینکه کدام ستون بیشترین مقادیر Null را دارد مفید است (برای تحلیل دادهها). |
Column Pattern | این تسک مجموعهای از RegExp (عبارات منظم) را که درصد مشخصی از مقادیر در یک ستون رشتهای را پوشش میدهند، گزارش میدهد. |
Column Statistics | این پروفایل تسک Data Profiling در SSIS، آمارهایی مانند کمترین مقدار، بیشترین مقدار، میانگین و انحراف استاندارد برای هر ستون عددی، و کمترین و بیشترین مقدار برای ستونهای تاریخزمان را گزارش میدهد. برای بررسی اینکه آیا ستون تاریخ دادههای صحیحی را نگه میدارد یا خیر مفید است. |
Column Value Distribution | تمام مقادیر متمایز موجود در ستون انتخابی را گزارش میدهد و درصد ردیفهای هر مقدار را نشان میدهد. این برای شناسایی معتبر بودن دادههای ستون مفید است. به عنوان مثال، اگر ستون شما قرار است ایالتهای ایالات متحده را ذخیره کند و شما بیشتر از 50 ایالت پیدا کنید، دادههای شما نادرست است. |
Functional Dependency | این تسک گزارش میدهد که مقادیر در ستون وابسته چقدر به مقادیر در ستون تعیینکننده وابسته هستند (ممکن است یک ستون یا مجموعهای از ستونها باشد). این برای شناسایی معتبر بودن دادههای ستون مفید است. به عنوان مثال، اگر وابستگی بین ستونی که کدپستی هند را در بر دارد و ستونهایی که ایالتهای هند را در بر دارند پروفایل کنید، دادههای شما نادرست خواهد بود اگر وابستگی شما چندین ایالت را برای یک کدپست پیدا کند. |
Value Inclusion | این پروفایل مقادیر همپوشانی بین دو ستون یا دو مجموعه از ستونها را محاسبه میکند. ابتدا شناسایی میکند که آیا ستون برای استفاده به عنوان کلید خارجی بین دو ستون مناسب است یا خیر. |

لطفاً به تب General تسک Data Profiling در SSIS بروید. سپس، روی دکمه Quick Profile کلیک کنید تا یک پروفایل جدید ایجاد کنید.

پس از کلیک روی دکمه، یک پنجره جدید به نام Single Table Form باز میشود. روی دکمه جدید کلیک کنید و پنجره Connection Manager دیگری باز خواهد شد تا Provider، نام سرور و نام پایگاه داده را انتخاب کنید. اگر قبلاً هرگونه connection manager ایجاد کردهاید، آنها را از فهرست کشویی انتخاب کنید.
در اینجا، ما اتصال ADO.NET ایجاد شده قبلی را انتخاب میکنیم. در اینجا، ما جدول SQL DimProduct را انتخاب میکنیم.

تصویر بالا نشان میدهد که ما از حساب کاربری Windows لوکال هاست خود به عنوان نام سرور استفاده میکنیم. سپس، [AdventureWorksDW2014] نام پایگاه داده است.
در زمان واقعی، باید گزینه Use SQL Server Authentication را انتخاب کرده و اعتبارنامههای معتبر که مدیر سیستم شما ارائه داده را وارد کنید. در اینجا، ما تمام گزینههای موجود را انتخاب میکنیم.

پس از کلیک روی دکمه OK، ویرایشگر تسک Data Profiling در SSIS به تب Profile Requests منتقل خواهد شد.

روی OK کلیک کنید تا پیکربندی تکمیل شده و ویرایشگر تسک Data Profiling بسته شود. اکنون بیایید بسته را اجرا کرده و نتیجه را مشاهده کنیم.

همانطور که در اسکرینشات بالا نشان داده شده است، بسته تسک Data Profiling در SSIS با موفقیت اجرا شده است. برای مشاهده خروجی تولیدشده توسط این تسک، به ابزار Data Profile Viewer نیاز داریم.
لطفاً از نوار جستجو استفاده کرده و عبارت Data Profile Viewer را تایپ کنید، یا به مسیر زیر بروید:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft SQL Server 2014\Integration Services
با دوبار کلیک روی Data Profile Viewer، پنجرهای مانند زیر باز خواهد شد.
برای مشاهده خروجی، لطفاً روی Open folder کلیک کرده و فایل XML را که تسک Data Profiling تولید کرده انتخاب نمایید.

اسکرینشات زیر فهرستی را نشان میدهد که هنگام پیکربندی بسته تسک Data Profiling در SSIS انتخاب کردهایم.
Candidate Key Profiles: این گزینه گزارش میدهد که آیا یک ستون یا مجموعهای از ستونها، کلید تقریبی یا کلید اصلی برای دادههای انتخابشده هستند یا نه. در جدول انتخابشده ما (DimProducts)، ستون ProductKey به عنوان ستون کلید شناسایی شده است. قدرت کلید آن ۱۰۰٪ است، که به این معنی است که داده معتبر است.

Column Length Distribution: این گزارش از تسک Data Profiling در SSIS شامل دو بخش است:
Column Length Distribution: این بخش کمترین و بیشترین طول هر ستون را در جدول انتخابشده نمایش میدهد.
Length Distribution: این بخش تمام طولهای متفاوت رشتهای موجود در ستونهای انتخابشده را همراه با درصد ردیفهایی که همان طول را دارند، گزارش میدهد.
در اینجا، ما ستون Arabic Description را انتخاب کردهایم. همانطور که مشاهده میکنید، این ستون دارای طولهای متمایز ۱۷، ۱۸، ۱۹ … است، و طولهای ۱۹ و ۲۲ درصد بالاتری از دادهها را در بر میگیرند. این به این معناست که هنگام انتقال داده، میتوانیم طول رشته مقصد را به جای ۲۵۵، مقدار ۲۵ در نظر بگیریم.

Data Profiling Task – Column Null Ratio Profiles: این پروفایل درصد مقادیر Null موجود در هر ستون را گزارش میدهد. تصویر زیر نشان میدهد که ستون End Date بالاترین درصد مقادیر NULL را دارد. ستونهایی مانند Color، Days to Manufacture، English Product Name، French Product Name، Product Key، Product Alternate Key، Photo و Finished Good Flag هیچ مقدار Null ندارند.

Column Statistic Profiles: این پروفایل آمارهایی مانند کمترین مقدار (Minimum Value)، بیشترین مقدار (Maximum Value)، میانگین (Mean) و انحراف معیار (Standard Deviation) را برای هر ستون عددی گزارش میدهد. همچنین، برای ستونهای از نوع Datetime، فقط کمترین و بیشترین مقدار گزارش میشود.

Column Value Distribution: این گزارش از تسک Data Profiling در SSIS شامل دو بخش است:
Column Value Distribution: تعداد مقادیر متمایز (Distinct Values) در هر ستون از جدول انتخابشده را نمایش میدهد.
Frequent Value Distribution: تمام مقادیر متمایز در ستونهای انتخابشده و درصد ردیفهایی که همان مقدار را دارند، گزارش میدهد.
در اسکرینشات زیر، مشاهده میکنید که ما ستون Color را انتخاب کردهایم، که دارای ۱۰ مقدار متمایز است. مقدار NA بیشترین درصد را دارد، و بعد از آن مقدار Black قرار دارد.

Functional Dependency: این گزارش میزان وابستگی مقادیر ستون وابسته (Dependent Column) به مقادیر ستون تعیینکننده (Determinant Column) را نشان میدهد. ستون تعیینکننده میتواند یک ستون یا مجموعهای از ستونها باشد. این تحلیل برای شناسایی صحت و انسجام دادهها بسیار کاربردی است.

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