Jaotatud arvutuse ja suurte andmete turg kasvab 18-19% aastas, kui uskuda . Seega on tarkvara valiku teema endiselt aktuaalne. Selles postituses alustame sellest, miks on vajalikke jaotatud arvutusi, kÀsitleme lÀhemalt tarkvara valikut, rÀÀgime Hadoopi kasutamisest Cloudera abil ning lÔpuks arutame riistvaravalikut ja seda, kuidas see mitmesuguseid viise töötluse tÔhusust mÔjutab.

Miks on jaotatud arvutused igapĂ€evases Ă€ritegevuses vajalikud? Siin on kĂ”ik samal ajal lihtne ja keeruline. Lihtne, kuna enamasti teeme me suhteliselt lihtsaid arvutusi ĂŒhe infoĂŒksuse kohta. Keeruline, kuna selliseid andmeid on palju. VĂ€ga palju. Selle tulemusena tuleb meil . Seega on kasutusstsenaariumid ĂŒsna universaalsed: arvutused vĂ”ivad kehtida kĂ”ikjal, kus on vajalik arvesse vĂ”tta suurt hulka nĂ€itajaid veelgi suuremas andmemassis.
Ăks hiljutine nĂ€ide: Dodo Pizza kliendi tellimuste andmebaasi analĂŒĂŒsi pĂ”hjal, et kui kasutajad valivad pitsat juhuslike koostisosadega, kasutavad nad tavaliselt ainult kuut pĂ”hikomplekti koostisosade kohta, pluss paar juhuslikku. Selle alusel kohandas pitsafirma oma ostupoliitikat. Lisaks suudeti paremini soovitada kasutajatele tĂ€iendavaid tooteid, mis pakuti tellimuse tegemise ajal, mis aitas suurendada kasumit.
Veel ĂŒks nĂ€ide: tooteartiklid vĂ”imaldasid H&M kauplusel vĂ€hendada valikut teatud kauplustes 40% vĂ”rra, samal ajal mĂŒĂŒgitaset sĂ€ilitades. Seda Ă”nnestus saavutada, vĂ€listades halvasti mĂŒĂŒdavad tooted, arvestades samas hooajalisust.
Tööriista valik
Selliste arvutuste valdkonna standardiks on Hadoop. Miks? Sest Hadoop on suurepĂ€rane, hĂ€sti dokumenteeritud raamistik (samas tuleb Habrist palju pĂ”hjalikke artikleid selle kohta), mis on varustatud terve komplekti utiliitide ja raamatukogudega. Saate esitada tohutuid koguseid nii struktureeritud kui ka struktureerimata andmeid, samas kui sĂŒsteem jaotab need iseseisvalt arvutusvĂ”imsustele. Ja neid vĂ”imsusi saab igal ajal suurendada vĂ”i vĂ€lja lĂŒlitada â see ongi horisontaalne skaleeritavus tegevuses.
2017. aastal sĂ”lmis mainekas konsultatsioonifirma Gartner , et Hadoop kaotab varsti oma tĂ€htsuse. PĂ”hjus on ĂŒsna banaalne: analĂŒĂŒtikud usuvad, et ettevĂ”tted hakkavad massiliselt pilve migreerima, kuna seal saavad nad maksta vastavalt kasutatud arvutusvĂ”imsusele. Teine oluline tegur, mis suudab Hadoopi "maha matta", on töökiirus. Sest sellised lahendused nagu Apache Spark vĂ”i Google Cloud DataFlow töövad kiiremini kui MapReduce, mis on Hadoopi alus.
Hadoop toetub mitmele suurele alusele, mille seas on kĂ”ige silmapaistvamad tehnoloogiad MapReduce (andmete jagamise sĂŒsteem arvutuste tegemiseks serverite vahel) ja failisĂŒsteem HDFS. Viimane on spetsiaalselt loodud klastrisse jaotatud teabe salvestamiseks: iga fikseeritud suurusega blokk vĂ”ib asuda mitmes sĂ”lmes ning replikatsiooni tĂ”ttu tagatakse sĂŒsteemi vastupidavus ĂŒksikute sĂ”lmede tĂ”rgetele. Failitabeli asemel kasutatakse spetsiaalset serverit, mida nimetatakse NameNode'iks.
Alloleval joonisel on nÀidatud MapReduce töödiagramm. Esimeses etapis jagatakse andmed kindla kriteeriumi jÀrgi, teises - jaotatakse need arvutusvÔimsuse vahel, kolmandas - toimub arvutus.

