Google Cloud Spanner: An Maith, an Droch agus an Gránna

Dia duit, cónaitheoirí Khabrovsk. Mar is gnách, leanaimid ar aghaidh ag roinnt ábhar suimiúil roimh thús na gcúrsaí nua. Inniu, go háirithe duitse, tá alt foilsithe againn faoi Google Cloud Spanner ag an am céanna le seoladh an chúrsa "AWS d'Fhorbróirí".

Google Cloud Spanner: An Maith, an Droch agus an Gránna

Foilsíodh ar dtús i Blag Ceanncheathrú Lightspeed.

Mar chuideachta a thairgeann éagsúlacht réitigh POS scamall-bhunaithe do mhiondíoltóirí, restaurateurs, agus díoltóirí ar líne ar fud an domhain, úsáideann Lightspeed roinnt cineálacha éagsúla ardán bunachar sonraí le haghaidh cásanna éagsúla idirbheartaíochta, anailíse agus cuardaigh. Tá a láidreachtaí agus a laigí féin ag gach ceann de na hardáin bhunachar sonraí seo. Dá bhrí sin, nuair a thug Google Cloud Spanner isteach sa mhargadh - gnéithe gealltanais nach bhfuil le feiceáil i saol na mbunachair sonraí coibhneasta, amhail inscálaitheacht chothrománach beagnach gan teorainn agus comhaontú seirbhíse 99,999% (SLA), — níorbh fhéidir linn an deis a chailleadh lenár lámha a fháil air!

Chun forbhreathnú cuimsitheach a sholáthar ar ár dtaithí le Cloud Spanner, chomh maith leis na critéir mheastóireachta a d’úsáideamar, clúdóimid na hábhair seo a leanas:

  1. Ár critéir mheastóireachta
  2. Scamall Spanner i mbeagán focal
  3. Ár measúnú
  4. Ár dtorthaí

Google Cloud Spanner: An Maith, an Droch agus an Gránna

1. Ár critéir mheastóireachta

Sula tumaimid isteach i sainiúlachtaí Cloud Spanner, na cosúlachtaí agus na héagsúlachtaí atá ann le réitigh eile ar an margadh, déanaimis labhairt ar dtús faoi na príomhchásanna úsáide a bhí i gcuimhne dúinn agus muid ag smaoineamh ar cá háit le Cloud Spanner a imscaradh inár mbonneagar:

  • Mar ionadú ar an (tríomhcheann) réiteach bunachar sonraí SQL traidisiúnta
  • Conas réiteach OLTP le tacaíocht OLAP

Tabhair faoi deara: Ar mhaithe le simplíocht agus éascaíocht comparáide, déanann an t-alt seo comparáid idir Cloud Spanner agus na leaganacha MySQL de theaghlaigh réitigh GCP Cloud SQL agus Amazon AWS RDS.

Ag baint úsáide as Cloud Spanner mar ionad ar réiteach bunachar sonraí SQL traidisiúnta

Sa timpeallacht traidisiúnta bunachair shonraí, nuair a thagann am freagartha fiosrúcháin an bhunachair shonraí i dtreo nó fiú níos mó ná tairseacha feidhmchláir réamhshainithe (go príomha mar gheall ar mhéadú ar líon na n-úsáideoirí agus/nó na n-iarratas), tá go leor bealaí ann chun an t-am freagartha a laghdú go leibhéil inghlactha. Mar sin féin, baineann an chuid is mó de na réitigh seo le hidirghabháil láimhe.

Mar shampla, is é an chéad chéim atá le déanamh ná breathnú ar na paraiméadair éagsúla bunachar sonraí a bhaineann le feidhmíocht agus iad a oiriúnú chun na patrúin cásanna úsáide feidhmchlár a mheaitseáil is fearr. Mura leor é seo, is féidir leat an bunachar sonraí a scála go hingearach nó go cothrománach a roghnú.

