Google Cloud Spanner: Math, dona, grànda

Halo, Khabrovites. Gu traidiseanta, bidh sinn a’ leantainn air adhart a’ roinn stuthan inntinneach air an oidhche ro thoiseach chùrsaichean ùra. An-diugh, gu sònraichte dhutsa, tha sinn air artaigil mu Google Cloud Spanner eadar-theangachadh, ann an àm aig an aon àm ri cur air bhog a’ chùrsa "AWS airson luchd-leasachaidh".

Google Cloud Spanner: Math, dona, grànda

Air fhoillseachadh an toiseach ann an Blog prìomh oifis Lightspeed.

Mar chompanaidh a tha a’ tabhann measgachadh de fhuasglaidhean POS stèidhichte air sgòthan airson luchd-reic, luchd-reic thaighean-bìdh, agus ceannaichean air-loidhne air feadh an t-saoghail, bidh Lightspeed a’ cleachdadh grunn sheòrsaichean de àrd-ùrlaran stòr-dàta airson measgachadh de chùisean malairt, anailis agus cleachdadh sgrùdaidh. Tha a neartan agus laigsean fhèin aig gach aon de na h-àrd-ùrlaran stòr-dàta sin.Mar sin, nuair a thug Google a-steach Cloud Spanner don mhargaidh - feartan gealltanach nach fhaicear ann an saoghal stòran-dàta dàimh, leithid scalability còmhnard cha mhòr gun chrìoch agus aonta ìre seirbheis 99,999% (SLA). , Cha b' urrainn dhuinn an cothrom a thoirt seachad a bhith aice nar làmhan!

Gus sealladh farsaing a thoirt seachad air ar n-eòlas le Cloud Spanner, a bharrachd air na slatan-tomhais measaidh a chleachd sinn, còmhdaichidh sinn na cuspairean a leanas:

  1. Na slatan-tomhais measaidh againn
  2. Cloud Spanner ann an ùine ghoirid
  3. Ar measadh
  4. Na co-dhùnaidhean againn

Google Cloud Spanner: Math, dona, grànda

1. Na slatan-tomhais measaidh againn

Mus tèid sinn a-steach do mhion-fhiosrachadh Cloud Spanner, na rudan a tha coltach agus eadar-dhealaichte ri fuasglaidhean eile air a’ mhargaidh, bruidhnidh sinn an-toiseach mu na prìomh chùisean cleachdaidh a bha againn nar cuimhne nuair a bha sinn a’ beachdachadh air càite an cuir sinn Cloud Spanner nar bun-structar:

  • Mar àite airson fuasgladh stòr-dàta traidiseanta SQL (an-dràsta).
  • Mar fhuasgladh OLTP le comas OLAP

Note: Airson coimeas a dhèanamh nas fhasa, tha an artaigil seo a’ dèanamh coimeas eadar Cloud Spanner agus na caochlaidhean MySQL de theaghlaichean fuasglaidh GCP Cloud SQL agus Amazon AWS RDS.

A’ cleachdadh Cloud Spanner an àite fuasgladh stòr-dàta traidiseanta SQL

Anns an àrainneachd traidiseanta stòran-dàta, nuair a tha an ùine freagairt airson ceist stòr-dàta a’ dlùthachadh no eadhon nas àirde na stairsnich tagraidh ro-mhìnichte (gu sònraichte air sgàth àrdachadh anns an àireamh de luchd-cleachdaidh agus/no iarrtasan), tha grunn dhòighean ann air an ùine freagairt a lughdachadh gu ìrean iomchaidh. Ach, tha a’ mhòr-chuid de na fuasglaidhean sin a’ toirt a-steach eadar-theachd làimhe.

Mar eisimpleir, is e a’ chiad cheum ri ghabhail coimhead air na diofar shuidheachaidhean stòr-dàta co-cheangailte ri coileanadh agus an gleusadh a rèir pàtrain suidheachaidh cleachdadh tagraidh. Mura h-eil seo gu leòr, faodaidh tu taghadh an stòr-dàta a sgèileadh gu dìreach no gu còmhnard.

Le bhith ag àrdachadh iarrtas tha e a’ ciallachadh a bhith ag ùrachadh eisimpleir an fhrithealaiche, mar as trice le bhith a’ cur barrachd phròiseasan/cores, barrachd RAM, stòradh nas luaithe, msaa. Siostaman stòr-dàta dàimheach (a bhios a’ cleachdadh dòigh-obrach ioma-snàthainn) leithid sgèile MySQL gu math dìreach.

