---
title: "Korzystanie z Google Cloud SQL"
date: "2016-01-06"
categories: 
  - "data-integration"
  - "mobile"
  - "software"
  - "technology"
tags: 
  - "baseball"
  - "cloud-sql"
  - "database"
  - "google-cloud-sql"
  - "lahmans-baseball-database"
  - "sql"
description: Odkryj, jak skonfigurować i wykorzystać Google Cloud SQL w połączeniu z bazą danych Lahman's Baseball, aby ulepszyć serwery aplikacji mobilnych i możliwości analizy danych.
---
Status: #blog

Tags:  #baseball #cloud-sql #database #google-cloud-sql #lahmans-baseball-database #sql

Categories: [data-integration](/blog/pl/category/data-integration.md) 
# Korzystanie z Google Cloud SQL

Google [ostatnio ogłoszono](http://googlecloudplatform.blogspot.com/2015/12/the-next-generation-of-managed-MySQL-offerings-on-Cloud-SQL.html) Chcieliśmy przetestować najnowszą generację rozwiązań zarządzanych baz danych MySQL dostępnych w usłudze Cloud SQL, aby stworzyć bazę danych SQL działającą w chmurze, którą następnie moglibyśmy wykorzystać jako podstawę dla aplikacji mobilnych, a nawet do zaawansowanej analizy danych z naszych komputerów stacjonarnych.

Według firmy Google, dwa główne cele drugiej generacji Cloud SQL to przede wszystkim: lepsza _występ_ i _skalowalność_ za dolara. Wygląda na to, że udało im się osiągnąć te cele: druga generacja Cloud SQL jest ponad siedem razy szybsza niż pierwsza. Ponadto, obsługuje do 10 TB danych, 15 000 operacji wejścia/wyjścia na sekundę (IOPS) i 104 GB pamięci RAM na instancję – co znacznie przewyższa możliwości pierwszej generacji. Wydaje się więc, że jest to idealne, skalowalne rozwiązanie bazodanowe w chmurze, przeznaczone dla aplikacji mobilnych.

![Dane w chmurze](/blog/images/shutterstock_68942902.jpg)

<!--more-->If you follow the instructions on the the [Google blog post](http://googlecloudplatform.blogspot.com/2015/12/the-next-generation-of-managed-MySQL-offerings-on-Cloud-SQL.html), you will first have to create a trial account for Google Cloud. Then, once you are logged into the Google Developer Console, click on the top-left menu button and select SQL under the storage section. This will enable you to create a new second generation Cloud SQL instance:

![Konsola Google Cloud SQL](/blog/images/GoogleCloudSQLConsole-1030x880.png)

Zdecydowanie zalecamy zmianę hasła administratora oraz zezwalanie na dostęp do instancji w chmurze tylko z autoryzowanych sieci, które będą hostować urządzenia programistyczne lub serwery backendowe aplikacji mobilnej, którą tworzycie. Na przykład, w przyszłym wpisie na blogu omówimy tworzenie aplikacji mobilnej w oparciu o tę bazę danych, a serwer backendowy [MobileTogether](https://www.altova.com/pl/mobiletogether/server.html), który zapewni wszystkie funkcje serwerowe i przepływ pracy dla naszej aplikacji mobilnej, będzie musiał mieć dostęp do tej instancji Cloud SQL.

Aby korzystać z instancji Cloud SQL z komputera deweloperskiego, należy [pobrać narzędzia MySQL](http://dev.mysql.com/downloads/) przeznaczone dla danego systemu, co umożliwi korzystanie z narzędzia wiersza poleceń **mysql**. Ponadto, aby korzystać z bazy danych Cloud SQL z innych aplikacji na komputerze, należy pobrać odpowiednie [sterowniki MySQL](http://dev.mysql.com/downloads/connector/). W tym wpisie na blogu będziemy korzystać z [Altova DatabaseSpy](https://www.altova.com/pl/databasespy.html) do uzyskiwania dostępu do instancji SQL, przesyłania danych, a następnie wykonywania analiz, dlatego należy [pobrać sterownik MySQL Connector/ODBC dla systemu Windows](http://dev.mysql.com/downloads/connector/odbc/). Mówiąc krótko, DatabaseSpy jest podobny do Toad, ale umożliwia łączenie się z wieloma różnymi instancjami baz danych na różnych serwerach baz danych jednocześnie. Dzięki temu można mieć jedno połączenie z Cloud SQL, jedno połączenie z lokalnym serwerem SQL Server i trzecie połączenie z bazą danych Oracle – wszystko w ramach jednego środowiska pracy. To bardzo przydatne.

Ważna uwaga: upewnij się, że pobierasz odpowiedni sterownik Connector/ODBC. Jeśli korzystasz z 64-bitowej wersji programu DatabaseSpy, będziesz również potrzebować 64-bitowej wersji sterownika MySQL Connector/ODBC. A jeszcze lepiej, możesz pobrać zarówno 32-bitową, jak i 64-bitową wersję Connector/ODBC i zainstalować je obie – wtedy będziesz mógł korzystać z Cloud SQL zarówno z 32-bitowych, jak i 64-bitowych programów na swoim komputerze.

Aby wypełnić naszą instancję Cloud SQL danymi przydatnymi do eksperymentów i dalszej analizy, pobraliśmy doskonałą bazę danych baseballowej [Lahman's Baseball Database](http://www.seanlahman.com/baseball-archive/statistics/), która jest wygodnie dostępna jako skompresowany plik MySQL. Po pobraniu tego pliku na nasz komputer, otrzymaliśmy kompletny opis tabel bazy danych SQL, a także wszystkie dane – wszystko w jednym pliku SQL, co ułatwia jego załadowanie do naszej instancji Cloud SQL.

Pierwszym krokiem jest [Utwórz nową bazę danych w usłudze Cloud SQL](https://cloud.google.com/sql/docs/create-database) Na przykład, można to zrobić za pomocą narzędzia wiersza poleceń mysql, przez konsolę programistyczną Google lub za pomocą cURL – więcej szczegółów można znaleźć w linku na początku tego akapitu. Nazwiemy tę bazę danych "lahman".

Teraz możemy połączyć się z tą bazą danych za pomocą programu DatabaseSpy, wybierając opcję "Połącz się z bazą danych" i postępując zgodnie z instrukcjami wyświetlanymi w oknie konfiguracji połączenia. Najpierw wybieramy MySQL jako technologię bazy danych:

![Połączenie z Google Cloud SQL](/blog/images/GoogleCloudSQLConnect1.png)

Następnie potwierdzamy użycie sterownika MySQL Connector/ODBC, który wcześniej pobraliśmy

![Google Cloud SQL: Połączenie nr 2](/blog/images/GoogleCloudSQLConnect2.png)

I na koniec, ale nie mniej ważne, podajemy adres IP, nazwę użytkownika i hasło naszej instancji Cloud SQL, a następnie klikamy przycisk "Testuj", aby sprawdzić połączenie. Jeśli to się powiedzie, możemy teraz utworzyć źródło danych, nadając mu nazwę, oraz określić bazę danych "lahman", którą wcześniej utworzyliśmy

![Google Cloud SQL: Połączenie 3](/blog/images/GoogleCloudSQLConnect3.png)

Teraz możemy przesłać wszystkie dane do tabel w naszej nowej bazie danych. W tym celu po prostu otwieramy plik SQL zawierający dane z bazy danych Lahman Baseball, który wcześniej pobraliśmy i rozpakowaliśmy. Wygląda on w programie DatabaseSpy w następujący sposób:

![LahmanSQLdump](/blog/images/LahmanSQLdump-1030x854.png)

Jak widać, plik SQL zawierający dane z tej bazy danych zawiera wszystkie niezbędne polecenia do odtworzenia wszystkich tabel na naszej nowej instancji Cloud SQL. Teraz wystarczy kliknąć przycisk "Wykonaj" i poczekać. W zależności od prędkości połączenia internetowego, ten proces może potrwać pewien czas, ponieważ teraz tworzymy 24 tabele zawierające bardzo szczegółowe statystyki baseballowe od 1871 do 2014 roku – niektóre z nich zawierają ponad 160 000 wierszy. W moim przypadku proces ten trwał około 8 minut.

Teraz można kliknąć przycisk "Odśwież" w przeglądarce baz danych w programie DatabaseSpy, a następnie przejrzeć wszystkie tabele oraz dane zawarte w nich [Struktura bazy danych Lahman](http://seanlahman.com/files/database/readme2014.txt). Można wykorzystać tę bazę danych do obliczania ciekawych danych historycznych, przeprowadzania analiz statystycznych oraz stosowania innych narzędzi, które są często używane w [Sabermetryka](https://en.wikipedia.org/wiki/Sabermetrics) aby lepiej ocenić jakość zawodników.

Przykładowo, przeanalizujemy procent homerunów (HR) zdobytych przez [Davida Ortiza](http://www.baseball-reference.com/players/o/ortizda01.shtml) w stosunku do liczby jego występów przy pałce (AB) w trakcie całej jego kariery i przedstawimy to jako funkcję jego wieku. Informacje o skuteczności danego zawodnika przy pałce można znaleźć w tabeli "Batting", a jego imię, data urodzenia itp. w tabeli "Master". Połączenie tych dwóch tabel w SQL i wybór danych dla Davida Ortiza jest proste, a następnie możemy obliczyć jego statystykę homerunów w trakcie kariery jako HR/AB i przedstawić ją w formie wykresu w zależności od jego wieku w danym roku:

```
SELECT yearID-birthYear AS Age, HR/AB AS CareerHRTrajectory FROM Batting, `Master` 
WHERE Batting.playerID = `Master`.playerID AND nameLast='Ortiz' AND nameFirst='David'
ORDER BY Age ASC
```

Po kliknięciu przycisku "Wykonaj", zapytanie jest wysyłane do instancji Cloud SQL, a wynikowe dane są niemal natychmiast zwracane w formie tabeli. Następnie można kliknąć przycisk "Wykres" w widoku tabeli z wynikami, aby wyświetlić dane w formie wykresu i przedstawić trajektorię rozwoju kariery w odniesieniu do wieku danej osoby

![DBSpy dla Google Cloud SQL](/blog/images/DBSpyGoogleCloudSQL-1030x863.png)

Jak widać, podłączenie się do nowych instancji Google Cloud SQL i ich wykorzystanie jest bardzo proste, zarówno z poziomu programu Altova DatabaseSpy, jak i z każdego innego narzędzia dla programistów firmy Altova, w tym XMLSpy, MapForce, MobileTogether, StyleVision i UModel. Ponadto, można łatwo wykorzystywać instancje Cloud SQL z serwera MapForce do projektów integracji i konwersji danych.

W kolejnym wpisie na blogu pokażemy, jak połączyć się z tą instancją Cloud SQL z aplikacji mobilnej i jak łatwo można stworzyć wygodny interfejs aplikacji mobilnej, korzystając z bazy danych Lahman dotyczącej baseballu.
