arrow_back

Wczytywanie danych do Google Cloud SQL

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Wczytywanie danych do Google Cloud SQL

Lab 1 godz. universal_currency_alt Punkty: 5 show_chart Średnio zaawansowany
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP196

Moduły Google Cloud do samodzielnego ukończenia

Opis

W tym module zaimportujesz dane z plików tekstowych CSV do Cloud SQL, a następnie przeprowadzisz kilka podstawowych analiz danych za pomocą prostych zapytań.

Zbiór danych użyty w tym module pochodzi z amerykańskiego biura statystyk transportu i zawiera archiwalne informacje o lotach krajowych w Stanach Zjednoczonych. Korzystając z tego zbioru danych, można zademonstrować szeroką gamę pomysłów i technik związanych z badaniem danych. Jest on używany we wszystkich modułach kursu Data Science on Google Cloud Platform.

Cele

  • Utworzenie instancji Cloud SQL
  • Utworzenie bazy danych Cloud SQL
  • Zaimportowanie danych tekstowych do Cloud SQL
  • Utworzenie początkowego modelu danych za pomocą zapytań

Konfiguracja i wymagania

Zanim klikniesz przycisk Rozpocznij moduł

Zapoznaj się z tymi instrukcjami. Moduły mają limit czasowy i nie można ich zatrzymać. Gdy klikniesz Rozpocznij moduł, na liczniku wyświetli się informacja o tym, na jak długo udostępniamy Ci zasoby Google Cloud.

W tym praktycznym module możesz spróbować swoich sił w wykonywaniu opisywanych działań w prawdziwym środowisku chmury, a nie w jego symulacji lub wersji demonstracyjnej. Otrzymasz nowe, tymczasowe dane logowania, dzięki którym zalogujesz się i uzyskasz dostęp do Google Cloud na czas trwania modułu.

Do ukończenia modułu potrzebne będą:

  • dostęp do standardowej przeglądarki internetowej (zalecamy korzystanie z przeglądarki Chrome).
Uwaga: uruchom ten moduł w oknie incognito lub przeglądania prywatnego. Dzięki temu unikniesz konfliktu między swoim kontem osobistym a kontem do nauki, co mogłoby spowodować naliczanie oddatkowych opłat na koncie osobistym.
  • Odpowiednia ilość czasu na ukończenie modułu – pamiętaj, że gdy rozpoczniesz, nie możesz go wstrzymać.
Uwaga: jeśli masz już osobiste konto lub projekt w Google Cloud, nie używaj go w tym module, aby uniknąć naliczania opłat na koncie.

Rozpoczynanie modułu i logowanie się w konsoli Google Cloud

  1. Kliknij przycisk Rozpocznij moduł. Jeśli moduł jest odpłatny, otworzy się wyskakujące okienko, w którym możesz wybrać formę płatności. Po lewej stronie znajduje się panel Szczegóły modułu z następującymi elementami:

    • przyciskiem Otwórz konsolę Google;
    • czasem, który Ci pozostał;
    • tymczasowymi danymi logowania, których musisz użyć w tym module;
    • innymi informacjami potrzebnymi do ukończenia modułu.
  2. Kliknij Otwórz konsolę Google. Moduł uruchomi zasoby, po czym otworzy nową kartę ze stroną logowania.

    Wskazówka: otwórz karty obok siebie w osobnych oknach.

    Uwaga: jeśli pojawi się okno Wybierz konto, kliknij Użyj innego konta.
  3. W razie potrzeby skopiuj nazwę użytkownika z panelu Szczegóły modułu i wklej ją w oknie logowania. Kliknij Dalej.

  4. Skopiuj hasło z panelu Szczegóły modułu i wklej je w oknie powitania. Kliknij Dalej.

    Ważne: musisz użyć danych logowania z panelu po lewej stronie, a nie danych logowania Google Cloud Skills Boost. Uwaga: korzystanie z własnego konta Google Cloud w tym module może wiązać się z dodatkowymi opłatami.
  5. Na kolejnych stronach wykonaj następujące czynności:

    • Zaakceptuj Warunki korzystania z usługi.
    • Nie dodawaj opcji odzyskiwania ani uwierzytelniania dwuskładnikowego (ponieważ konto ma charakter tymczasowy).
    • Nie rejestruj się w bezpłatnych wersjach próbnych.

Poczekaj, aż na karcie otworzy się konsola Google Cloud.

Uwaga: aby wyświetlić menu z listą produktów i usług Google Cloud Console, w lewym górnym rogu kliknij menu nawigacyjne. Ikona menu nawigacyjnego

Aktywowanie Cloud Shell

Cloud Shell to maszyna wirtualna oferująca wiele narzędzi dla programistów. Zawiera stały katalog domowy o pojemności 5 GB i działa w Google Cloud. Dzięki wierszowi poleceń Cloud Shell zyskujesz dostęp do swoich zasobów Google Cloud.

  1. Kliknij Aktywuj Cloud Shell Ikona aktywowania Cloud Shell na górze konsoli Google Cloud.