Tha grunn eas-bhuannachdan ann don dòigh-obrach seo, ach is e an rud as fhollaisiche am meud frithealaiche as àirde air a’ mhargaidh. Cho luath ‘s a ruigear a’ chrìoch Instance Server as motha, chan eil ach aon shlighe air fhàgail: sgèile a-mach.

Tha sgèile-a-mach na dhòigh-obrach a chuireas barrachd luchd-frithealaidh ri brabhsair gus coileanadh àrdachadh gu sreathach mar a bhios barrachd luchd-frithealaidh gan cur ris. Mòr-chuid traidiseanta chan eil siostaman stòr-dàta a’ sgèile gu math no chan eil iad a’ sgèile idir. Mar eisimpleir, faodaidh MySQL sgèile a-mach airson leughaidhean le bhith a’ cur leughadairean tràillean ris, ach chan urrainn dha sgèile a-mach airson sgrìobhaidhean.

Air an làimh eile, air sgàth a nàdar, faodaidh Cloud Spanner sgèile gu còmhnard gu furasta le glè bheag de eadar-theachd.

Làn-nochdadh DBMS mar sheirbheis feumar a mheasadh bho dhiofar sheallaidhean. Mar bhunait, ghabh sinn an DBMS as mòr-chòrdte san sgòth - airson Google, GCP Cloud SQL agus airson Amazon, AWS RDS. Anns a’ mheasadh againn, chuir sinn fòcas air na roinnean a leanas:

  • Mapadh feart: ìre SQL, DDL, DML; leabharlannan ceangail / luchd-ceangail, taic malairt, agus mar sin air adhart.
  • Taic Leasachaidh: Furasta leasachadh agus deuchainn.
  • Taic Rianachd: Stiùireadh sa bhad leithid àrdachadh/sìos agus suidheachaidhean ùrachadh; SLA, cùl-taic agus ath-bheothachadh; tèarainteachd / smachd ruigsinneachd.

A’ cleachdadh Cloud Spanner mar fhuasgladh OLTP le comas OLAP

Ged nach eil Google ag innse gu soilleir gu bheil Cloud Spanner airson anailisean, bidh e a’ roinn cuid de bhuadhan le einnseanan eile leithid Apache Impala & Kudu agus YugaByte a tha air an dealbhadh airson eallach obrach OLAP.

Fiù mura biodh ann ach glè bheag de chothrom gun robh Cloud Spanner a’ toirt a-steach einnsean HTAP (Hybrid Transactional/Analytic Processing) le seata feart OLAP (barrachd no nas lugha) a ghabhas cleachdadh, tha sinn den bheachd gum biodh e airidh air ar n-aire.

Le sin san amharc, thug sinn sùil air na roinnean a leanas:

  • Taic luchdachadh dàta, clàran-amais agus sgaradh
  • Coileanadh ceist agus DML

2. Cloud Spanner ann an ùine ghoirid

Tha Google Spanner na shiostam riaghlaidh stòr-dàta dàimheach (RDBMS) a bhios Google a’ cleachdadh airson grunn de na seirbheisean aige fhèin. Rinn Google e ri fhaighinn gu poblach do luchd-cleachdaidh Google Cloud Platform tràth ann an 2017.

