Pengantar Pemodelan Data di Snowflake
Nuno Rocha
Director of Engineering



CREATE WAREHOUSE: Klausa Snowflake untuk menyiapkan sumber daya komputasi virtual untuk pemrosesan data.USE WAREHOUSE: Klausa untuk menetapkan gudang data aktif pada sesi saat ini.


CREATE DATABASE: Klausa Snowflake untuk membuat database baru guna mengelola objek data.CREATE SCHEMA: Klausa untuk membuat wadah yang mengelompokkan tabel dan view.CREATE TABLE: Perintah untuk membuat struktur tabel dan kolom data dalam skema tertentu.

CREATE OR REPLACE VIEW customer_urgent_orders AS
SELECT c.c_name AS customer_name,
COUNT(DISTINCT o_orderkey) AS order_count,
SUM(o_totalprice) AS total_price
FROM customer AS c
JOIN orders AS o
ON c.c_custkey = o.o_custkey
WHERE o.o_orderpriority = '1-URGENT'
GROUP BY c.c_name;
ORDER BY total_price DESC;

CREATE OR REPLACE MATERIALIZED VIEW top_customers AS
SELECT o.o_custkey AS customer_id,
c.c_name AS customer_name,
CASE
WHEN SUM(o.o_totalprice) > 5000000 THEN 'Over Price'
WHEN SUM(o.o_totalprice) > 3000000 THEN 'Top Price'
WHEN SUM(o.o_totalprice) > 2000000 THEN 'Average Price'
ELSE 'Review Price'
END AS total_price
FROM customer AS c
JOIN orders AS o ON c.c_custkey = o.o_custkey
GROUP BY o.o_custkey, c.c_name
HAVING total_price > 2000000;
CREATE OR REPLACE WAREHOUSE data_warehouse_name;
USE WAREHOUSE data_warehouse_name;
CREATE OR REPLACE DATABASE database_name;
CREATE OR REPLACE SCHEMA schema_name;
CREATE OR REPLACE TABLE table_name(
column_name datatype,
other_columns datatype);
CREATE OR REPLACE VIEW view_name AS
SELECT column_name,
SUM(column_name2) AS sum_alias,
CASE WHEN column_name5 condition value THEN assigned_value
ELSE another_assigned_value
END AS case_alias
FROM table_name AS table_alias
JOIN other_table AS other_alias ON table_alias.FK = other_alias.PK
LEFT JOIN another_table AS another_alias ON table_alias.FK = other_alias.PK
GROUP BY column_name;
Pengantar Pemodelan Data di Snowflake