Business Intelligence Tools - Overviews23Dec08Lecture note เรื่อง Business Intelligence Tools (Note นี้จะเน้นในเรื่องของ Data Warehouse เป็นหลัก)
เมื่อโลกของ XML มันขยายมากขึ้นทุกที
SQL 1999 เป็นเวอร์ชันที่ support เรื่องเกี่ยวกับ Object Relational ซึ่งก็คือการเอา Object ใส่ลงไปใน Relation Database แต่จนถึงตอนนี้ก็ไม่ค่อยมีคนนิยมใช้กันเท่าไหร่
SQL 2003 และ 2006 ก็จะเพิ่มตัวหลักๆขึ้นมา ซึ่งก็คือ XML ซึ่งก็หมายความว่าเดิมที RDB ในตอนที่เป็น Object Relational นั้น user ก็จะสามารถ define data type เองได้ แต่พอมาเป็น SQL 2003 และ 2006 เค้าก็บอกว่า column ก็สามารถเก็บเป็น XML ได้ โดยจริงๆแล้วจะบอกว่า XML นี่ถือว่าเป็น object data type นึงก็ได้เหมือนกัน แต่ว่าปัจจุบันมันก็มี standard เกี่ยวกับ XML อยู่เยอะแยะให้ใช้อยู่แล้ว จึงสร้าง XML ขึ้นมาเป็น data type ใหม่ขึ้นมาอีกอันนึงเลย แทนที่จะบอกว่า XML เป็น object
XML จะเหมาะกับข้อมูลที่บางทีโครงสร้างมันมีความแตกต่างกัน แต่มันก็สามารถเอามาอยู่รวมกันได้
เนื่องจาก SQL/XML มันเป็น standard ใน SQL 2003, 2006 ซึ่งกลุ่มคนที่มาร่วมกันร่าง standard ก็จะเป็น บ. ยักษ์ใหญ่ทั้งนั้นแหละ ดังนั้นแล้วทุกๆ product ในที่สุดก็ต้องมาปฏิบัติตาม standard ตัวนี้ แต่ว่าในตอนนี้ Oracle ยังไม่ได้เป็นไปตาม standard ตัวนี้ซะทีเดียว อาจจะเพราะว่า Oracle ทำมาก่อนแล้วพอ standard มันออกมาก็เลยต้องใช้เวลาปรับตัวสักหน่อย แต่ว่า DB2 ของ IBM นั้นสนับสนุน standard นี้เรียบร้อยแล้ว
SQL OLAB ยู่ใน Standard 1999…
ก่อนจะไปเรื่อง SQL และ XML ก็มาเข้าเรื่องของ Business Intelligence Tools ก่อนดีกว่า เดี๋ยวจะนอกเรื่องไปมากกว่านี้
—
Business Intelligence Tools คืออะไร?
การทำธุรกิจในปัจจุบันล้วนแล้วแต่ต้องมีระบบ IT เข้าไปเกี่ยวข้องเสมอ ซึ่งตั้งแต่อดีดมา เราใช้คอมพิวเตอร์เพื่อใช้พิมพ์ว่าเกิดอะไรขึ้นและเราได้ทำอะไร จากนั้นก็แค่บันทึกไว้เท่านั้นเอง แต่การตัดสินใจว่าเราจะทำอะไรต่อไป ลงทุนอะไรต่อไป เรามักจะไม่ได้ใช้ระบบ IT เข้ามาช่วยคิด ต่อมาเราจะใช้ระบบ IT เข้ามาช่วยคิด ช่วยตัดสินใจ และนี่คือที่มาของเครื่องมือที่จะช่วยให้เราทำธุรกิจอย่างชาญฉลาด เพื่อให้ได้ผลตอบแทนที่ดีขึ้น และเราควรจะมี tools เข้ามาช่วยงานนั้นๆ ซึ่งมันก็จะประกอบไปด้วยหลายๆส่วนด้วยกัน เช่น
Data Warehouses เป็นเพียงที่ที่เราจะเอาข้อมูลจาก database หรือเรียกสั้นๆว่า OLPT (เป็นลักษณะงานที่เราใช้ทั่วๆไป เป็น operator ทั่วๆไป เช่นซื้อของ ขายของ ทั่วๆไปในร้าน) ซึ่งเวลาเรามีข้อมูลเยอะๆเข้า แล้วเราก็อยากจะเอามาวิเคราะห์ โดยขั้นตอนแรกก็คือเอามันมาใส่ใน data warehouses ก่อน ต่อมาเราก็จะเอามันมาวิเคราะห์ โดยใช้เครื่องมืออย่าง OLAP Tools เป็นต้น
จริงๆ Data warehouses ก็ไม่ต่างอะไรกับ database หรอก มันเป็นแค่ที่เก็บข้อมูลเอาไว้เฉยๆ ซึ่งมันก็คือ software product ตัวเดียวกันกับ Database ทั่วๆไปนั่นแหละ เช่นเราซื้อ DB2 มา แล้วก็ configure ให้มันเหมาะกับการใช้ งานแบบ OLPT มันก็เป็น OLPT แต่ถ้าเรา configure ให้เหมาะกับ Data warehouses มันก็เป็น data warehouses ดังนั้นมันขึ้นอยู่กับเราจะออกแบบมัน ว่าจะให้มันใช้งานเพื่ออะไร ดังนั้น OLPT กับ Data warehouses จะเป็นอะไรก็ได้นั้น ขึ้นอยู่กับการ configure กับการออกแบบของเราเอง
OLAP Tools จริงๆแล้วมันคือเครื่องมือในการทำ data analysis เพื่อเอาข้อมูลมาแสดงเป็น graph หรือเป็นตารางในรูปแบบต่างๆ เพื่อที่จะเอามาดูแบบ online และที่เรียกว่าแบบ online ก็เพราะเค้าเปรียบเทียบกับในอดีตที่ว่าเวลาผู้บริหารอยากจะดูข้อมูลที่อยู่ในระบบ ผบริหารก็ไปสั่งฝ่าย IT ให้ทำรายงานให้ ผู้บริหารดู ซึ่งอาจจะใช้เวลานานกว่าจะได้ และบางที ผู้บริหารอาจจะมีความต้องการที่ค่อนข้างเปลี่ยนไปเรื่อยๆ ทำให้เวลาต้องการอะไรทีนึงก็ต้องไปบอกฝ่าย IT ทีนึง ดังนั้นกว่าที่ ผบ. จะได้ข้อมูลออกมา มันก็จะเสียเวลา แต่ว่าบางทีเราทำโปรแกรมออกมาแล้ว มันก็สามารถเอามาใช้ต่อได้เรื่อยๆก็จริง แต่ว่ามันก็ยังมีการทำงานแบบ batch อยู่ ทำให้เมื่อต้องการทีนึง มันก็ยังนานอยู่ดี ส่วนแบบ OLAP มันเป็นแบบ online ที่สามารถทำให้เห็นได้เลยเดี๋ยวนั้น ช่วยให้ผู้บริหารสามารถดูได้ในมิติต่างๆเองได้ง่ายขึ้น
ปกติตัว OLAP Tools จะถูกขายโดยคนอีกกลุ่มหนึ่งที่ไม่ใช่คนกลุ่ม Database (ETL Tools, Data warehouses มักจะทำโดยพวก บ. ทำ Database ) แต่มักจะถูกทำโดยคนที่เชี่ยวชาญทางด้านสถิติ หรือกลุ่มคนที่มีความเชี่ยวชาญทางด้านวิเคราะห์ข้อมูล
ETL Tools เดี๋ยวนี้หลายๆบริษัทก็จะขายแยกต่างหาก โดยมันมาจากคำว่า Extract Transform Load Tools คือ โปรแกรมที่ใช้ในการดึงข้อมูลจากแหล่งข้อมูล (เช่นไฟล์ หรือ database) ต่างๆเข้ามาใส่ใน Data Warehouses โดยตอนแรกๆ ETL Tools มันก็มากับ database นั่นแหละ แต่ต่อมาผู้ขายก็เริ่มมองเห็นตลาด เค้าก็เลยทำมาเฉพาะเลย แล้วก็ขายแยกเป็น template product เลยทีเดียว
Extract (ดึงมา) - Transformation (มีการเปลี่ยนแปลงข้อมูล) - Load (โหลดข้อมูลเข้าไปอยู่ใน warehouse)
ตอนดึงข้อมูลเข้า Data warehouses ข้อมูลอาจจะมี format ที่แตกต่างกัน ETL Tools จะทำหน้าที่แปลงให้ข้อมูลออกมาในแนวเดียวกัน หรือปรับโครงสร้างของข้อมูลให้สามารถนำไปวิเคราะห์ได้ ก่อนเก็บลง Data Warehouses โดย ETL Tools จะทำ data transformation ให้เรา
Data Mining Tools ก็คล้ายๆกับ OLAP Tools นี่แหละ แต่มันจะคล้ายในแง่ที่ว่าใช้สำหรับวิเคราะห์ข้อมูลเหมือนกัน แต่ว่าลักษณะการวิเคราะห์ระหว่าง OLAP กับ Mining มันต่างกันค่อนข้างมาก โดยในเชิง OLAP จะวิเคราะห์ในเชิงของการที่ตายตัวว่าคุณอยากจะรู้อะไร เช่นอยากรู้ยอดขายราย 3 เดือน รายสาขา หา min, max ซึ่งค่อนข้างชัดเจนว่าจะหาหรือจะคำนวนอะไร แต่ Data Mining มักจะเป็นการเอาข้อมูลมาขุดค้นหาความสัมพันธ์กันของข้อมูล ว่ามันมีอะไรสัมพันธ์ (Association rules) กันอยู่ในนั้น Algorithm จึงค่อนข้างยุ่งยากและซับซ้อนกว่า ผลลัพธ์ที่ได้ออกมาจึงค่อนข้างน่าสนใจกว่า แต่เดี๋ยวนี้ Data Mining กับ OLAP มันเข้ามาใกล้กันมาก จนแยกค่อนข้างยากว่าอะไรเป็นอะไร
Data Mining จะออกแนวๆดูดวง เช่น คนที่มีลักษณะแบบนี้ พฤติกรรมแบบนี้ สุดท้ายแล้วจะเป็นแบบนี้ ทำแบบนี้ หรือจะคิดอีกแบบคือ Data Mining จะคล้ายๆกับโหราศาสตร์
อ้างอิงมาจาก
http://khomkrit.wordpress.com/2008/12/23/business-intelligence-tools-overviews/