เริ่มต้นใช้งาน Databricks SQL

แนวคิด Databricks

Kevin Barlow

Data Practitioner

SQL Compute vs. General Compute

การออกแบบ compute cluster สำหรับงาน data science หรือ data engineering...

import pyspark.sql.functions as F

spark_df = (spark
            .read
            .table('user_table'))

spark_df = (spark_df
            .withColumn('score', 
                        F.flatten(...))
           )

แตกต่างจากการออกแบบ compute สำหรับงาน SQL โดยพื้นฐาน

SELECT *
FROM user_table u
LEFT JOIN product_use p
    ON u.userId = p.userId
WHERE country = 'USA'
AND utilization >= 0.6
แนวคิด Databricks

SQL Warehouse

UI ของ SQL Warehouse

แนวคิด Databricks

SQL Warehouse

ตัวเลือกการตั้งค่า SQL Warehouse

  1. ชื่อ Cluster
  2. ขนาด Cluster (S, M, L, เป็นต้น)
  3. พฤติกรรมการ Scaling

UI ของ SQL Warehouse - ขนาด Cluster

แนวคิด Databricks

SQL Warehouse

ตัวเลือกการตั้งค่า SQL Warehouse

  1. ชื่อ Cluster
  2. ขนาด Cluster (S, M, L, เป็นต้น)
  3. พฤติกรรมการ Scaling
  4. ประเภท Cluster

UI ของ SQL Warehouse - ประเภท Cluster

แนวคิด Databricks

ประเภทของ SQL Warehouse

แต่ละประเภทให้ประโยชน์ที่แตกต่างกัน

Classic

  • SQL compute พื้นฐานที่สุด
  • อยู่บน cloud ของลูกค้า

Pro

  • ฟีเจอร์ขั้นสูงกว่า Classic
  • อยู่บน cloud ของลูกค้า

Serverless

  • ฟีเจอร์ล้ำสมัยที่สุด
  • อยู่บน cloud ของ Databricks
  • คุ้มค่าด้านต้นทุนมากที่สุด
แนวคิด Databricks

SQL Editor

SQL Editor

แนวคิด Databricks

คำสั่ง SQL ที่ใช้บ่อย

COPY INTO

  • ดึงข้อมูลดิบแล้วนำเข้า Delta
  • ขั้นตอน Extract ใน ETL
COPY INTO my_table
FROM '/path/to/files'
FILEFORMAT = <format>
FORMAT_OPTIONS ('mergeSchema' = 'true')
COPY_OPTIONS ('mergeSchema' = 'true');

CREATE <entity> AS

  • สร้าง Table หรือ View
  • ขั้นตอน Transform ใน ETL
CREATE TABLE events
  USING DELTA
  AS (
      SELECT *
    FROM raw_events
    WHERE ...
  )
แนวคิด Databricks

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

แนวคิด Databricks

Preparing Video For Download...