Ключи для реляционных данных

Введение в моделирование данных в Snowflake

Nuno Rocha

Director of Engineering

Введение в реляционные данные

Сущность с большим количеством продуктов

Введение в моделирование данных в Snowflake

Введение в реляционные данные (1)

  • Реляционные данные: структурированные данные, организованные в отдельные сущности и связанные между собой с помощью ключей

Продукты, разделённые на три отдельные сущности

Введение в моделирование данных в Snowflake

Роль ключей в реляционных данных

  • Структура и целостность данных: ключи организуют данные в таблицы и обеспечивают их точность
  • Связи реального мира: ключи создают значимые связи и отражают сложные взаимодействия
  • Эффективный доступ: ключи ускоряют получение данных и выполнение запросов
  • Масштабируемость: ключи обеспечивают рост данных с сохранением их целостности
Введение в моделирование данных в Snowflake

Повторение: первичный и внешний ключи

  • Первичный ключ: уникальный идентификатор каждой записи в сущности
CREATE OR REPLACE TABLE products (
    id NUMBER(10,0) PRIMARY KEY,
    name VARCHAR(255)
);
Введение в моделирование данных в Snowflake

Повторение: первичный и внешний ключи (1)

  • Первичный ключ: уникальный идентификатор каждой записи в сущности
  • Внешний ключ: связывает одну сущность с другой
CREATE OR REPLACE TABLE products (
    product_id NUMBER(10,0) PRIMARY KEY,
    product_name VARCHAR(255)


);
Введение в моделирование данных в Snowflake

Повторение: первичный и внешний ключи (2)

  • Первичный ключ: уникальный идентификатор каждой записи в сущности
  • Внешний ключ: связывает одну сущность с другой
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)
);
Введение в моделирование данных в Snowflake

Связи в модели данных

Модель данных с сущностями продуктов, производителей и сведений о продуктах

Введение в моделирование данных в Snowflake

Связи в модели данных (1)

Новая сущность категорий

Введение в моделирование данных в Snowflake

Корректировка модели данных

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

Кардинальность сущности категорий по отношению к сущности продуктов

Введение в моделирование данных в Snowflake

Корректировка модели данных (1)

ALTER TABLE products
ADD COLUMN category_id NUMBER(10,0);
ALTER TABLE products
ADD FOREIGN KEY (category_id) REFERENCES categories(category_id);
Введение в моделирование данных в Snowflake

Корректировка модели данных (2)

Итоговая физическая модель для продуктов

Введение в моделирование данных в Snowflake

Обзор терминологии и команд

  • Реляционные данные: структурированные данные, организованные в отдельные сущности и связанные между собой с помощью ключей
  • ALTER TABLE: команда SQL для изменения структуры существующей сущности
  • ADD: команда SQL, используемая вместе с ALTER TABLE для добавления новых элементов в сущность
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);
Введение в моделирование данных в Snowflake

Давайте потренируемся!

Введение в моделирование данных в Snowflake

Preparing Video For Download...