สรุปเนื้อหาเตรียมสอบ Data Warehouse Midterm

Data_Warehouse_summary.jpg

เนื่องด้วยใกล้ถึงวันสอบของวิชา  Data Warehouse แล้ว ออฟก็เลยถือโอกาสสรุปเนื้อหาที่ต้องใช้ในการสอบกลางภาค โดยเลือกเฉพาะส่วนหัวข้อหลักๆ ที่น่าจะต้องรู้มาให้ ส่วนรายละเอียดนั้นก็สามารถอ่านตามได้จากการจดเลคเชอร์ที่อัพไปแล้วได้เลยค่า

ที่มาภาพ : http://img.dailymail.co.uk/i/pix/2007/12_01/warehouseSWNS_1000x667.jpg

  • หัวข้อหลักๆที่จะมาสรุป

  1. ความแตกต่างของ Database, Data warehouse, Data mining
  2. องค์ประกอบของ Data Warehouse
  3. Dimensional Modeling (star schema)
  4. Design 6 step : Six-process  for designing dimensional models
  5. SQL ที่น่าจะรู้
  • ความแตกต่างของ Database, Data warehouse, Data mining

Database (ฐานข้อมูล) : ฐานข้อมูลคือ การรวบรวมข้อมูลที่มีความสัมพันธ์กันโดยจะเก็บอยู่ภายใต้หัวเรื่องหรือจุดประสงค์อย่างใดอย่างหนึ่ง เพิ่มเติม

Data warehouse (คลังข้อมูล) : คลังข้อมูลเป็นลักษณะของการแยกฐานข้อมูล ที่เก็บข้อมูลที่แตกต่างกันจากหลายๆแหล่ง ไว้ในรูปแบบและที่เดียวกัน เน้นเรื่องการเอา information ออกมา ซึ่งอาจจะออกมาในรูปแบบของรายงานต่างๆ เพื่อมาช่วยในการประกอบการตัดสินใจเรื่องต่างๆ เพิ่มเติม

Data mining (เหมืองข้อมูล) : เหมืองข้อมูลเป็นกระบวนการที่กระทำกับข้อมูล(โดยส่วนใหญ่จะมีจำนวนมาก) เพื่อค้นหารูปแบบ แนวทาง และความสัมพันธ์ที่ซ่อนอยู่ในชุดข้อมูลนั้น โดยอาศัยหลักสถิติ การรู้จำ การเรียนรู้ของเครื่อง และหลักคณิตศาสตร์ เพิ่มเติม

สรุป : Database ใช้เก็บข้อมูลงานประจำวัน, Data warehouse ใช้เก็บข้อมูลแบบสรุปเพื่อนำข้อมูลโดยรวมมาวิเคราะห์ ไม่เน้นรายละเอียดของข้อมูล, Data mining ใช้ในการวิเคราะห์ค้นหารูปแบบหรือพฤติกรรม

  • องค์ประกอบของ Data Warehouse

Data_Warehouse_Components.jpg

  1. Operational Source Systems : เป็นระบบคำสั่งของ record ที่จับ transaction ของธุรกิจ
  2. Data Staging Area : โซนพักข้อมูล : เป็นส่วนที่ให้ข้อมูลมาพักไว้ก่อนการทำงานต่อไป โดยจะมีกระบวนการ ETL (extract:แตกข้อมูล การพยายามเข้าไปอ่าน และพยายามเข้าใจถึงแหล่งข้อมูล- transformation:จัดการcleanข้อมูลและรวมข้อมูลจากหลายแหล่งเข้าด้วยกัน- load:โหลดเข้าไปในคลังข้อมูล)
  3. Data Presentation Area (Data Warehouse) : เป็นที่ที่ข้อมูลถูกจัดการ, จัดเก็บ และทำให้สามารถเข้าถึงได้โดยตรงจากผู้ใช้, คนเขียนรายงาน และแอพพลิเครชั่นที่ใช้ในการวิเคราะห์
  4. Data Mart : เป็น data warehouse ขนาดย่อย ซึ่งการที่ต้องแบ่งย่อยออกมาเพื่อการใช้งานได้สะดวกและกำหนดสิืทธิ์ของการเข้าถึง หรืออาจจะแบ่งตาม business process ก็ได้
  5. Data Access Tools : เครื่องมือที่ทำการดึงข้อมูล โดยสามารถที่จะเป็น ad hoc query (การเป็น query ที่ไม่คาดคะเนมาก่อน)หรือ data mining
  6. Metadata : เป็นสิ่งที่อยู่รอบๆข้อมูลจริงๆที่ทำให้คนเข้าใจว่าข้อมูลนั้นถูกสร้างมาได้อย่างไร และจะนำไปใช้ได้อย่างไร มีไว้ช่วย  DW’s technical, administrative, business user group ในกา่รทำงาน
  • Dimensional Modeling (star schema)

