Sütun odaklı veritabanları için analitik iş akışları

NoSQL'a Giriş

Jake Roach

Data Engineer

Snowflake ile ortak tablo ifadeleri

Ortak tablo ifadeleri (CTE):

  • WITH anahtar sözcüğüyle tanımlanan adlandırılmış alt sorgular/geçici tablolar
  • Daha sonra sorgulanabilecek bir nesne oluşturur
  • Sorgulanan ve/veya JOIN edilen veri miktarını azaltır
  • Daha modülerdir, hata ayıklaması kolaydır
WITH <cte-name> AS (
    SELECT
        ....
    FROM <table-name>
    [JOIN | WHERE | ...]
)

SELECT
    ...
FROM <cte-name>;
1 https://docs.snowflake.com/en/user-guide/queries-cte
NoSQL'a Giriş

Ortak tablo ifadeleri yazma

WITH premium_books AS (
    SELECT
        title,
        author,
        avg_reviews
    FROM books
    WHERE price > 25.00
)
SELECT
    author,
    MIN(avg_reviews) AS min_avg_reviews,
    MAX(avg_reviews) AS max_avg_reviews
FROM premium_books
GROUP BY author;
  • premium_books adlı geçici nesne oluşturma
  • Aşağı akışta premium_books kullanma

$$

Birden çok geçici nesne oluşturulabilir:

WITH 
    <first-name> AS (...),
    <second-name> AS (...),
    ...
...
;
NoSQL'a Giriş

Snowflake ile görünümler

Görünümler:

  • Sorgu sonuçlarına tablo gibi erişim sağlar
  • Malzemeleşmemiş ve malzemeleşmiş
CREATE VIEW <view-name> AS
  SELECT
      ...
  FROM <table-name>
  [WHERE | JOIN | ...];
NoSQL'a Giriş

Snowflake ile görünüm oluşturma

CREATE VIEW premium_books AS
    SELECT
        title,
        author,
        avg_reviews
    FROM books
    WHERE price >= 25.00;
SELECT * FROM premium_books;
  • Sorgu, premium_books çağrıldığında çalışır
  • Sorgunun "adlandırılmış tanımı"
CREATE MATERIALIZED VIEW premium_books AS
    SELECT
        title,
        author,
        avg_reviews
    FROM books
    WHERE price >= 25.00;
SELECT * FROM premium_books;
  • Sonuçlar çalıştırıldığında depolanır
  • Daha hızlı sorgu, yenileme gerekir
NoSQL'a Giriş

Haydi pratik yapalım!

NoSQL'a Giriş

Preparing Video For Download...