Is éard atá i gceist le feidhmchlár a scálú go hingearach ná cás an fhreastalaí a uasghrádú, go hiondúil trí níos mó próiseálaithe/croílár a chur leis, níos mó RAM, stóráil níos tapúla, srl. Má chuirtear níos mó acmhainní crua-earraí leis bíonn feidhmíocht bunachar sonraí méadaithe, tomhaiste go príomha in idirbhearta sa dara háit, agus follas idirbheart do chórais OLTP. Córais bunachar sonraí coibhneasta (a úsáideann cur chuige il-snáithithe) cosúil le scála MySQL go maith ceartingearach.

Tá roinnt míbhuntáistí ag baint leis an gcur chuige seo, ach is é an ceann is soiléire ná an t-uasmhéid freastalaí ar an margadh. Nuair a shroichtear teorainn an tsásra freastalaí is mó, níl ach rogha amháin fágtha: scálú cothrománach.

Is cur chuige é scálú cothrománach ina gcuirtear níos mó freastalaithe le braisle, go hidéalach a mhéadaíonn feidhmíocht go líneach de réir mar a chuirtear líon na bhfreastalaithe leis. Tromlach traidisiúnta Ní scálaíonn córais bhunachair sonraí go cothrománach nó ní scálaíonn siad ar chor ar bith. Mar shampla, is féidir le MySQL scála go cothrománach le haghaidh oibríochtaí léitheoireachta trí léitheoirí sclábhaithe a chur leis, ach ní féidir scála cothrománach a dhéanamh le haghaidh scríbhinní.

Ar an láimh eile, mar gheall ar a nádúr, is féidir le Cloud Spanner scála go cothrománach go héasca le hidirghabháil íosta.

Le feiceáil go hiomlán DBMS mar sheirbhís ní mór é a mheasúnú ó uillinneacha éagsúla. Mar bhunús, ghlacamar an DBMS is coitianta sa scamall - le haghaidh Google, GCP Cloud SQL agus le haghaidh Amazon, AWS RDS. Inár measúnú dhíríomar ar na catagóirí seo a leanas:

  • Léarscáiliú gné: fairsinge SQL, DDL, DML; leabharlanna nasc/nascairí, tacaíocht idirbheartaíochta, agus mar sin de.
  • Tacaíocht forbartha: forbairt agus tástáil éasca.
  • Tacaíocht riaracháin: bainistíocht ar chásanna - mar shampla, cásanna a mhéadú/síos agus a uasghrádú; SLA, cúltaca agus aisghabháil; slándáil/rialú rochtana.

Ag baint úsáide as Cloud Spanner mar réiteach OLTP atá cumasaithe ag OLAP

Cé nach n-éilíonn Google go sainráite go bhfuil Cloud Spanner deartha le haghaidh próiseála anailíseach, roinneann sé roinnt tréithe le hinnill eile cosúil le Apache Impala & Kudu agus YugaByte, atá deartha le haghaidh ualaí oibre OLAP.

Fiú mura raibh ach seans beag ann go gcuimseofaí inneall HTAP (próiseáil hibrideach idirbheartaíochta/anailísíochta) ar scála comhsheasmhach le tacar gnéithe OLAP inúsáidte (níos mó nó níos lú), is dóigh linn gur fiú ár n-aird a thabhairt air.

Agus é seo san áireamh, d'fhéachamar ar na catagóirí seo a leanas:

  • Luchtú sonraí, innéacsanna agus tacaíocht deighilte
  • Feidhmíocht Iarratas agus DML

2. Scamall Spanner i mbeagán focal

Is córas bainistíochta bunachar sonraí coibhneasta cnuasaithe (RDBMS) é Google Spanner a úsáideann Google le haghaidh roinnt dá sheirbhísí féin. Chuir Google ar fáil go ginearálta é d’úsáideoirí Google Cloud Platform go luath in 2017.

