Google Cloud Spanner: Mai kyau, mara kyau, mara kyau

Sannu, Khabrovits. A al'ada, muna ci gaba da raba abubuwa masu ban sha'awa a jajibirin farkon sabbin darussa. A yau, musamman a gare ku, mun fassara wani labarin game da Google Cloud Spanner, wanda aka yi daidai da ƙaddamar da kwas. "AWS don Masu Haɓakawa".

Google Cloud Spanner: Mai kyau, mara kyau, mara kyau

An buga asali a Lightspeed HQ blog.

A matsayin kamfani wanda ke ba da nau'ikan hanyoyin POS na tushen girgije don masu siyarwa, masu cin abinci, da masu siyar da kan layi a duk duniya, Lightspeed yana amfani da nau'ikan dandamali daban-daban na dandamali don ma'amala iri-iri, nazari, da lokuta masu amfani. Kowane ɗayan waɗannan dandali na bayanan yana da nasa ƙarfi da rauninsa.Saboda haka, lokacin da Google ya gabatar da Cloud Spanner zuwa kasuwa - fasalulluka masu ban sha'awa waɗanda ba a taɓa ganin su ba a cikin duniyar bayanan da ke da alaƙa, kamar kusan daidaitawar kwance mara iyaka da yarjejeniya matakin sabis na 99,999% (SLA) , Ba za mu iya ba da damar samun ta a hannunmu ba!

Don ba da cikakken bayyani game da kwarewarmu tare da Cloud Spanner, da ma ka'idojin kimantawa da muka yi amfani da su, za mu rufe batutuwa masu zuwa:

  1. Ma'aunin kimanta mu
  2. Cloud Spanner a takaice
  3. Kimammu
  4. Abubuwan da muka gano

Google Cloud Spanner: Mai kyau, mara kyau, mara kyau

1. Ma'aunin kimanta mu

Kafin nutsewa cikin ƙayyadaddun ƙayyadaddun Cloud Spanner, kamancensa da bambance-bambancensa tare da sauran mafita akan kasuwa, bari mu fara magana game da manyan lamuran amfani da muke da su yayin yin la'akari da inda za mu tura Cloud Spanner a cikin abubuwan more rayuwa:

  • A matsayin maye gurbin (mafi rinjaye) na gargajiya na SQL bayani
  • A matsayin maganin OLTP tare da tallafin OLAP

Note: Don sauƙin kwatanta, wannan labarin yana kwatanta Cloud Spanner tare da bambance-bambancen MySQL na GCP Cloud SQL da Amazon AWS RDS mafita iyalai.

Amfani da Cloud Spanner a matsayin maye gurbin maganin bayanan SQL na gargajiya

A cikin muhalli gargajiya bayanan bayanai, lokacin da lokacin amsa tambayoyin bayanan bayanai ya gabato ko ma ya wuce ƙayyadaddun ƙayyadaddun ƙayyadaddun ƙayyadaddun bayanai (musamman saboda karuwar yawan masu amfani da/ko buƙatun), akwai hanyoyi da yawa don rage lokacin amsawa zuwa matakan karɓuwa. Koyaya, yawancin waɗannan mafita sun haɗa da sa hannun hannu.

Misali, mataki na farko da za a ɗauka shine duba saitunan bayanai daban-daban masu alaƙa da aiki da daidaita su zuwa mafi kyawun tsarin yanayin amfani da aikace-aikacen. Idan wannan bai isa ba, zaku iya zaɓar don auna ma'ajin bayanai a tsaye ko a kwance.

Ƙirƙirar aikace-aikacen ya haɗa da sabunta misalin uwar garken, yawanci ta ƙara ƙarin sarrafawa/cores, ƙarin RAM, ajiya mai sauri, da sauransu. Ƙara ƙarin albarkatun kayan aiki yana haifar da ƙara yawan aikin bayanai, wanda aka auna da farko a cikin ma'amaloli a cikin dakika, da latency na ma'amala don tsarin OLTP. Tsarin bayanai na dangantaka (waɗanda ke amfani da tsarin zare da yawa) kamar sikelin MySQL da kyau a tsaye.

Akwai kurakurai da yawa ga wannan tsarin, amma mafi bayyane shine matsakaicin girman uwar garken akan kasuwa. Da zarar an kai mafi girman iyakar Misalin Uwargida, akwai hanya guda ɗaya ta rage: sikelin fita.

