Klucze w danych relacyjnych

Wprowadzenie do modelowania danych w Snowflake

Nuno Rocha

Director of Engineering

Wprowadzenie do danych relacyjnych

Encja z dużą liczbą produktów

Wprowadzenie do modelowania danych w Snowflake

Wprowadzenie do danych relacyjnych (1)

  • Dane relacyjne: Dane strukturalne zorganizowane w encje i klucze określające relacje między nimi

Produkty podzielone na trzy encje

Wprowadzenie do modelowania danych w Snowflake

Rola kluczy w danych relacyjnych

  • Struktura i integralność danych: Klucze organizują dane w tabele i zapewniają ich dokładność
  • Powiązania ze światem rzeczywistym: Klucze umożliwiają tworzenie znaczących połączeń
  • Efektywny dostęp: Klucze usprawniają pobieranie i zapytania danych
  • Skalowalność: Klucze zapewniają integralność danych wraz z ich rozrostem
Wprowadzenie do modelowania danych w Snowflake

Powtórzenie: klucze główne i obce

  • Klucz główny: Unikalny identyfikator każdego rekordu w encji
CREATE OR REPLACE TABLE products (
    id NUMBER(10,0) PRIMARY KEY,
    name VARCHAR(255)
);
Wprowadzenie do modelowania danych w Snowflake

Powtórzenie: klucze główne i obce (1)

  • Klucz główny: Unikalny identyfikator każdego rekordu w encji
  • Klucz obcy: Łączy jedną encję z drugą
CREATE OR REPLACE TABLE products (
    product_id NUMBER(10,0) PRIMARY KEY,
    product_name VARCHAR(255)


);
Wprowadzenie do modelowania danych w Snowflake

Powtórzenie: klucze główne i obce (2)

  • Klucz główny: Unikalny identyfikator każdego rekordu w encji
  • Klucz obcy: Łączy jedną encję z drugą
CREATE OR REPLACE TABLE products (
    product_id NUMBER(10,0) PRIMARY KEY,
    product_name VARCHAR(255),
    manufacturer_id NUMBER(10,0),
    FOREIGN KEY (manufacturer_id) REFERENCES manufacturers(manufacturer_id)
);
Wprowadzenie do modelowania danych w Snowflake

Relacje w modelu danych

Model danych z encjami produktów, producentów i szczegółów produktów

Wprowadzenie do modelowania danych w Snowflake

Relacje w modelu danych (1)

Nowa encja kategorii

Wprowadzenie do modelowania danych w Snowflake

Dostosowanie modelu danych

CREATE OR REPLACE TABLE categories (
  category_id NUMBER(10,0) PRIMARY KEY,
  category VARCHAR(255)
);

Kardynalność encji kategorii względem encji produktów

Wprowadzenie do modelowania danych w Snowflake

Dostosowanie modelu danych (1)

ALTER TABLE products
ADD COLUMN category_id NUMBER(10,0);
ALTER TABLE products
ADD FOREIGN KEY (category_id) REFERENCES categories(category_id);
Wprowadzenie do modelowania danych w Snowflake

Dostosowanie modelu danych (2)

Finalny model fizyczny dla produktów

Wprowadzenie do modelowania danych w Snowflake

Przegląd terminologii i funkcji

  • Dane relacyjne: Dane strukturalne zorganizowane w encje i klucze określające relacje między nimi
  • ALTER TABLE: Polecenie SQL modyfikujące strukturę istniejącej encji
  • ADD: Polecenie SQL używane z ALTER TABLE do dodawania nowych elementów do encji
ALTER TABLE table_name
ADD COLUMN column_name column_datatype;

ALTER TABLE table_name
ADD PRIMARY KEY (column_name);

ALTER TABLE table_name
ADD FOREIGN KEY (column_name) REFERENCES foreign_table(PK_from_foreign_table);
Wprowadzenie do modelowania danych w Snowflake

Czas na ćwiczenia!

Wprowadzenie do modelowania danych w Snowflake

Preparing Video For Download...