Seo cuid de na tréithe Cloud Spanner:

  • Braisle RDBMS Inscálaithe Ard-chomhsheasmhach: Úsáideann sé sioncrónú ama crua-earraí chun comhsheasmhacht sonraí a chinntiú.
  • Tacaíocht idirbhearta tras-tábla: Is féidir le hidirbhearta il táblaí a áireamh - ní gá go mbeadh siad teoranta do tábla amháin (murab ionann agus Apache HBase nó Apache Kudu).
  • Príomhtháblaí bunaithe ar eochair: Ní mór eochair phríomha dhearbhaithe (PC) a bheith ag gach tábla, ar féidir leis na colúin iolracha a bheith sa tábla. Stóráiltear sonraí tábla in ord PC, rud a fhágann go bhfuil sé an-éifeachtach agus tapa chun cuardach a dhéanamh ar ríomhaire. Cosúil le córais eile atá bunaithe ar ríomhaire, ní mór an cur i bhfeidhm a shamhaltú le cásanna úsáide réamhdheartha ar intinn le baint amach feidhmíocht is fearr.
  • Táblaí stiallacha: Is féidir le táblaí spleáchas fisiciúil ar a chéile. Is féidir sraitheanna i dtábla leanaí a mheaitseáil le sraitheanna i dtábla tuismitheora. Cuireann an cur chuige seo dlús leis an gcuardach ar ghaolmhaireachtaí is féidir a aithint le linn na céime samhaltaithe sonraí, amhail custaiméirí a chomhlonnú agus a sonraisc.
  • Innéacsanna: Tacaíonn Cloud Spanner le hinnéacsanna tánaisteacha. Is éard atá san innéacs na colúin innéacsaithe agus na colúin PC go léir. Más mian, is féidir colúin eile nach bhfuil innéacsaithe acu a bheith san innéacs. Is féidir an t-innéacs a idirdhuilleogach leis an tábla tuismitheoirí chun fiosrúcháin a bhrostú. Baineann roinnt srianta le hinnéacsanna, mar uaslíon na gcolún breise atá stóráilte san innéacs. Chomh maith leis sin, b’fhéidir nach mbeadh fiosrúcháin trí innéacsanna chomh simplí agus a dhéantar i RDBMSanna eile.

“Ní roghnaíonn Cloud Spanner innéacs go huathoibríoch ach amháin i gcásanna neamhchoitianta. Go háirithe, ní roghnaíonn Cloud Spanner innéacs tánaisteach go huathoibríoch má iarrann iarratas aon cholúin nach bhfuil stóráilte iontu innéacs '.

  • Comhaontú Leibhéal Seirbhíse (SLA): Imscaradh i réigiún amháin le CLS de 99,99%; imscaradh il-réigiúnach le 99,999% CLS. Cé nach bhfuil sa CLS féin ach comhaontú agus ní ráthaíocht de chineál ar bith, creidim go bhfuil roinnt sonraí crua ag muintir Google chun éileamh chomh láidir a dhéanamh. (Le haghaidh tagartha, ciallaíonn 99,999% 26,3 soicind de neamh-infhaighteacht seirbhíse in aghaidh na míosa.)
  • Níos mó: https://cloud.google.com/spanner/

Tabhair faoi deara: Cuireann an tionscadal Apache Tephra tacaíocht idirbheart feabhsaithe chuig Apache HBase (curtha i bhfeidhm anois in Apache Phoenix mar beta).

3. Ár measúnú

Mar sin, léigh muid go léir éilimh Google faoi na buntáistí a bhaineann le Cloud Spanner - scálaithe cothrománach beagnach gan teorainn agus comhsheasmhacht ard agus SLA an-ard á chothabháil. Cé go bhfuil na ceanglais seo, ar aon nós, thar a bheith deacair a bhaint amach, ní raibh sé mar sprioc againn iad a bhréagnú. Ina áit sin, dírímid ar rudaí eile a bhfuil an chuid is mó d'úsáideoirí bunachar sonraí ag tabhairt aire dóibh: paireacht agus inúsáidteacht.

Rinneamar measúnú ar Cloud Spanner mar ionadach do Sharded MySQL

Tá sraith gnéithe an-mhór ag Google Cloud SQL agus Amazon AWS RDS, dhá cheann de na DBMSanna OLTP is coitianta sa mhargadh scamall. Chun na bunachair shonraí seo a scála níos faide ná méid aon nód amháin, áfach, ní mór duit deighilt feidhmchlár a dhéanamh. Cruthaíonn an cur chuige seo castacht bhreise maidir le hiarratais agus riarachán araon. D'fhéachamar ar an gcaoi a n-oireann Spanner don chás ina ndéanfaí ilshards a chomhcheangal in aon chás amháin agus cad iad na gnéithe (más ann dóibh) a d'fhéadfadh a bheith riachtanach a íobairt.

