{"id":31936,"date":"2022-06-11T09:24:00","date_gmt":"2022-06-11T07:24:00","guid":{"rendered":"https:\/\/fotc.com\/bigquery-ce-este-tutorial\/"},"modified":"2023-05-11T10:02:03","modified_gmt":"2023-05-11T08:02:03","slug":"bigquery-ce-este-tutorial","status":"publish","type":"post","link":"https:\/\/fotc.com\/ro\/blog\/bigquery-ce-este-tutorial\/","title":{"rendered":"BigQuery \u2013 ce este \u0219i cum s\u0103 \u00eencepe\u021bi? [Tutorial]"},"content":{"rendered":"\n
Datele reprezint\u0103 noul aur – companiile \u0219i organiza\u021biile orientate spre dezvoltare sunt con\u0219tiente de acest lucru. Companiile con\u0219tiente analizeaz\u0103 procesele existente, fac modific\u0103ri \u0219i \u00eembun\u0103t\u0103\u021biri pe baza cifrelor. Unii merg mai departe – cu tool-uri precum BigQuery de la Google \u2013 profit\u00e2nd de oportunit\u0103\u021bile oferite de tehnologie, anticipeaz\u0103 tendin\u021bele, posibilele schimb\u0103ri de pe pia\u021b\u0103, efectele deciziilor de afaceri care \u00eenc\u0103 nu au fost luate.<\/span> Pe m\u0103sur\u0103 ce afacerea cre\u0219te, seturile de date se extind \u2013 gigaocte\u021bii se transform\u0103 \u00een teraocte\u021bi sau petaocte\u021bi. Pentru a men\u021bine un nivel adecvat al costurilor de \u00eentre\u021binere a instrumentului de analiz\u0103 \u0219i un timp relativ scurt de generare a rapoartelor, trebuie s\u0103 face\u021bi alegerea corect\u0103 \u00een ceea ce prive\u0219te tehnologia. \u00cen ajutor v\u0103 vine BigQuery \u2013 un serviciu dedicat efectu\u0103rii de analize BigData. Acesta angreneaz\u0103 mai multe instrumente de analiz\u0103, printre altele, popularul Google Analytics<\/strong>.<\/span><\/p>\n\n\n\n Acesta este un depozit de date scalabil \u00een cloud (cloud data warehouse). El permite deservirea a milioane de interog\u0103ri (query) \u0219i efectuarea de analize avansate de petabytes de date \u00een limbajul SQL<\/strong>, f\u0103r\u0103 a fi nevoie s\u0103 v\u0103 face\u021bi griji cu privire la \u00eentre\u021binerea costisitoare a unei infrastructurii avansate.<\/span><\/p>\n\n\n\n BigQuery este unul dintre serviciile disponibile \u00een <\/span>Google Cloud Platform (GCP)<\/span><\/a>.<\/span> Stocarea \u0219i procesarea seturilor de date se desf\u0103\u0219oar\u0103 \u00een cloud, pe o infrastructur\u0103 GCP stabil\u0103, sigur\u0103 \u0219i scalabil\u0103<\/strong> (aici ve\u021bi afla mai multe despre <\/span>ce este Google Cloud Platform \u0219i cum sus\u021bine afacerile<\/span><\/a>).<\/span><\/p>\n\n\n\n Cu ajutorul serviciului, pute\u021bi crea propriul instrument de analiz\u0103 pentru a urm\u0103ri dezvoltarea, procesele sau modific\u0103rile \u00een curs \u2013 de exemplu, \u00een interiorul sau \u00een jurul companiei. \u00cen combina\u021bie cu \u00eenv\u0103\u021barea automatizat\u0103 (ML \u2013 machine learning), permite construirea unui sistem care, de exemplu, va anticipa apari\u021bia diver\u0219ilor factori \u0219i va lua \u00een considerare efectele lor poten\u021biale. BigQuery v\u0103 poate ajuta, de asemenea, s\u0103 optimiza\u021bi performan\u021ba \u0219i costurile de \u00eentre\u021binere ale unui sistem de analiz\u0103 BigData existent.<\/span><\/p>\n\n\n\n BigQuery este un depozit de date \u00een cloud. Utiliz\u00e2nd serviciile Google Cloud Platform, v\u0103 pute\u021bi concentra pe scalarea afacerii \u0219i pe extragerea din analiz\u0103 a ceea ce este mai bun. Nu trebuie s\u0103 petrece\u021bi timp suplimentar \u0219i buget pentru men\u021binerea infrastructurii<\/strong>, efectuarea actualiz\u0103rilor sau asigurarea unui nivel adecvat de securitate a serverelor.<\/span><\/p>\n\n\n\n Pentru prelucrarea a terabytes de date BigQuery are nevoie de c\u00e2teva secunde, iar pentru un petabyte \u2013 de aprox. 3 minute. Depozitele (warehouses) proceseaz\u0103 seturi mari de date de c\u00e2teva zeci de ori mai rapid dec\u00e2t sistemele de baze de date. Acest lucru v\u0103 permite s\u0103 efectua\u021bi analize chiar \u0219i \u00een timp real \u0219i s\u0103 observa\u021bi modific\u0103rile \u00een timp real.<\/strong><\/span><\/p>\n\n\n\n Costul serviciului BigQuery se ajusteaz\u0103 la cerin\u021bele curente ale afacerii dvs. Ca \u0219i \u00een cazul GCP, se pl\u0103te\u0219te \u00een func\u021bie de consum<\/strong>. Costul de stocare a datelor (data storage) este de 20 USD\/TB. Dac\u0103 datele nu sunt prelucrate timp de 90 de zile sau mai mult, pachetul se modific\u0103 \u00een stocare pe termen lung, iar pre\u021bul serviciului scade cu 50%. Prelucrarea datelor cost\u0103 5 USD\/TB, iar primul terabyte \u00een fiecare lun\u0103 este gratuit.<\/span><\/p>\n\n\n\n Aceast\u0103 metod\u0103 de tarifare se traduce \u00eentr-un TCO (total cost of ownership) mai mic \u00een medie cu 30% pe parcursul a trei ani<\/strong> dec\u00e2t \u00een cazul altor solu\u021bii de analiz\u0103 BigData. <\/span><\/p>\n\n\n\n Pentru a utiliza BigQuery, nu este nevoie s\u0103 efectua\u021bi modific\u0103ri majore sau s\u0103 rescrie\u021bi codul surs\u0103.<\/strong> Asta pentru c\u0103 BigQuery accept\u0103 ANSI SQL:2011 \u0219i ofer\u0103 interfe\u021be software gratuite ODBC \u0219i JDBC.<\/span><\/p>\n\n\n\n Instrumentul efectueaz\u0103 un backup automat \u0219i stocheaz\u0103 istoricul modific\u0103rilor timp de 7 zile. Acest lucru faciliteaz\u0103 compararea rezultatelor cu perioada anterioar\u0103 sau restabilirea datelor.<\/span><\/p>\n\n\n\n Cu BigQuery<\/strong>, pute\u021bi analiza date provenite dintr-o varietate de surse \u2013 din Google Marketing Platform, Google Analytics, YouTube \u0219i sute de aplica\u021bii externe SaaS. De asemenea, pute\u021bi muta datele \u00een BigQuery din alte solu\u021bii de infrastructur\u0103 dec\u00e2t GCP.<\/span><\/p>\n\n\n\n Una dintre func\u021biile disponibile este BigQuery ML, dedicat\u0103 pentru crearea \u0219i dezvoltarea capacit\u0103\u021bii de \u00eenv\u0103\u021bare automatizat\u0103 folosind interog\u0103ri SQL standard. BigQuery ML \u00eembun\u0103t\u0103\u021be\u0219te viteza de dezvoltare a produselor care accept\u0103 \u00eenv\u0103\u021barea automatizat\u0103, reduc\u00e2nd \u00een acela\u0219i timp cerin\u021bele pentru scrierea codului surs\u0103 \u0219i mutarea datelor.<\/span><\/p>\n\n\n\n BigQuery este un instrument excelent pentru efectuarea de analize de afaceri (BI \u2013 business intelligence). Serviciul permite analizarea unor seturi uria\u0219e de date \u0219i crearea de rapoarte extinse \u00een c\u00e2teva secunde<\/strong>. \u00cen acela\u0219i mod, sprijin\u0103 crearea de rapoarte “ad hoc” \u2013 adic\u0103 rapoarte care includ un set definit de date \u0219i nu necesit\u0103 implicarea departamentului de analize sau IT pentru a preg\u0103ti un sumar.<\/span><\/p>\n\n\n\n \u00cen ambele cazuri, rapoartele pot fi prezentate utiliz\u00e2nd instrumente de vizualizare a datelor, cum ar fi Google Data Studio, Looker \u0219i Tableau.<\/span><\/p>\n\n\n\n Iat\u0103 c\u00e2teva exemple de utilizare a capacit\u0103\u021bilor BigQuery de c\u0103tre companii bine-cunoscute:<\/span><\/p>\n\n\n\n Pentru a \u00eencepe utilizarea BigQuery, trebuie s\u0103 ave\u021bi un cont pe Google Cloud Platform<\/strong>. De asemenea, trebuie s\u0103 cuno\u0219te\u021bi limbajul SQL<\/strong>.<\/span><\/p>\n\n\n\n Accesa\u021bi site-ul <\/span>consolei Google.<\/span><\/a> <\/span><\/p>\n\n\n\n Selecta\u021bi proiectul la care ve\u021bi lucra. Lista de proiecte se afl\u0103 \u00een meniul vertical de l\u00e2ng\u0103 titlul Google Cloud Platform<\/strong>.<\/span><\/p>\n\n\n\n Dup\u0103 ce a\u021bi selectat un proiect, activa\u021bi Cloudshell<\/strong> \u00een col\u021bul din dreapta sus.<\/span><\/p>\n\n\n\n Ve\u021bi ob\u021bine aceast\u0103 vizualizare:<\/p>\n\n\n\n Pentru a vedea cum arat\u0103 baza de date \u0219i pentru a revizui informa\u021biile generale (schem\u0103, num\u0103r de r\u00e2nduri, dimensiuni \u00een octe\u021bi), utiliza\u021bi urm\u0103toarea comand\u0103:<\/p>\n\n\n Rezultatul interog\u0103rii va ar\u0103ta astfel:<\/p>\n\n\n\n \u00cen comenzile bq, vom folosi steagul \u2013use_leagcy_sql<\/strong> – acesta seteaz\u0103 SQL standard drept limb\u0103 de interogare.<\/p>\n\n\n\n Pentru a valida \u0219i a verifica interogarea (query), este \u00eendeajuns s\u0103 ad\u0103uga\u021bi un steag dry_run. Iat\u0103 cum arat\u0103 un exemplu de interogare cu acest steag:<\/span><\/p>\n\n\n Dac\u0103 interogarea trimis\u0103 c\u0103tre baza de date este corect\u0103, pute\u021bi vedea r\u0103spunsul acesteia elimin\u00e2nd steagul \u2013dry_run<\/strong><\/span><\/p>\n\n\n Acesta este un exemplu de rezultat al unei astfel de interog\u0103ri:<\/span><\/p>\n\n\n\n Pentru a extrage anumite date din \u00eenregistr\u0103ri, poate fi utilizat\u0103 clauza where care selecteaz\u0103 datele \u00een func\u021bie de o anumit\u0103 valoare, regul\u0103 sau expresie regulat\u0103. Dac\u0103 dori\u021bi s\u0103 extrage\u021bi din baza de date numai \u00eenregistr\u0103rile care con\u021bin \u00een coloana word<\/strong> cuv\u00e2ntul <\/span>raising<\/span><\/i>, este \u00eendeajuns s\u0103 utiliza\u021bi urm\u0103toarea interogare:<\/span><\/p>\n\n\n Mai \u00eent\u00e2i, valida\u021bi interogarea.<\/span><\/p>\n\n\n\n Apoi, efectua\u021bi comanda de mai jos, f\u0103r\u0103 \u2013dry_run:<\/p>\n\n\n Dac\u0103 dori\u021bi s\u0103 afla\u021bi c\u00e2te asemenea \u00eenregistr\u0103ri sunt \u00een baza de date, utiliza\u021bi func\u021bia de agregare COUNT (\u00eenregistrarea pe care dori\u021bi s\u0103 o num\u0103ra\u021bi)<\/strong>. Interogarea ar trebui s\u0103 arate \u00een modul urm\u0103tor:<\/p>\n\n\n S\u0103 presupunem c\u0103 dori\u021bi s\u0103 g\u0103si\u021bi toate pozi\u021biile care con\u021bin cuv\u00e2ntul <\/span>raisin.<\/span><\/i> \u00cen acest caz, utiliza\u021bi cuv\u00e2ntul cheie LIKE care v\u0103 va ajuta s\u0103 c\u0103uta\u021bi dup\u0103 cuv\u00e2ntul-cheie specificat.<\/span><\/p>\n\n\n\n Dac\u0103 plasa\u021bi semnul %<\/strong> \u00eenaintea cuv\u00e2ntului de c\u0103utare, sistemul va include, de asemenea, rezultate cu prefix, de exemplu, dispraisin. Dac\u0103 ad\u0103uga\u021bi acest caracter \u00een ambele p\u0103r\u021bi, de exemplu, %raisin%<\/strong>, ve\u021bi ob\u021bine rezultate care includ prefix \u0219i sufix, de exemplu, dispraisingly%<\/strong><\/span><\/p>\n\n\n\n C\u00e2nd ave\u021bi mai multe coloane cu o func\u021bie de agregare, trebuie s\u0103 indica\u021bi comanda GROUP BY<\/strong> care va defini \u00een func\u021bie de ce coloane dori\u021bi s\u0103 grupa\u021bi r\u00e2ndurile. <\/span><\/p>\n\n\n Rezultatul interog\u0103rii este dup\u0103 urmeaz\u0103:<\/span><\/p>\n\n\n\n Poten\u021bialul BigQuery poate fi descoperit cel mai bine \u00een practic\u0103. Dac\u0103 dori\u021bi s\u0103 afla\u021bi ce posibilit\u0103\u021bi ofer\u0103 solu\u021biile Google Cloud (inclusiv serviciul de analiz\u0103 descris) companiei dvs., <\/span>contacta\u021bi un partener certificat Google Cloud Premier Partner.<\/span><\/a> <\/span><\/p>\n\n\n\n Ve\u021bi primi un voucher \u00een valoare de 500 USD<\/strong> pentru primele activit\u0103\u021bi pe Google Cloud Platform, iar speciali\u0219tii FOTC v\u0103 vor ajuta s\u0103 descoperi\u021bi poten\u021bialul BigQuery. <\/span><\/p>\n","protected":false},"excerpt":{"rendered":" Datele reprezint\u0103 noul aur – companiile \u0219i organiza\u021biile orientate spre dezvoltare sunt con\u0219tiente de acest lucru. Companiile con\u0219tiente analizeaz\u0103 procesele existente, fac modific\u0103ri \u0219i \u00eembun\u0103t\u0103\u021biri pe baza cifrelor. Unii merg mai departe – cu tool-uri precum BigQuery de la Google \u2013 profit\u00e2nd de oportunit\u0103\u021bile oferite de tehnologie, anticipeaz\u0103 tendin\u021bele, posibilele schimb\u0103ri de pe pia\u021b\u0103, efectele…<\/p>\n","protected":false},"author":13,"featured_media":20340,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":7,"_editorskit_typography_data":[],"_editorskit_blocks_typography":"","_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}"},"categories":[562],"tags":[192,193,139],"yoast_head":"\n
\n<\/p>\n\n\n\n\n\n\n\nCe este BigQuery<\/span> de la Google?<\/span><\/h2>\n\n\n\n
Tehnologie f\u0103r\u0103 servere<\/span><\/h3>\n\n\n\n
Analiz\u0103 instantanee<\/span><\/h3>\n\n\n\n
Costuri flexibile<\/span><\/h3>\n\n\n\n
F\u0103r\u0103 interferen\u021be \u00een codul surs\u0103<\/span><\/h3>\n\n\n\n
Copie de rezerv\u0103 automat\u0103<\/span><\/h3>\n\n\n\n
Analiza datelor din diferite surse<\/span><\/h3>\n\n\n\n
Suport pentru machine learning (ML)<\/span><\/h3>\n\n\n\n
Analize de afaceri (BI)<\/span><\/h3>\n\n\n\n
Exemple de utilizare BigQuery<\/span><\/h2>\n\n\n\n
Cum s\u0103 \u00eencep cu BigQuery? Ghid pas cu pas<\/h2>\n\n\n\n
<\/figure>\n\n\n\n
<\/figure>\n\n\n\n
<\/figure>\n\n\n\n
bq show bigquery-public-data:samples.shakespeare<\/pre>\n\n\n\n
<\/figure>\n\n\n\n
bq query --use_legacy_sql=false --dry_run \\\n'SELECT\nword\nFROM\n`bigquery-public-data`.samples.shakespeare\nLIMIT 5'<\/pre>\n\n\n\n
<\/figure>\n\n\n\n
bq query --use_legacy_sql=false \\\n'SELECT\nword\nFROM\n`bigquery-public-data`.samples.shakespeare\nLIMIT 5'<\/pre>\n\n\n\n
<\/figure>\n\n\n\n
bq query --use_legacy_sql=false --dry_run \\\n'SELECT\nword\nFROM\n`bigquery-public-data`.samples.shakespeare\nWHERE\nword = raising\nLIMIT 5'<\/pre>\n\n\n\n
<\/figure>\n\n\n\n
bq query --use_legacy_sql=false \\\n'SELECT\nword\nFROM\n`bigquery-public-data`.samples.shakespeare\nWHERE\nword = raising\nLIMIT 5'<\/pre>\n\n\n\n
<\/figure>\n\n\n\n
bq query --use_legacy_sql=false \\\n'SELECT\nCOUNT(word) as num_of_words\nFROM\n`bigquery-public-data`.samples.shakespeare\nWHERE\nword = raising\u2019<\/pre>\n\n\n\n
\nFiec\u0103rui tabel i se poate ad\u0103uga propria denumire folosind cuv\u00e2ntul cheie as<\/strong>. \u00cen acest caz, avem un nume care descrie ce a fost agregat \u00een coloana dat\u0103. Rezultatul interog\u0103rii arat\u0103 dup\u0103 cum urmeaz\u0103:
\n<\/span><\/p>\n\n\n\n<\/figure>\n\n\n\n
bq query --use_legacy_sql=false \\\n'SELECT\nword,\nCOUNT(word_count) AS count\nFROM\n`bigquery-public-data`.samples.shakespeare\nWHERE\nword LIKE %raisin%\nGROUP BY\nword'<\/pre>\n\n\n\n
<\/figure>\n\n\n\n
Afla\u021bi posibilit\u0103\u021bile GCP \u0219i BigQuery<\/span><\/h2>\n\n\n\n