Cloud Spanner: Twoja pierwsza baza danych

1. Omówienie

Ostatnia aktualizacja: 23.07.2020

Co to jest Cloud Spanner?

Google Cloud Spanner to rozproszona globalnie baza danych zgodną z ACID, która automatycznie obsługuje repliki, fragmentację i przetwarzanie transakcji, dzięki czemu można szybko skalować rozwiązania zgodnie z dowolnym wzorcem użytkowania i zapewnić pomyślne działanie produktów.

Najważniejsze funkcje

  • Relacyjna baza danych stworzona z myślą o skali: wszystko, czego można się spodziewać w relacyjnej bazie danych (schematy, zapytania SQL i transakcje ACID) – przetestowane pod kątem zgodności z zasadami i gotowe do globalnego skalowania.
  • Dostępność 99,999%: Cloud Spanner zapewnia najlepszą w branży dostępność na poziomie 99,999% w przypadku instancji w wielu regionach – 10 razy krótszy czas przestoju niż 4 dziewięć oraz zapewnia przejrzystość, synchroniczną replikację w konfiguracjach obejmujących region i wiele regionów.
  • Automatyczne fragmentowanie: Cloud Spanner optymalizuje wydajność, automatycznie dzieląc dane na fragmenty odpowiednio do obciążenia i rozmiaru danych żądaniami. Dzięki temu możesz poświęcać mniej czasu na myślenie o skalowaniu bazy danych – możesz skupić się na skalowaniu swojej działalności.

Zobacz wszystkie funkcje

Czego się nauczysz

  • Tworzenie instancji Cloud Spanner za pomocą konsoli Google Cloud.
  • Tworzę nową bazę danych w instancji Cloud Spanner.
  • użycie sampledb do wczytywania przykładowych danych i wykonywania na nich zapytań.
  • Usuwam instancję Cloud Spanner.

2. Konfiguracja i wymagania

Samodzielne konfigurowanie środowiska

Jeśli nie masz jeszcze konta Google (w Gmailu lub Google Apps), musisz je utworzyć. Zaloguj się w konsoli Google Cloud Platform ( console.cloud.google.com) i utwórz nowy projekt:

50983ac3fdbbf8d0.png

ea581205026ca8e3.png

Zapamiętaj identyfikator projektu, unikalną nazwę we wszystkich projektach Google Cloud (powyższa nazwa jest już zajęta i nie będzie Ci odpowiadać). W dalszej części tego ćwiczenia z programowania będzie się on nazywać PROJECT_ID.

Następnie musisz włączyć płatności w Cloud Console, aby korzystać z zasobów Google Cloud.

Ukończenie tego ćwiczenia w Codelabs nie powinno kosztować więcej niż kilka dolarów, ale może być droższe, jeśli zdecydujesz się użyć więcej zasobów lub nie chcesz ich uruchamiać (patrz sekcja „Czyszczenie” na końcu tego dokumentu).

Nowi użytkownicy Google Cloud Platform mogą skorzystać z bezpłatnego okresu próbnego o wartości 300 USD.

3. Otwieranie Cloud Spanner w konsoli Cloud

W konsoli Google Cloud kliknij ikonę menu w lewym górnym rogu ekranu, aby skorzystać z menu nawigacyjnego po lewej stronie.

Przewiń w dół i wybierz „Spanner”:

46fe7785700d335.png

Teraz interfejs Cloud Spanner powinien być widoczny. Przy założeniu, że używasz projektu, w którym nie włączono jeszcze interfejsu Cloud Spanner API, pojawi się okno z prośbą o jego włączenie. Jeśli masz już włączony interfejs API, możesz pominąć ten krok.

Kliknij „Włącz”. aby kontynuować:

323474ade0d07c48.png

4. Tworzenie instancji

Najpierw utworzysz instancję Cloud Spanner. W interfejsie użytkownika kliknij „Utwórz instancję”. aby utworzyć nową instancję:

1126607e9b3a95f7.png