Tacaíocht SQL, DML agus DDL, chomh maith le cónascaire agus leabharlanna?

Ar dtús, nuair a thosaíonn tú le haon bhunachar sonraí, ní mór duit samhail sonraí a chruthú. Má cheapann tú gur féidir leat JDBC Spanner a nascadh leis an uirlis SQL is fearr leat, gheobhaidh tú amach gur féidir leat do shonraí a cheistiú leis, ach ní féidir leat é a úsáid chun tábla a chruthú nó modhnú (DDL) nó aon chur isteach/nuashonrú/scrios oibríochtaí (DML). Ní thacaíonn JDBC oifigiúil Google le ceachtar díobh seo.

msgstr "Ní thacaíonn tiománaithe le ráitis DML nó DDL faoi láthair."
Doiciméadúchán Spanner

Níl an scéal níos fearr maidir le consól GCP - ní féidir leat ach fiosrúcháin SELECT a sheoladh. Ar ámharaí an tsaoil tá tiománaí JDBC le tacaíocht do DML agus DDL ón bpobal, lena n-áirítear idirbhearta github.com/olavloite/spanner-jdbc. Cé go bhfuil an tiománaí seo thar a bheith úsáideach, is ábhar iontais é easpa tiománaí JDBC Google féin. Go fortunately, cuireann Google tacaíocht sách leathan ar fáil do leabharlanna cliant (bunaithe ar gRPC): C#, Go, Java, node.js, PHP, Python, agus Ruby.

Mar thoradh ar úsáid beagnach éigeantach API saincheaptha Cloud Spanner (mar gheall ar easpa DDL agus DML i JDBC) tá roinnt teorainneacha ann do réimsí cód gaolmhara cosúil le linnte nasc nó creataí ceangailteach bunachar sonraí (m.sh. Spring MVC). De ghnáth, agus JDBC á n-úsáid agat, tá cead agat an linn ceangail is fearr leat a roghnú (m.sh. HikariCP, DBCP, C3PO, etc.) a thástáiltear agus a oibríonn go maith. I gcás APIanna saincheaptha Spanner, ní mór dúinn brath ar chreataí / linnte ceangailteach / seisiúin a chruthaigh muid féin.

Ligeann an dearadh centric príomh-eochair (PC) do Cloud Spanner a bheith an-tapa nuair a bhíonn rochtain á fháil ar shonraí trí ríomhaire, ach tugtar isteach roinnt ceisteanna fiosrúcháin freisin.

  • Ní féidir leat an príomhluach eochrach a nuashonrú; Ní mór duit an iontráil a scriosadh ón ríomhaire bunaidh ar dtús agus é a chur isteach arís leis an luach nua. (Tá sé seo cosúil le hinnill eile bunachar sonraí/stórála ríomhaire pearsanta.)
  • Ní mór go sonródh aon ráitis NUASHONRUITHE agus SCRÍOBH PC san ÁIT, mar sin ní féidir folamh a bheith ann Scrios gach ráiteas - ní mór fo-cheist a bheith ann i gcónaí, mar shampla: NUASHONRUITHE xxx CÁ HI id (Roghnaigh id Ó thábla 1)
  • Easpa rogha auto-incrimint nó aon rud dá samhail a leagann an t-ord don réimse PC. Chun go n-oibreoidh sé seo, ní mór an luach comhfhreagrach a chruthú ar thaobh an iarratais.

Innéacsanna tánaisteacha?

Tá tacaíocht ionsuite ag Google Cloud Spanner d’innéacsanna tánaisteacha. Is gné an-deas é seo nach bhfuil i gcónaí i dteicneolaíochtaí eile. Ní thacaíonn Apache Kudu le hinnéacsanna tánaisteacha ar chor ar bith, agus ní thacaíonn Apache HBase go díreach le hinnéacsanna, ach is féidir iad a chur leis trí Apache Phoenix.

Is féidir innéacsanna i Kudu agus HBase a shamhaltú mar tábla ar leith le comhdhéanamh difriúil d'eochracha príomhúla, ach ní mór adamhacht na n-oibríochtaí a dhéantar ar an tábla tuismitheora agus na táblaí innéacs gaolmhara a dhéanamh ag leibhéal an iarratais agus níl sé fánach a chur i bhfeidhm i gceart.

