1. Przegląd
Ostatnia aktualizacja: 23 lipca 2020 r.
Co to jest Cloud Spanner?
Google Cloud Spanner to globalnie rozproszona baza danych zgodna z zasadami ACID, która automatycznie obsługuje repliki, fragmentację i przetwarzanie transakcji. Dzięki temu możesz szybko skalować ją pod kątem dowolnego wzorca użytkowania i zapewnić sukces swoich produktów.
Główne funkcje
- Relacyjna baza danych stworzona z myślą o skalowaniu: wszystko, czego można oczekiwać od relacyjnej bazy danych – schematy, zapytania SQL i transakcje ACID – sprawdzone w praktyce i gotowe do skalowania na całym świecie.
- Dostępność na poziomie 99,999%: Cloud Spanner zapewnia najlepszą w branży dostępność na poziomie 99,999% w przypadku instancji w wielu regionach (10-krotnie mniejszy czas przestoju niż w przypadku dostępności na poziomie 99,99%) oraz automatyczną, synchroniczną replikację w konfiguracjach obejmujących region i wiele regionów.
- Automatyczna fragmentacja: Cloud Spanner optymalizuje wydajność, automatycznie dzieląc dane na fragmenty na podstawie obciążenia żądaniami i rozmiaru danych. Dzięki temu możesz poświęcić mniej czasu na zastanawianie się, jak skalować bazę danych, a więcej na rozwój firmy.
Czego się nauczysz
- tworzyć instancje Cloud Spanner za pomocą konsoli Google Cloud;
- utworzyć nową bazę danych w instancji Cloud Spanner;
- Korzystanie z bazy danych sampledb do wczytywania przykładowych danych i wykonywania na nich zapytań.
- Usuwanie instancji Cloud Spanner.
2. Konfiguracja i wymagania
Samodzielne konfigurowanie środowiska
Jeśli nie masz jeszcze konta Google (Gmail lub Google Apps), musisz je utworzyć. Zaloguj się w konsoli Google Cloud Platform ( console.cloud.google.com) i utwórz nowy projekt:


Zapamiętaj identyfikator projektu, czyli unikalną nazwę we wszystkich projektach Google Cloud (podana powyżej nazwa jest już zajęta i nie będzie działać w Twoim przypadku). W dalszej części tych ćwiczeń z programowania będzie on nazywany PROJECT_ID.
Następnie musisz włączyć płatności w konsoli Cloud, aby móc korzystać z zasobów Google Cloud.
Wykonanie tego samouczka nie powinno kosztować więcej niż kilka dolarów, ale może okazać się droższe, jeśli zdecydujesz się wykorzystać więcej zasobów lub pozostawisz je uruchomione (patrz sekcja „Czyszczenie” na końcu tego dokumentu).
Nowi użytkownicy Google Cloud mogą skorzystać z bezpłatnego okresu próbnego, w którym mają do dyspozycji środki w wysokości 300 USD.
3. Otwórz Spanner w konsoli Cloud
W konsoli Google Cloud kliknij ikonę Menu w lewym górnym rogu ekranu, aby otworzyć menu nawigacyjne po lewej stronie.
Przewiń w dół i wybierz „Klucz”:

Powinien wyświetlić się interfejs Cloud Spanner. Jeśli używasz projektu, w którym interfejs Cloud Spanner API nie jest jeszcze włączony, zobaczysz okno z prośbą o jego włączenie. Jeśli interfejs API jest już włączony, możesz pominąć ten krok.
Aby kontynuować, kliknij „Włącz”:

4. Tworzenie instancji
Najpierw utworzysz instancję Cloud Spanner. W interfejsie kliknij „Utwórz instancję”, aby utworzyć nową instancję:

Po kliknięciu „Utwórz instancję” przejdziesz na stronę, na której możesz utworzyć instancję. Wpisz nazwę instancji i wybierz konfigurację.
Możesz wybrać konfigurację regionalną lub obejmującą wiele regionów. W konfiguracjach regionalnych wszystkie repliki znajdują się w tym samym regionie, a w konfiguracjach wieloregionowych repliki do odczytu są tworzone w wielu regionach. Aby porównać konfigurację, kliknij „Porównaj konfiguracje regionów”.

