วันเสาร์ที่ 30 กันยายน พ.ศ. 2560

[บันทึกความรู้] การประมวลผลเชิงวิเคราะห์แบบออนไลน์ (Online Analytical Processing: OLAP)

จากหลักสูตรเรียนออนไลน์ RSU-MOOC: rsu001 ฉลาดด้วยข้อมูล ใครๆ ก็ทำได้ (คลังข้อมูลและการทำเหมืองข้อมูล)
เนื้อหาก่อนหน้านี้ :  การออกแบบและสร้างคลังข้อมูล

OLAP ย่อมาจาก Online Analytical Processing
นิยามทาง Software คือ เครื่องมือ ที่สามารถวิเคราะห์และเสนอข้อมูลในมิติต่างๆจาก Data Warehouse
มีคุณสมบัติเรียกดูข้อมูลได้อย่างรวดเร็ว  Queryใช้เวลาน้อย  มีการทำงานที่ไม่ขึ้นกับขนาดและความซับซ้อนของฐานข้อมูล
แอพพลิเคชั่น OLAP ถูกออกแบบให้ช่วยงานการวิเคราะห์ข้อมูล เปรียบเทียบ ,นำเสนอมุมมองเฉพาะ ,ย้อนหลัง
และคาดการณ์ข้อมูลในอนาคตตามโมเดล What if Analysis

OLAP ไม่เหมาะที่จะนำไปใช้กับงานที่มีการเปลี่ยนแปลงข้อมูลมากๆตลอดเวลา  ซึ่งเป็นคุณสมบัติที่เข้ากันได้ดีกับ Data Warehouse
 เพราะธรรมชาติของ Data Warehouse นั้นจะไม่มีการเปลี่ยนแปลงข้อมูลยกเว้นเหตุจำเป็น


OLAP Server  จะตั้งอยู่ระหว่าง Client กับ DBMS (Database Management system)
มีหน้าที่จัดรูปแบบนำเสนอรายงานและวิเคราะห์ฐานข้อมูล    โดยรายงานนั้นจะมีอยู่สองรูปแบบ
 - Routine Report คือ รายงานที่ทำเป็นประจำ  สร้างขึ้นด้วยระบบอัตโนมัติแล้วกระจายส่งให้หน่วยงานต่างๆที่ใช้งานประจำ
 - Ad Hoc On Demand  คือ รายงานเฉพาะกิจ นานๆทำครั้งหนึ่ง   ทำตามผู้ใช้งานร้องขอ Ad Hoc Query
       การทำ Ad Hoc Query  จะใช้ SQL (Structure Query Language)


นิยามของ OLAP ที่ใช้ในการวิเคราะห์ข้อมูลและทำรายงาน
นั้นจะหมายถึง กระบวนการวิเคราะห์แบบโต้ตอบและสำรวจในข้อมูลหลายมิติเพื่อค้นหารูปแบบที่น่าสนใจ
OLAP ประกอบไปด้วย 2 ส่วน  ได้แก่  ส่วนของข้อมูลกับส่วนที่ทำให้ผู้ใช้มองเห็นข้อมูลในลักษณะ Multidimensional
แยกออกมาได้ 3 ประเภท
1. MOLAP (M - Multidimensional) 
คือ DBMS ที่ถูกออกแบบมาเพื่อเก็บข้อมูลแบบ Dimensional โดยเฉพาะ
-  เก็บข้อมูลหลายมิติในลักษณะ Array
-  มี Index ในการเข้าถึงข้อมูลได้อย่างรวดเร็ว
- Data Warehouse สร้างโดยใช้แบบจำลองหลายมิติ โดยมองข้อมูลในลักษณะลูกบาศก์

2. ROLAP (R - Relational)
คือ DMBS ที่มี่ความสัมพันธ์ภายในมิติ  โดยใช้ Model โครงสร้าง   Star Schema
และหรือ Snowflake Schema (ย้อนกลับไปดูบทที่แล้ว การออกแบบและสร้างคลังข้อมูล)
-  ใช้ RDMBS (ระบบจัดการฐานข้อมูลเชิงสัมพันธ์) ในการเก็บและจัดการข้อมูลภายใน Data Warehouse
-  ใช้ OLAP Software ในการตอบคำถามที่ต้องการ
-  ใช้ SQL ในการเข้าถึงข้อมูล
-  สามารถใช้กับข้อมูลขนาดใหญ่มากๆ

3. HOLAP (H - Hybrid)
เป็นการผสมระหว่าง ROLAP (ใช้ในระดับล่าสุด) กับ MOLAP มีความยืดหยุ่นต่อการใช้งานสูง

เนื้อหาต่อไป : Business Intelligence