Mar a luadh san athbhreithniú Cloud Spanner, d'fhéadfadh go mbeadh a innéacsanna difriúil ó innéacsanna MySQL. Mar sin, ba cheart cúram ar leith a ghlacadh agus fiosrúcháin agus próifíliú á dtógáil lena chinntiú go n-úsáidtear an t-innéacs ceart nuair is gá.

Ionadaíocht?

Rud a bhfuil an-tóir air agus úsáideach i mbunachar sonraí ná tuairimí. Is féidir leo a bheith úsáideach le haghaidh líon mór cásanna úsáide; Is iad an dá rogha is ansa liom ná an ciseal astarraingthe loighciúil agus an ciseal slándála. Ar an drochuair, NÍ thacaíonn Cloud Spanner le tuairimí. Mar sin féin, ní chuireann sé seo teorainn orainn ach go páirteach toisc nach bhfuil aon ghráinneacht ann do cheadanna rochtana ag leibhéal an cholúin ina bhféadfadh radhairc a bheith ina réiteach inmharthana.

Féach ar dhoiciméadacht Cloud Spanner le haghaidh rannán a shonraíonn cuótaí agus srianta (castar/cuótaí), tá ceann amháin go háirithe a d’fhéadfadh a bheith ina fhadhb i gcás roinnt feidhmchlár: tá teorainn de 100 bunachar sonraí ar a mhéad ag Cloud Spanner amach as an mbosca. Ar ndóigh, d’fhéadfadh sé seo a bheith ina bhac mhór do bhunachar sonraí atá deartha chun scála go breis is 100 bunachar sonraí. Ar ámharaí an tsaoil, tar éis labhairt lenár n-ionadaí teicniúil Google, fuair muid amach gur féidir an teorainn seo a mhéadú go dtí beagnach aon luach trí Tacaíocht Google.

Tacaíocht forbartha?

Cuireann Cloud Spanner tacaíocht teanga ríomhchlárú réasúnta ar fáil chun oibriú lena API. Tá leabharlanna a fhaigheann tacaíocht oifigiúil sna réimsí C#, Go, Java, nóde.js, PHP, Python agus Ruby. Tá an doiciméadú mionsonraithe go leor, ach mar atá le ardteicneolaíochtaí eile, tá an pobal sách beag i gcomparáid leis na teicneolaíochtaí bunachar sonraí is coitianta, rud a d’fhéadfadh níos mó ama a chaitheamh ag réiteach cásanna nó fadhbanna úsáide nach bhfuil chomh coitianta.

Mar sin cad faoi thacú le forbairt áitiúil?

Níl bealach aimsithe againn chun sampla Cloud Spanner a chruthú ar an áitreabh. Ba é an rud is gaire dúinn a fuair íomhá Docker. cockroachDB, atá cosúil i bprionsabal, ach an-difriúil i gcleachtas. Mar shampla, is féidir le CockroachDB PostgreSQL JDBC a úsáid. Ós rud é gur cheart go mbeadh an timpeallacht forbartha chomh gar don timpeallacht táirgthe agus is féidir, níl Cloud Spanner idéalach toisc go gcaithfidh sé brath ar shampla Spanner iomlán. Chun costais a shábháil, is féidir leat sampla aon-réigiún a roghnú.

Tacaíocht riaracháin?

Tá sé an-simplí sampla Cloud Spanner a chruthú. Níl le déanamh agat ach rogha a dhéanamh idir cás il-réigiúin nó aon-réigiúin a chruthú, sonraigh an réigiún (na réigiúin) agus líon na nóid. I níos lú ná nóiméad, beidh do chás ar bun agus ag feidhmiú.

Tá rochtain dhíreach ar roinnt méadracht bhunúsacha ón leathanach Spanner sa Chonsól Google. Tá tuairimí níos mionsonraithe ar fáil trí Stackdriver, áit ar féidir leat tairseacha méadracha agus beartais foláirimh a shocrú freisin.

Rochtain ar acmhainní?

