Çawa BigQuery-ya Google-ê analîza daneyê demokratîk kir. Beş 1

Silav Habr! Qeydkirina ji bo qursek nû niha li OTUS vekirî ye "Endezyar Daneyên". Li hêviya destpêkirina qursê, me bi kevneşopî ji we re wergerek materyalek balkêş amade kir.

Her roj ji sed mîlyonî zêdetir kes serdana Twitterê dikin da ku bizanin ka li cîhanê çi diqewime û li ser wê nîqaş bikin. Her tweet û her çalakiya bikarhênerek din bûyerek çêdike ku ji bo analîzkirina daneya navxweyî ya Twitter-ê heye. Bi sedan karmend van daneyan analîz û xuyang dikin, û başkirina ezmûna wan ji bo tîmê Platforma Daneyên Twitter-ê pêşînek sereke ye.

Em bawer dikin ku bikarhênerên xwedan cûrbecûr jêhatîbûnên teknîkî divê karibin daneyan keşf bikin û bigihîjin amûrên analîz û dîtbarî-bingeha SQL-ya baş-berbiçav. Ev dê bihêle komek nû ya bikarhênerên kêm teknîkî, di nav de analîstên daneyê û rêvebirên hilberan, ku têgihiştinê ji daneyan derxînin, bihêle ku ew çêtir kapasîteyên Twitter-ê fam bikin û bikar bînin. Bi vî rengî em analîzên daneyê li ser Twitter-ê demokratîk dikin.

Gava ku amûrên me û kapasîteyên analîzên daneya navxweyî çêtir bûne, me dît ku Twitter çêtir bûye. Lêbelê, hîn jî cîhê pêşveçûnê heye. Amûrên heyî yên mîna Scalding ezmûna bernamekirinê hewce dike. Amûrên analîzê yên li ser SQL-ê yên wekî Presto û Vertica di pîvanê de pirsgirêkên performansê hene. Di heman demê de pirsgirêka me ya belavkirina daneyan li ser gelek pergalên bêyî gihîştina domdar a wê heye.

Par me ragihand hevkariya nû bi Google re, ku di hundurê de em beşên xwe vediguhezînin binesaziya daneyan li ser Platforma Cloud Google (GCP). Me encam da ku amûrên Google Cloud Daneyên mezin dikare bi însiyatîfên me re bibe alîkar ku em analîtîk, dîtbarî, û fêrbûna makîneyê li ser Twitter-ê demokratîk bikin:

  • bigquery: embara daneya pargîdanî ya bi motora SQL-ya bingehîn Dremel, ku bi leza xwe, sadebûn û pê re mijûl dibe navdar e fêrbûna makîneyê.
  • Data Studio: Amûra dîtbarkirina daneya mezin bi taybetmendiyên hevkariyê yên mîna Google Docs.

Di vê gotarê de, hûn ê li ser ezmûna me ya bi van amûran re fêr bibin: me çi kir, me çi fêr bû, û em ê paşê çi bikin. Naha em ê li ser analîzên berhevok û înteraktîf bisekinin. Em ê di gotara pêş de li ser analîzên rast-dem-ê nîqaş bikin.

Dîroka Dikanên Daneyên Twitter

Berî ku bikevin nav BigQuery, hêja ye ku bi kurtî dîroka depokirina daneya Twitter-ê vebêjin. Di sala 2011 de, analîzkirina daneyên Twitter li Vertica û Hadoop hate kirin. Me Pig bikar anî da ku karên MapReduce Hadoop biafirîne. Di sala 2012-an de, me li şûna Pig bi Scalding veguherand, ku xwediyê Scala API-ya bi feydeyên wekî şiyana çêkirina boriyên tevlihev û hêsankirina ceribandinê bû. Lêbelê, ji bo gelek analîstên daneyê û rêveberên hilberan ên ku bi SQL-ê re rehettir dixebitin, ew kelek fêrbûna pir hişk bû. Nêzîkî 2016-an, me dest bi karanîna Presto wekî navgînek SQL ji daneyên Hadoop re kir. Spark pêwendiyek Python pêşkêşî kir, ku ew ji bo zanistiya daneya ad hoc û fêrbûna makîneyê vebijarkek baş dike.

