Zadzwoń do nas: + 48 795 540 065
  • Polski
  • English

W dzisiejszym wpisie przedstawię jedną z ciekawszych usług udostępnionych przez firmę Google, która jest przydatna w tworzeniu naszych aplikacji. Google BigQuery zostało uruchomione w roku 2010. Usługa ta jest narzędziem służącym do analizy dużej ilości danych.

Na pierwszy rzut oka Google BigQuery nie wydaje się być rewolucyjne. W swoim działaniu przypomina nierelacyjną bazę danych, do której możemy wrzucać swoje dane i pobierać potrzebne fragmenty. Jest jednak kilka cech, które wyróżniają tę usługę. Główne jej zalety to:

  • zapytania w języku podobnym do SQL
  • bliblioteki API dla wiele języków i frameworków
  • duża prędkość działania na dużej ilości danych
  • cachowanie wyników zapytań

Wykorzystanie usługi BigQuery w naszych projektach dało wiele możliwości. Jesteśmy w stanie stworzyć aplikacje, do których działania konieczne jest wykorzystanie olbrzymiej liczby danych. Dobrze napisane API tej usługi powoduje, że stworzenie programu jest łatwiejsze, a sam program efektywniejszy.

Pierwszym naszym starciem z użyciem Google BigQuery była aplikacja przetwarzająca dane z plików CSV wrzucanych przez użytkowników. Ich liczba jest spora, użytkowników jest wiele, a same pliki mają duże rozmiary. Wgranie danych do Bigquery usprawniło przeszukiwanie plików, w których zostały zawarte te dane. Aplikacja w początkowej fazie tworzenia była zintegrowana z nierelacyjną bazą danych MongoDB. Rozwiązanie było mniej efektywne. Zastosowanie w BigQuery cachowania oraz optymalizacja zapytań tworzonych w dialekcie języka SQL spowodowały, że rozbieżność między czasem przetwarzania w obu rozwiązaniach coraz szybciej się powiększała na korzyść rozwiązania stworzonego przez Google. Szczególnie dobre wyniki widać przy dużej ilości danych.

Na oficjalnej stronie projektu przedstawione są przykładowe dane, które pozwalają stwierdzić efektywność rozwiązania. Poniżej pokazano czasy wyszukania 150 000 elementów z przykładowego zestawu danych publicdata:samples/wikipedia oraz czas ponownego dostępu do tego zbioru przez zastosowanie cache.

 

 Big Query Search

 

Big Query Search

Leave a reply

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

required