Cuireann MySQL socruithe fairsinge agus an-ghráinneach ar fáil do cheadanna/róil úsáideora. Is féidir leat rochtain ar thábla ar leith a chumrú go héasca, nó fiú fo-thacar dá cholúin. Úsáideann Cloud Spanner uirlis Aitheantais & Bainistíocht Rochtana Google (IAM), a ligeann duit polasaithe agus ceadanna a shocrú ar leibhéal an-ard amháin. Is é an rogha is gráinneach ná réiteach ar leibhéal an bhunachair shonraí, rud nach n-oireann don chuid is mó de chásanna úsáide táirgeachta. Cuireann an teorannú seo iallach ort bearta slándála breise a chur le do chód, bonneagar, nó an dá cheann chun úsáid neamhúdaraithe acmhainní Spanner a chosc.

Cúltacaí?

Chun é a chur go simplí, níl aon chúltacaí i Cloud Spanner. Cé gur féidir le hardriachtanais SLA Google a chinntiú nach gcaillfidh tú aon sonraí mar gheall ar theipeanna crua-earraí nó bunachair shonraí, earráidí daonna, lochtanna feidhmchláir, etc. Faoi láthair, is é an t-aon bhealach le sonraí a chúltaca ná iad a shruthú go clárach ó bhunachar sonraí go timpeallacht stórála ar leith.

Feidhmíocht ceiste?

D’úsáideamar Yahoo! chun sonraí a lódáil agus chun fiosrúcháin a thástáil. Tagarmharc Freastal Néal. Léiríonn an tábla thíos ualach oibre B YCSB le cóimheas léite 95% go 5%.

Google Cloud Spanner: An Maith, an Droch agus an Gránna

* Reáchtáladh an tástáil ualaigh ar an Inneall Ríomh n1-caighdeánach-32 (CE) (32 vCPU, cuimhne 120 GB), agus ní raibh an sampla tástála ina bhac sna tástálacha.
** Is é 400 an t-uaslíon snáitheanna i gcás amháin YCSB. B'éigean sé chás comhthreomhara de thástálacha YCSB a rith chun 2400 snáithe san iomlán a fháil.

Ag féachaint ar na torthaí tagarmharcála, go háirithe an meascán d'ualach LAP agus TPS, is féidir linn a fheiceáil go soiléir go bhfuil scálaí Cloud Spanner sách maith. Déantar an t-ualach trom a chruthaíonn an líon mór snáitheanna a fhritháireamh ag an líon mór nóid sa bhraisle Cloud Spanner. Cé go bhfuil cuma sách ard ar an bhfoighne, go háirithe agus 2400 snáithe á rith agat, d’fhéadfadh go mbeadh gá le haththástáil le 6 chás níos lú den inneall ríomh chun uimhreacha níos cruinne a fháil. Rithfidh gach cás tástáil YCSB amháin in ionad ásc mór CE amháin le 6 thástáil chomhthreomhara. Ar an mbealach seo, beidh sé níos éasca idirdhealú a dhéanamh idir latency iarratas Cloud Spanner agus latency a chuirtear leis ag an nasc líonra idir Cloud Spanner agus an t-ásc CE a ritheann an tástáil.

Conas a fheidhmíonn Cloud Spanner mar OLAP?

Partitioning?

Coincheap a bhfuil an-tóir air i bhformhór na n-innill OLAP is ea sonraí a roinnt ina ndeighleoga atá neamhspleách go fisiciúil agus/nó go loighciúil, ar a dtugtar landairí. Is féidir le Deighiltí feabhas suntasach a chur ar fheidhmíocht fiosrúcháin agus inchothaitheacht an bhunachair shonraí. Bheadh ​​alt(anna) ar leith ag dul níos doimhne isteach sa dheighilt, mar sin déanaimis trácht ar an tábhacht a bhaineann le scéim deighilte agus fo-dheighilte. Tá an cumas sonraí a bhriseadh síos ina ndeighiltí agus níos faide fós ina bhfo-rannóga ríthábhachtach d’fheidhmíocht fiosrúcháin anailíse.