Seo cuid de na buadhan Cloud Spanner:

  • Buidheann RDBMS air leth cunbhalach, so-ruigsinneach: A’ cleachdadh sioncronadh ùine bathar-cruaidh gus dèanamh cinnteach à cunbhalachd dàta.
  • Taic malairt tar-bhòrd: Faodaidh gnìomhan a dhol thairis air grunn chlàran - chan ann gu riatanach a bhith cuibhrichte gu aon bhòrd (eu-coltach ri Apache HBase no Apache Kudu).
  • Clàran Bun-sgoile Stèidhichte: Feumaidh Prìomh iuchair (PC) dearbhte a bhith aig a h-uile clàr, a dh’ fhaodadh grunn cholbhan bùird a bhith ann. Tha dàta tabular air a stòradh ann an òrdugh PC, a tha ga dhèanamh gu math èifeachdach agus luath airson rannsachaidhean PC. Coltach ri siostaman eile stèidhichte air PC, feumaidh am buileachadh a bhith air a mhodaladh an aghaidh chùisean cleachdaidh ro-bheachdach gus a choileanadh coileanadh as fheàrr.
  • Clàran stiallach: Faodaidh bùird a bhith an urra ri chèile. Faodar na sreathan de bhòrd na cloinne a mhaidseadh ri sreathan a 'bhùird phàrant. Bidh an dòigh-obrach seo a’ luathachadh rannsachadh airson dàimhean a dh’fhaodar a dhearbhadh aig ìre modaladh dàta, mar eisimpleir, nuair a bhios iad a’ cur luchd-ceannach agus na fàirdealan aca còmhla.
  • Clàr-amais: Tha Cloud Spanner a’ toirt taic do chlàran-amais àrd-sgoile. Tha clàr-amais air a dhèanamh suas de cholbhan clàraichte agus a h-uile colbh PC. Gu roghnach, faodaidh colbhan neo-chlàraichte eile a bhith sa chlàr-amais. Faodar an clàr-amais a cheangal ri clàr nam pàrant gus ceistean a luathachadh. Tha grunn chuingealachaidhean a’ buntainn ri clàran-amais, leithid an àireamh as motha de cholbhan a bharrachd a ghabhas stòradh ann an clàr-amais. Cuideachd, dh’ fhaodadh nach bi ceistean tro chlàran-amais cho sìmplidh ‘s a tha iad ann an RDBMS eile.

“Bidh Cloud Spanner a’ taghadh clàr-amais gu fèin-ghluasadach dìreach ann an cùisean ainneamh. Gu sònraichte, cha bhith Cloud Spanner a’ taghadh clàr-amais àrd-sgoile gu fèin-ghluasadach ma dh’ iarras a’ cheist colbhan sam bith nach eil air an stòradh ann. clàr-amais ".

  • Aonta Ìre Seirbheis (SLA): Cleachdadh sgìre singilte le 99,99% SLA; cleachdadh ioma-sgìre le 99,999% SLA. Ged a tha an SLA fhèin dìreach mar aonta agus chan e gealltanas de sheòrsa sam bith, tha mi a’ creidsinn gu bheil dàta cruaidh aig muinntir Google gus tagradh cho làidir a dhèanamh. (Airson fiosrachadh, tha 99,999% a’ ciallachadh 26,3 diogan de dh’ ùine downt seirbheis gach mìos.)
  • Barrachd: https://cloud.google.com/spanner/

Note: Bidh pròiseact Apache Tephra a’ cur taic malairt adhartach ri Apache HBase (cuideachd a-nis air a chuir an gnìomh ann an Apache Phoenix mar beta).

3. Ar measadh

Mar sin, tha sinn uile air aithrisean Google a leughadh mu na buannachdan a tha an lùib Cloud Spanner - sgèileadh còmhnard cha mhòr gun chrìoch fhad ‘s a chumas sinn àrd cunbhalachd agus SLA fìor àrd. Ged a tha na tagraidhean sin, co-dhiù, air leth duilich a choileanadh, cha b’ e ar n-amas an diùltadh. An àite sin, leig dhuinn fòcas a chuir air rudan eile a tha cudromach don mhòr-chuid de luchd-cleachdaidh stòr-dàta: co-ionannachd agus cleachdadh.

Mheas sinn Cloud Spanner an àite Sharded MySQL

Tha seata feart glè mhòr aig Google Cloud SQL agus Amazon AWS RDS, dhà de na stòran-dàta OLTP as mòr-chòrdte sa mhargaidh sgòthan. Ach, gus na stòran-dàta sin a sgèile nas fhaide na meud aon nód, feumaidh tu sgoltadh tagraidh a dhèanamh. Tha an dòigh-obrach seo a’ cruthachadh iom-fhillteachd a bharrachd an dà chuid airson tagraidhean agus rianachd. Choimhead sinn air mar a tha Spanner a’ freagairt air an t-suidheachadh de bhith a’ cothlamadh ioma shards ann an aon eisimpleir agus dè na feartan (ma tha gin ann) a dh’ fheumar a thoirt seachad.

Taic airson SQL, DML agus DDL, a bharrachd air an ceanglaiche agus leabharlannan?

An toiseach, nuair a thòisicheas tu le stòr-dàta sam bith, feumaidh tu modal dàta a chruthachadh. Ma tha thu den bheachd gun urrainn dhut JDBC Spanner a cheangal ris an inneal SQL as fheàrr leat, gheibh thu a-mach gun urrainn dhut an dàta agad a cheasnachadh leis, ach chan urrainn dhut a chleachdadh gus clàr no ùrachadh (DDL) a chruthachadh no cuir a-steach / ùrachadh / sguab às. obrachaidhean (DML). Chan eil JDBC oifigeil Google a’ toirt taic nas motha.

