Базы данных

Введение в дата-инжиниринг

Vincent Vankrunkelsven

Data Engineer, DataCamp

Что такое базы данных?

 

Изображение базы данных

Обычно большой набор данных, организованный специально для быстрого поиска и извлечения.

 

  • Хранит данные
  • Организует данные
  • Поиск и получение данных через СУБД
Введение в дата-инжиниринг

Базы данных и файловое хранение

Базы данных

 

Изображение базы данных

  • Хорошо организованы
  • Функциональность: поиск, репликация и др.

Файловые системы

 

Изображение файла

  • Менее организованы
  • Просты, минимум дополнительных функций
Введение в дата-инжиниринг

Структурированные и неструктурированные данные

Структурированные: схема базы данных

  • Реляционная база данных

 

Полуструктурированные

  • JSON

 

Неструктурированные: без схемы, похожи на файлы

  • Видео, фото

Изображение базы данных

 

{ "key": "value"}

 

Изображение файла

Введение в дата-инжиниринг

SQL и NoSQL

SQL

  • Таблицы
  • Схема базы данных
  • Реляционные базы данных

 

Изображение MySQL

Изображение PostgreSQL

NoSQL

  • Нереляционные базы данных
  • Структурированные или неструктурированные
  • Хранилища «ключ-значение» (например, кеширование)
  • Документные базы данных (например, объекты JSON)

 

Изображение Redis/MongoDB

Введение в дата-инжиниринг

SQL: схема базы данных

-- Create Customer Table 
CREATE TABLE "Customer" (
  "id" SERIAL NOT NULL,
  "first_name" varchar,
  "last_name" varchar,
  PRIMARY KEY ("id")
);

-- Create Order Table 
CREATE TABLE "Order" (
  "id" SERIAL NOT NULL,
  "customer_id" integer REFERENCES "Customer",
  "product_name" varchar,
  "product_price" integer,
  PRIMARY KEY ("id")
);

Схема базы данных для Customer и Order

-- Join both tables on foreign key
SELECT * FROM "Customer"
INNER JOIN "Order"
ON "customer_id" = "Customer"."id";
 id | first_name | ... | product_price
  1 | Vincent    | ... |            10
Введение в дата-инжиниринг

SQL: схема «звезда»

Схема «звезда» состоит из одной или нескольких таблиц фактов, ссылающихся на любое количество таблиц измерений.

Диаграмма схемы «звезда» для Customers и Orders

  • Факты: произошедшие события (например, заказы товаров)
  • Измерения: информация о мире (например, данные о клиентах)
1 https://en.wikipedia.org/wiki/Star_schema
Введение в дата-инжиниринг

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

Введение в дата-инжиниринг

Preparing Video For Download...