SlideShare a Scribd company logo
ETL Pentaho Data Integration อาจารย์เรืองศักดิ์  ตระกูลพุทธิรักษ์ ruangsak@swu.ac.th สาขาวิทยาการคอมพิวเตอร์ ภาควิชาคณิตศาสตร์ คณะวิทยาศาสตร์ มหาวิทยาลัยศรีนครินทรวิโรฒ
ETL stands for extract, transform and load a process in database usage and especially in data warehousing that involves: Extracting data from outside sources  Transforming it to fit operational needs (which can include quality levels)  Loading it into the end target (database or data warehouse)
Example
Input
Transform
Load
Hands-on Experience จำนวนนิสิตที่ลงทะเบียนในแต่ละรายวิชา
Demo
สร้างฐานข้อมูลไว้รองรับการทำงานของโปรแกรม Data Integration โดยในที่นี้ได้สร้างฐานข้อมูลชื่อ repository
เอาข้อมูลจากไหนมาทำ ETL ครับ ฐานข้อมูล course2550
สร้างฐานข้อมูลไว้เป็น input ของโจทย์ โดยในที่นี้จะสร้างฐานข้อมูลชื่อ course2550
ระบุชื่อฐานข้อมูล course2550กดปุ่ม Create
import
Browse
เลือกไฟล์ 02course2550_forETL.sql
เริ่มโปรแกรม Data Integration
Programs > Pentaho Enterprise Edition > Design Tools > Data Integration
สร้าง RepositoryConnection ขึ้นใหม่
เริ่มจริง...จริง แล้วนะครับ
เลือก Repository ที่ได้สร้างไว้ Login เพื่อเข้าสู่หน้าจอการทำงาน
File > New > Transformation
ใช้ข้อมูลจากไหน? แล้วทำอย่างไร?
File > New > Database Connection
เริ่มกระบวนการ ETL
Input > Table input
Double Click ที่ Table input แก้ชื่อ Table input> at_course_enrollmentคลิกปุ่ม Get SQL select statement…
เลือกตาราง at_course_enrollment
เพิ่ม ORDER BY course_id
Statistics > Group by กด Shift ค้างไว้และลากเม้าส์สร้างเส้นเชื่อมโยง
Double Click ที่ Group by กดปุ่ม Get Fieldsกดปุ่ม Get lookup fields
เพิ่ม Order By เพื่ออะไร?
ทำ Group by เพื่ออะไร? Aggregates / นับจำนวนผู้เรียน
Transform > Select valuesสร้างเส้นเชื่อมโยง
Double Click ที่ Select values กดปุ่ม Get fields to selectในช่อง Rename to เปลี่ยนชื่อ 		member_id เป็น num_enroll
Selected Value เพื่ออะไร? เปลี่ยนชื่อ Field
Input > Table input
Double Click ที่ Table input แก้ชื่อ Table input> at_coursesคลิกปุ่ม Get SQL select statement…
เลือกตาราง at_courses
เพิ่ม ORDER BY course_id
Joins > Merge Join ลากเส้นเชื่อมโยง
Double Click ที่ Merge Join กำหนดค่าต่างๆ กด Get key fields เพื่อเลือก Keys
เพิ่ม Order By เพื่ออะไร?
Transform > Select values สร้างเส้นเชื่อมโยง
Double Click ที่ Select values 2 แถบเมนู Remove ช่อง Fieldname ให้ใส่ course_id_1ที่ต้องการลบทิ้ง
Selected Value 2เพื่ออะไร? ลบ Field ที่ไม่ต้องการ
Output > Table outputสร้างเส้นเชื่อมโยง
ผลลัพธ์เอาไว้ที่ไหน ? ตาราง o_course ฐานข้อมูล course2550
Double Click ที่ Table outputกดปุ่ม Browse ที่ Target Tableสร้างตารางใหม่ขึ้นมาชื่อว่า o_course
คลิกขวาตาราง at_courses (ใกล้เคียง)DDL > Use Current Connection
เปลี่ยนคำสั่ง SQLกดปุ่ม Execute
Refreshเลือกตาราง o_course
เลือกช่อง Truncate table กดปุ่ม OK
Action > Run กดปุ่ม Launch
Save
หากไม่มีข้อผิดพลาดใดๆ
เข้าไปดูฐานข้อมูล MySQL ในตาราง o_course
ลองดู feature อื่นๆเล็กน้อย ครับ
Excel Output
Google Docs
Promotion…..Free – Buy 1 Get 1 !!! โจทย์ เรยา  : ช่วยทำข้อมูลรายวิชาแยกตามคณะ ลงไฟล์ Excel ให้ฉันหน่อยนะ คุณชายใหญ่ : เดี๋ยวปรึกษาหม่าม้า Pentaho ก่อนนะ เรยา  : ถ้าทำส่งให้ทุกเดือนได้ ฉันจะไม่มากวนใจ         คุณชายใหญ่ที่บ้านคุณดี๋อีกเลยนะ
ข้อมูลอยู่คนละฐานข้อมูล ควรทำอย่างไร
File > New > Database Connection
Input > Table input
Double Click ที่ Table input แก้ชื่อ Table input> course_factคลิกปุ่ม Get SQL select statement…
เลือกตาราง course_fact
เพิ่ม ORDER BY course_id
Joins > Merge Join ลากเส้นเชื่อมโยง
Double Click ที่ Merge Join กำหนดค่าต่างๆ กด Get key fields เพื่อเลือก Keys
Transform > Select values สร้างเส้นเชื่อมโยง
Double Click ที่ Select values 3 แถบเมนู  Select & Alterช่อง Fieldname ให้เลือกเฉพาะ field ที่ต้องการ
Flow > Switch / Case สร้างเส้นเชื่อมโยง
Double Click ที่ Switch / Caseช่อง Filed name to switch > fac_idช่อง Case value data type > BigNumberช่อง ใส่ค่า 100                 200
Output > Excel Outputสร้างเส้นเชื่อมโยงเลือก The case target for value ‘100’
Step name > ScienceBrowse… > science.xlsExtension > ลบ xls ออก
Output > Excel Outputสร้างเส้นเชื่อมโยงเลือก The case target for value ‘200’
Step name > HumanitiesBrowse… > humanities.xlsExtension > ลบ xls ออก
Output > Excel Outputสร้างเส้นเชื่อมโยงเลือก The default target step
Step name > OtherBrowse… > other.xlsExtension > ลบ xls ออก
Introduction to ETL - Pentaho 21_23may2011