msgstr "Chan eil dràibhearan a' cur taic ri aithrisean DML no DDL an-dràsta."
Sgrìobhainnean Spanner

Chan eil an suidheachadh nas fheàrr le consol GCP - chan urrainn dhut ach ceistean SELECT a chuir. Gu fortanach tha draibhear JDBC ann le taic DML agus DDL bhon choimhearsnachd a’ toirt a-steach gnothaichean github.com/olavloite/spanner-jdbc. Ged a tha an draibhear seo air leth feumail, tha e na iongnadh nach eil draibhear JDBC aig Google fhèin ann. Gu fortanach, tha Google a’ tabhann taic leabharlann teachdaiche gu math farsaing (stèidhichte air gRPC): C #, Go, Java, node.js, PHP, Python, agus Ruby.

Tha cleachdadh faisg air èigneachail de APIan àbhaisteach Cloud Spanner (mar thoradh air dìth DDL agus DML ann an JDBC) a’ leantainn gu cuid de chuingealachaidhean airson raointean còd co-cheangailte leithid cruinneachadh ceangail no frèaman ceangail stòr-dàta (leithid Spring MVC). San fharsaingeachd, nuair a bhios tu a’ cleachdadh JDBC, faodaidh tu an amar ceangail as fheàrr leat a thaghadh (me HikariCP, DBCP, C3PO, msaa) a tha fo dheuchainn agus ag obair gu math. A thaobh APIan àbhaisteach Spanner, feumaidh sinn a bhith an urra ri frèaman / amaran ceangail / seisean a chruthaich sinn fhìn.

Tha an dealbhadh prìomh iuchair (PC) a’ leigeil le Cloud Spanner a bhith gu math luath nuair a gheibh e cothrom air dàta tron ​​PC, ach bheir e a-steach cuid de chùisean ceiste cuideachd.

  • Chan urrainn dhut luach prìomh iuchrach ùrachadh; Feumaidh tu an inntrigeadh PC tùsail a dhubhadh às an toiseach agus cuir a-steach e a-rithist leis an luach ùr. (Tha seo coltach ri einnseanan stòr-dàta / stòraidh PC eile.)
  • Feumaidh aithrisean ÙRACHADH is DÙTHCHAS sam bith am PC a shònrachadh anns an WHERE, mar sin, chan urrainn a bhith falamh Sguab às a h-uile aithris - feumaidh fo-cheist a bhith ann an-còmhnaidh, mar eisimpleir: ÙRACHADH xxx WHERE id IN (SELECT id From table1)
  • Dìth roghainn àrdachadh fèin-ghluasadach no rudeigin coltach ris a tha a 'suidheachadh an t-sreath airson raon PC. Gus an obraich seo, feumar an luach co-fhreagarrach a chruthachadh air taobh an tagraidh.

Clàr-amais àrd-sgoile?

Tha taic stèidhichte aig Google Cloud Spanner airson clàran-amais àrd-sgoile. Is e feart gu math snog a tha seo nach eil an-còmhnaidh an làthair ann an teicneòlasan eile. Chan eil Apache Kudu an-dràsta a’ toirt taic do chlàran-amais àrd-sgoile idir, agus chan eil Apache HBase a’ toirt taic do chlàran-amais gu dìreach, ach faodaidh e an cur tro Apache Phoenix.

Faodar clàran-amais ann an Kudu agus HBase a mhodaladh mar chlàr air leth le diofar cho-dhèanamh de phrìomh iuchraichean, ach feumar atamachd nan gnìomhan a chaidh a dhèanamh air a’ bhòrd phàrant agus na clàran clàr-amais co-cheangailte riutha a choileanadh aig ìre an tagraidh agus chan eil e duilich a chuir an gnìomh gu ceart.

Mar a chaidh ainmeachadh ann an lèirmheas Cloud Spanner, faodaidh na clàran-amais aige a bhith eadar-dhealaichte bho chlàran-amais MySQL. Mar sin, feumar cùram sònraichte a ghabhail ann a bhith a’ togail cheistean agus a’ dèanamh pròifil gus dèanamh cinnteach gun tèid an clàr-amais ceart a chleachdadh far a bheil feum air.

