Mis on Cloudera eripära ja kuidas seda valmistada

Vastavalt hajutatud andmetöötluse ja suurandmete turg statistika, kasvab 18-19% aastas. See tähendab, et nendel eesmärkidel tarkvara valimise küsimus jääb aktuaalseks. Selles postituses alustame sellest, miks me vajame hajutatud andmetöötlust, peatume lähemalt tarkvara valikul, räägime Hadoopi kasutamisest koos Clouderaga ning lõpuks räägime riistvara valikust ja sellest, kuidas see jõudlust mõjutab erinevatel viisidel.

Mis on Cloudera eripära ja kuidas seda valmistada
Miks me vajame tavaäris hajutatud andmetöötlust? Kõik on lihtne ja keeruline korraga. Lihtne – kuna enamasti teostame infoühiku kohta suhteliselt lihtsaid arvutusi. Raske – sest sellist infot on palju. Nii palju. Selle tulemusena tuleb töödelda terabaiti andmeid 1000 lõimes. Seega on kasutusjuhud üsna universaalsed: arvutusi saab rakendada kõikjal, kus on vaja arvestada suure hulga mõõdikutega veelgi suuremal andmemassiivil.

Üks hiljutine näide: Dodo Pizza kindlaks määratud Klientide tellimuste baasi analüüsi põhjal võib öelda, et suvalise lisandiga pitsat valides tegutsevad kasutajad tavaliselt vaid kuue põhikoostisosa pluss paari juhusliku komplektiga. Vastavalt sellele korrigeeris pitsabaar oste. Lisaks suutis see kasutajatele paremini soovitada tellimisetapis pakutavaid lisatooteid, mis suurendas kasumit.

Üks näide veel: analüüs kaubad võimaldasid H&M-il vähendada üksikute kaupluste sortimenti 40%, säilitades samal ajal müügitaseme. See saavutati halvasti müüvate positsioonide väljajätmisega ning arvutustes võeti arvesse hooajalisust.

Tööriista valik

Seda tüüpi andmetöötluse tööstusstandard on Hadoop. Miks? Sest Hadoop on suurepärane, hästi dokumenteeritud raamistik (sama Habr annab sellel teemal välja palju üksikasjalikke artikleid), millega kaasneb terve hulk utiliite ja teeke. Saate sisestada tohutul hulgal nii struktureeritud kui ka struktureerimata andmeid ning süsteem ise jaotab need arvutusvõimsuse vahel. Lisaks saab neid samu võimsusi igal ajal suurendada või keelata – sama horisontaalne skaleeritavus toimib.

2017. aastal mõjukas konsultatsioonifirma Gartner järeldanudet Hadoop vananeb peagi. Põhjus on üsna banaalne: analüütikud usuvad, et ettevõtted rändavad massiliselt pilve, kuna seal saavad nad maksta arvutusvõimsuse kasutamise alusel. Teine oluline tegur, mis väidetavalt suudab Hadoopi "matta", on töö kiirus. Kuna sellised valikud nagu Apache Spark või Google Cloud DataFlow on kiiremad kui Hadoopi aluseks olev MapReduce.

Hadoop toetub mitmele tugisambale, millest tähelepanuväärseimad on MapReduce'i tehnoloogiad (süsteem andmete jagamiseks arvutuste tegemiseks serverite vahel) ja HDFS-failisüsteem. Viimane on mõeldud spetsiaalselt klastri sõlmede vahel jaotatud teabe salvestamiseks: iga fikseeritud suurusega ploki saab paigutada mitmele sõlmele ning tänu replikatsioonile on süsteem vastupidav üksikute sõlmede riketele. Failitabeli asemel kasutatakse spetsiaalset serverit nimega NameNode.

Allolev illustratsioon näitab, kuidas MapReduce töötab. Esimeses etapis jagatakse andmed teatud atribuudi järgi, teises etapis jaotatakse arvutusvõimsuse järgi, kolmandas etapis toimub arvutus.

Mis on Cloudera eripära ja kuidas seda valmistada
MapReduce’i lõi algselt Google oma otsingu vajadusteks. Seejärel läks MapReduce tasuta koodi ja Apache võttis projekti üle. Noh, Google läks järk-järgult üle teistele lahendustele. Huvitav nüanss: hetkel on Google'il selle kiireks asenduseks Hadoopi järel järgmise sammuna positsioneeritud projekt nimega Google Cloud Dataflow.

Lähemal vaatlusel selgub, et Google Cloud Dataflow põhineb Apache Beami variatsioonil, samas kui Apache Beam sisaldab hästi dokumenteeritud Apache Sparki raamistikku, mis võimaldab rääkida peaaegu samast lahenduse täitmise kiirusest. Noh, Apache Spark töötab HDFS-failisüsteemis hästi, mis võimaldab teil seda Hadoopi serverites juurutada.

Lisage siia dokumentide maht ja valmislahendused Hadoopi ja Sparki jaoks Google Cloud Dataflow vastu ning tööriista valik muutub ilmseks. Lisaks saavad insenerid ise otsustada, millist koodi – Hadoopi või Sparki all – nad käivitavad, keskendudes ülesandele, kogemustele ja kvalifikatsioonile.

Pilv või kohalik server

Üldise pilvele ülemineku trend on tekitanud isegi sellise huvitava termini nagu Hadoop-as-a-service. Sellise stsenaariumi korral on ühendatud serverite haldus muutunud väga oluliseks. Sest paraku on puhas Hadoop oma populaarsusest hoolimata üsna keeruline tööriist konfigureerida, kuna peate palju käsitsi tegema. Näiteks saate servereid individuaalselt konfigureerida, jälgida nende jõudlust ja paljusid parameetreid peenhäälestada. Üldiselt töö amatöörile ja on suur võimalus kuskil sassi keerata või millestki ilma jääda.

