Binnen het Redshift-warehouse

Introductie tot Redshift

Jason Myers

Principal Architect

Agenda

  • Interne werking van Redshift-clusters
    • Nodetypen
    • Leiderspecifieke functies
    • Redshift-clusteropslag
  • Predicaten
  • Redshift Spectrum
    • Databasecomponenten
    • Externe tabellen
Introductie tot Redshift

Architectuur van Redshift-clusters

Leader node

  • Biedt connecties
  • Bouwt en verdeelt query-uitvoeringsplannen
  • Kan volledige queries uitvoeren
  • Heeft exclusieve functies

Compute node

  • Biedt dataopslag
  • Voert code van de leader node uit op lokaal opgeslagen data

Redshift-cluster

Introductie tot Redshift

Leiderspecifieke functies

  • Alleen draaien op de leader
-- Selecting the substr, starting at 
-- position 11 of 'chocolate chip'
SELECT SUBSTR('chocolate chip', 11);
chip
  • SUBSTR geeft fouten op tabelkolommen
-- 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)
Introductie tot Redshift

Gegevens over nodes bekijken

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
Introductie tot Redshift

Predicaten

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';
  • Meestal booleaanse expressies in WHERE-, HAVING- of ON-clauses
Introductie tot Redshift

Predicate push-down

Predicate push-down

Introductie tot Redshift

Typische interne databasecomponenten

Databasecomponenten

MetaData-catalogus

  • Bevat schema-info (kolommen, sleutels, enz.)
  • Verwijst naar een opslaglocatie

Query-engine

  • Plant en voert queries uit
  • Biedt connecties

Opslag

  • Bevat tabeldata
  • Ondersteunt meerdere bestands- en tabelindelingen
Introductie tot Redshift

Redshift Spectrum-architectuur

AWS Glue Data Catalog

  • Slaat info op over "externe" tabellen

AWS S3-bucket

  • Slaat de bestanden op die de tabel vormen
  • Ondersteunt CSV, JSON, tekst, Parquet en veel meer bestandstypen

Redshift Spectrum-architectuur

Introductie tot Redshift

Laten we oefenen!

Introductie tot Redshift

Preparing Video For Download...