Po połączeniu użytkownik od razu jest uwierzytelniony. Uruchomi się Twój projekt o identyfikatorze PROJECT_ID. Dane wyjściowe zawierają wiersz z zadeklarowanym identyfikatorem PROJECT_ID dla tej sesji:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud to narzędzie wiersza poleceń Google Cloud. Jest ono już zainstalowane w Cloud Shell i obsługuje funkcję autouzupełniania po naciśnięciu tabulatora.

  1. (Opcjonalnie) Aby wyświetlić listę aktywnych kont, użyj tego polecenia:
gcloud auth list
  1. Kliknij Autoryzuj.

  2. Dane wyjściowe powinny wyglądać tak:

Dane wyjściowe:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Opcjonalnie) Aby wyświetlić identyfikator projektu, użyj tego polecenia:
gcloud config list project

Dane wyjściowe:

[core] project = <project_ID>

Przykładowe dane wyjściowe:

[core] project = qwiklabs-gcp-44776a13dea667a6 Uwaga: pełną dokumentację gcloud w Google Cloud znajdziesz w opisie narzędzia wiersza poleceń gcloud.

Zadanie 1. Przygotowywanie środowiska

W tym module jest używany zestaw przykładów kodu i skryptów opracowany na potrzeby 2 wydania książki Data Science on the Google Cloud Platform (Badanie danych w Google Cloud Platform) wydawnictwa O'Reilly Media, Inc. Omówimy tutaj konfigurację Google Cloud SQL i zadania importowania danych przedstawione w pierwszej części 3 rozdziału tej książki, zatytułowanego „Creating Compelling Dashboards” (Tworzenie ciekawych paneli informacyjnych). Sklonujesz przykładowe repozytorium używane w rozdziale 2 z GitHub do Cloud Shell i tam będziesz wykonywać wszystkie zadania modułu.

Klonowanie repozytorium do Google Cloud

  1. Aby sklonować repozytorium, wpisz w Cloud Shell następujące polecenia:
git clone \ https://github.com/GoogleCloudPlatform/data-science-on-gcp/
  1. Przejdź do katalogu repozytorium:
cd data-science-on-gcp/03_sqlstudio
  1. Utwórz zmienne środowiskowe używane w dalszej części modułu, jedną dla swojego identyfikatora projektu, drugą dla zasobnika, który zawiera Twoje dane:
export PROJECT_ID=$(gcloud info --format='value(config.project)') export BUCKET=${PROJECT_ID}-ml
  1. Aby zebrać plik w zasobniku Cloud Storage, wpisz to polecenie:
gsutil cp create_table.sql \ gs://$BUCKET/create_table.sql

Zadanie 2. Tworzenie instancji Cloud SQL

  1. Aby utworzyć instancję Cloud SQL, wpisz następujące polecenia:
gcloud sql instances create flights \ --database-version=POSTGRES_13 --cpu=2 --memory=8GiB \ --region={{{project_0.default_region | "REGION"}}} --root-password=Passw0rd

Potrwa to kilka minut.

Testowanie ukończonego zadania

Kliknij Sprawdź postępy, aby zobaczyć stan realizacji zadania. Jeśli udało Ci się utworzyć instancję Cloud SQL, wyświetli się wynik.

Utworzenie instancji Cloud SQL
  1. Utwórz zmienną środowiskową z adresem IP Cloud Shell:
