Bazy danych

Wprowadzenie do inżynierii danych

Vincent Vankrunkelsven

Data Engineer @ DataCamp

Czym są bazy danych?

 

Obraz bazy danych

Zazwyczaj duży zbiór danych zorganizowany w celu szybkiego wyszukiwania i pobierania informacji.

 

  • Przechowuje dane
  • Organizuje dane
  • Pobieranie/wyszukiwanie danych przez DBMS
Wprowadzenie do inżynierii danych

Bazy danych i przechowywanie plików

Bazy danych

 

Obraz bazy danych

  • Wysoka organizacja
  • Funkcje takie jak wyszukiwanie, replikacja, ...

Systemy plików

 

Obraz pliku

  • Niska organizacja
  • Prostsze, mniej funkcji
Wprowadzenie do inżynierii danych

Dane strukturalne i niestrukturalne

Strukturalne: schemat bazy danych

  • Relacyjna baza danych

 

Półstrukturalne

  • JSON

 

Niestrukturalne: bez schematu, podobne do plików

  • Filmy, zdjęcia

Obraz bazy danych

 

{ "key": "value"}

 

Obraz pliku

Wprowadzenie do inżynierii danych

SQL i NoSQL

SQL

  • Tabele
  • Schemat bazy danych
  • Relacyjne bazy danych

 

Obraz MySQL

Obraz PostgreSQL

NoSQL

  • Nierelacyjne bazy danych
  • Strukturalne lub niestrukturalne
  • Magazyny klucz-wartość (np. buforowanie)
  • Dokumentowe bazy danych (np. obiekty JSON)

 

Obraz Redis/MongoDB

Wprowadzenie do inżynierii danych

SQL: Schemat bazy danych

-- 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")
);

Schemat bazy danych dla klientów i zamówień

-- 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
Wprowadzenie do inżynierii danych

SQL: Schemat gwiazdy

Schemat gwiazdy składa się z jednej lub więcej tabel faktów odwołujących się do dowolnej liczby tabel wymiarów.

Diagram schematu gwiazdy dla klientów i zamówień

  • Fakty: zdarzenia (np. zamówienia produktów)
  • Wymiary: informacje kontekstowe (np. dane klientów)
1 Wikipedia: https://en.wikipedia.org/wiki/Star_schema
Wprowadzenie do inżynierii danych

Czas na ćwiczenia!

Wprowadzenie do inżynierii danych

Preparing Video For Download...