ETL (Extract-Transform-Load) คือกระบวนการหนึ่งในระบบ Data Warehouse โดยระบบที่ออกแบบเอาไว้จะดึงข้อมูลออกมาจากหลายๆ ที่, นำกระบวนการตรวจสอบคุณภาพของข้อมูลมาประยุกต์ใช้, มีการเชื่อมโยงและปรับข้อมูลให้เป็นไปในรูปแบบเดียวกันเพื่อให้ ข้อมูลจากหลายๆ แหล่งสามารถใช้งานร่วมกันได้ และท้ายที่สุดทำการส่งมอบ (Delivery) ข้อมูลเหล่านั้นในรูปแบบที่ง่ายต่อการใช้งาน เพื่อใช้ในการตัดสินใจขององค์กรโดยมีกระบวนการหลักๆ ที่เกี่ยวข้องกับกระบวนการต่างๆ ดังต่อไปนี้
– Extract – กระบวน การดึงข้อมูลจากแหล่งของข้อมูลภายนอก
– Transforming – แปลง ข้อมูลเพื่อให้ได้ตรงตามกับความต้องการ ซึ่งเป็นกระบวนการที่ต้องใช้วิธีการเชิงคุณภาพ
– Loading – นำ ข้อมูลเข้าสู่ระบบปลายทางที่ต้องการ ซึ่งโดยทั่วไปจะหมายถึงระบบ Data Warehouse หรือ ฐานข้อมูลอื่นใด
ETL Tools เป็นเครื่องมือสำหรับใช้ดึงข้อมูลจากแหล่งต่างๆ ซึ่งการดึงข้อมูลอาจจะเป็นแบบง่ายๆ คืออ่านแล้วเขียนลงไปใน Table ที่เตรียมไว้โดยตรง แต่โดยทั่วไปมันไม่ง่ายแบบนั้นทั้งหมด เพราะต้องมีขั้นตอนตรวจสอบความถูกต้องของข้อมูลต่างๆ โดยเฉพาะข้อมูลที่เป็น Key หรือ Dimension จะต้องมีอยู่ใน Master ด้วย บ้างครั้งต้องทำการเปลี่ยนรูป เช่นเป็นจาก Date เป็น Date id ที่เป็น integer (เป็นเทคนิคเพื่ออ่าน Index ได้เร็วขึ้น) ซึ่ง E-T-L ต้องสามารถอ่านฐานข้อมูลได้หลากหลายยี่ห้อ หากไม่มี Driver โดยตรง ก็ต้องใช้ผ่าน ODBC ต้องทำงานได้อย่างรวดเร็ว และสามารถดึงข้อมูลได้จำนวนมากๆ E-T-L ดีๆ จะต้อง Coding น้อยๆ และมีเครื่องมือต่างๆ ครบในการทำงานทุกรูปแบบ ส่วนใหญ่จะใช้การ Mapping จ่ากต้นทางไปลง Column ปลายทาง
ตัวอย่างเครื่องมือ
Open Source
Proprietary