การทดสอบ ETL - บทนำ
ข้อมูลในระบบคลังข้อมูลถูกโหลดด้วยเครื่องมือ ETL (Extract, Transform, Load) ตามชื่อที่แนะนำมันดำเนินการสามอย่างต่อไปนี้ -
ดึงข้อมูลจากระบบธุรกรรมของคุณซึ่งอาจเป็น Oracle, Microsoft หรือฐานข้อมูลเชิงสัมพันธ์อื่น ๆ
แปลงข้อมูลโดยดำเนินการล้างข้อมูลจากนั้น
โหลดข้อมูลลงในคลังข้อมูล OLAP
คุณยังสามารถดึงข้อมูลจากไฟล์แบบแบนเช่นสเปรดชีตและไฟล์ CSV โดยใช้เครื่องมือ ETL และโหลดลงในคลังข้อมูล OLAP สำหรับการวิเคราะห์และรายงานข้อมูล ให้เรานำตัวอย่างเพื่อทำความเข้าใจให้ดีขึ้น
ตัวอย่าง
สมมติว่ามี บริษัท ผู้ผลิตที่มีหลายแผนกเช่นฝ่ายขายฝ่ายทรัพยากรบุคคลการจัดการวัสดุ EWM เป็นต้นแผนกทั้งหมดเหล่านี้มีฐานข้อมูลแยกกันซึ่งใช้ในการดูแลรักษาข้อมูลที่เขียนงานของตนและแต่ละฐานข้อมูลมีเทคโนโลยีภูมิทัศน์ตารางที่แตกต่างกัน ชื่อคอลัมน์ ฯลฯ ตอนนี้หาก บริษัท ต้องการวิเคราะห์ข้อมูลในอดีตและสร้างรายงานข้อมูลทั้งหมดจากแหล่งข้อมูลเหล่านี้ควรถูกแยกและโหลดลงในคลังข้อมูลเพื่อบันทึกไว้สำหรับงานวิเคราะห์
เครื่องมือ ETL จะดึงข้อมูลจากแหล่งข้อมูลที่แตกต่างกันทั้งหมดเหล่านี้แปลงข้อมูล (เช่นการใช้การคำนวณการรวมฟิลด์คีย์การลบฟิลด์ข้อมูลที่ไม่ถูกต้อง ฯลฯ ) และโหลดลงในคลังข้อมูล ในภายหลังคุณสามารถใช้เครื่องมือ Business Intelligence (BI) ต่างๆเพื่อสร้างรายงานแดชบอร์ดและการแสดงภาพที่มีความหมายโดยใช้ข้อมูลนี้
ความแตกต่างระหว่าง ETL และ BI Tools
เครื่องมือ ETL ใช้ในการดึงข้อมูลจากแหล่งข้อมูลต่างๆแปลงข้อมูลและโหลดลงในระบบ DW อย่างไรก็ตามเครื่องมือ BI ถูกใช้เพื่อสร้างรายงานเชิงโต้ตอบและแบบเฉพาะกิจสำหรับผู้ใช้ปลายทางแดชบอร์ดสำหรับผู้บริหารระดับสูงการแสดงข้อมูลสำหรับการประชุมคณะกรรมการรายเดือนรายไตรมาสและประจำปี
เครื่องมือ ETL ที่ใช้กันทั่วไป ได้แก่ - SAP BO Data Services (BODS), Informatica - Power Center, Microsoft - SSIS, Oracle Data Integrator ODI, Talend Open Studio, Clover ETL Open source เป็นต้น
เครื่องมือ BI ยอดนิยม ได้แก่ - SAP Business Objects, SAP Lumira, IBM Cognos, JasperSoft, Microsoft BI Platform, Tableau, Oracle Business Intelligence Enterprise Edition เป็นต้น
กระบวนการ ETL
ตอนนี้ให้เราพูดคุยในรายละเอียดเพิ่มเติมเล็กน้อยเกี่ยวกับขั้นตอนสำคัญที่เกี่ยวข้องในขั้นตอน ETL -
การแยกข้อมูล
มันเกี่ยวข้องกับการดึงข้อมูลจากแหล่งข้อมูลที่แตกต่างกัน การดึงข้อมูลจากระบบธุรกรรมแตกต่างกันไปตามความต้องการและเครื่องมือ ETL ที่ใช้อยู่ โดยปกติแล้วจะทำโดยการทำงานตามกำหนดเวลาในนอกเวลาทำการเช่นการทำงานในตอนกลางคืนหรือในช่วงสุดสัปดาห์
การแปลงข้อมูล
เกี่ยวข้องกับการแปลงข้อมูลให้อยู่ในรูปแบบที่เหมาะสมซึ่งสามารถโหลดลงในระบบ DW ได้อย่างง่ายดาย การแปลงข้อมูลเกี่ยวข้องกับการใช้การคำนวณการรวมและการกำหนดคีย์หลักและคีย์ต่างประเทศบนข้อมูล ตัวอย่างเช่นหากคุณต้องการ% ของรายได้ทั้งหมดที่ไม่ได้อยู่ในฐานข้อมูลคุณจะใช้สูตร% ในการแปลงและโหลดข้อมูล ในทำนองเดียวกันหากคุณมีชื่อจริงและนามสกุลของผู้ใช้ในคอลัมน์ที่ต่างกันคุณสามารถใช้การดำเนินการเรียงต่อกันก่อนที่จะโหลดข้อมูล ข้อมูลบางอย่างไม่ต้องการการเปลี่ยนแปลงใด ๆ ข้อมูลดังกล่าวเรียกว่าdirect move หรือ pass through data.
การแปลงข้อมูลยังเกี่ยวข้องกับการแก้ไขข้อมูลและการล้างข้อมูลการลบข้อมูลที่ไม่ถูกต้องการสร้างข้อมูลที่ไม่สมบูรณ์และการแก้ไขข้อผิดพลาดของข้อมูล นอกจากนี้ยังรวมถึงความสมบูรณ์ของข้อมูลและการจัดรูปแบบข้อมูลที่เข้ากันไม่ได้ก่อนที่จะโหลดลงในระบบ DW
การโหลดข้อมูลลงในระบบ DW
เกี่ยวข้องกับการโหลดข้อมูลลงในระบบ DW สำหรับการรายงานเชิงวิเคราะห์และข้อมูล ระบบเป้าหมายสามารถเป็นไฟล์แฟลตที่คั่นอย่างง่ายหรือคลังข้อมูล
ฟังก์ชัน ETL Tool
คลังข้อมูลที่ใช้เครื่องมือ ETL ทั่วไปใช้พื้นที่การจัดเตรียมการรวมข้อมูลและชั้นการเข้าถึงเพื่อทำหน้าที่ โดยปกติจะเป็นสถาปัตยกรรม 3 ชั้น
Staging Layer - ชั้นการจัดเตรียมหรือฐานข้อมูลการจัดเตรียมใช้เพื่อจัดเก็บข้อมูลที่ดึงมาจากระบบข้อมูลต้นทางที่แตกต่างกัน
Data Integration Layer - เลเยอร์การรวมจะแปลงข้อมูลจากเลเยอร์การจัดเตรียมและย้ายข้อมูลไปยังฐานข้อมูลซึ่งข้อมูลจะถูกจัดเรียงเป็นกลุ่มตามลำดับชั้นซึ่งมักเรียกว่า dimensionsและเข้า facts และ aggregate facts. การรวมกันของตารางข้อเท็จจริงและขนาดในระบบ DW เรียกว่า aschema.
Access Layer - ผู้ใช้ปลายทางใช้ชั้นการเข้าถึงเพื่อดึงข้อมูลสำหรับการรายงานเชิงวิเคราะห์และข้อมูล
ภาพประกอบต่อไปนี้แสดงให้เห็นว่าเลเยอร์ทั้งสามโต้ตอบกันอย่างไร