Nền tảng Kỹ thuật dữ liệu trong Databricks

Các khái niệm về Databricks

Kevin Barlow

Data Practitioner

Kiến trúc Medallion

Sơ đồ kiến trúc Medallion

Các khái niệm về Databricks

Đọc dữ liệu

Spark là framework linh hoạt, đọc được nhiều nguồn/kiểu dữ liệu.

Nguồn và kiểu phổ biến:

  • Bảng Delta
  • Định dạng tệp (CSV, JSON, Parquet, XML)
  • Cơ sở dữ liệu (MySQL, Postgres, EDW)
  • Dữ liệu streaming
  • Ảnh / Video

Nguồn dữ liệu - Định dạng tệp

Nguồn dữ liệu - Cơ sở dữ liệu

Nguồn dữ liệu - Định dạng mới

Các khái niệm về Databricks

Đọc dữ liệu

Spark là framework linh hoạt, đọc được nhiều nguồn/kiểu dữ liệu.

Nguồn và kiểu phổ biến:

  • Bảng Delta
  • Định dạng tệp (CSV, JSON, Parquet, XML)
  • Cơ sở dữ liệu (MySQL, Postgres, EDW)
  • Dữ liệu streaming
  • Ảnh / Video
#Delta table
spark.read.table()
#CSV files
spark.read.format('csv').load('*.csv')
#Postgres table
spark.read.format("jdbc")
  .option("driver", driver)
  .option("url", url)
  .option("dbtable", table)
  .option("user", user)
  .option("password", password)
  .load()
Các khái niệm về Databricks

Cấu trúc bảng Delta

Bảng Delta mang lại tính năng như bảng cho định dạng tệp mở.

  • Đọc giống như bảng
  • Truy cập tệp nền (Parquet và JSON)

Cấu trúc Delta

Các khái niệm về Databricks

Giải thích cấu trúc Delta Lake

Thẻ công thức - Ảnh món ăn

Thẻ công thức - Nguyên liệu và bước

Các khái niệm về Databricks

DataFrame

DataFrame là biểu diễn dữ liệu hai chiều.

  • Trông và hoạt động như bảng
  • Khái niệm chung cho nhiều công cụ dữ liệu
    • Spark (mặc định), pandas, dplyr, truy vấn SQL
  • Nền tảng cho hầu hết quy trình dữ liệu
id customerName bookTitle
1 John Data Guide to Spark
2 Sally Bricks SQL for Data Engineering
3 Adam Delta Keeping Data Clean
df = (spark.read
  .format("csv")
  .option("header", "true")
  .option("inferSchema", "true")
  .load("/data.csv"))
Các khái niệm về Databricks

Ghi dữ liệu

Các loại bảng trong Databricks

  1. Bảng quản lý (Managed)
    • Loại mặc định
    • Lưu với Unity Catalog
    • Databricks quản lý
  2. Bảng ngoài (External)
    • Lưu ở vị trí khác
    • Thiết lập LOCATION
    • Khách hàng quản lý
df.write.saveAsTable(table_name)

CREATE TABLE table_name 
USING delta 
AS ...
df.write
  .location('').saveAsTable(table_name)

CREATE TABLE table_name 
USING delta 
LOCATION "<path>" 
AS ...
Các khái niệm về Databricks

Ayo berlatih!

Các khái niệm về Databricks

Preparing Video For Download...