Seetõttu on väga populaarseks muutunud erinevad distributsioonid, mis on algselt varustatud mugavate juurutus- ja haldusvahenditega. Üks populaarsemaid distributsioone, mis toetab Sparki ja teeb asjad lihtsaks, on Cloudera. Sellel on nii tasuline kui ka tasuta versioon – viimases on saadaval kõik põhifunktsioonid ja seda ilma sõlmede arvu piiramata.

Mis on Cloudera eripära ja kuidas seda valmistada

Seadistamise ajal loob Cloudera Manager teie serveritega ühenduse SSH kaudu. Huvitav punkt: paigaldamisel on parem täpsustada, et seda viiks läbi nn pakid: spetsiaalsed paketid, millest igaüks sisaldab kõiki vajalikke komponente, mis on konfigureeritud üksteisega töötama. Tegelikult on see paketihalduri täiustatud versioon.

Pärast installimist saame klastri halduskonsooli, kus näete klastrite telemeetriat, installitud teenuseid, lisaks saate lisada / eemaldada ressursse ja redigeerida klastri konfiguratsiooni.

Mis on Cloudera eripära ja kuidas seda valmistada

Selle tulemusena ilmub teie ette selle raketi lõikamine, mis viib teid BigData helgesse tulevikku. Aga enne, kui ütleme "lähme", liigume kapoti all edasi.

riistvara nõuded

Cloudera mainib oma veebisaidil erinevaid võimalikke konfiguratsioone. Nende ehitamise üldpõhimõtted on näidatud joonisel:

Mis on Cloudera eripära ja kuidas seda valmistada
MapReduce võib selle optimistliku pildi hägustada. Vaadates uuesti eelmise jaotise diagrammi, selgub, et peaaegu kõigil juhtudel võib MapReduce töö tabada kitsaskohta kettalt või võrgust andmete lugemisel. Seda märgitakse ka Cloudera blogis. Seetõttu on kiirete arvutuste jaoks, sealhulgas Sparki kaudu, mida sageli kasutatakse reaalajas arvutamiseks, väga oluline I / O kiirus. Seetõttu on Hadoopi kasutamisel väga oluline, et klastrisse satuksid tasakaalustatud ja kiired masinad, mida pilveinfrastruktuuris pehmelt öeldes alati ei pakuta.

Koormuse jaotuse tasakaal saavutatakse Openstacki virtualiseerimise kasutamisega võimsate mitmetuumaliste protsessoritega serverites. Andmesõlmedele eraldatakse oma protsessoriressursid ja teatud kettad. Meie otsuses Atos Codex Data Lake'i mootor saavutatakse lai virtualiseerimine, mistõttu võidame nii jõudluse (võrguinfrastruktuuri mõju minimeeritakse) kui ka TCO (liigendavad füüsilised serverid) osas.

Mis on Cloudera eripära ja kuidas seda valmistada
BullSequana S200 serverite kasutamise korral saame väga ühtlase koormuse, millel puuduvad mõned kitsaskohad. Minimaalne konfiguratsioon sisaldab 3 BullSequana S200 serverit, millest igaühel on kaks JBOD-d, lisaks on valikuliselt ühendatud täiendavad nelja andmesõlme sisaldavad S200-d. Siin on laadimise näide TeraGeni testis:

Mis on Cloudera eripära ja kuidas seda valmistada

Erinevate andmemahtude ja replikatsiooniväärtustega testid näitavad samu tulemusi koormuse jaotumise osas klastri sõlmede vahel. Allpool on graafik kettale juurdepääsu jaotusest jõudlustestide kaupa.

Mis on Cloudera eripära ja kuidas seda valmistada

Arvutused põhinevad 3 BullSequana S200 serveri minimaalsel konfiguratsioonil. See sisaldab 9 andmesõlme ja 3 põhisõlme, samuti reserveeritud virtuaalmasinaid OpenStacki virtualiseerimisel põhineva kaitse juurutamise korral. TeraSorti testi tulemus: kolmekordse replikatsiooniteguri 512 MB ploki suurus koos krüptimisega on 23,1 minutit.

Kuidas saab süsteemi laiendada? Data Lake Engine'i jaoks on saadaval erinevat tüüpi laiendusi:

  • Andmesõlmed: iga 40 TB kasutatava ruumi kohta
  • Analüütilised sõlmed, millel on võimalus installida GPU
  • Muud võimalused sõltuvalt ettevõtte vajadustest (näiteks kui vajate Kafkat jms)

Mis on Cloudera eripära ja kuidas seda valmistada

Atos Codex Data Lake Engine'i kompleks sisaldab nii servereid endid kui ka eelinstallitud tarkvara, sealhulgas Cloudera komplekti koos litsentsiga; Hadoop ise, OpenStack koos RedHat Enterprise Linuxi tuumal põhinevate virtuaalmasinatega, andmete replikatsiooni- ja varundussüsteemid (sealhulgas varusõlme ja Cloudera BDR-i kasutamine – varundamine ja katastroofide taastamine). Atos Codex Data Lake Engine on esimene sertifitseeritud virtualiseerimislahendus cloudera.

Kui olete huvitatud üksikasjadest, vastame hea meelega meie küsimustele kommentaarides.

Allikas: www.habr.com

Lisa kommentaar