Ní thacaíonn Cloud Spanner le deighiltí mar sin. Roinneann sé na sonraí go hinmheánach i mar a thugtar air scoilt-s bunaithe ar eochair-raonta bunscoile. Déantar deighilt go huathoibríoch chun an t-ualach a chothromú i mbraisle Cloud Spanner. Gné an-úsáideach de Cloud Spanner is ea bunualach an tábla tuismitheora a scoilteadh (tábla nach bhfuil idirdhuilleach le ceann eile). Aimsíonn Spanner go huathoibríoch cibé an bhfuil scoilt sonraí a léitear níos minice ná sonraí eile scoilt-ah, agus féadfaidh sé cinneadh a dhéanamh ar scaradh breise. Ar an mbealach seo, is féidir níos mó nóid a bheith páirteach in iarratas, rud a mhéadaíonn tréchur go héifeachtach freisin.

Sonraí á lódáil?

Tá an modh Cloud Spanner le haghaidh sonraí mórchóir mar an gcéanna leis an ngnáthlódáil. Chun an fheidhmíocht uasta a bhaint amach, ní mór duit roinnt treoirlínte a leanúint, lena n-áirítear:

  • Sórtáil do shonraí de réir príomheochair.
  • Roinn iad ar 10*líon na nóid ailt ar leith.
  • Cruthaigh sraith tascanna oibre a luchtaíonn sonraí go comhthreomhar.

Úsáideann an luchtú sonraí seo gach nóid Cloud Spanner.

D’úsáideamar ualach oibre YCSB A chun tacar sonraí de shraitheanna 10M a ghiniúint.

Google Cloud Spanner: An Maith, an Droch agus an Gránna

* Reáchtáladh an tástáil ualaigh ar an inneall ríomh n1-caighdeánach-32 (32 vCPU, cuimhne 120 GB), agus ní raibh an sampla tástála ina bhac sna tástálacha.
**Ní mholtar socrú nód singil le haghaidh aon ualach oibre táirgthe.

Mar a luadh thuas, déanann Cloud Spanner scoilteanna a phróiseáil go huathoibríoch bunaithe ar a n-ualach, agus mar sin feabhsaítear torthaí tar éis roinnt athrá tástála i ndiaidh a chéile. Is iad na torthaí a chuirtear i láthair anseo na torthaí is fearr a fuaireamar. Ag féachaint ar na huimhreacha thuas, is féidir linn a fheiceáil conas a scálaíonn Cloud Spanner (go maith) de réir mar a mhéadaíonn líon na nóid sa bhraisle. Is iad na huimhreacha a sheasann amach ná na meántréimhseacha thar a bheith íseal, atá i gcodarsnacht leis na torthaí maidir le hualaí oibre measctha (léamh 95% agus scríobhann 5%) mar a thuairiscítear sa chuid thuas.

Scálú?

Is tasc aon-cliceáil é líon na nóid Cloud Spanner a mhéadú agus a laghdú. Más mian leat sonraí a lódáil go tapa, b'fhéidir go smaoineodh tú ar do chás a mhéadú go dtí an t-uasmhéid (25 nód a bhí i gceist sa réigiún SAM-AN OIRTHIR inár gcás) agus ansin líon na nód atá incháilithe do do ghnáthualach a laghdú nuair a bheidh na sonraí go léir istigh. an bunachar sonraí , ag tagairt don teorainn 2TB/nód.

Meabhraíodh dúinn an teorainn seo fiú le bunachar sonraí i bhfad níos lú. Tar éis roinnt trialacha ualaigh a rith, bhí ár mbunachar sonraí thart ar 155 GB i méid, agus nuair a rinneadh é a scála síos go dtí nód 1, fuaireamar an earráid seo a leanas:

Google Cloud Spanner: An Maith, an Droch agus an Gránna

D'éirigh linn scála a laghdú ó 25 go 2 chás, ach bhíomar i bhfostú ag dhá nód.

Is féidir méadú agus laghdú ar líon na nóid i mbraisle Cloud Spanner a uathoibriú ag baint úsáide as an REST API. D’fhéadfadh sé seo a bheith úsáideach go háirithe chun ualach méadaithe an chórais a laghdú le linn uaireanta oibre gnóthacha.

Feidhmíocht fiosrúcháin OLAP?