Riochdachadh?

Is e rud mòr-chòrdte agus feumail ann an stòr-dàta seallaidhean. Faodaidh iad a bhith feumail airson àireamh mhòr de chùisean cleachdaidh; Is e an dà rud as fheàrr leam an ìre tarraing loidsigeach agus an ìre tèarainteachd. Gu mì-fhortanach CHAN EIL Cloud Spanner a’ toirt taic do bheachdan. Ach, chan eil seo ach gu ìre gar cuingealachadh, leis nach eil gràinealachd ìre colbh ann airson ceadan-slighe far am faod seallaidhean a bhith nam fuasgladh iomchaidh.

Faic na sgrìobhainnean Cloud Spanner airson earrann a’ toirt mion-fhiosrachadh air cuotathan agus crìochan (spanner/cuota), tha aon gu sònraichte ann a dh’ fhaodadh a bhith na dhuilgheadas airson cuid de thagraidhean: tha suas ri 100 stòr-dàta aig Cloud Spanner a-mach às a ’bhogsa gach eisimpleir. Gu follaiseach, faodaidh seo a bhith na phrìomh chnap-starra do stòr-dàta a tha air a dhealbhadh gus sgèile gu còrr air 100 stòr-dàta. Gu fortanach, às deidh dhuinn bruidhinn ris an riochdaire teignigeach Google againn, fhuair sinn a-mach gum faodar a’ chrìoch seo àrdachadh gu cha mhòr luach sam bith tro Thaic Google.

Taic leasachaidh?

Tha Cloud Spanner a’ tabhann taic cànain prògramaidh gu math reusanta airson a bhith ag obair leis an API aige. Tha na leabharlannan le taic oifigeil ann an raon C #, Go, Java, node.js, PHP, Python, agus Ruby. Tha na sgrìobhainnean gu math mionaideach, ach coltach ri teicneòlasan ùr-nodha eile, tha a’ choimhearsnachd gu math beag an taca ris na teicneòlasan stòr-dàta as mòr-chòrdte, a dh’ fhaodadh barrachd ùine a chaitheamh air cùisean no duilgheadasan cleachdaidh nach eil cho cumanta.

Mar sin dè mu dheidhinn taic leasachaidh ionadail?

Chan eil sinn air dòigh a lorg gus eisimpleir Cloud Spanner a chruthachadh san togalach. Is e an ìomhaigh Docker as fhaisge a fhuair sinn coileach-dubha tha coltach ann am prionnsabal, ach gu math eadar-dhealaichte ann an cleachdadh. Mar eisimpleir faodaidh CockroachDB PostgreSQL JDBC a chleachdadh. Leis gum bu chòir don àrainneachd leasachaidh a bhith cho faisg ‘s a ghabhas air an àrainneachd cinneasachaidh, chan eil Cloud Spanner air leth freagarrach oir feumaidh tu a bhith an urra ri làn eisimpleir Spanner. Gus cosgaisean a shàbhaladh, faodaidh tu aon eisimpleir sgìre a thaghadh.

Taic rianachd?

Tha cruthachadh eisimpleir Cloud Spanner gu math sìmplidh. Feumaidh tu dìreach taghadh eadar cruthachadh ioma-sgìre no eisimpleir aon-sgìre, sònraich an roinn (ean) agus an àireamh de nodan. Ann an nas lugha na mionaid, bidh an eisimpleir ag obair.

Tha grunn bhun-tomhasan rim faighinn gu dìreach air duilleag Spanner ann an Google Console. Tha seallaidhean nas mionaidiche rim faighinn tro Stackdriver, far an urrainn dhut cuideachd stairsnich meatrach agus poileasaidhean rabhaidh a shuidheachadh.

Cothrom air goireasan?

Tha MySQL a’ tabhann roghainnean cead cleachdaiche / dreuchd farsaing agus gu math granular. Faodaidh tu ruigsinneachd gu clàr sònraichte a ghnàthachadh gu furasta, no eadhon dìreach fo-sheata de na colbhan aige. Bidh Cloud Spanner a’ cleachdadh inneal Google Identity & Access Management (IAM), a leigeas leat dìreach poileasaidhean agus ceadan a shuidheachadh aig ìre fìor àrd. Is e an roghainn as granular cead ìre stòr-dàta, nach eil a’ freagairt air a’ mhòr-chuid de chùisean cinneasachaidh. Tha an cuingeachadh seo a’ toirt ort ceumannan tèarainteachd a bharrachd a chur ris a’ chòd, bun-structar no an dà chuid agad gus casg a chuir air cleachdadh gun chead de ghoireasan Spanner.

