ฐานข้อมูล

Data Engineering เบื้องต้น

Vincent Vankrunkelsven

Data Engineer @ DataCamp

ฐานข้อมูลคืออะไร?

 

ภาพฐานข้อมูล

การรวบรวมข้อมูลจำนวนมากที่จัดระเบียบไว้เพื่อการค้นหาและเรียกใช้ได้อย่างรวดเร็ว

 

  • จัดเก็บข้อมูล
  • จัดระเบียบข้อมูล
  • ค้นหา/เรียกใช้ข้อมูลผ่าน DBMS
Data Engineering เบื้องต้น

ฐานข้อมูลและการจัดเก็บไฟล์

ฐานข้อมูล

 

ภาพฐานข้อมูล

  • มีการจัดระเบียบสูง
  • รองรับฟีเจอร์ เช่น การค้นหา การจำลองข้อมูล ...

ระบบไฟล์

 

ภาพไฟล์

  • จัดระเบียบน้อยกว่า
  • เรียบง่าย ฟีเจอร์เสริมน้อยกว่า
Data Engineering เบื้องต้น

ข้อมูลแบบมีโครงสร้างและไม่มีโครงสร้าง

มีโครงสร้าง: database schema

  • Relational database

 

กึ่งมีโครงสร้าง

  • JSON

 

ไม่มีโครงสร้าง: ไม่มี schema คล้ายไฟล์ทั่วไป

  • วิดีโอ รูปภาพ

ภาพฐานข้อมูล

 

{ "key": "value"}

 

ภาพไฟล์

Data Engineering เบื้องต้น

SQL และ NoSQL

SQL

  • ตาราง
  • Database schema
  • Relational databases

 

ภาพ MySQL

ภาพ PostgreSQL

NoSQL

  • Non-relational databases
  • มีโครงสร้างหรือไม่มีก็ได้
  • Key-value stores (เช่น การแคช)
  • Document DB (เช่น JSON objects)

 

ภาพ Redis/MongoDB

Data Engineering เบื้องต้น

SQL: Database schema

-- Create Customer Table 
CREATE TABLE "Customer" (
  "id" SERIAL NOT NULL,
  "first_name" varchar,
  "last_name" varchar,
  PRIMARY KEY ("id")
);

-- Create Order Table 
CREATE TABLE "Order" (
  "id" SERIAL NOT NULL,
  "customer_id" integer REFERENCES "Customer",
  "product_name" varchar,
  "product_price" integer,
  PRIMARY KEY ("id")
);

Database Schema สำหรับ Customer และ Order

-- Join both tables on foreign key
SELECT * FROM "Customer"
INNER JOIN "Order"
ON "customer_id" = "Customer"."id";
 id | first_name | ... | product_price
  1 | Vincent    | ... |            10
Data Engineering เบื้องต้น

SQL: Star schema

Star schema ประกอบด้วยตาราง fact ตั้งแต่หนึ่งตารางขึ้นไป ที่อ้างอิงไปยังตาราง dimension จำนวนเท่าใดก็ได้

แผนภาพ Star Schema ของ Customers และ Orders

  • Facts: เหตุการณ์ที่เกิดขึ้น (เช่น การสั่งซื้อสินค้า)
  • Dimensions: ข้อมูลบริบท (เช่น ข้อมูลลูกค้า)
1 Wikipedia: https://en.wikipedia.org/wiki/Star_schema
Data Engineering เบื้องต้น

มาฝึกกันเถอะ!

Data Engineering เบื้องต้น

Preparing Video For Download...