Scale-out wata hanya ce da ke ƙara ƙarin sabobin zuwa gungu don haɓaka aiki daidai gwargwado yayin da ake ƙara ƙarin sabobin. Galibi gargajiya Tsarukan bayanai ba su da ma'auni da kyau ko kuma ba sa yin awo kwata-kwata. Misali, MySQL na iya haɓakawa don karantawa ta ƙara masu karatun bawa, amma ba zai iya yin ƙima don rubutawa ba.

A gefe guda, saboda yanayinsa, Cloud Spanner yana iya yin ma'auni cikin sauƙi a kwance tare da ƙaramar sa baki.

Cikakken fasali DBMS azaman sabis dole ne a tantance ta ta fuskoki daban-daban. A matsayin tushe, mun ɗauki DBMS mafi mashahuri a cikin gajimare - don Google, GCP Cloud SQL da Amazon, AWS RDS. A cikin kimantawarmu, mun mai da hankali kan nau'ikan nau'ikan:

  • Taswirar fasali: girman SQL, DDL, DML; haɗin ɗakin karatu / masu haɗin kai, tallafin ma'amala, da sauransu.
  • Taimakon haɓakawa: Sauƙin haɓakawa da gwaji.
  • Tallafin Gudanarwa: Gudanar da misali kamar haɓakawa sama / ƙasa da haɓaka al'amura; SLA, wariyar ajiya da farfadowa; tsaro / ikon shiga.

Amfani da Cloud Spanner azaman Maganin OLTP-An kunna OLAP

Duk da yake Google bai bayyana a sarari cewa Cloud Spanner don nazari ne ba, yana raba wasu halaye tare da wasu injuna irin su Apache Impala & Kudu da YugaByte waɗanda aka tsara don ayyukan OLAP.

Ko da akwai ƙananan dama cewa Cloud Spanner ya haɗa da daidaitaccen sikelin-fita HTAP (Hybrid Transactional/Analytic Processing) injin tare da saitin fasalin OLAP mai amfani (mafi ko ƙasa da haka), muna tsammanin zai dace da hankalinmu.

Tare da wannan a zuciya, mun kalli nau'ikan nau'ikan:

  • Load da bayanai, fihirisa da tallafin rarrabawa
  • Ayyukan tambaya da DML

2. Cloud Spanner a takaice

Google Spanner tsarin kula da bayanai ne mai tari (RDBMS) wanda Google ke amfani da shi don yawancin ayyukansa. Google ya sanya shi a bainar jama'a ga masu amfani da Google Cloud Platform a farkon 2017.

Ga wasu daga cikin halayen Cloud Spanner:

  • Daidaitaccen Daidaituwa, Rukunin RDBMS mai Sikeli: Yana amfani da aiki tare lokacin kayan aiki don tabbatar da daidaiton bayanai.
  • Taimakon ma'amalar teburi: Ma'amaloli na iya ɗaukar teburi da yawa - ba lallai ba ne iyakance ga tebur ɗaya (ba kamar Apache HBase ko Apache Kudu ba).
  • Teburan Maɓalli na Farko: Duk allunan dole ne su sami maɓalli na Farko da aka ayyana (PC), wanda zai iya ƙunshi ginshiƙan tebur da yawa. Ana adana bayanan tabular a cikin tsari na PC, wanda ke sa ya zama mai inganci da sauri don binciken PC. Kamar yadda yake tare da sauran tsarin tushen PC, aiwatarwar dole ne a ƙirƙira shi akan abubuwan da aka riga aka yi amfani da su don cimma nasara mafi kyawun aiki.
  • Tebura masu tsiri: Tebura na iya samun dogaro na zahiri akan juna. Za a iya daidaita layuka na tebur na yaro tare da layuka na tebur na iyaye. Wannan hanya tana hanzarta neman alaƙar da za a iya tantancewa a matakin ƙirar bayanai, misali, lokacin sanya abokan ciniki da daftarin su tare.
  • Fihirisa: Cloud Spanner yana goyan bayan fihirisa na biyu. Fihirisar ta ƙunshi ginshiƙai masu maƙasudi da duk ginshiƙan PC. Optionally, fihirisar kuma na iya ƙunsar wasu ginshiƙan da ba a lissafta ba. Ana iya haɗa fihirisar tare da tebur na iyaye don hanzarta tambayoyin. Hane-hane da dama sun shafi fihirisa, kamar matsakaicin adadin ƙarin ginshiƙai waɗanda za a iya adana su a cikin fihirisa. Hakanan, tambayoyin ta hanyar fihirisa ƙila ba za su kasance masu sauƙi kamar a cikin sauran RDBMS ba.