Cùl-taic?

Gus a chuir gu sìmplidh, chan eil cùl-taic ann an Cloud Spanner. Ged a dh'fhaodas riatanasan àrd SLA Google dèanamh cinnteach nach caill thu dàta sam bith air sgàth fàilligeadh bathar-cruaidh no stòr-dàta, mearachd daonna, uireasbhaidhean tagraidh, msaa. Tha fios againn uile air an riaghailt: chan eil ruigsinneachd àrd an àite ro-innleachd cùl-taic snasail. An-dràsta, is e an aon dòigh air cùl-taic a dhèanamh de dhàta a bhith ga shruthladh gu prògramach bhon stòr-dàta gu àrainneachd stòraidh air leth.

Coileanadh na ceiste?

Chleachd sinn Yahoo! gus dàta a luchdachadh agus ceistean deuchainn. Comharradh seirbheis Cloud. Tha an clàr gu h-ìosal a’ sealltainn eallach obrach B YCSB le co-mheas leughaidh 95% gu 5%.

Google Cloud Spanner: Math, dona, grànda

* Chaidh an deuchainn luchd a ruith air Einnsean Coimpiutaireachd n1-standard-32 (CE) (32 vCPUs, cuimhne 120 GB) agus cha robh an deuchainn a-riamh na bhotal anns na deuchainnean.
** Is e 400 an àireamh as motha de shnàithleanan ann an aon eisimpleir YCSB. Gu h-iomlan, dh’ fheumadh sia suidheachaidhean co-shìnte de dheuchainnean YCSB a ruith gus 2400 snàithlean gu h-iomlan fhaighinn.

A’ coimhead air na toraidhean slat-tomhais, gu sònraichte am measgachadh de luchdan CPU agus TPS, chì sinn gu soilleir gu bheil Sgèile Cloud Spanner gu math. Tha an luchd mòr a chaidh a chruthachadh le àireamh mhòr de snàithleanan air a chothromachadh le àireamh mhòr de nodan ann am buidheann Cloud Spanner. Ged a tha coltas gu math àrd air an latency, gu sònraichte nuair a bhios tu a’ ruith aig 2400 snàithlean, dh’ fhaodadh gum feumar ath-dhearbhadh le 6 eisimpleirean nas lugha den einnsean coimpiutaireachd gus àireamhan nas cruinne fhaighinn. Bidh gach suidheachadh a’ ruith aon deuchainn YCSB an àite aon eisimpleir CE mòr le 6 deuchainnean co-shìnte. Tha seo ga dhèanamh nas fhasa eadar-dhealachadh a dhèanamh eadar dàil iarrtas Cloud Spanner agus dàil a chuir an ceangal lìonra eadar Cloud Spanner agus an eisimpleir CE a’ ruith na deuchainn.

Ciamar a tha Cloud Spanner a’ coileanadh mar OLAP?

A' sgaradh?

Tha a bhith a’ roinneadh dàta ann an earrannan neo-eisimeileach gu corporra agus/no gu loidsigeach, ris an canar sgaraidhean, na bhun-bheachd mòr-chòrdte a lorgar anns a’ mhòr-chuid de einnseanan OLAP. Faodaidh sgaraidhean àrdachadh mòr a thoirt air coileanadh ceist agus seasmhachd stòr-dàta. Bhiodh tuilleadh sgrùdadh air sgaradh na artaigil(ean) air leth, agus mar sin leig dhuinn iomradh a thoirt air cho cudromach sa tha e sgeama sgaradh agus fo-roinneadh. Tha an comas dàta a roinn ann am pàirtean agus eadhon nas fhaide gu fo-roinnean deatamach airson coileanadh cheistean anailis.

Chan eil Cloud Spanner a’ toirt taic do phàirtean per se. Bidh e a’ sgaradh dàta taobh a-staigh ris an canar sgaradh-s stèidhichte air prìomh raointean prìomh. Thèid an sgaradh a dhèanamh gu fèin-ghluasadach gus an luchd air brabhsair Cloud Spanner a chothromachadh. Is e feart glè fheumail de Cloud Spanner a bhith a’ sgoltadh an luchd bunaiteach de bhòrd phàrant (clàr nach eil eadar-fhighte le fear eile). Lorgaidh Spanner gu fèin-ghluasadach a bheil e ann sgaradh dàta a thèid a leughadh nas trice na dàta ann an cuid eile sgaradh-ah, agus faodaidh iad co-dhùnadh air dealachadh eile. Mar sin, faodaidh barrachd nodan a bhith an sàs ann an iarrtas, a tha cuideachd gu h-èifeachdach a’ meudachadh trochur.

