October 14th, 2008ลักษณะสำคัญของ Data Warehouse
Data Warehouse หรือระบบคลังข้อมูล ถือเป็นองค์ประกอบที่สำคัญมากๆ ในงาน Business Intelligence ถึงแม้โดยพื้นฐานแล้ว data warehouse ก็ถือเป็น database หรือฐานข้อมูลประเภทหนึ่งเหมือนกัน แต่เนื่องจากวัตถุประสงค์ของการใช้งานแตกต่างออกไป ทำให้มีลักษณะสำคัญหลายอย่าง ที่แตกต่างจากระบบฐานข้อมูลที่ใช้ในการดำเนินธุรกรรมทางธุรกิจโดยทั่วไป
วัตถุประสงค์หลักของระบบคลังข้อมูล คือ “ช่วยสนับสนุนการตัดสิืนใจ“ ซึ่งแตกต่างจากวัตถุประสงค์ของระบบฐานข้อมูลในระบบงานคอมพิวเตอร์พื้นฐาน ที่มีเป้าหมายเพื่อเพิ่มประสิทธิภาพในการปฎิบัติงานอย่างใดอย่างหนึ่ง
ลักษณะสำคัญของ Data Warehouse ประกอบด้วย
- Integrated ระบบคลังข้อมูลจะเป็นการรวบรวมข้อมูลการดำเนินธุรกรรมจากหลายๆ แหล่งเข้ามาไว้ภายใต้โครงสร้างเดียวกัน ในขณะที่ฐานข้อมูลในระบบคอมพิวเตอร์โดยทั่วไป มักจะถูกออกแบบมาให้มีประสิทธิภาพสูงสุดในการดำเนินกิจกรรมอย่างใดอย่างหนึ่ง เช่น ระบบบัญชี ก็เน้นประสิทธิภาพสูงสุดในการบันทึกบัญชี ระบบงานขาย หรือระบบวางแผนการผลิตก็เช่นเดียวกัน และบ่อยครั้งที่ในบริษัทเดียวกัน มีการเลือกใช้ระบบงานแตกต่างกัน เช่นใช้ระบบบัญชีของ SAP แต่ใช้ระบบ CRM ของ Siebel เป็นต้น Data Warehouse จะทำหน้าที่ผสานรวมข้อมูลของสองระบบนี้เข้าไว้ด้วยกัน
- Subject-Oriented ลักษณะโครงสร้างของ DW จะจัดหมวดหมู่ตาม “เนื้อหา” ในขณะที่ฐานข้อมูลในระบบงาน OLTP (Online Transaction Processing) จะจัดหมวดหมู่ตาม “กระบวนการทำงาน” (Process-oriented) ตัวอย่างเช่น คลังข้อมูลที่มีข้อมูลการขาย แต่เกิดจากการรวบรวมข้อมูลจากระบบงานที่มีหลายขั้นตอน ตั้งแต่การรับออร์เดอร์ การตรวจสอบเครดิตลูกค้า การตรวจสอบสต็อกสินค้า การจัดเตรียมสินค้า พิมพ์อินวอยซ์ จัดส่ง วางบิล เก็บเงิน รับสินค้าคืนในกรณีที่เสียหายหรือผิดพลาด รวมไปจนถึงการบันทึกบัญชีลูกหนี้ เป็นต้น จะเห็นได้ว่าในหนึ่งเรื่องแค่การขายอย่างเดียว มีกระบวนการที่เกี่ยวข้องด้วยมากมาย แต่เนื้อหายังคงอยู่ในหมวดการขายทั้งสิ้น
- Non-Volatile ข้อมูลที่จะถูกจัดเก็บในคล้งข้อมูล จะมีลักษณะที่ “ไม่เปลี่ยนแปลง” หรือถ้าจะมีการเปลี่ยนแปลงบ้างก็น้อยมาก จนเรียกได้ว่าเป็นกรณียกเว้นเลยทีเดียว เมื่อข้อมูลถูกนำเข้าไปใส่ไว้ในระบบ data warehouse แล้ว การใช้งานโดยส่วนใหญ่ มากกว่า 99% จะเป็นการ “อ่าน” ข้อมูลเพื่อใช้ในการวิเคราะห์และสนับสนุนการตัดสินใจในรูปแบบต่างๆ น้อยมากที่ข้อมูลในคลังข้อมูลจะต้องทำการ “แก้ไข หรือเปลี่ยนแปลง” แต่ถ้าเปรียบเทียบกับระบบปฎิบัติงานทั่วไปแบบ OLTP อาทิเช่นระบบรับคำสั่งซื้อ หรือระบบบริการลูกค้าทาง call center ข้อมูลใบสั่งซื้อหรือข้อมูลการติดต่อกับลูกค้าแต่ละรายการ จะถูกเปลี่ยนแปลงไปอยู่ตลอดเวลา เพื่อให้สามารถสะท้อนถึงสถานะปัจจุบันของกิจกรรมนั้นๆ ได้ในลักษณะ realtime เช่น คำสั่งซื้อนี้อยู่ในขั้นตอนการตรวจสอบเครดิต ณ เวลานี้ แต่ในอีก 2 นาทีข้างหน้าจะถูกเปลี่ยนสถานะเป็น จัดเตรียมสินค้า เป็นต้น
- Time-Variant โดยมากการตัดสินใจทางธุรกิจ จะต้องใช้ข้อมูลของสิ่งที่เกิดขึ้นในอดีตมาเป็นฐานประกอบการตัดสินใจ ดังนั้นระบบคลังข้อมูลจึงเน้นความสำคัญที่ “การจัดเก็บข้อมูลตามห้วงเวลา” หรือการเก็บรายละเิอียดข้อมูลในอดีตไว้เป็นจำนวนมาก ตัวอย่างเช่น ข้อมูลยอดขายของสินค้ารายการหนึ่ง อาจจะถูกเก็บใน data warehouse ย้อนหลังไป 3 ปี 5 ปี หรืออาจจะตั้งแต่เริ่มจำหน่ายสินค้านั้นเลยก็เป็นได้ เพื่อใ้ห้สามารถวิเคราะห์ถึงแนวโน้มในอดีต และพยากรณ์แนวโน้มในอนาคตต่อไปได้ แต่ถ้าเปรียบเทียบกับระบบสั่งซื้อสินค้า ซึ่งมีวัตถุประสงค์หลักคือเพื่อรับคำสั่งซื้อ ดังนั้นข้อมูลประวัติยอดขายในอดีต จึงมีความสำคัญไม่มากนัก โดยส่วนใหญ่แล้ว มักจะเก็บข้อมูลไว้เพียงแค่ 1-2 รอบทำการ (อาจจะวันหรือเป็นเดือนก็ได้) เมื่อมีการประมวลผลสิ้นวันหรือสิ้นเดือนแล้ว ก็จะทำการ purge ข้อมูลเก่าทิ้งไป เพื่อให้ระบบมีึความคล่องตัว และสามารถประมวลผลคำสั่งซื้อใหม่ๆ ได้อย่างรวดเร็ว
ด้วยลักษณะดังกล่าว ทำให้โดยทั่วไปแล้ว data warehouse มักจะมีขนาดใหญ่ ยิ่งหน่วยงานธุรกิจมีขนาดใหญ่ กระบวนการทำงานซับซ้อน ข้อมูลหลากหลาย ขนาดของ DW ในองค์กรก็จะใหญ่และซับซ้อนตามไปด้วย อย่างไรก็ตาม “ขนาด” ไม่ได้เป็นลักษณะสำคัญโดยเฉพาะ ฐานข้อมูล OLTP ก็สามารถมีขนาดใหญ่ได้ โดยไม่จำเป็นต้องเป็น data warehouse