“Cloud Spanner yana zaɓar fihirisar ta atomatik a lokuta da ba kasafai ba. Musamman, Cloud Spanner ba ya zaɓar fihirisar sakandare ta atomatik idan tambayar ta buƙaci kowane ginshiƙan da ba a adana su a ciki ba. index ".

  • Yarjejeniyar Matsayin Sabis (SLA): Yankin yanki guda ɗaya tare da 99,99% SLA; ƙaddamar da yankuna da yawa tare da 99,999% SLA. Duk da yake SLA kanta yarjejeniya ce kawai kuma ba garantin kowane nau'in ba, na yi imani cewa mutanen Google suna da wasu bayanai masu wahala don yin irin wannan da'awar. (Don tunani, 99,999% yana nufin 26,3 seconds na raguwar lokacin sabis kowane wata.)
  • Ƙari: https://cloud.google.com/spanner/

Note: Aikin Apache Tephra yana ƙara tallafin ma'amala na ci gaba zuwa Apache HBase (wanda kuma yanzu ake aiwatar dashi a Apache Phoenix azaman beta).

3. Kimammu

Don haka, duk mun karanta bayanan Google game da fa'idodin Cloud Spanner - kusan ƙima mara iyaka a kwance yayin da muke riƙe babban daidaito da SLA mai girma. Ko da yake waɗannan ikirari, a kowane hali, suna da matuƙar wahala a cimma su, burinmu ba shine mu karyata su ba. Madadin haka, bari mu mai da hankali kan wasu abubuwan da yawancin masu amfani da bayanai ke kula da su: daidaito da kuma amfani.

Mun kimanta Cloud Spanner a matsayin maye gurbin Sharded MySQL

Google Cloud SQL da Amazon AWS RDS, biyu daga cikin mashahuran ma'ajin bayanai na OLTP a cikin kasuwar gajimare, suna da babban tsarin fasali. Koyaya, don auna waɗannan bayanan bayanan sama da girman kumburi guda ɗaya, kuna buƙatar aiwatar da rarraba aikace-aikacen. Wannan tsarin yana haifar da ƙarin rikitarwa don aikace-aikace da gudanarwa. Mun kalli yadda Spanner ya dace da yanayin haɗa ɓangarorin da yawa a cikin misali ɗaya da waɗanne siffofi (idan akwai) za a iya sadaukar da su.

Goyon bayan SQL, DML da DDL, haka kuma mai haɗawa da ɗakunan karatu?

Da farko, lokacin farawa da kowane bayanan bayanai, kuna buƙatar ƙirƙirar ƙirar bayanai. Idan kuna tunanin za ku iya haɗa JDBC Spanner zuwa kayan aikin SQL da kuka fi so, za ku ga cewa za ku iya tambayar bayananku da shi, amma ba za ku iya amfani da shi don ƙirƙirar tebur ko sabuntawa (DDL) ko duk wani sakawa / sabuntawa / sharewa ba. aiki (DML). JDBC na hukuma na Google baya goyan bayan haka.

"A halin yanzu direbobi ba sa goyan bayan bayanan DML ko DDL."
Takardun Spanner

Yanayin bai fi kyau ba tare da na'urar wasan bidiyo na GCP - kuna iya aika tambayoyin SELECT kawai. An yi sa'a akwai direban JDBC tare da tallafin DML da DDL daga al'umma gami da ma'amaloli github.com/olavloite/spanner-jdbc. Duk da yake wannan direban yana da matukar amfani, rashin direban JDBC na Google yana da ban mamaki. Sa'ar al'amarin shine, Google yana ba da tallafin ɗakin karatu na abokin ciniki mai faɗi (dangane da gRPC): C #, Go, Java, node.js, PHP, Python, da Ruby.