More Related Content

Similar to Introduction to ETL - Pentaho 21_23may2011

51011212055
5101121205551011212055
51011212055
Winning Sooklert
 
Static excel
Static excelStatic excel
Static excel
smittichai chaiyawong
 
Database Review for Midterm Exam
Database Review for Midterm ExamDatabase Review for Midterm Exam
Database Review for Midterm Exam
kunemata
 
Moodle e-Learning
Moodle e-LearningMoodle e-Learning
Moodle e-Learning
Boonlert Aroonpiboon
 

Similar to Introduction to ETL - Pentaho 21_23may2011 (6)

51011212055
5101121205551011212055
51011212055
 
Static excel
Static excelStatic excel
Static excel
 
Ppt Moodle
Ppt MoodlePpt Moodle
Ppt Moodle
 
Database Review for Midterm Exam
Database Review for Midterm ExamDatabase Review for Midterm Exam
Database Review for Midterm Exam
 
Moodle e-Learning
Moodle e-LearningMoodle e-Learning
Moodle e-Learning
 
P2 r
P2 rP2 r
P2 r
 

Recently uploaded

Recap JavaScript and TypeScript.pdf Recap JavaScript and TypeScript.pdf
Recap JavaScript and TypeScript.pdf Recap JavaScript and TypeScript.pdfRecap JavaScript and TypeScript.pdf Recap JavaScript and TypeScript.pdf
Recap JavaScript and TypeScript.pdf Recap JavaScript and TypeScript.pdf
NuttavutThongjor1
 
โครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิต...
โครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิต...โครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิต...
โครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิต...
SweetdelMelon
 
โรคทางพันธุกรรมมมมมมมมมมมมมมมมมมมมมม.ppt
โรคทางพันธุกรรมมมมมมมมมมมมมมมมมมมมมม.pptโรคทางพันธุกรรมมมมมมมมมมมมมมมมมมมมมม.ppt
โรคทางพันธุกรรมมมมมมมมมมมมมมมมมมมมมม.ppt
pakpoomounhalekjit
 
