Dane to nowe złoto – zdają sobie z tego sprawę firmy i organizacje nastawione na rozwój. Świadome biznesy prowadzą analizę istniejących procesów, wprowadzają zmiany i ulepszenia w oparciu o liczby. Niektóre idą dalej – korzystając z możliwości, jakie daje technologia, przewidują trendy, prawdopodobne zmiany na rynku, skutki jeszcze niepodjętych decyzji biznesowych.
Wraz z rozwojem biznesu poszerzają się zbiory danych – gigabajty zamieniają się w terabajty czy petabajty. By zachować odpowiedni poziom kosztów utrzymania narzędzia analitycznego oraz niedługi czas generowania raportów, należy zadbać o odpowiedni dobór technologii. Z nieocenioną pomocą przychodzi BigQuery – usługa dedykowana prowadzeniu analiz BigData, napędzająca wiele narzędzi analitycznych, między innymi popularne Google Analytics.
Co to jest BigQuery od Google?
To skalowalna hurtownia danych w chmurze (cloud data warehouse). Pozwala obsłużyć miliony zapytań (query) oraz prowadzić zaawansowaną analizę petabajtów danych w języku SQL, bez konieczności zamartwiania się kosztownym utrzymaniem zaawansowanej infrastruktury.
BigQuery jest jedną z usług dostępnych w Google Cloud Platform (GCP). Przechowywanie oraz procesowanie zestawów danych odbywa się w chmurze, na stabilnej, bezpiecznej i skalowalnej infrastrukturze GCP (tutaj dowiesz się więcej o tym, co to jest Google Cloud Platform i w jaki sposób wspiera biznes).
Z pomocą usługi można stworzyć własne narzędzie analityczne, które posłuży śledzeniu rozwoju, procesów czy zachodzących zmian – na przykład wewnątrz firmy lub wokół niej. W połączeniu z uczeniem maszynowym (ML – machine learning) pozwala zbudować system, który, przykładowo, będzie przewidywał wystąpienie różnych czynników oraz uwzględniał ich potencjalne skutki. BigQuery może również pomóc w optymalizacji wydajności oraz kosztów utrzymania już istniejącego systemu analizy BigData.
Bezserwerowa technologia
BigQuery jest hurtownią danych w chmurze. Korzystając z usług Google Cloud Platform, można skupić się na skalowaniu biznesu i wyciąganiu z analityki tego, co najlepsze. Nie trzeba poświęcać dodatkowego czasu i budżetu na utrzymanie infrastruktury, prowadzenie aktualizacji czy zapewnienie odpowiedniego poziomu bezpieczeństwa serwerów.
Natychmiastowa analiza
Przetworzenie terabajtów danych zajmuje BigQuery sekundy, a jednego petabajta – około 3 minut. Hurtownie (warehouses) procesują duże zestawy danych nawet kilkudziesięciokrotnie szybciej niż systemy bazodanowe. Dzięki temu analitykę można prowadzić nawet w czasie rzeczywistym i obserwować zmiany “na żywo”.
Elastyczne koszty
Koszt usługi BigQuery dopasowuje się do aktualnych wymagań biznesowych. Jak w przypadku samego GCP, płaci się za zużycie. Przechowywanie danych (data storage) to koszt 20 USD/TB. Jeśli dane nie są przetwarzane przez 90 dni lub dłużej, pakiet zmienia się na długoterminowe przechowywanie (long-term storage), a cena usługi spada o 50%. Przetwarzanie danych to koszt 5 USD/TB, a pierwszy terabajt w każdym miesiącu jest darmowy.
Taki sposób wykonywania opłat przekłada się na TCO (total cost of ownership) niższe o średnio 30% w skali trzech lat niż w przypadku innych rozwiązań analizy BigData.
Brak ingerencji w kod źródłowy
Żeby korzystać z BigQuery, nie ma potrzeby wprowadzania dużych zmian czy przepisywania kodu źródłowego. To dzięki temu, że BigQuery wspiera standard ANSI SQL:2011 oraz zapewnia bezpłatnie interfejsy programowania ODBC i JDBC.
Automatyczna kopia zapasowa
Narzędzie wykonuje automatyczną kopię zapasową oraz przechowuje historię zmian przez 7 dni. Dzięki temu można łatwo porównać wyniki z poprzednim okresem lub przywrócić dane.
Analiza danych z różnych źródeł
Za pomocą BigQuery można prowadzić analizę danych pochodzących z różnych źródeł – z Google Marketing Platform, Google Analytics, YouTube oraz setek zewnętrznych aplikacji SaaS. Dane można też przenosić do BigQuery z rozwiązań infrastrukturalnych innych niż GCP.
Wsparcie dla machine learning (ML)
Jedną z dostępnych funkcji jest BigQuery ML, dedykowana tworzeniu i rozwijaniu możliwości uczenia maszynowego przy użyciu standardowych zapytań SQL. BigQuery ML zwiększa szybkość rozwoju produktów uwzględniających machine learning, ograniczając przy tym wymagania dotyczące pisania kodu źródłowego i przenoszenia danych.
Analityka biznesowa (BI)
BigQuery jest doskonałym narzędziem do prowadzenia analityki biznesowej (BI – business intelligence). Usługa pozwala analizować ogromne zbiory danych i tworzyć w ciągu kilku sekund rozbudowane raporty. Tak samo wspiera tworzenie raportów “ad hoc” – czyli takich, które obejmują pewien wycinek danych i nie wymagają angażowania działu analitycznego czy IT do przygotowania podsumowania.
W obu przypadkach raporty można przedstawić za pomocą narzędzi do wizualizacji danych takich jak Google Data Studio, Looker czy Tableau.
Zobacz też:
-
Cloud SQL, czyli baza danych w chmurze. Czym jest i dlaczego warto z niej korzystać?
-
Tworzenie własnego programu do backupu bazy danych MySQL na GCP [Node.js + cron]
Przykłady użycia BigQuery
Oto przykłady, jak znane firmy wykorzystują możliwości BigQuery:
- UPS zbiera codziennie dane na temat setek tysięcy przesyłek – między innymi o ich wadze, wymiarach, lokalizacji. Dzięki wykorzystaniu możliwości machine learning i analizy danych, firma jest w stanie bezbłędnie określić, jak załadować samochody dostawcze czy kontenery, by jak najbardziej zwiększyć efektywność. System pozwala też przygotować się do okresów zwiększonego ruchu – na przykład wokół Świąt;
- 20th Century Fox korzysta z usług Google Cloud, w tym BigQuery i możliwości machine learning. Tworzy wzorce preferencji widzów i poddaje analizom zwiastuny filmów, by określić, jaką szansę powodzenia wśród odbiorców będzie miała dana produkcja;
- Safari Books Online to internetowa biblioteka z milionami użytkowników, składająca się z ponad 30 tysięcy książek i filmów. Safari Books Online korzysta z BigQuery, by obsłużyć już posiadane dane oraz by w jak najlepszy sposób dopasować propozycje tytułów i najlepsze oferty pod konkretnych czytelników;
- Dow Jones (DJIA) to jeden z największych indeksów giełdowych, w skład którego wchodzą takie spółki jak Apple, Amazon czy Boeing. Dow, wykorzystując BigQuery i ML, tworzy platformę Data, News & Analytics Platform (DNA), która pozwala firmom prowadzić analizę skutków wydarzeń – na przykład, jakie zmiany na giełdzie wywołał huragan Irma;
- Spotify, z pomocą BigQuery sprawia, że każdy użytkownik (a miesięcznie z platformy korzysta blisko 300 mln osób) otrzymuje propozycje spersonalizowanych playlist, które mogą zmienić się w ciągu godzin – w zależności od słuchanych kawałków.
Chcesz sprawdzić, czy Twoja firma jest gotowa na migrację do chmury? Weź udział w naszym badaniu i otrzymaj dedykowany raport, oceniający gotowość na cyfrową transformację: Are You Cloud Ready?
Jak zacząć z BigQuery? Poradnik krok po kroku
Żeby zacząć korzystać z BigQuery, musisz posiadać konto na Google Cloud Platform (tutaj znajduje się poradnik, jak założyć i skonfigurować konto na GCP). Potrzebna jest Ci też znajomość SQL.
Wejdź na stronę konsoli Google.
Wybierz projekt, na którym będziesz pracować. Lista projektów znajduje się w rozwijanym menu obok nagłówka Google Cloud Platform.
Po wybraniu projektu włącz Cloudshell w prawym górnym rogu.
Otrzymasz taki widok:
Aby sprawdzić, jak wygląda baza danych oraz przejrzeć ogólne informacje (schemat, ilość wierszy, wagę w bajtach), użyj poniższej komendy:
bq show bigquery-public-data:samples.shakespeare
Tak będzie wyglądał rezultat wywołania:
W komendach bq będziemy używać flagi –use_leagcy_sql – ustawia ona standardowy SQL jako język zapytań.
Aby zwalidować i sprawdzić zapytanie (query), wystarczy dodać flagę dry_run. Tak wygląda przykładowe zapytanie z użyciem tej flagi:
bq query --use_legacy_sql=false --dry_run \ 'SELECT word FROM `bigquery-public-data`.samples.shakespeare LIMIT 5'
Jeśli zapytanie wysłane do bazy danych jest prawidłowe, można zobaczyć jego efekt usuwając flagę –dry_run
bq query --use_legacy_sql=false \ 'SELECT word FROM `bigquery-public-data`.samples.shakespeare LIMIT 5'
Tak wygląda przykładowy wynik takiego zapytania:
Aby wyodrębnić konkretne dane z rekordów, można użyć klauzuli where, która prowadzi selekcję według konkretnej wartości, reguły lub wyrażenia regularnego. Jeśli chcemy wyodrębnić z bazy tylko rekordy, które zawierają w kolumnie word słowo raising, wystarczy użyć poniższego zapytania:
bq query --use_legacy_sql=false --dry_run \ 'SELECT word FROM `bigquery-public-data`.samples.shakespeare WHERE word = "raising" LIMIT 5'
W pierwszej kolejności należy przeprowadzić walidację zapytania.
Następnie odpalić poniższą komendę, bez –dry_run:
bq query --use_legacy_sql=false \ 'SELECT word FROM `bigquery-public-data`.samples.shakespeare WHERE word = "raising" LIMIT 5'
Jeśli chcemy sprawdzić, ile takich rekordów jest w bazie, należy użyć funkcji agregującej COUNT(rekord, który chcemy zliczyć). Zapytanie powinno wyglądać następująco:
bq query --use_legacy_sql=false \ 'SELECT COUNT(word) as num_of_words FROM `bigquery-public-data`.samples.shakespeare WHERE word = "raising"’
Każdej tabeli można dodać własną nazwę używając słowa kluczowego as. W tym przypadku mamy nazwę opisującą, co zostało zagregowane w danej kolumnie. Wynik zapytania wygląda następująco:
Załóżmy, że chcemy znaleźć wszystkie pozycje, które zawierają w sobie wyraz raisin. W tym przypadku należy użyć słowa kluczowego LIKE, które pomoże szukać według podanego klucza.
Jeśli przed szukanym wyrazem postawimy znak %, system uwzględni też wyniki z prefiksem, np. dispraisin. Jeśli dodamy znak z obu stron, np. %raisin%, dostaniemy wyniki uwzględniające prefiks i sufiks, np. dispraisingly.
Gdy posiadamy więcej niż jedną kolumnę z funkcją agregującą, musimy wskazać polecaniem GROUP BY, według której kolumny chcemy grupować wiersze.
bq query --use_legacy_sql=false \ 'SELECT word, COUNT(word_count) AS count FROM `bigquery-public-data`.samples.shakespeare WHERE word LIKE "%raisin%" GROUP BY word'
Wynik zapytania wygląda następująco:
Sprawdź za darmo Google Cloud Platform i BigQuery
O potencjale BigQuery najlepiej przekonać się w praktyce. Jeśli chcesz dowiedzieć się, jakie możliwości Tobie oraz Twojemu biznesowi dają rozwiązania Google Cloud (w tym opisywana usługa analityczna), skontaktuj się z certyfikowanym Google Cloud Premier Partner.
Uzyskasz voucher o wysokości 500 USD na pierwsze działania na Google Cloud Platform, a specjaliści FOTC pomogą Ci odkryć potencjał BigQuery.