Amfani kusa da wajibi na APIs na al'ada na Cloud Spanner (saboda rashin DDL da DML a cikin JDBC) yana haifar da wasu iyakoki don wuraren da ke da alaƙa kamar haɗa haɗin haɗi ko tsarin daurin bayanai (kamar Spring MVC). Gabaɗaya, lokacin amfani da JDBC, kuna da 'yanci don zaɓar wuraren haɗin da kuka fi so (misali HikariCP, DBCP, C3PO, da sauransu) waɗanda aka gwada kuma suna aiki da kyau. A cikin yanayin Spanner APIs na al'ada, dole ne mu dogara ga tsarin tsarin / ɗaure / wuraren tafki waɗanda muka ƙirƙira kanmu.

Maɓalli na farko (PC) yana ba da damar Cloud Spanner ya kasance cikin sauri lokacin samun damar bayanai ta PC, amma kuma yana gabatar da wasu batutuwan tambaya.

  • Ba za ku iya sabunta ƙimar maɓalli na farko ba; Dole ne ku fara share ainihin shigarwar PC kuma ku sake saka ta tare da sabuwar ƙima. (Wannan yayi kama da sauran injunan adana bayanai na PC.)
  • Duk bayanan UPDATE da DELETE dole ne su ƙayyade PC ɗin a cikin INA, saboda haka, ba za a iya samun komai ba DELETE duk bayanan - dole ne a kasance a koyaushe a yi subquery, misali: UPDATE xxx INA id IN (Zabi id DAGA tebur1)
  • Rashin zaɓin haɓakawa ta atomatik ko wani abu makamancin haka wanda ke saita jerin abubuwan filin PC. Don yin aiki, dole ne a ƙirƙiri madaidaicin ƙimar a gefen aikace-aikacen.

Fihirisar sakandare?

Google Cloud Spanner yana da ginanniyar tallafi don fihirisar sakandare. Wannan siffa ce mai kyau wacce ba koyaushe take cikin wasu fasahohin ba. Apache Kudu a halin yanzu baya tallafawa fihirisar sakandare kwata-kwata, kuma Apache HBase baya goyan bayan fihirisa kai tsaye, amma yana iya ƙara su ta Apache Phoenix.

Fihirisa a Kudu da HBase za a iya ƙirƙira su azaman tebur daban tare da maɓalli daban-daban na maɓallai na farko, amma atomity na ayyukan da aka yi akan teburin iyaye da allunan fihirisa masu alaƙa dole ne a yi su a matakin aikace-aikacen kuma ba ƙaramin aiki ba ne don aiwatarwa daidai.

Kamar yadda aka ambata a cikin bita na Cloud Spanner, fihirisar sa na iya bambanta da maƙasudin MySQL. Don haka, dole ne a ba da kulawa ta musamman wajen gina tambaya da yin bayanin martaba don tabbatar da cewa an yi amfani da maƙasudin daidai inda ake buƙata.

Wakilci?

Shahararren abu mai fa'ida a cikin rumbun adana bayanai shine ra'ayoyi. Za su iya zama da amfani ga yawancin lokuta masu amfani; Na fi so biyu sune Layer abstraction na ma'ana da Layer tsaro. Abin takaici Cloud Spanner baya goyan bayan ra'ayoyi. Koyaya, wannan kawai wani ɗan lokaci yana iyakance mu, saboda babu ƙaƙƙarfan matakin ginshiƙa don samun izini inda ra'ayoyi zasu iya zama mafita mai karɓuwa.

Duba takaddun Spanner na Cloud don wani sashe da ke ba da cikakken bayanin ƙididdiga da iyakoki (spanner/quotas), akwai musamman wanda zai iya zama matsala ga wasu aikace-aikace: Cloud Spanner daga cikin akwatin yana da matsakaicin ma'aunin bayanai 100 a kowane misali. Babu shakka, wannan na iya zama babbar matsala ga ma’adanar bayanai da aka ƙera don ta kai sama da 100 bayanai. Sa'ar al'amarin shine, bayan magana da wakilinmu na fasaha na Google, mun gano cewa ana iya ƙara wannan iyaka zuwa kusan kowace ƙima ta hanyar Tallafin Google.

Tallafin ci gaba?

Cloud Spanner yana ba da ingantaccen tallafin harshe shirye-shirye don aiki tare da API ɗin sa. Laburaren da aka tallafawa bisa hukuma suna cikin yankin C #, Go, Java, node.js, PHP, Python, da Ruby. Takaddun yana da cikakkun bayanai, amma kamar yadda yake da sauran fasahohin zamani, al'umma ba su da yawa idan aka kwatanta da mafi shaharar fasahar bayanai, wanda zai iya haifar da ƙarin lokacin da ake kashewa akan lokuta ko matsaloli marasa amfani.