export ADDRESS=$(curl -s http://ipecho.net/plain)/32
  1. Wpisz na listę dozwolonych instancję Cloud Shell, przyznając jej dostęp do zarządzania Twoją instancją SQL.
gcloud sql instances patch flights --authorized-networks $ADDRESS
  1. Gdy pojawi się komunikat, naciśnij Y, aby zaakceptować zmianę.

Testowanie ukończonego zadania

Kliknij Sprawdź postępy, aby zobaczyć stan realizacji zadania. Jeśli udało Ci się zezwolić Cloud Shell na dostęp do instancji SQL, wyświetli się odpowiedni wynik.

Zezwolenie instancji Cloud Shell na dostęp do instancji SQL

Tworzenie bazy danych i tabeli

Aby zaimportować dane do tabeli Postgres, musisz najpierw utworzyć pustą bazę danych i tabelę za pomocą prawidłowego schematu.

  1. W konsoli Cloud, w Menu nawigacyjnym (Ikona menu nawigacyjnego) kliknij SQL .

  2. Aby otworzyć stronę z opisem instancji, kliknij nazwę instancji flights (loty).

  3. Z menu nawigacyjnego SQL wybierz Bazy danych.

  4. Kliknij Utwórz bazę danych.

  5. W oknie nowej bazy danych podaj jej nazwę jako bts.

  6. Kliknij Utwórz.

  7. Aby otworzyć stronę z opisem instancji, z menu nawigacyjnego SQL wybierz Przegląd.

  8. Na górze ekranu kliknij IMPORTUJ.

  9. W polu pliku w Cloud Storage kliknij Przeglądaj.

  10. W sekcji zasobników kliknij strzałkę przy nazwie Twojego zasobnika.

  11. Wybierz plik create_table.sql.

  12. Kliknij Wybierz.

  13. W sekcji Format pliku wybierz SQL.

  14. Wskaż bazę danych bts w swojej instancji Cloud SQL.

  15. Kliknij Importuj, aby zacząć import.

Po kilku sekundach zostanie utworzona pusta tabela.

Testowanie ukończonego zadania

Kliknij Sprawdź postępy, aby zobaczyć stan realizacji zadania. Jeśli udało Ci się utworzyć bazę danych bts i tabelę flights przy użyciu pliku create_table.sql, wyświetli się wynik.

Utworzenie bazy danych bts i tabeli flights za pomocą pliku create_table.sql

Zadanie 3. Dodawanie danych do instancji Cloud SQL

Masz już utworzoną pustą bazę danych i tabelę, więc teraz załaduj do tej tabeli pliki CSV. Wczytaj dane dotyczące stycznia, znajdując plik 201501.csv w swoim zasobniku i podając CSV jako format, bts jako bazę danych i flights jako tabelę.

  1. Na stronie instancji SQL kliknij IMPORTUJ.

  2. W polu pliku w Cloud Storage kliknij Przeglądaj, a następnie kliknij strzałkę obok nazwy Twojego zasobnika i wybierz 201501.csv.

  3. Kliknij Wybierz.

  4. Jako format pliku wybierz CSV.

  5. Wybierz bazę danych bts i wpisz flights jako swoją tabelę.

  6. Kliknij IMPORTUJ.

Zadanie 4. Interakcja z bazą danych

  1. Połącz się z instancją Cloud SQL z Cloud Shell za pomocą polecenia:
gcloud sql connect flights --user=postgres
  1. Gdy pojawi się prośba o podanie hasła, wpisz Passw0rd. Litery mogą nie być widoczne, gdy będziesz je wpisywać.

  2. W oknie, które się pokaże, połącz się z bazą danych bts:

\c bts;
  1. Gdy pojawi się prośba o podanie hasła, wpisz Passw0rd.

  2. Potem uruchom zapytanie, aby uzyskać listę 5 lotnisk o największym ruchu:

SELECT "Origin", COUNT(*) AS num_flights FROM flights GROUP BY "Origin" ORDER BY num_flights DESC LIMIT 5;

Zapytanie jest wydajne, ponieważ zbiór danych ma niewielki rozmiar (tylko dane ze stycznia), ale baza danych będzie działać coraz wolniej w miarę dodawania kolejnych miesięcy.

Relacyjne bazy danych są odpowiednie do mniejszych zbiorów danych, w których uruchamia się szybkie zapytania zwracające mały podzbiór danych. W przypadku większych baz danych dostosowujesz wydajność relacyjnej bazy danych, indeksując kolumny, które Cię interesują. Co więcej, ponieważ relacyjne bazy danych zwykle obsługują transakcje i gwarantują silną spójność, są świetnym wyborem w przypadku danych, które będą często aktualizowane.

Jednak relacyjna baza danych to nieodpowiedni wybór, jeśli:

  • Twoje dane są głównie tylko do odczytu,
  • rozmiar zbioru danych sięga terabajtów,
  • potrzebujesz skanowania całej tabeli (np. aby obliczyć maksymalną wartość kolumny) lub Twoje dane przychodzą w dużych ilościach.

Opisuje to przypadek użycia dotyczący opóźnień lotów. W tej sytuacji trzeba przejść z relacyjnej bazy danych na analityczną hurtownię danych, czyli BigQuery. Analityczna hurtownia danych umożliwi nam używanie SQL i poradzi sobie dużo lepiej z dużymi zbiorami danych oraz nieoczekiwanymi zapytaniami (to znaczy, że nie potrzebuje indeksowana kolumn).

Gratulacje!

Wiesz teraz jak tworzyć tabele i importować do Google Cloud SQL dane tekstowe, które zostały zapisane w Cloud Storage.

Kolejne kroki / Więcej informacji

Więcej propozycji:

Szkolenia i certyfikaty Google Cloud

…pomogą Ci wykorzystać wszystkie możliwości technologii Google Cloud. Nasze zajęcia obejmują umiejętności techniczne oraz sprawdzone metody, które ułatwią Ci szybką naukę i umożliwią jej kontynuację. Oferujemy szkolenia na poziomach od podstawowego po zaawansowany prowadzone w trybach wirtualnym, na żądanie i na żywo, dzięki czemu możesz dopasować program szkoleń do swojego napiętego harmonogramu. Certyfikaty umożliwią udokumentowanie i potwierdzenie Twoich umiejętności oraz doświadczenia w zakresie technologii Google Cloud.

Ostatnia aktualizacja instrukcji: 28 listopada 2023 r.

Ostatni test modułu: 28 listopada 2023 r.

Copyright 2024 Google LLC. Wszelkie prawa zastrzeżone. Google i logo Google są znakami towarowymi Google LLC. Wszelkie inne nazwy firm i produktów mogą być znakami towarowymi odpowiednich podmiotów, z którymi są powiązane.