กำหนดการ “การประชุมวิชาการวิทยาการหลังการเก็บเกี่ยวแห่งชาติ ครั้งที่ 21”
กำหนดการ “การประชุมวิชาการวิทยาการหลังการเก็บเกี่ยวแห่งชาติ ครั้งที่ 21”กำหนดการ “การประชุมวิชาการวิทยาการหลังการเก็บเกี่ยวแห่งชาติ ครั้งที่ 21”
กำหนดการ “การประชุมวิชาการวิทยาการหลังการเก็บเกี่ยวแห่งชาติ ครั้งที่ 21”
Postharvest Technology Innovation Center
 
Next.js web development.pdfNext.js web development.pdfNext.js web development...
Next.js web development.pdfNext.js web development.pdfNext.js web development...Next.js web development.pdfNext.js web development.pdfNext.js web development...
Next.js web development.pdfNext.js web development.pdfNext.js web development...
NuttavutThongjor1
 
Fullstack Nest.js and Next.js.pdfFullstack Nest.js and Next.js.pdfFullstack N...
Fullstack Nest.js and Next.js.pdfFullstack Nest.js and Next.js.pdfFullstack N...Fullstack Nest.js and Next.js.pdfFullstack Nest.js and Next.js.pdfFullstack N...
Fullstack Nest.js and Next.js.pdfFullstack Nest.js and Next.js.pdfFullstack N...
NuttavutThongjor1
 
bio62สอวน.ชีววิทยา-ชีววิทยาปี62-ข้อสอบแข่งกัน
bio62สอวน.ชีววิทยา-ชีววิทยาปี62-ข้อสอบแข่งกันbio62สอวน.ชีววิทยา-ชีววิทยาปี62-ข้อสอบแข่งกัน
bio62สอวน.ชีววิทยา-ชีววิทยาปี62-ข้อสอบแข่งกัน
CholapruekSangkamane1
 

Recently uploaded (7)

Recap JavaScript and TypeScript.pdf Recap JavaScript and TypeScript.pdf
Recap JavaScript and TypeScript.pdf Recap JavaScript and TypeScript.pdfRecap JavaScript and TypeScript.pdf Recap JavaScript and TypeScript.pdf
Recap JavaScript and TypeScript.pdf Recap JavaScript and TypeScript.pdf
 
โครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิต...
โครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิต...โครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิต...
โครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิตโครงงานคณิต...
 
โรคทางพันธุกรรมมมมมมมมมมมมมมมมมมมมมม.ppt
โรคทางพันธุกรรมมมมมมมมมมมมมมมมมมมมมม.pptโรคทางพันธุกรรมมมมมมมมมมมมมมมมมมมมมม.ppt
โรคทางพันธุกรรมมมมมมมมมมมมมมมมมมมมมม.ppt
 
กำหนดการ “การประชุมวิชาการวิทยาการหลังการเก็บเกี่ยวแห่งชาติ ครั้งที่ 21”
กำหนดการ “การประชุมวิชาการวิทยาการหลังการเก็บเกี่ยวแห่งชาติ ครั้งที่ 21”กำหนดการ “การประชุมวิชาการวิทยาการหลังการเก็บเกี่ยวแห่งชาติ ครั้งที่ 21”
กำหนดการ “การประชุมวิชาการวิทยาการหลังการเก็บเกี่ยวแห่งชาติ ครั้งที่ 21”
 
Next.js web development.pdfNext.js web development.pdfNext.js web development...
Next.js web development.pdfNext.js web development.pdfNext.js web development...Next.js web development.pdfNext.js web development.pdfNext.js web development...
Next.js web development.pdfNext.js web development.pdfNext.js web development...
 
Fullstack Nest.js and Next.js.pdfFullstack Nest.js and Next.js.pdfFullstack N...
Fullstack Nest.js and Next.js.pdfFullstack Nest.js and Next.js.pdfFullstack N...Fullstack Nest.js and Next.js.pdfFullstack Nest.js and Next.js.pdfFullstack N...
Fullstack Nest.js and Next.js.pdfFullstack Nest.js and Next.js.pdfFullstack N...
 
bio62สอวน.ชีววิทยา-ชีววิทยาปี62-ข้อสอบแข่งกัน
bio62สอวน.ชีววิทยา-ชีววิทยาปี62-ข้อสอบแข่งกันbio62สอวน.ชีววิทยา-ชีววิทยาปี62-ข้อสอบแข่งกัน
bio62สอวน.ชีววิทยา-ชีววิทยาปี62-ข้อสอบแข่งกัน
 

Introduction to ETL - Pentaho 21_23may2011