To yaya batun tallafin ci gaban gida?

Ba mu sami wata hanya don ƙirƙirar misalin Cloud Spanner a kan-gida ba. Mafi kusa da mu shine hoton Docker KyankyasoDBwanda yayi kama da manufa, amma ya bambanta sosai a aikace. Misali CockroachDB na iya amfani da PostgreSQL JDBC. Tun da yanayin ci gaba ya kamata ya kasance kusa da yanayin samarwa, Cloud Spanner bai dace ba saboda kuna buƙatar dogaro da cikakken misalin Spanner. Don adana farashi, zaku iya zaɓar misalin yanki ɗaya.

Tallafin gwamnati?

Ƙirƙirar misalin Cloud Spanner abu ne mai sauƙi. Kawai kawai kuna buƙatar zaɓi tsakanin ƙirƙirar yanki da yawa ko misalin yanki ɗaya, saka yanki(s) da adadin nodes. A cikin ƙasa da minti ɗaya, misalin zai tashi yana gudana.

Ana samun ma'auni na farko kai tsaye akan shafin Spanner a cikin Google Console. Ana samun ƙarin cikakkun bayanai ta hanyar Stackdriver, inda zaku iya saita matakan awo da manufofin faɗakarwa.

Samun dama ga albarkatu?

MySQL yana ba da izini / saitunan rawar mai amfani mai yawa kuma mai girma. Kuna iya keɓance damar zuwa takamaiman tebur cikin sauƙi, ko ma wani yanki na ginshiƙansa. Cloud Spanner yana amfani da kayan aikin Google Identity & Access Management (IAM), wanda kawai ke ba ku damar saita manufofi da izini a babban matsayi. Mafi kyawun zaɓi shine izinin matakin bayanai, wanda bai dace da yawancin abubuwan samarwa ba. Wannan ƙuntatawa yana tilasta ku ƙara ƙarin matakan tsaro zuwa lambar ku, kayan aikinku, ko duka biyu don hana amfani da albarkatun Spanner mara izini.

Ajiyayyen?

Don sanya shi a sauƙaƙe, babu madadin ajiya a cikin Cloud Spanner. Yayin da manyan buƙatun SLA na Google na iya tabbatar da cewa ba za ku rasa kowane bayanai ba saboda hardware ko gazawar bayanai, kuskuren ɗan adam, lahani na aikace-aikacen, da dai sauransu. Dukanmu mun san ƙa'idar: babban samuwa ba shine madadin dabarun wayo ba. A halin yanzu, hanya ɗaya tilo don adana bayanai ita ce ta hanyar shirye-shirye daga rumbun adana bayanai zuwa wani yanayi na daban.

Ayyukan tambaya?

Mun yi amfani da Yahoo! don loda bayanai da gwada tambayoyin. Cloud Serving Benchmark. Tebur da ke ƙasa yana nuna nauyin aikin B YCSB tare da rabon rubutu na 95% zuwa 5%.

Google Cloud Spanner: Mai kyau, mara kyau, mara kyau

* An gudanar da gwajin lodin akan n1-standard-32 Compute Engine (CE) (32vCPUs, 120 GB memory) kuma misalin gwajin bai taba zama kangi a cikin gwaje-gwajen ba.
** Matsakaicin adadin zaren a cikin misalin YCSB ɗaya shine 400. Gabaɗaya, an gudanar da misalan guda shida na gwajin YCSB don samun jimlar zaren 2400.

Duban sakamakon ma'auni, musamman haɗuwa da nauyin CPU da TPS, zamu iya gani a fili cewa Cloud Spanner yana da kyau sosai. Babban nauyin da aka ƙirƙira ta babban adadin zaren an daidaita shi ta babban adadin nodes a cikin gungun Cloud Spanner. Ko da yake latency yana da kyau sosai, musamman lokacin da yake gudana a zaren 2400, yana iya zama dole a sake gwadawa tare da ƙananan misalan 6 na injin lissafi don samun ingantattun lambobi. Kowane misali zai gudanar da gwajin YCSB ɗaya maimakon babban misalin CE guda ɗaya tare da gwaje-gwaje iri ɗaya guda 6. Wannan yana sauƙaƙa bambanta tsakanin jinkirin buƙatun Cloud Spanner da jinkirin da aka ƙara ta hanyar haɗin yanar gizo tsakanin Cloud Spanner da misalin CE da ke gudanar da gwajin.

