1 / 27

به نام خدا

ارائه دهنده: امین امیدوار استاد درس : دکتر عبدالله زاده. به نام خدا. فصل 11- توسعه ی ETL. درس هوش تجاری http://ceit.aut.ac.ir/islab. فهرست مطالب.

elisa
Download Presentation

به نام خدا

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ارائه دهنده: امین امیدوار استاد درس : دکتر عبدالله زاده به نام خدا فصل 11- توسعه ی ETL درس هوش تجاری http://ceit.aut.ac.ir/islab

  2. فهرست مطالب • تغییرشکل داده های منبع (source data transformation) • تلفیق (reconciliation) • بررسی زوجی (peer reviews) • تست ETL • برنامه ی تستهای رسمی (formal test plan) • فعالیت های توسعه ی ETL (ٍETL development activities) • خروجی مراحل بالا درس هوش تجاری http://ceit.aut.ac.ir/islab

  3. جایگاه توسعه ی ETL ETL development درس هوش تجاری http://ceit.aut.ac.ir/islab

  4. جایگاه توسعه ی ETL درس هوش تجاری http://ceit.aut.ac.ir/islab

  5. E X T R A C T T R A N S F O R M LO A D Customer E T BI Target Database Accounting E T Inventory E T Orders E T جایگاه توسعه ی ETL درس هوش تجاری http://ceit.aut.ac.ir/islab

  6. نکات قابل ملاحظه • در رابطه با استخراج داده های منابع • چه کسی باید برنامه ی ETL را بنویسد؟ آیا قبلا توسعه دهندگان برنامه های ETL نوشته اند؟ آیا آنها پروسه ی ETL را می فهمند؟ • آیا ابزارهای ETL از پروژه های پیشین وجود دارند؟ چندتا از آنها نیاز به تغییر دارند؟ • آیا برنامه نویسان سیستمهای عملیاتی سازمان داده ها را به ما می دهند یا خودمان باید داده ها را استخراج کنیم؟ • قبل از اینکه داده ها را بگیریم، تا چه میزان از سیستم عملیاتی سازمان اطلاع داریم؟ درس هوش تجاری http://ceit.aut.ac.ir/islab

  7. نکات قابل ملاحظه • در رابطه با ابزار ETL • آیا قبلا با این ابزار کار کرده ایم یا ابزار جدیدی است؟ در صورت جدید بودن تا چه میزان با آن آشنایی داریم؟ • آیا تیم ETL به اندازه ی کافی برای کار با ابزار ETL آموزش دیده اند؟ • آیا ابزار ETL مورد استفاده قابلیت انتقال تمامی داده ها را دارد ویا مجبور هستیم در برخی مواقع خود اقدام به کدنویسی کنیم؟ از چه زبانی برای کد نویسی استفاده کنیم؟ درس هوش تجاری http://ceit.aut.ac.ir/islab

  8. نکات قابل ملاحظه • در رابطه با وابستگی های پروسه ی ETL • چه وابستگی هایی میان ماژولهای برنامه وجود دارد؟ توالی اجرای ماژول های برنامه ی ETL باید به چه صورت باشد ؟ • چندتا از ماژولهای برنامه می توانند به صورت همزمان اجرا شوند؟ • چه ارتباطاتی میان جداول وجود دارد؟ آیا نیاز است که برخی از جداول قبل از جدول های دیگر لود شوند؟ • چه تعداد جدول می توانیم به صورت همزمان لود کنیم؟ درس هوش تجاری http://ceit.aut.ac.ir/islab

  9. نکات قابل ملاحظه • در رابطه با تست • آیا باید بررسی زوجی (peer reviews) صورت گیرد؟ آیا از تکنیک های XP استفاده می کنیم؟ • چند نفر تست کننده برای پروژه در اختیار داریم؟ • هماهنگ کننده ی انجام تست چه کسی هست؟ چه کسی از نتایج تست log تهیه می کند و آنها را نگاهداری می کند؟ • چه نوع از تستها را باید انجام دهیم؟ • چه افرادی در انجام acceptance testing شرکت خواهند کرد؟ درس هوش تجاری http://ceit.aut.ac.ir/islab

  10. تغییرشکل داده های منبع • فعالیت های تغییرشکل داده (data transformation activities) • ناچیز پنداشتن تلاش های مورد نیاز برای تغییرشکل داده درس هوش تجاری http://ceit.aut.ac.ir/islab

  11. فعالیتهای تغییرشکل داده ها cleansing summarization Derivation aggregation Integration • Cleansing • پروسه ای است که در آن داده هایی را که از قوانین تعریف شده تخطی می کنند را تغییر داده تا از قوانین تبعیت کنند. • Summarization • در این مرحله داده های عددی را خلاصه می کنند تا بتوانیم دید کلی (تعداد ، مجموع) نسبت به داده ها داشته باشیم. درس هوش تجاری http://ceit.aut.ac.ir/islab

  12. فعالیتهای تغییرشکل داده ها • Derivation • در این قسمت داده های جدید از منابع داده ای ورودی ساخته میشوند. برای مثال فیلدی به جدول برای طبقه بندی کردن مشتریان اضافه می شود. و یا اینکه از روی تاریخ تولد سن فرد را محاسبه کنیم و در فیلدی جدا ذخیره کنیم • Aggregation • تمامی داده های مربوط به شئ مورد نظر در یک جا جمع آوری می شود. برای مثال تمامی داده های مربوط به مشتریان از منابع مختلف داده ای خوانده شده و در یکجا نوشته می شوند • Integration • در این قسمت دامنه و نوع داده های مربوط به یک شئ را توسط نرمالسازی و ... به یک فرمت و شکل در می آوریم درس هوش تجاری http://ceit.aut.ac.ir/islab

  13. ناچیز پنداشتن تلاش های مورد نیاز برای تغییرشکل داده • پیش بینی مقدار حجم کار برای تغییرشکل داده ها بسیار مشکل است. • برای برخی سازمان ها که ساختار فایل آنها بسیار قدیمی می باش، تلاش مورد نیاز برای تغییر شکل داده ها برابر با 80% کار پروژه است. درس هوش تجاری http://ceit.aut.ac.ir/islab

  14. تلفیق • در این قسمت می خواهیم با استفاده از روش های زیر مطمئن شویم تمامی داده های ورودی به ETL به خروجی تبدیل شده باشند. برای این منظور از تکنیک های زیر استفاده می کنیم • شمار رکوردها (record counts) • شمار دامینها (domain counts) • شمار مقدار Amount counts)) درس هوش تجاری http://ceit.aut.ac.ir/islab

  15. شمار رکوردها رکوردهای خروجی رکوردهای ورودی ماژول فرآیند رکوردهای ردشده • باید مجموع تعداد رکوردهای خروجی و رکوردهای ردشده برابر با تعداد رکوردهای ورودی باشد درس هوش تجاری http://ceit.aut.ac.ir/islab

  16. شمار دامینها • در این قسمت تعداد رکوردها برای هر دامین منحصربه فرد ورودی شمارش می شوند و همچنین تعداد رکوردهای خروجی برای همان دامین منحصر به فرد نیز شمارش می شوند. در نهایت باید تساوی میان تعداد رکوردها برای کد ورودی با مجموع اجزای نشان داده شده در سمت راست شکل زیر برابر باشند تعداد رکوردها برای کد ورودی تعداد رکوردهای کد خروجی برای دامین اول تعداد رکوردهای کد خروجی برای دامین دوم ماژول فرآیند تعداد رکوردهای کد خروجی برای دامین سوم تعداد رکوردهای رد شده درس هوش تجاری http://ceit.aut.ac.ir/islab

  17. تعداد مقدار درس هوش تجاری http://ceit.aut.ac.ir/islab

  18. بررسی زوجی • شبیه به برنامه نویسی xp است با این تفاوت که علاوه برآنکه برای کدنویسی نیاز به دو نفر است، برای ملاقات ها نیز به دو نفر نیاز می باشد. • در ملاقات ها با استفاده از طوفان فکری ، نیازها در آورده می شوند و ایده هایی برای حل مشکلات خلق می شوند. • زمان جلسات برگزار شده باید کوتاه باشد درس هوش تجاری http://ceit.aut.ac.ir/islab

  19. تست ETL • Unit testing • Integration testing • Performance testing • Acceptance testing • Quality assurance testing درس هوش تجاری http://ceit.aut.ac.ir/islab

  20. Unit testing • در این قسمت هر ماژول از برنامه به صورت مجزا تست شده و هیچ کاری با ارتباط میان ماژول ها نداریم. • کامپایل کردن: بررسی می کنیم که آیا هر ماژول برنامه به درستی کامپایل می شود یا خیر. • عملکرد: هر ماژول برنامه باید عملیاتی را که در طراحی برای ان در نظر گرفته شده است را به درستی انجام دهد. • تصحیح کردن: هر ماژول برنامه باید در برابر خطاها مقاوم بوده و همچنین بسته به نوع خطا آن را تصحیح کرده و با ارسال پیام گزارش دهد درس هوش تجاری http://ceit.aut.ac.ir/islab

  21. Integration testing • در این جا اجزای سیستم باهم تست می شوند • تعاملات: در این قسمت بررسی می کنیم که آیا اجزای سیستم بایکدیگر به خوبی رابطه دارند یا خیر. آیا تمامی ماژولها با همدیگر به خوبی تعامل دارند؟ آیا داده های صحیحی به یکدیگر می دهند؟ • جریان: در این قسمت بررسی می شود آیا ماژول ها به همان ترتیبی که در طراحی در نظر گرفته ایم اجرا می شوند یا خیر درس هوش تجاری http://ceit.aut.ac.ir/islab

  22. performance testing • این نوع تست شبیه به stress test است و برخی از ماژولهای برنامه که حیاتی و مهم می باشند را با تحت فشار قرار دادن ( حجم وسیعی از داده، محاسبات پیچیده،...) تست میکنیم تا مطمئن شویم سیستم در مواقع بحرانی به درستی کار می کند • برنامه در برابر حجم وسیعی از داده های ورودی چه عکس العملی نشان می دهد؟ • Threshold کارایی سیستم کجاست؟ درس هوش تجاری http://ceit.aut.ac.ir/islab

  23. Acceptance testing • آیا داده های مناسب و مورد نظر استخراج شده اند؟ • چنانچه اگر یک ستون منبع ورود داده را به چندین ستون تقسیم کرده باشیم، آیا این کار در مرحله ی تغییر شکل به درستی انجام شده است؟ • آیا داده ها به خوبی بایکدیگر ترکیب شده اند؟ • آیا داده ها به درستی در پایگاه داده ی تحلیلی ذخیره شده اند؟ • آیا داده ها به درستی تمییز شده اند؟ آیا نویزها همچنان وجود دارند؟ • آیا مدت زمان پاسخ گویی سیستم مطلوب هست؟ آیا دقت سیستم کافی هست؟ درس هوش تجاری http://ceit.aut.ac.ir/islab

  24. Formal test plan • زمان بندی • کیس های تست گیری • Logهای گرفته شده از تستها درس هوش تجاری http://ceit.aut.ac.ir/islab

  25. فعالیت های توسعه ی etl درس هوش تجاری http://ceit.aut.ac.ir/islab

  26. خروجی • برنامه ی تست ETL: در این قسمت هدف از انجام تست و زمان آن نوشته می شود. • برنامه های ETL: تمامی دستورالعمل های مربوط به ماژولها و برنامه های مورد استفاده در ETL باید آورده شوند. • کتابخانه ی برنامه ی ETL: تمامی ماژول ها در کتابخانه ای گردآوری میشوند. درس هوش تجاری http://ceit.aut.ac.ir/islab

  27. با تشکر از توجه شما • خدایا چنان کن سرانجام کار تو خشنود باشی و ما رستگار omidvaramin@gmail.com

More Related