– มีองค์ประกอบสำคัญคือ

Data_warehouse_star_schema2.png

ที่มารูป : http://www.datadefractor.com/Portals/0/Images/Pages/Star%20Schema/star-schema.png

  1. Dimensions : มุมมอง โดยจะต้องครอบคลุม requirement และ data source ทั้งหมด โดยเป็นตัวช่วยอธิบายข้อมูลของ fact table ทำให้คลังข้อมูลของเราเข้าใจได้ง่ายมากขึ้น
  2. Facts (measure) : หน่วยวัดประสิืทธิภาพของธุรกิจ มีส่วนประกอบด้วย  Foreign keys ที่เป็น composite key และส่วนที่เป็น measure
  • Design 6 step : Six-process  for designing dimensional models

  1. Select the Business Process : เลือก business process โดยให้เราเลือกว่าจะทำคลังข้อมูลเกี่ยวกับ business process ไหน
  2. Declare the Grain(granularity) : ประกาศหน่วยย่อยที่สุดที่จะเก็บลงในคลังข้อมูลที่ใช้ตอบคำถาม “What exactly is a fact record for this table”
  3. Choose the Dimensions : เลือก Dimension โดย Dimensions ก็คือเป็น set ของ context สำหรับการตอบคำถามเกี่ยวกับ fact ใน fact table ซึ่งจะต้องมี Time dimension เสมอ
  4. Identify the Facts : ระบุ fact
    ชนิดของ fact table
    – Additive Facts : fact มีการบวกสะสมได้ และจะต้องทำได้กับทุกๆ dimension, ใช้ sum ได้
    – Semi-additive Facts : fact ที่ sum ไม่ได้ทุก dimension เช่นพวก account balance, อุณหภูมิ โดยอาจจะใช้ Average ช่วย
    – non-additive : fact ที่ sum ไม่ได้
    เงื่อนไขการมี fact table
    – ถ้ามีการใช้ dimension ไม่เท่ากัน ก็อยู่ใน fact table เดียวกันไม่ได้
    – ถ้ามี grain อยู่คนละระดับกัน อยู่ใน fact table เดียวกันไม่ได้
  5. Store pre-calculations  in the fact table : จัดเก็บ pre-calculation ใน fact table (pre-calculation : fact ที่เก็บอะไรที่คำนวนไว้แล้ว ซึ่งมันจะช่วยช่วยใน query performance)
  6. Defining attributes of the dimension  tables : หา attributes มาให้ dimension table ต่างๆ โดยใส่ให้เยอะที่สุดซึ่งขึ้นกับ source data และ attribute ควรจะเป็นชื่อเต็ม ไม่ควรเป็นตัวย่อ ซึ่งถ้ามีข้อมูลเป็นตัวย่อมาจะถูกแปลงเป็นตัวเต็มตอนที่ ETL
  • SQL ที่น่าจะรู้

SQL พื้นฐาน

  1. SELECT Statement
  2. WHERE Clause
  3. INSERT INTO Statment
  4. UPDATE Statement
  5. DELETE Statement
  6. FULL JOIN
  7. GROUP BY

SQL function

  1. AVG()
  2. COUNT()
  3. SUM()
  4. MAX()
  5. MIN()
  • โดนใจอยากให้อ่านเพิ่ม

บทที่ 1 : Introduction to Data Warehousing

บทที่ 2 : Intro to Dimensional Modeling : Retail Sales Case Study

Leave a comment