Ta yaya Cloud Spanner ke aiki azaman OLAP?

Rarraba?

Rarraba bayanai zuwa sassa masu zaman kansu na zahiri da/ko a hankali, da ake kira partitions, sanannen ra'ayi ne da ake samu a yawancin injunan OLAP. Bangare na iya inganta aikin tambaya sosai da kiyaye bayanan bayanai. Kara tonawa cikin rarraba zai zama wani labarin daban ne, don haka bari kawai mu ambaci mahimmancin samun tsarin rarrabawa da rarrabawa. Ƙarfin raba bayanai zuwa ɓangarori har ma da gaba zuwa ƙananan ɓangarori shine mabuɗin don aiwatar da tambayoyin nazari.

Cloud Spanner baya goyan bayan ɓangarori guda ɗaya. Yana raba bayanai a ciki zuwa abin da ake kira Rabu-s dangane da firamare maɓalli. Ana yin rarrabuwar kai ta atomatik don daidaita nauyin da ke kan gungun Cloud Spanner. Wani fasali mai mahimmanci na Cloud Spanner yana raba nauyin tushe na tebur na iyaye (tebur da ba a haɗa shi da wani ba). Spanner ta atomatik yana gano idan ya ƙunshi Rabu bayanan da ake karantawa akai-akai fiye da bayanan wasu Rabu-ah, kuma zai iya yanke shawara akan ƙarin rabuwa. Don haka, ana iya shigar da ƙarin nodes a cikin buƙatun, wanda kuma yana ƙaruwa yadda ya kamata.

Ana loda bayanai?

Hanyar Cloud Spanner don babban bayanai iri ɗaya ne da na lodawa akai-akai. Don iyakar aiki, kuna buƙatar bin wasu jagororin, gami da:

  • Sanya bayananku ta maɓalli na farko.
  • A raba su da 10*adadin nodes daidaikun sassan.
  • Ƙirƙiri saitin ayyukan ma'aikaci waɗanda ke loda bayanai a layi daya.

Wannan nauyin bayanan yana amfani da duk Cloud Spanner nodes.

Mun yi amfani da aikin A YCSB don samar da saitin bayanan jere na 10M.

Google Cloud Spanner: Mai kyau, mara kyau, mara kyau

* An gudanar da gwajin lodin akan injin n1-standard-32 compute engine (32 vCPUs, 120 GB memory) kuma misalin gwajin bai taba zama cikas a cikin gwaje-gwajen ba.
** Ba a ba da shawarar saitin kumburi 1 don kowane aikin samarwa ba.

Kamar yadda aka ambata a sama, Cloud Spanner yana aiwatar da rarrabuwa ta atomatik dangane da nauyinsu, don haka sakamakon ya inganta bayan an maimaita maimaita gwajin. Sakamakon da aka gabatar anan shine mafi kyawun sakamako da muka samu. Idan muka kalli lambobin da ke sama, za mu iya ganin yadda Cloud Spanner ma'auni (da kyau) yayin da adadin nodes a cikin tari ya karu. Lambobin da suka fito waje suna da ƙarancin jinkiri, wanda ya bambanta da sakamako daga haɗaɗɗun ayyukan aiki (karanta 95% da 5% rubuta) kamar yadda aka bayyana a sashin da ke sama.

Scaling?

Ƙarawa da rage adadin Cloud Spanner nodes aiki ne na dannawa ɗaya. Idan kuna son loda bayanai da sauri, kuna iya yin la'akari da haɓaka misali zuwa matsakaicin (a cikin yanayinmu akwai nodes 25 a cikin yankin US-EAST) sannan ku rage adadin nodes masu dacewa da nauyin ku na yau da kullun bayan duk bayanan. a cikin ma'ajin bayanai, la'akari da iyakar 2 TB/node.

An tunatar da mu wannan iyaka har ma da ƙaramin bayanai. Bayan gwaje-gwajen gwaji da yawa, bayanan mu ya kasance kusan 155 GB a girman, kuma lokacin da aka daidaita shi zuwa misalin kumburin 1, mun sami kuskure mai zuwa:

