Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Ĉe Skyeng ni uzas Amazon Redshift, inkluzive de paralela skalo, do ni trovis ĉi tiun artikolon de Stefan Gromoll, fondinto de dotgo.com, por intermix.io interesa. Post la traduko, iom da nia sperto de datuma inĝeniero Daniyar Belkhodzhaev.

Amazon Redshift Arkitekturo permesas grimpi aldonante novajn nodojn al la areto. La bezono trakti pintan nombron da petoj povas konduki al tro-provizado de nodoj. Samtempa Skalado, kontraste al aldono de novaj nodoj, pliigas komputadpotencon laŭbezone.

Amazon Redshift paralela skalado donas al Redshift-aretoj plian kapablon pritrakti pintajn petajn volumojn. Ĝi funkcias movante petojn al novaj "paralelaj" aretoj en la fono. Petoj estas direktitaj surbaze de WLM-agordo kaj reguloj.

Paralela skala prezo estas bazita sur kreditmodelo kun senpaga nivelo. Super senpagaj kreditoj, pago baziĝas sur la tempo, kiam la Paralela Skala Areto prilaboras petojn.

La verkinto testis paralelan skaladon sur unu el la internaj aretoj. En ĉi tiu afiŝo, li parolos pri la testrezultoj kaj donos konsilojn pri kiel komenci.

Aretpostuloj

Por uzi paralelan skalon, via Amazon Redshift-areto devas plenumi la jenajn postulojn:

- platformo: EC2-VPC;
— noda tipo: dc2.8xlarge, ds2.8xlarge, dc2.grande aŭ ds2.xlarge;
- nombro da nodoj: de 2 ĝis 32 (ununodaj aretoj ne estas subtenataj).

Akcepteblaj petotipoj

Paralela skalo ne taŭgas por ĉiuj specoj de demandoj. En la unua versio, ĝi nur procesas legpetojn kiuj kontentigas tri kondiĉojn:

— SELECT-demandoj estas nurlegeblaj (kvankam pli da tipoj estas planitaj);
— la demando ne referencas tabelon kun la ordiga stilo INTERLEAVED;
- La demando ne uzas Amazon Redshift Spectrum por referenci eksterajn tabelojn.

Por esti direktita al la Paralela Skala Areto, la peto devas esti vicigita. Aldone, demandoj elekteblaj por la atendovico SQA (Mallonga Demanda Akcelo), ne funkcios sur paralelskalaj aretoj.

Queues kaj SQA postulas taŭgan agordon Redshift Workload Management (WLM). Ni rekomendas unue optimumigi vian WLM - ĉi tio reduktos la bezonon de paralela skalo. Kaj ĉi tio estas grava ĉar paralela skalo estas senpaga nur dum certa nombro da horoj. AWS asertas, ke paralela skalo estos senpaga por 97% de klientoj, kio alportas nin al la temo de prezoj.

Kosto de paralela skalo

AWS ofertas kreditmodelon por paralela skalo. Ĉiu aktiva areto Amazon RedShift Akumulas kreditojn ĉiuhore, ĝis unu horo da senpagaj paralelaj skalaj kreditoj ĉiutage.

Vi pagas nur kiam via uzado de Parallel Scaling Clusters superas la kvanton da kreditoj, kiujn vi ricevis.

La kosto estas kalkulita je sekunda laŭpeta indico por paralela areto, kiu estas uzata super la senpaga indico. Vi estas ŝargita nur por la daŭro de viaj petoj, kun minimuma ŝarĝo de unu minuto ĉiufoje kiam Paralela Skala Areto estas aktivigita. La po-sekunda laŭpeta indico estas kalkulita surbaze de ĝeneralaj prezaj principoj Amazon RedShift, tio estas, ĝi dependas de la tipo de nodo kaj la nombro da nodoj en via areto.

Lanĉante Paralelan Skaladon

Paralela skalo estas ekigita por ĉiu WLM-vico. Iru al la AWS Redshift-konzolo kaj elektu Laborŝarĝan Administradon el la maldekstra naviga menuo. Elektu la WLM-parametrogrupon de via areto el la sekva falmenuo.

Vi vidos novan kolumnon nomitan "Samtempa Skala Reĝimo" apud ĉiu atendovico. La defaŭlta estas "Malŝaltita". Alklaku "Redakti" kaj vi povas ŝanĝi la agordojn por ĉiu vosto.

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Agordo

Paralela skalado funkcias per plusendado de taŭgaj petoj al novaj diligentaj aretoj. Novaj aretoj havas la saman grandecon (tipo kaj nombro da nodoj) kiel la ĉefa areto.

La defaŭlta nombro da aretoj uzataj por paralela skalo estas unu (1), kun la kapablo agordi ĝis entute dek (10) aretoj.
La totala nombro da aretoj por paralela skalo povas esti agordita per la parametro max_concurrency_scaling_clusters. Pliigi la valoron de ĉi tiu parametro provizas pliajn redundajn aretojn.

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Monitorado

Estas pluraj pliaj grafikaĵoj haveblaj en la AWS Redshift-konzolo. La diagramo de Maksimumaj Agorditaj Samtempaj Skalaj Aretoj montras la valoron de max_concurrency_scaling_clusters laŭlonge de la tempo.

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

La nombro da aktivaj skalaj grupoj estas montrata en la uzantinterfaco en la sekcio "Samtempa Skala Agado":

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