A' luchdachadh dàta?

Tha an dòigh Cloud Spanner airson dàta mòr an aon rud ri luchdachadh suas cunbhalach. Airson an coileanadh as àirde, feumaidh tu cuid de stiùiridhean a leantainn, nam measg:

  • Deasaich an dàta agad a rèir prìomh iuchair.
  • Roinn iad le 10*àireamh de nodan earrannan fa leth.
  • Cruthaich seata de ghnìomhan luchd-obrach a bhios a’ luchdachadh dàta ann an co-shìnte.

Bidh an luchd dàta seo a’ cleachdadh a h-uile nod Cloud Spanner.

Chleachd sinn eallach-obrach A YCSB gus stòr-dàta sreath 10M a ghineadh.

Google Cloud Spanner: Math, dona, grànda

* Chaidh an deuchainn luchd a ruith air an einnsean coimpiutaireachd n1-standard-32 (32 vCPUs, cuimhne 120 GB) agus cha robh an deuchainn a-riamh na bhotal anns na deuchainnean.
** Chan eilear a’ moladh suidheachadh 1 nód airson eallach obrach cinneasachaidh sam bith.

Mar a chaidh ainmeachadh gu h-àrd, bidh Cloud Spanner gu fèin-ghluasadach a’ pròiseasadh sgoltadh a rèir an luchd, agus mar sin bidh na toraidhean a’ fàs nas fheàrr às deidh grunn ath-aithrisean leantainneach den deuchainn. Is e na toraidhean a tha air an taisbeanadh an seo na toraidhean as fheàrr a fhuair sinn. A’ coimhead air na h-àireamhan gu h-àrd, chì sinn mar a tha Sgèile Cloud Spanner (gu math) mar a bhios an àireamh de nodan anns a’ bhuidheann a’ dol am meud. Tha na h-àireamhan a tha a’ seasamh a-mach gu math ìosal latency cuibheasach, a tha eadar-dhealaichte bho thoraidhean bho eallach obrach measgaichte (95% air a leughadh agus 5% a’ sgrìobhadh) mar a chaidh a mhìneachadh san earrann gu h-àrd.

Sgèileadh?

Is e gnìomh aon bhriogadh a th’ ann a bhith ag àrdachadh agus a’ lughdachadh na h-àireimh de nodan Cloud Spanner. Ma tha thu airson dàta a luchdachadh gu sgiobalta, is dòcha gum bi thu airson beachdachadh air an eisimpleir àrdachadh chun ìre as àirde (anns a’ chùis againn b ’e 25 nodan a bh’ ann an roinn US-EAST) agus an uairsin lughdaich an àireamh de nodan a tha iomchaidh airson an luchd àbhaisteach agad às deidh an dàta gu lèir. san stòr-dàta, a’ cumail cuimhne air a’ chrìoch 2 TB / nód.

Chaidh an àireamh seo a chuir nar cuimhne eadhon le stòr-dàta mòran nas lugha. Às deidh grunn ruith deuchainn luchdan, bha an stòr-dàta againn timcheall air 155 GB ann am meud, agus nuair a chaidh a lughdachadh gu eisimpleir nód 1, fhuair sinn a’ mhearachd a leanas:

Google Cloud Spanner: Math, dona, grànda

B’ urrainn dhuinn sgèile sìos bho 25 gu 2 chùis, ach tha sinn an sàs ann an dà nod.

Faodar àrdachadh agus lughdachadh àireamh nan nodan ann am brabhsair Cloud Spanner a dhèanamh fèin-ghluasadach a’ cleachdadh an REST API. Faodaidh seo a bhith gu sònraichte feumail airson a bhith a’ lughdachadh an luchd àrdachaidh air an t-siostam rè uairean trang.

Coileanadh ceist OLAP?