Google Cloud Spanner: Mai kyau, mara kyau, mara kyau

Mun sami damar raguwa daga lokuta 25 zuwa 2, amma mun makale a kan nodes biyu.

Ƙirar da rage adadin nodes a cikin gungun Spanner na Cloud ana iya sarrafa shi ta amfani da REST API. Wannan na iya zama da amfani musamman don rage ƙãra nauyi a kan tsarin a cikin sa'o'i masu aiki.

Ayyukan tambayar OLAP?

Da farko mun shirya ba da lokaci mai yawa don kimanta Spanner a wannan ɓangaren. Bayan 'yan SELECT COUNTs, nan da nan muka gane cewa gwajin zai zama gajere kuma Spanner BA ZAI zama injin da ya dace da OLAP ba. Ba tare da la'akari da adadin nodes a cikin gungu ba, kawai zaɓin adadin layuka a cikin jeri na 10M ya ɗauki 55 zuwa 60 seconds. Hakanan, duk wata tambaya da ke buƙatar ƙarin ƙwaƙwalwar ajiya don adana matsakaicin sakamako ta gaza tare da kuskuren OOM.

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

Ana iya samun wasu lambobi don tambayoyin TPC-H a cikin labarin Todd Lipcon nosql-kudu-spanner-slides.html, nunin faifai 42 da 43. Waɗannan lambobin sun yi daidai da sakamakon namu (abin takaici).

Google Cloud Spanner: Mai kyau, mara kyau, mara kyau

4. Abubuwan da muka gano

Ganin halin da ake ciki na fasalulluka na Cloud Spanner, yana da wuya a gan shi azaman sauƙi mai sauƙi don mafita na OLTP da ke gudana, musamman lokacin da bukatun ku suka girma. Zai ɗauki lokaci mai yawa don gina mafita a kusa da gazawar Cloud Spanner.

Lokacin da muka fara kimantawa na Cloud Spanner, muna tsammanin fasalulluka na gudanarwa za su kasance daidai da, ko aƙalla ba da nisa da, sauran hanyoyin Google SQL ba. Amma mun yi mamakin rashin cikakken madogarawa da ƙarancin ikon samun damar zuwa albarkatu. Ba tare da ambaton ra'ayi ba, babu yanayin ci gaban gida, jerin marasa tallafi, JDBC ba tare da tallafin DML da DDL ba, da sauransu.

Don haka, ina zan je ga wanda ke buƙatar auna ma'auni na ma'amala? Da alama ba a sami mafita guda ɗaya a kasuwa ba tukuna wanda ya dace da duk yanayin amfani. Akwai mafita da yawa da aka rufe da buɗewa (wasu daga cikinsu an ambata a cikin wannan labarin), kowannensu yana da ƙarfin kansa da rauninsa, amma babu ɗayansu da ke ba da SaaS tare da 99,999% SLA da babban matakin daidaito. Idan babban SLA shine burin ku na farko kuma ba ku da sha'awar gina naku mafita don gajimare da yawa, Cloud Spanner na iya zama mafita da kuke nema. Amma ya kamata ku san duk iyakokinsa.

Don yin gaskiya, Cloud Spanner kawai an sake shi ga jama'a a cikin bazara na 2017, don haka yana da kyau a yi tsammanin wasu lahani na yanzu na iya ƙarewa (da fatan), kuma lokacin da ya yi, yana iya zama mai canza wasa. Bayan haka, Cloud Spanner ba aikin gefe ba ne kawai na Google. Google yana amfani da shi azaman tushe ga sauran samfuran Google. Kuma lokacin da Google kwanan nan ya maye gurbin Megastore a cikin Google Cloud Storage tare da Cloud Spanner, ya ba da damar Google Cloud Storage ya zama mai daidaituwa ga jerin abubuwa akan sikelin duniya (wanda har yanzu ba haka bane. Amazon's S3).

Don haka, har yanzu akwai bege... muna fata.

Shi ke nan. Kamar marubucin labarin, mu ma muna ci gaba da bege, amma me kuke tunani game da wannan? Rubuta a cikin sharhi

Muna gayyatar kowa da kowa don ziyartar mu webinar kyauta wanda a ciki za mu ba ku dalla-dalla game da kwas "AWS don Masu Haɓakawa" daga OTUS.

source: www.habr.com

Add a comment