Ji sala 2018-an vir ve, me amûrên jêrîn ji bo analîzkirin û dîtbarîkirinê bikar tîne:

  • Scalding bo conveyors hilberînê
  • Scalding and Spark ji bo analîza daneya ad hoc û fêrbûna makîneyê
  • Vertica û Presto ji bo analîza SQL ad hoc û înteraktîf
  • Druid ji bo gihîştina înteraktîf, keşif û derengiya kêm a metrîkên rêzikên demê
  • Tableau, Zeppelin û Pivot ji bo dîtina daneyan

Me dît ku dema ku van amûran kapasîteyên pir hêzdar pêşkêş dikin, me di çêkirina van kapasîteyan de ji temaşevanek berfireh li ser Twitter-ê re dijwar bû. Bi berfirehkirina platforma xwe bi Google Cloud re, em bala xwe didin ser hêsankirina amûrên xwe yên analîtîk ji bo hemî Twitter.

Depoya Daneyên BigQuery ya Google

Gelek tîmên li Twitter-ê berê BigQuery di hin boriyên hilberîna xwe de bicîh kirine. Bi karanîna pisporiya wan, me dest bi nirxandina kapasîteyên BigQuery ji bo hemî bûyerên karanîna Twitter-ê kir. Armanca me ew bû ku em BigQuery ji tevahiya pargîdaniyê re pêşkêş bikin û wê di hundurê amûra Platforma Daneyê de standard bikin û piştgirî bikin. Ev ji ber gelek sedeman zehmet bû. Me hewce bû ku binesaziyek pêşve bixin da ku bi pêbawerî jimarên mezin ên daneyan bipejirînin, piştgirî bidin rêveberiya daneya li seranserê pargîdaniyê, kontrolên gihîştina rast peyda bikin, û nepeniya xerîdar misoger bikin. Di heman demê de neçar ma ku me pergalên ji bo veqetandina çavkaniyê, şopandin, û paşvekêşan biafirînin da ku tîm bikarin BigQuery bi bandor bikar bînin.

Di Mijdara 2018-an de, me serbestberdanek alpha-ya pargîdanî ya BigQuery û Data Studio derxist. Me bi daneyên kesane yên paqijkirî hin ji pelên xwe yên ku herî zêde têne bikar anîn pêşkêşî xebatkarên Twitterê kir. BigQuery ji hêla 250 bikarhêneran ve ji cûrbecûr tîmên di nav de endezyar, darayî û kirrûbirra ve hatî bikar anîn. Herî dawî, wan bi qasî 8 hezar daxwaz dimeşandin, mehê bi qasî 100 PB pêvajoyê dikin, daxwazên plansazkirî nayên hesibandin. Piştî wergirtina bertekên pir erênî, me biryar da ku em pêşde biçin û BigQuery wekî çavkaniya bingehîn ji bo danûstandina bi daneyên li ser Twitter-ê re pêşkêş bikin.

Li vir diagramek asta bilind a mîmariya depoya daneya Google BigQuery heye.

Çawa BigQuery-ya Google-ê analîza daneyê demokratîk kir. Beş 1
Em daneyên ji komên Hadoop-ê yên hundurîn kopî dikin li Google Cloud Storage (GCS) bi karanîna amûra Cloud Replicatora hundurîn. Dûv re em Apache Airflow bikar tînin da ku boriyên ku bikar tînin biafirînin "bq_load» da ku daneyên ji GCS-ê li BigQuery bar bike. Em Presto bikar tînin ku di GCS-ê de daneyên Parquet an Thrift-LZO bipirsin. BQ Blaster amûrek Scalding navxweyî ye ku ji bo barkirina daneyên HDFS Vertica û Thrift-LZO di BigQuery de ye.

Di beşên jêrîn de, em nêzîkatî û pisporiya xwe di warên karanîna hêsan, performans, rêveberiya daneyê, tenduristiya pergalê, û lêçûnê de nîqaş dikin.

Bikaranîna hêsan