Po kliknięciu „Utwórz instancję” otworzy się strona, na której możesz utworzyć instancję. Wpisz nazwę instancji i wybierz konfigurację.

Możesz wybrać konfigurację regionalną lub obejmującą wiele regionów. Konfiguracje regionalne będą mieć wszystkie repliki w tym samym regionie, a konfiguracje obejmujące wiele regionów będą tworzyć repliki do odczytu w wielu regionach. Możesz kliknąć „Porównaj konfiguracje regionów”. , aby porównać konfigurację.

f5f41323226be8b7.png

Gdy wybierzesz konfigurację, w panelu po prawej stronie wyświetli się podsumowanie:

be5e99711a47047f.png

W przyszłości możesz zwiększyć liczbę węzłów, aby udostępnić więcej zasobów instancji, lub zmniejszyć ją, jeśli nie potrzebuje dodatkowych zasobów.

Kliknij „Utwórz”. aby utworzyć instancję.

97cf7427660e36bd.png

Instancja Cloud Spanner jest teraz gotowa do użycia.

13ac2d48ea60370b.png

5. Utwórz bazę danych

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

71761f0803038a5.png

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

d7ca47df879931c2.png

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

e398ab29aad3d601.png

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

4164af0df20ca180.png

6. Wczytywanie przykładowych danych i wykonywanie na nich zapytań

W ramach tego ćwiczenia w programie zajmiemy się wczytywaniem przykładowych danych i wysyłaniem dotyczących ich zapytań przy użyciu sampledb. Sampledb zawiera różne zbiory danych i może importować dane do istniejących baz danych.

Program uruchomimy w Google Cloud Shell. Jeżeli po raz pierwszy używasz Google Cloud Shell w tym projekcie, na górnym pasku nawigacyjnym zobaczysz logo Google Cloud Shell. Naciśnij ją, aby aktywować Cloud Shell.

e23b881395174c00.png

Po aktywowaniu na dole pojawi się konsola:

b885c452da656556.png

Skopiuj w konsoli repozytorium sampledb i postępuj zgodnie z instrukcjami, aby zainstalować zależności:

$ git clone https://github.com/cloudspannerecosystem/sampledb.git
Cloning into 'sampledb'...
remote: Enumerating objects: 59, done.
remote: Counting objects: 100% (59/59), done.
remote: Compressing objects: 100% (42/42), done.
remote: Total 59 (delta 23), reused 35 (delta 11), pack-reused 0
Unpacking objects: 100% (59/59), done.
$ 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 pomyślnym zakończeniu żądania pojawi się plik „my-sample-db” z 2 nowymi tabelami (komentarzami i artykułami):

eb4adca281f8704a.png

Przykładowy zbiór danych zawiera artykuły i komentarze od Hacker News. Możesz kliknąć „Zapytanie”, aby zacząć wysyłać zapytania i przeglądać dane:

8b95a3b14709b285.png

7. Czyszczenie danych

Ten krok jest opcjonalny. Jeśli chcesz nadal eksperymentować z instancją Cloud Spanner, nie musisz na razie czyścić jej. Jednak projekt, którego używasz, będzie nadal obciążany opłatami za instancję. Jeśli ta instancja nie jest już potrzebna, usuń ją na razie, aby uniknąć tych opłat.

Wróć na stronę instancji, klikając „my-first-instance” (my-pierwsza-instancja). w lewym górnym rogu:

2a226b985f43074f.png

Kliknij „Usuń”. przycisk usuwania instancji:

27ee8f9656364f98.png

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

537e18cf2dd7a668.png

Wpisz nazwę instancji i naciśnij „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

  • Tworzenie instancji Cloud Spanner za pomocą konsoli Google Cloud.
  • Tworzę nową bazę danych w instancji Cloud Spanner.
  • użycie sampledb do wczytywania przykładowych danych i wykonywania na nich zapytań.
  • Usuwam instancję Cloud Spanner.

Więcej informacji