Bha sinn an dùil an toiseach ùine mhòr a chaitheamh air ar measadh air Spanner air a’ phàirt seo. Às deidh beagan SELECT COUNTs, thuig sinn sa bhad gum biodh an deuchainn goirid agus nach biodh Spanner na einnsean freagarrach airson OLAP. A dh’ aindeoin an àireamh de nodan anns a’ bhuidheann, thug dìreach 10 gu 55 diogan a bhith a’ taghadh an àireamh de shreathan ann an clàr sreath 60M. Cuideachd, dh'fhàillig ceist sam bith a dh'fheumadh barrachd cuimhne airson toraidhean eadar-mheadhanach a stòradh le mearachd OOM.

SELECT COUNT(DISTINCT(field0)) FROM usertable; — (10M distinct values)-> SpoolingHashAggregateIterator ran out of memory during new row.

Gheibhear cuid de na h-àireamhan airson ceistean TPC-H ann an artaigil Todd Lipcon nosql-kudu-spanner-slides.html, sleamhnagan 42 agus 43. Tha na h-àireamhan sin co-chòrdail ris na toraidhean againn fhèin (gu mì-fhortanach).

Google Cloud Spanner: Math, dona, grànda

4. Ar co-dhùnaidhean

Leis mar a tha feartan Cloud Spanner an-dràsta, tha e duilich fhaicinn mar ath-shìmplidh airson fuasgladh OLTP a th’ ann mar-thà, gu h-àraidh nuair a tha na feumalachdan agad nas àirde na e. Dh'fheumadh tòrr ùine a chosg a' togail fuasgladh timcheall air uireasbhaidhean Cloud Spanner.

Nuair a thòisich sinn a’ measadh Cloud Spanner, bha sinn an dùil gum biodh na feartan riaghlaidh aige co-ionann ri, no co-dhiù gun a bhith fada bho, fuasglaidhean eile aig Google SQL. Ach chuir e iongnadh oirnn leis an dìth cùl-taic iomlan agus glè bheag de smachd air ruigsinneachd air goireasan. Gun a bhith a 'toirt iomradh air beachdan, gun àrainneachd leasachaidh ionadail, sreathan gun taic, JDBC gun taic DML agus DDL, agus mar sin air adhart.

Mar sin, càite an tèid thu airson cuideigin a dh’ fheumas stòr-dàta malairt a sgèileadh? Chan eil e coltach gu bheil aon fhuasgladh air a’ mhargaidh fhathast a fhreagras air a h-uile cùis cleachdaidh. Tha mòran fhuasglaidhean dùinte agus fosgailte (cuid dhiubh air an ainmeachadh san artaigil seo), gach fear le na neartan agus laigsean aca fhèin, ach chan eil gin dhiubh a 'tabhann SaaS le SLA 99,999% agus ìre àrd de sheasmhachd. Mas e SLA àrd am prìomh amas agad agus nach eil thu dualtach am fuasgladh agad fhèin a thogail airson ioma sgòthan, is dòcha gur e Cloud Spanner am fuasgladh a tha thu a’ sireadh. Ach bu chòir dhut a bhith mothachail air a h-uile crìochan.

Gus a bhith cothromach, cha deach Cloud Spanner a leigeil ma sgaoil don phoball ach as t-earrach 2017, agus mar sin tha e reusanta a bhith an dùil gum faodadh cuid de na lochdan a th ’ann an-dràsta falbh mu dheireadh (tha sinn an dòchas), agus nuair a nì e, dh’ fhaodadh e a bhith na inneal-atharrachaidh geama. Às deidh na h-uile, chan e dìreach pròiseact taobh a th’ ann an Cloud Spanner airson Google. Bidh Google ga chleachdadh mar bhunait airson toraidhean Google eile. Agus nuair a chuir Google Cloud Spanner an àite Megastore ann an Google Cloud Storage o chionn ghoirid, leig e le Google Cloud Storage a bhith gu math cunbhalach airson liostaichean nithean aig ìre cruinne (rud nach eil fhathast fìor airson Amazon S3).

Mar sin, tha dòchas ann fhathast...tha sinn an dòchas.

Sin e. Coltach ri ùghdar an artaigil, tha sinn cuideachd a 'leantainn oirnn an dòchas, ach dè do bheachd air seo? Sgrìobh anns na beachdan

Tha sinn a’ toirt cuireadh don a h-uile duine tadhal air ar webinar saor an asgaidh anns am bi sinn ag innse dhut gu mionaideach mun chùrsa "AWS airson luchd-leasachaidh" bho OTUS.

Source: www.habr.com

Cuir beachd ann