Po wybraniu konfiguracji jej podsumowanie pojawi się w panelu po prawej stronie:

W przyszłości możesz zwiększyć liczbę węzłów, aby przydzielić instancji więcej zasobów, lub zmniejszyć ją, jeśli instancja nie potrzebuje dodatkowych zasobów.
Aby utworzyć instancję, kliknij „Utwórz”.

Instancja Cloud Spanner jest teraz gotowa do użycia.

5. Tworzenie bazy danych
Aby utworzyć nową bazę danych, kliknij „Utwórz bazę danych”:

Wpisz nazwę nowej bazy danych. Opcjonalnie możesz też na tym etapie podać schemat.

Na tym etapie pominiemy podawanie schematu i klikniemy „Utwórz”, aby utworzyć pustą bazę danych.

Po kliknięciu „Utwórz” zostanie utworzona nowa baza danych:

6. Wczytywanie przykładowych danych i wykonywanie na nich zapytań
W tym laboratorium załadujemy przykładowe dane i wykonamy na nich zapytania za pomocą sampledb. Baza danych Sampledb zawiera różne zbiory danych i może importować dane do istniejących baz danych.
Program uruchomimy w Google Cloud Shell. Jeśli po raz pierwszy używasz Google Cloud Shell w tym projekcie, na górnym pasku nawigacyjnym zobaczysz logo Google Cloud Shell. Aktywuj Cloud Shell, klikając go.

Po aktywowaniu u dołu pojawi się konsola:

W konsoli sklonuj repozytorium sampledb i postępuj zgodnie z instrukcjami, aby zainstalować zależności:
$ git clone https://github.com/cloudspannerecosystem/sampledb.git
Po sklonowaniu repozytorium przejdź do nowego katalogu, utwórz środowisko wirtualne i zainstaluj wymagane komponenty:
$ cd sampledb $ virtualenv env $ source env/bin/activate $ pip install -r requirements.txt
Po zainstalowaniu zależności możesz uruchomić sampledb, aby utworzyć nową bazę danych z przykładowymi danymi:
$ python batch_import.py my-first-instance my-sample-db
Po zakończeniu tego procesu zobaczysz bazę danych „my-sample-db” z 2 nowymi tabelami (komentarze i relacje):

Przykładowy zbiór danych zawiera artykuły i komentarze z Hacker News. Aby rozpocząć wysyłanie zapytań i przeglądanie danych, kliknij „Zapytanie”:

7. Czyszczenie danych
Ten krok jest opcjonalny. Jeśli chcesz nadal eksperymentować z instancją Cloud Spanner, nie musisz jej teraz czyścić. Jednak projekt, którego używasz, będzie nadal obciążany opłatami za instancję. Jeśli nie potrzebujesz już tej instancji, usuń ją, aby uniknąć tych opłat.
Wróć na stronę instancji, klikając „my-first-instance” w lewym górnym rogu:

Aby usunąć instancję, kliknij przycisk „Usuń”:

Usunięcie instancji jest nieodwracalne. Danych z tej instancji nie będzie można odzyskać. Aby zapobiec przypadkowemu usunięciu niewłaściwej instancji, musisz potwierdzić usunięcie, wpisując nazwę instancji w oknie dialogowym potwierdzenia:

Wpisz nazwę instancji i kliknij „Usuń”.
8. Gratulacje!
Udało Ci się utworzyć nową instancję Cloud Spanner, utworzyć pustą bazę danych, wczytać przykładowe dane i (opcjonalnie) usunąć instancję Cloud Spanner.
Omówione zagadnienia
- tworzyć instancje Cloud Spanner za pomocą konsoli Google Cloud;
- utworzyć nową bazę danych w instancji Cloud Spanner;
- Korzystanie z bazy danych sampledb do wczytywania przykładowych danych i wykonywania na nich zapytań.
- Usuwanie instancji Cloud Spanner.
Więcej informacji
- Zapoznaj się z dokumentacją Google Cloud Spanner.
- Dowiedz się więcej o interfejsach API i bibliotekach klienta Google Cloud Spanner.