Algul töötas Google MapReduce vĂ€lja oma otsingu vajaduste jaoks. Siis muutus MapReduce avatud lĂ€htekoodiga ja projekti asus arendama Apache. Ja Google liikus jĂ€rk-jĂ€rgult teiste lahenduste suunas. Huvitav nĂŒanss on see, et hetkel on Googlel projekt nimelt Google Cloud Dataflow, mis positsioneeritakse jĂ€rgmise sammuna pĂ€rast Hadoopit, kiire asendajana.
LĂ€hedal vaatamisel on selge, et Google Cloud Dataflow pĂ”hineb Apache Beami variandil, kusjuures Apache Beam sisaldab hĂ€sti dokumenteeritud raamistikku Apache Spark, mis tĂ€hendab, et lahenduste töökiirus on praktiliselt identne. Samuti töötab Apache Spark suurepĂ€raselt HDFS failisĂŒsteemil, mis vĂ”imaldab seda Hadoopi serverites rakendada.
Lisame siia Hadoopi ja Sparki dokumentatsiooni ja valmislahenduste mahu vĂ”rreldes Google Cloud Dataflow'ga, ja tööriista valik muutub ilmseks. Veelgi enam, insenerid saavad ise otsustada, millist koodi - Hadoopi vĂ”i Sparki - nad soovivad tĂ€ita, tuginedes ĂŒlesandele, kogemusele ja kvalifikatsioonile.
Pilv vÔi kohalik server
Ăldine suundumus pilveteenustele viis sellise huvitava termini nagu Hadoop-as-a-service kasutuselevĂ”tuni. Sellises stsenaariumis on serverite haldamine ÀÀrmiselt oluline. Kahjuks on puhas Hadoop oma populaarsusest hoolimata ĂŒsna keeruline seadistamisvahend, kuna palju tuleb teha kĂ€sitsi. NĂ€iteks peab iga serverit eraldi konfigureerima, jĂ€lgima nende nĂ€itajaid ja hoolikalt seadistama mitmeid parameetreid. Ăldiselt on see hobi jaoks sobiv töö ja on suur oht midagi valesti teha vĂ”i midagi tĂ€helepanuta jĂ€tta.
SeetĂ”ttu on populaarsust kogunud erinevad jaotised, mis on algselt varustatud mugavate paigaldus- ja haldustööriistadega. Ăks populaarsemaid jaotusi, mis toetab Spark'i ja muudab elu lihtsamaks, on Cloudera. Sellel on nii tasuline kui ka tasuta versioon â ja viimasena on saadaval kogu pĂ”hifunktsionaalsus, ilma sĂ”lmede arvu piiranguta.

Cloudera Manager'i seadistamise ajal ĂŒhendub see SSH kaudu teie serveritega. HuviĂ€ratav on see, et installimisel on parem nĂ€idata, et see toimub nii-öelda pakettide: spetsiaalsete paketide abil, milles on kĂ”ik vajalikud komponendid, mis on seadistatud omavaheliseks töötamiseks. PĂ”himĂ”tteliselt on see tĂ€iustatud versioon pakihaldurist.
PÀrast installatsiooni saame klastrihalduri konsoli, kus on nÀha klastrite telemeetria, paigaldatud teenused, lisaks vÔite ressursse lisada/eemaldada ja klastrikonfiguratsiooni redigeerida.

Kuna tulete silmitsi raketi lĂ”ikega, mis viib teid BigData tulevikku. Kuid enne kui ĂŒtlete âminemaâ, liikuge kapoti alla.
Riistvara nÔuded
Cloudera mainib oma saidil erinevaid vĂ”imalikke konfiguratsioone. Ăldised pĂ”himĂ”tted, mille jĂ€rgi need on koostatud, on toodud illustratsioonil:

MapReduce vĂ”ib seda optimistlikku pilti moonutada. Kui vaadata uuesti eelmise jaotise skeemi, on selge, et peaaegu kĂ”ikides olukordades vĂ”ib MapReduce'i ĂŒlesanne kokku puutuda âpudelikaelagaâ andmete lugemisel kettalt vĂ”i vĂ”rgust. Seda mainitakse ka Cloudera blogis. SeetĂ”ttu on kiiresti arvutamiseks, sealhulgas Sparkiga, mis on sageli kasutatav reaalajas arvutustes, sisendi/vĂ€ljundi kiirus vĂ€ga oluline. Seega on Hadoopi kasutamisel ÀÀrmiselt oluline, et klastrisse jĂ”uaksid tasakaalustatud ja kiirete masinate komplektid, mis, Ă”rnalt öeldes, ei ole alati tagatud pilveinfrastruktuuris.
Laadimise tasakaalustamine saavutatakse Openstacki virtualiseerimise abil vĂ”imsates mitme tuumaga protsessoritega serverites. Andme-sĂ”lmedele on eraldatud oma protsessorivĂ”imsus ja kindlad kettad. Meie lahenduses Atos Codex Data Lake Engine saavutatakse lai virtualiseerimine, mis toob meile kasu nii jĂ”udluse osas (minimeeritakse vĂ”rguinfrastruktuuri mĂ”ju) kui ka TCO (vĂ€listatakse soovimatud fĂŒĂŒsilised serverid).

BullSequana S200 serverite kasutamisel saavutame ĂŒsna tasakaalustatud koormuse, mis on vaba osa pudelikaeladest. Minimaalsesse konfiguratsiooni kuulub 3 BullSequana S200 serverit, igaĂŒhel on kaks JBOD, lisaks saab valikuliselt ĂŒhendada tĂ€iendavaid S200, millel on neli andme-sĂ”lme. Siin on nĂ€ide koormusest TeraGen testis:

Testid erinevate andmehulga ja replikatsioonivÀÀrtustega nÀitavad klastrisÔlmede koormuse jaotuses sama tulemuste taset. Allpool on graafik ketta juurdepÀÀsu jaotuse kohta jÔudlustestide pÔhjal.

Arvutused tehti 3 BullSequana S200 serveri minimaalses konfiguratsioonis. See sisaldab 9 andme-sĂ”lme ja 3 peamist sĂ”lme, samuti reserveeritud virtuaalmasinaid OpenStack Virtualiseerimise kaitse rakendamiseks. TeraSort testitulemus: ploki suurus 512 MB replikatsioonikordaja kolm, krĂŒpteerimisega 23,1 min.
Kuidas saaks sĂŒsteemi laiendada? Data Lake Engine jaoks on saadaval erinevad laiendamise vĂ”imalused:
- Andmeedastus-sÔlmed: iga 40 TB kasuliku ruumi kohta
- AnalĂŒĂŒtilised sĂ”lmed GPU installimise vĂ”imalusega
- Muud valikud, sÔltuvalt ettevÔtte vajadustest (nÀiteks kui on vajalik Kafka ja muud sarnased tehnoloogiad)

Atos Codex Data Lake Engine'i kompleks sisaldab nii servereid kui ka eelinstalleeritud tarkvara, sealhulgas litsentsiga Cloudera paketti; Hadoop ise, OpenStack, mis sisaldab virtuaalmasinaid RedHat Enterprise Linuxi tuum pĂ”hjal, andmete replikatsioonisĂŒsteemid ja varukoopiate haldamine (sealhulgas varukoopianoodi ja Cloudera BDR â Backup and Disaster Recovery abil). Atos Codex Data Lake Engine oli esimene virtualiseerimise lahendus, mis sai sertifitseeritud. .
Kui teil on huvi detailide vastu, oleme valmis vastama teie kĂŒsimustele kommentaarides.
Allikas: habr.com