Me dît ku ji bo bikarhêneran hêsan e ku bi BigQuery re dest pê bikin ji ber ku ew ne hewce ye sazkirina nermalavê û bikarhêner dikarin bi navgînek tevnvîsa xwerû bigihîjin wê. Lêbelê, bikarhêner hewce bû ku bi hin taybetmendî û têgînên GCP-ê, di nav de çavkaniyên wekî proje, danehev û tabloyan, nas bikin. Me materyal û dersên perwerdehiyê pêşve xistin da ku ji bikarhêneran re bibin alîkar ku dest pê bikin. Bi têgihiştinek bingehîn a ku hatî bidestxistin, bikarhêneran hêsan dîtin ku rêwerzên daneyan bigerin, şema û daneyên tabloyê bibînin, lêpirsînên hêsan bimeşînin, û encamên di Data Studio de xuyang bikin.

Armanca me ya ji bo têketina daneyê li BigQuery ev bû ku em bi yek klîk barkirina bêkêmasî ya daneyên HDFS an GCS çalak bikin. Me fikirî Cloud Composer (ji hêla Airflow ve hatî rêve kirin) lê ji ber modela ewlehiya Parvekirina Destnîşankirî ya Domainê me nekarî wê bikar bînin (bêtir li ser vê yekê di beşa Rêvebiriya Daneyên jêrîn de). Me bi karanîna Karûbarê Veguheztina Daneyên Google (DTS) ceribandin da ku bargiraniyên xebata BigQuery saz bikin. Dema ku DTS zû hate saz kirin, ew ji bo avakirina lûleyên bi girêdayiyê ne maqûl bû. Ji bo serbestberdana alpha me, me çarçoveya xweya Apache Airflow di GCE de ava kiriye û wê amade dikin ku di hilberînê de bixebite û bikaribe bêtir çavkaniyên daneyê yên wekî Vertica piştgirî bike.

Ji bo veguheztina daneyan di BigQuery de, bikarhêner bi karanîna pirsên plansazkirî boriyên daneya SQL-ya hêsan diafirînin. Ji bo lûleyên pir-qonaxa tevlihev ên bi girêdayîbûnê, em plan dikin ku çarçoweya xweya hewayê an jî Cloud Composer bi hev re bikar bînin. Cloud Dataflow.

Berhemdariyê

BigQuery ji bo pirsên giştî yên SQL yên ku mîqdarên mezin ên daneyê pêvajo dikin, hatî çêkirin. Ew ne ji bo derengiya hindik, lêpirsînên berbi bilind ên ku ji hêla databasek danûstendinê ve têne xwestin, an jî ji bo analîza rêza dema derengiya kêm a ku hatî bicîh kirin nayê armanc kirin. Apache Druid. Ji bo pirsên analîtîkên înteraktîf, bikarhênerên me li bendê ne ku demên bersivê ji yek hûrdem kêmtir be. Me neçar ma ku karanîna xwe ya BigQuery dîzayn bikin da ku van bendewariyan bicîh bînin. Ji bo ku ji bikarhênerên xwe re performansa pêşbînîkirî peyda bikin, me fonksiyona BigQuery-yê bi kar anî, ku ji xerîdaran re li ser bingehek berdêl peyda dibe, ku destûrê dide xwediyên projeyê ku ji bo pirsên xwe hêlînên hindiktirîn veqetînin. Slot BigQuery yekîneyek hêza hesabkirinê ye ku ji bo pêkanîna pirsên SQL-ê hewce dike.

Me zêdetirî 800 pirsan analîz kir ku her yek bi qasî 1 TB daneyan hildiweşîne û dît ku dema darvekirinê ya navîn 30 saniye ye. Em her weha fêr bûn ku performans pir bi karanîna slota me di proje û peywirên cihêreng de ve girêdayî ye. Diviya bû ku em hilberîna xwe û rezervên hêlînê ad hoc bi zelalî xêz bikin da ku performansê ji bo dozên karanîna hilberînê û analîzên serhêl biparêzin. Vê yekê pir bandor li sêwirana me ya ji bo rezervasyon û hiyerarşiya projeyê kir.

Em ê di rojên pêş de di beşa duyemîn a wergerê de li ser rêveberiya daneyê, fonksiyon û lêçûna pergalê biaxivin, lê naha em her kesî vedixwînin ku belaş webinar live, di dema ku hûn ê bikaribin bi hûrgulî di derheqê qursê de fêr bibin, û her weha pirsan ji pisporê me - Egor Mateshuk (Engeneral Data, MaximaTelecom) bipirsin.

Zêdetir bixwînin:

Source: www.habr.com

Add a comment