Bhí sé beartaithe againn ar dtús méid suntasach ama a chaitheamh inár meastóireacht ar Spanner ar an gcuid seo. Tar éis roinnt SELECT COUNTs, thuig muid láithreach go mbeadh an tástáil gearr agus NACH mbeadh Spanner inneall oiriúnach do OLAP. Beag beann ar líon na nóid sa bhraisle, níor ghlac sé ach idir 10 agus 55 soicind chun líon na sraitheanna a roghnú i dtábla sraithe 60M. Ina theannta sin, theip ar aon cheist a raibh níos mó cuimhne ag teastáil uaidh chun torthaí idirmheánacha a stóráil le hearráid OOM.

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

Tá roinnt uimhreacha le haghaidh fiosrúcháin TPC-H le fáil in alt Todd Lipcon Nosql-kudu-spanner-slides.html, sleamhnáin 42 agus 43. Tá na huimhreacha seo ag teacht lenár dtorthaí féin (ar an drochuair).

Google Cloud Spanner: An Maith, an Droch agus an Gránna

4. Ár gconclúidí

Mar gheall ar staid reatha ghnéithe Cloud Spanner, tá sé deacair a shamhlú gur athsholáthar simplí é do do réiteach OLTP atá ann cheana féin, go háirithe nuair a bhíonn do riachtanais níos mó ná é. Chaithfí méid suntasach ama ag tógáil réiteach timpeall ar easnaimh Cloud Spanner.

Nuair a thosaigh muid ag déanamh meastóireachta ar Cloud Spanner, bhíomar ag súil go mbeadh a ghnéithe bainistíochta ar chomhchéim le réitigh eile Google SQL, nó ar a laghad gan a bheith rófhada uathu. Ach bhí iontas orainn faoin easpa cúltaca iomlán agus smacht an-teoranta ar rochtain ar acmhainní. Gan trácht ar aon tuairimí, gan aon timpeallacht forbartha áitiúla, seichimh gan tacaíocht, JDBC gan tacaíocht DML agus DDL, agus mar sin de.

Mar sin, cén áit a dtéann duine éigin a bhfuil gá aige le bunachar sonraí idirbheartaíochta a scála? Is cosúil nach bhfuil réiteach aonair ar an margadh a oireann do gach cás úsáide. Tá go leor réitigh dúnta agus foinse oscailte (cuid acu luaite san alt seo), gach ceann acu lena láidreachtaí agus a laigí féin, ach ní thairgeann aon cheann acu SaaS le SLA 99,999% agus comhsheasmhacht ard. Más é CLS ard do phríomhsprioc agus nach bhfuil claonadh agat réiteach il-scamall saincheaptha a thógáil, b’fhéidir gurb é Cloud Spanner an réiteach atá á lorg agat. Ach ba chóir duit a bheith ar an eolas faoi na teorainneacha go léir a bhaineann leis.

Chun a bheith cothrom, níor scaoileadh Cloud Spanner don phobal ach in earrach na bliana 2017, agus mar sin tá sé réasúnta a bheith ag súil go bhféadfadh cuid dá easnaimh reatha imeacht ar deireadh thiar (tá súil agam), agus nuair a dhéanann siad, d'fhéadfadh sé a bheith ina changer cluiche. Tar éis an tsaoil, ní hamháin gur tionscadal taobh é Cloud Spanner do Google. Úsáideann Google é mar bhunús do tháirgí eile Google. Agus nuair a chuir Google Cloud Spanner in ionad Megastore in Google Cloud Storage le déanaí, cheadaigh sé do Google Cloud Storage a bheith an-chomhsheasmhach le haghaidh liostaí réada ar scála domhanda (rud nach bhfuil fós i gcás Amazon's S3).

Mar sin, tá dóchas ann fós... tá súil againn.

Sin é an méid. Cosúil le húdar an ailt, leanaimid orainn ag súil freisin, ach cad a cheapann tú faoi seo? Scríobh sna tuairimí

Tugaimid cuireadh do gach duine cuairt a thabhairt ar ár webinar saor in aisce laistigh de inseoimid duit go mion faoin gcúrsa "AWS d'Fhorbróirí" ó OTUS.

Foinse: will.com

Add a comment