En la langeto Demandoj, estas kolumno indikanta ĉu la demando estis efektivigita en la ĉefa areto aŭ en la paralela skalklapo:

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Sendepende de ĉu aparta demando estis efektivigita en la ĉefa areto aŭ tra paralela skalklapo, ĝi estas konservita en stl_query.concurrency_scaling_status.

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Valoro de 1 indikas, ke la demando estis efektivigita en la paralela skalo, dum aliaj valoroj indikas, ke ĝi estis ekzekutita en la primara areto.

Ekzemplo:

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Samtempaj skalaj informoj ankaŭ estas konservitaj en iuj aliaj tabeloj kaj vidoj, kiel SVCS_CONCURRENCY_SCALING_USAGE. Krome, ekzistas kelkaj katalogaj tabeloj, kiuj stokas informojn pri paralela skalo.

Результаты

La aŭtoroj komencis paralelan skaladon por unu atendovico en la interna areto je proksimume 18:30:00 GMT la 29.03.2019/3/20. Ŝanĝis la parametron max_concurrency_scaling_clusters al 30 proksimume je 00:29.03.2019:XNUMX la XNUMX/XNUMX/XNUMX.

Por simuli petan vicon, ni reduktis la nombron da slotoj por ĉi tiu vico de 15 al 5.

Malsupre estas intermix.io panela diagramo montranta la nombron da petoj kurantaj kaj viciĝantaj post reduktado de la nombro da fendoj.

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Ni vidas, ke la atendotempo por petoj en la vico pliiĝis, kaj la maksimuma tempo estas pli ol 5 minutoj.

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Jen la koncernaj informoj de la AWS-konzolo pri tio, kio okazis dum ĉi tiu tempo:

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Redshift lanĉis tri (3) paralelajn skalajn aretojn kiel agorde. Ŝajnas, ke ĉi tiuj aretoj estis subuzitaj, kvankam multaj petoj en nia areto estis vicigitaj.

La uzografeo korelacias kun la grimpa agadgrafo:

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

Post kelkaj horoj, la aŭtoroj kontrolis la vicon kaj ŝajnis, ke 6 petoj funkcias ĉe paralela skalo. Ni ankaŭ hazarde provis du petojn per la uzantinterfaco. Ni ne kontrolis kiel uzi ĉi tiujn valorojn kiam pluraj paralelaj aretoj estas aktivaj samtempe.

Amazon Redshift Paralela Skala Gvidilo kaj Testrezultoj

trovoj

Paralela skalo povas redukti la tempopetojn pasigas en la atendovico dum pintaj ŝarĝoj.

Surbaze de la rezultoj de la baza testo, montriĝis, ke la situacio kun ŝarĝaj petoj parte pliboniĝis. Tamen, paralela skalo sole ne solvis ĉiujn samtempajn problemojn.

Ĉi tio estas pro limigoj pri la specoj de demandoj, kiuj povas uzi paralelan skalon. Ekzemple, la aŭtoroj havas multajn tabelojn kun interplektitaj ordigaj klavoj, kaj la plej granda parto de nia laborŝarĝo estas skriba.

Kvankam paralela skalo ne estas universala solvo por agordi WLM, uzi ĉi tiun funkcion estas simpla kaj simpla.

Tial la aŭtoro rekomendas uzi ĝin por viaj WLM-vostoj. Komencu kun unu paralela areto kaj monitoru la pintan ŝarĝon per la konzolo por determini ĉu la novaj aretoj estas plene uzataj.

Ĉar AWS aldonas subtenon por pliaj demandtipoj kaj tabeloj, paralela skalo devus iom post iom fariĝi pli kaj pli efika.

Komento de Daniyar Belkhodzhaev, Skyeng Data Engineer

Ni ĉe Skyeng ankaŭ tuj rimarkis la emerĝantan eblecon de paralela skalo.
La funkcieco estas tre alloga, precipe konsiderante, ke AWS taksas, ke la plej multaj uzantoj eĉ ne devos pagi krome por ĝi.

Okazis, ke meze de aprilo ni havis nekutiman aron da petoj al la Ruĝecŝoviĝa areto. Dum ĉi tiu periodo, ni ofte uzis Samtempan Skaladon; foje plia areto funkciis 24 horojn tage sen halto.

Tio ebligis, se ne tute solvi la problemon per vicoj, do almenaŭ akceptebla la situacio.

Niaj observoj grandparte koincidas kun la impresoj de la uloj de intermix.io.

Ni ankaŭ rimarkis, ke kvankam estis petoj atendantaj en la atendovico, ne ĉiuj petoj estis tuj plusenditaj al la paralela areto. Ŝajne tio okazas pro la fakto, ke la paralela areto ankoraŭ bezonas tempon por komenci. Kiel rezulto, dum mallongdaŭraj pintaj ŝarĝoj ni ankoraŭ havas malgrandajn atendovicojn, kaj la respondaj alarmoj havas tempon por ekigi.

Seniĝinte de eksternormaj ŝarĝoj en aprilo, ni, kiel atendis AWS, eniris la okazan uzreĝimon - ene de la libera normo.
Vi povas spuri viajn paralelajn skalajn kostojn en AWS Cost Explorer. Vi devas elekti Servon - Redshift, Uzo-Tipo - CS, ekzemple USW2-CS:dc2.large.

Vi povas legi pli pri prezoj en la rusa tie.

fonto: www.habr.com

Aldoni komenton