Sleutels voor relationele data

Introductie tot datamodellering in Snowflake

Nuno Rocha

Director of Engineering

Introductie tot relationele data

Entiteit met veel products (rommelig)

Introductie tot datamodellering in Snowflake

Introductie tot relationele data (1)

  • Relationele data: Gestructureerde data in losse entiteiten met sleutels die relaties leggen

Products opgesplitst in drie losse entiteiten

Introductie tot datamodellering in Snowflake

De kracht van sleutels in relationele data

  • Datastructuur & integriteit: Sleutels ordenen data in tabellen en bewaken juistheid
  • Reële verbanden: Sleutels leggen betekenisvolle links en weerspiegelen complexe interacties
  • Efficiënte toegang: Sleutels versnellen ophalen en query’s
  • Schaalbaarheid: Sleutels laten data met integriteit meegroeien
Introductie tot datamodellering in Snowflake

Herhaling van primary en foreign keys

  • Primary key: Unieke id van elk record in een entiteit
CREATE OR REPLACE TABLE products (
    id NUMBER(10,0) PRIMARY KEY,
    name VARCHAR(255)
);
Introductie tot datamodellering in Snowflake

Herhaling van primary en foreign keys (1)

  • Primary key: Unieke id van elk record in een entiteit
  • Foreign key: Verbindt de ene entiteit met een andere
CREATE OR REPLACE TABLE products (
    product_id NUMBER(10,0) PRIMARY KEY,
    product_name VARCHAR(255)


);
Introductie tot datamodellering in Snowflake

Herhaling van primary en foreign keys (2)

  • Primary key: Unieke id van elk record in een entiteit
  • Foreign key: Verbindt de ene entiteit met een andere
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)
);
Introductie tot datamodellering in Snowflake

Relaties in het datamodel

Datamodel met entities products, manufacturers en product details

Introductie tot datamodellering in Snowflake

Relaties in het datamodel (1)

Nieuwe entity categories

Introductie tot datamodellering in Snowflake

Het datamodel aanpassen

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

Kardinaliteit van entity categories richting entity products

Introductie tot datamodellering in Snowflake

Het datamodel aanpassen (1)

ALTER TABLE products
ADD COLUMN category_id NUMBER(10,0);
ALTER TABLE products
ADD FOREIGN KEY (category_id) REFERENCES categories(category_id);
Introductie tot datamodellering in Snowflake

Het datamodel aanpassen (2)

Definitief fysiek model voor products

Introductie tot datamodellering in Snowflake

Overzicht: termen en functies

  • Relationele data: Gestructureerde data in losse entiteiten met sleutels die relaties leggen
  • ALTER TABLE: SQL-commando om de structuur van een bestaande entiteit te wijzigen
  • ADD: SQL-commando, met ALTER TABLE, om nieuwe elementen toe te voegen
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);
Introductie tot datamodellering in Snowflake

Laten we oefenen!

Introductie tot datamodellering in Snowflake

Preparing Video For Download...