Bên trong kho dữ liệu Redshift

Giới thiệu về Redshift

Jason Myers

Principal Architect

Chương trình

  • Bên trong cụm Redshift
    • Loại nút
    • Chức năng riêng của leader
    • Lưu trữ của cụm Redshift
  • Predicate
  • Redshift Spectrum
    • Thành phần CSDL
    • Bảng external
Giới thiệu về Redshift

Kiến trúc cụm Redshift

Leader Node

  • Cung cấp kết nối
  • Xây dựng và phân phối kế hoạch thực thi truy vấn
  • Có thể chạy toàn bộ truy vấn
  • Có các hàm riêng

Compute Node

  • Cung cấp lưu trữ dữ liệu
  • Thực thi mã từ leader trên dữ liệu lưu trữ cục bộ

Cụm Redshift

Giới thiệu về Redshift

Hàm riêng của leader

  • Chỉ chạy trên leader
-- Selecting the substr, starting at 
-- position 11 of 'chocolate chip'
SELECT SUBSTR('chocolate chip', 11);
chip
  • SUBSTR lỗi khi dùng với cột bảng
-- Selecting the substr from position 1
-- of the column named field on table
SELECT SUBSTR(field, 1) FROM table;
ERROR: SUBSTR() function is not 
supported (Hint: use SUBSTRING 
instead)
Giới thiệu về Redshift

Xem dữ liệu trên nhiều nút

SELECT host, 
       -- Calculate the percentage of used space
       -- using the used minus tossed or ready to be reclaimed
       -- divided by the capacity
       (used - tossed) / capacity * 100 as percent_used 
  FROM STV_PARTITIONS;
 host |  percent_used
======+==============
  0   |  24.9
  1   |  24.8
Giới thiệu về Redshift

Mệnh đề điều kiện (Predicate)

SELECT table_A.columnX,
       table_B.columnY,
  FROM table_A
       INNER JOIN table_B 
          -- predicate
       ON table_B.foreign_key = table_A.primary_key 
       -- predicate
 WHERE table_B.columnZ = 'value';
  • Thường là biểu thức boolean, xuất hiện trong mệnh đề WHERE, HAVING hoặc ON
Giới thiệu về Redshift

Đẩy predicate xuống (push-down)

Đẩy mệnh đề xuống

Giới thiệu về Redshift

Thành phần nội bộ CSDL điển hình

Thành phần cơ sở dữ liệu

Danh mục siêu dữ liệu (MetaData Catalog)

  • Lưu thông tin lược đồ (cột, khóa, v.v.)
  • Tham chiếu vị trí lưu trữ

Bộ máy truy vấn (Query Engine)

  • Lập kế hoạch và thực thi truy vấn
  • Cung cấp kết nối

Lưu trữ (Storage)

  • Chứa dữ liệu bảng
  • Hỗ trợ nhiều định dạng tệp và bảng
Giới thiệu về Redshift

Kiến trúc Redshift Spectrum

AWS Glue Data Catalog

  • Lưu thông tin về bảng "external"

AWS S3 Bucket

  • Lưu các tệp đại diện cho bảng
  • Hỗ trợ CSV, JSON, Text, Parquet và nhiều loại khác

Kiến trúc Redshift Spectrum

Giới thiệu về Redshift

Ayo berlatih!

Giới thiệu về Redshift

Preparing Video For Download...