Krótki przegląd baz danych

Zanim zaczniesz pracować z Metabase, warto poznać kilka kluczowych pojęć związanych z bazami danych.

Tabele

Zasadniczo, bazy danych są zbiorami tabel. Tabele zawierają jedną lub więcej kolumn i jeden lub więcej wierszy. Wiersz składa się z komórek, a każda komórka ma wartość, która odpowiada kolumnie, do której należy.

Oto przykład takiej tabeli:

Imię Wiek
Jan 25
Joanna 31

W tym przypadku kolumnami są Imię i Wiek. Pierwszy rząd zawiera dwie komórki, w jednej Jan i w innej 25, odpowiadające odpowiednio kolumnom Imię i Wiek.

Kolumny

Wszystkie komórki w kolumnie zawierają ten sam typ informacji. Na przykład, w przykładowej tabeli powyżej, kolumna Imię zawiera imiona w każdej komórce, podczas gdy kolumna Wiek zawiera odpowiednio listę last poszczególnych osób.

Kolumny są również czasami zamiennie określane jako pola. Każde pole posiada typ, który opisuje, jaki rodzaj danych jest przechowywany w polu.

Przykłady typów pól:

  • Typy ciągów znaków (TEXT, CHAR, VCHAR, etc.) - W świecie technologii, urywki tekstu są określane jako "ciągi". (Prawdopodobnie słyszałeś już kiedyś o "ciągu tekstowym".) Pola te przechowują takie rzeczy jak nazwiska, imiona, adresy lub cokolwiek innego, co jest tekstem.
  • Typy numeryczne (Integer, Float, DoubleFloat, Decimal, itd.) - pola te przechowują liczby. Integers to liczby całkowite; Floats i Decimals to sposoby na przechowywanie liczb z miejscami dziesiętnymi. Typy numeryczne przechowują takie rzeczy jak wiek, saldo konta bankowego, ceny, szerokości i długości geograficzne.
  • Typy czasu (Timestamp, etc.) - Pola te są specjalnym formatem liczbowym używanym do przechowywania dat i czasu (lub obu), zwanych "stemplami czasowymi". Czasami bazy danych przechowują całkowity stempel czasowy, który jest albo sekundami albo milisekundami, np. 00:00:00 Coordinated Universal Time (UTC), Thursday, 1 January 1970. Ta konwencja pozwala na kompaktowe przechowywanie znaczników czasu.
  • IDs (zwane również kluczami głównymi, ang. primary keys) - To pole w tabeli w sposób unikalny identyfikuje każdy wiersz. Na przykład, wyobraź sobie aplikację do rezerwacji samochodów, w której możesz zarezerwować samochód z wyprzedzeniem. ID rezerwacji może być numerem rezerwacji, a żadne dwie rezerwacje nie będą miały tego samego numeru rezerwacji, pozwalając na unikalną identyfikację każdej rezerwacji przez jej numer.

Przykład

Tabela rezerwacji

ID Rezerwacji Imię Wiek
11 Jan 25
12 Joanna 31

W powyższej tabeli, pole Reservation ID to jest ID (klucz główny). Pole Imię jest typu String, a pole Wiek jest typu numerycznego (dokładnie Integer).

Relacje

Tabele mogą zawierać odwołania do innych tabel, co tworzy relację pomiędzy nimi.

Na przykład, w naszej hipotetycznej bazie danych aplikacji do rezerwacji samochodów, moglibyśmy mieć dwie tabele: jedną dla rezerwacji (nazwijmy ją Rezerwacje) i jedną dla klientów (nazwijmy ją Klienci).

Aby połączyć dane rezerwacji z odpowiadającymi im danymi klientów, możesz użyć klucza obcego. Klucz obcy jest specjalnym rodzajem pola w tabeli, które odwołuje się do tej samej kolumny w innej tabeli. Prawie zawsze pole, na które wskazuje klucz obcy jest ID lub primary key w innej tabeli.

Na przykład, w naszej hipotetycznej aplikacji do rezerwacji samochodów, moglibyśmy połączyć każdą rezerwację w tabeli Rezerwacje z odpowiednim klientem, który dokonał rezerwacji poprzez kolumnę Klient rezerwacji zawierającą tę samą wartość co kolumna ID klienta, który dokonał rezerwacji.

Rezerwacje

Klient Data Samochód
11 12/20/2015 Toyota Camry
12 1/2/2016 Range Rover

Klienci

ID Imię Wiek
11 Jan 25
12 Joanna 31

Gdybyśmy chcieli przeanalizować bazę danych naszej hipotetycznej aplikacji za pomocą Metabase, moglibyśmy zadać pytanie, np:

Jaki jest średni wiek wszystkich klientów, którzy dokonali rezerwacji w lutym 2015 roku?

Aby to zrobić, otwórzmy tabelę Rezerwacje, dodajmy filtr, aby spojrzeć tylko na rezerwacje między 1 lutego a 28 lutego 2015 i wybierzmy Średnia z.... Aby wybrać średnią wieku, użyjmy naszego klucza obcego i wybierzmy wiek z tabeli Klienci, do której odwołuje się nasza tabela Rezerwacje.


Następne: Zadawanie pytań

Teraz, gdy mamy już wspólne słownictwo i podstawową wiedzę z baz danych, dowiedzmy się więcej o eksploracji w Metabase