Die mark vir verspreide rekenaars en groot data, volgens
Waarom is verspreide rekenaars nodig in gewone besigheid? Alles hier is eenvoudig en ingewikkeld op dieselfde tyd. Eenvoudig - want in die meeste gevalle doen ons relatief eenvoudige berekeninge per eenheid inligting. Dit is moeilik, want daar is baie sulke inligting. So baie. As gevolg hiervan is dit nodig
Een van die onlangse voorbeelde: die Dodo Pizza-pizzeria-ketting
Nog 'n voorbeeld:
Gereedskap seleksie
Die industriestandaard vir hierdie tipe rekenaar is Hadoop. Hoekom? Omdat Hadoop 'n uitstekende, goed gedokumenteerde raamwerk is (dieselfde Habr verskaf baie gedetailleerde artikels oor hierdie onderwerp), wat vergesel word van 'n hele stel nutsprogramme en biblioteke. Jy kan groot stelle van beide gestruktureerde en ongestruktureerde data invoer, en die stelsel self sal dit onder die rekenaarkrag versprei. Boonop kan hierdie selfde vermoëns te eniger tyd verhoog of gedeaktiveer word - dieselfde horisontale skaalbaarheid in aksie.
In 2017 het die invloedryke konsultasiemaatskappy Gartner
Hadoop berus op verskeie pilare, waarvan die mees noemenswaardige MapReduce-tegnologieë ('n stelsel vir die verspreiding van data vir berekeninge tussen bedieners) en die HDFS-lêerstelsel is. Laasgenoemde is spesiaal ontwerp vir die stoor van inligting wat tussen groepnodusse versprei is: elke blok van 'n vaste grootte kan op verskeie nodusse geplaas word, en danksy replikasie is die stelsel bestand teen mislukkings van individuele nodusse. In plaas van 'n lêertabel, word 'n spesiale bediener genaamd NameNode gebruik.
Die illustrasie hieronder wys hoe MapReduce werk. In die eerste stadium word die data volgens 'n sekere maatstaf verdeel, in die tweede stadium word dit volgens rekenkrag versprei, en in die derde stadium vind die berekening plaas.
MapReduce is oorspronklik deur Google geskep vir sy soekbehoeftes. Toe gaan MapReduce gratis kode, en Apache het die projek oorgeneem. Wel, Google het geleidelik na ander oplossings gemigreer. 'n Interessante bietjie: Google het tans 'n projek genaamd Google Cloud Dataflow, geposisioneer as die volgende stap na Hadoop, as 'n vinnige plaasvervanger daarvoor.
'n Nadere kyk toon dat Google Cloud Dataflow gebaseer is op 'n variasie van Apache Beam, terwyl Apache Beam die goed gedokumenteerde Apache Spark-raamwerk insluit, wat ons in staat stel om oor byna dieselfde uitvoeringspoed van oplossings te praat. Wel, Apache Spark werk perfek op die HDFS-lêerstelsel, wat dit moontlik maak om dit op Hadoop-bedieners te ontplooi.
Voeg hier die volume dokumentasie en klaargemaakte oplossings vir Hadoop en Spark teenoor Google Cloud Dataflow, en die keuse van instrument word voor die hand liggend. Boonop kan ingenieurs self besluit watter kode - vir Hadoop of Spark - hulle moet gebruik, met die fokus op die taak, ervaring en kwalifikasies.
Wolk of plaaslike bediener
Die neiging na 'n algemene oorgang na die wolk het selfs aanleiding gegee tot so 'n interessante term soos Hadoop-as-'n-diens. In so 'n scenario het die administrasie van gekoppelde bedieners baie belangrik geword. Omdat, helaas, ten spyte van sy gewildheid, pure Hadoop 'n taamlik moeilike instrument is om op te stel, aangesien baie met die hand gedoen moet word. Stel byvoorbeeld bedieners individueel op, monitor hul werkverrigting en stel baie parameters noukeurig op. Oor die algemeen is die werk vir 'n amateur en daar is 'n groot kans om iewers te mors of iets te mis.
Daarom het verskeie verspreidingsstelle, wat aanvanklik toegerus is met gerieflike ontplooiings- en administrasiehulpmiddels, baie gewild geword. Een van die gewildste verspreidings wat Spark ondersteun en alles maklik maak, is Cloudera. Dit het beide betaalde en gratis weergawes - en in laasgenoemde is alle basiese funksionaliteit beskikbaar, sonder om die aantal nodusse te beperk.
Tydens opstelling sal Cloudera Manager via SSH aan u bedieners koppel. 'N Interessante punt: wanneer jy installeer, is dit beter om te spesifiseer dat dit deur die sogenaamde parsels: spesiale pakkette, wat elk al die nodige komponente bevat wat opgestel is om met mekaar te werk. In wese is dit 'n verbeterde weergawe van die pakketbestuurder.
Na die installasie ontvang ons 'n groepbestuurkonsole, waar jy groeptelemetrie, geïnstalleerde dienste kan sien, plus jy kan hulpbronne byvoeg/verwyder en die groepkonfigurasie kan wysig.
Gevolglik verskyn die kajuit van die vuurpyl wat jou na die blink toekoms van BigData sal neem voor jou. Maar voordat ons sê "kom ons gaan," kom ons beweeg onder die enjinkap.
Hardeware vereistes
Op sy webwerf noem Cloudera verskillende moontlike konfigurasies. Die algemene beginsels waarvolgens hulle gebou is, word in die illustrasie getoon:
MapReduce kan hierdie optimistiese prentjie vervaag. As jy weer na die diagram van die vorige afdeling kyk, word dit duidelik dat 'n MapReduce-werk in byna alle gevalle 'n bottelnek kan ondervind wanneer data vanaf skyf of van die netwerk gelees word. Dit word ook in die Cloudera-blog opgemerk. As gevolg hiervan, vir enige vinnige berekeninge, insluitend deur Spark, wat dikwels vir intydse berekeninge gebruik word, is I/O-spoed baie belangrik. Daarom, wanneer Hadoop gebruik word, is dit baie belangrik dat die cluster gebalanseerde en vinnige masjiene insluit, wat, om dit sagkens te stel, nie altyd in die wolkinfrastruktuur verseker word nie.
Balans in vragverspreiding word verkry deur die gebruik van Openstack-virtualisering op bedieners met kragtige multi-kern SVE's. Data nodusse word hul eie verwerker hulpbronne en spesifieke skywe toegeken. In ons besluit Atos Codex Data Lake Engine Wye virtualisering word bereik, en daarom baat ons beide in terme van werkverrigting (die impak van die netwerkinfrastruktuur word tot die minimum beperk) en in TCO (ekstra fisiese bedieners word uitgeskakel).
Wanneer ons BullSequana S200-bedieners gebruik, kry ons 'n baie eenvormige vrag, sonder 'n paar knelpunte. Die minimum konfigurasie sluit 3 BullSequana S200-bedieners in, elk met twee JBOD's, plus bykomende S200's wat vier datanodusse bevat is opsioneel gekoppel. Hier is 'n voorbeeld van die las in die TeraGen-toets:
Toetse met verskillende datavolumes en replikasiewaardes toon dieselfde resultate in terme van vragverspreiding tussen klusternodusse. Hieronder is 'n grafiek van die verspreiding van skyftoegang deur prestasietoetse.
Berekeninge is uitgevoer op grond van 'n minimum konfigurasie van 3 BullSequana S200-bedieners. Dit bevat 9 data nodusse en 3 meester nodusse, sowel as gereserveerde virtuele masjiene in die geval van ontplooiing van beskerming gebaseer op OpenStack Virtualization. TeraSort-toetsresultaat: blokgrootte 512 MB replikasiefaktor gelyk aan drie met enkripsie is 23,1 minute.
Hoe kan die stelsel uitgebrei word? Daar is verskillende tipes uitbreidings beskikbaar vir Data Lake Engine:
- Data nodusse: vir elke 40 TB bruikbare spasie
- Analitiese nodusse met die vermoë om 'n GPU te installeer
- Ander opsies afhangende van besigheidsbehoeftes (byvoorbeeld, as jy Kafka en dies meer benodig)
Die Atos Codex Data Lake Engine bevat beide die bedieners self en vooraf geïnstalleerde sagteware, insluitend 'n gelisensieerde Cloudera-stel; Hadoop self, OpenStack met virtuele masjiene gebaseer op die RedHat Enterprise Linux-kern, data-replikasie en rugsteunstelsels (insluitend die gebruik van 'n rugsteunnodus en Cloudera BDR - Backup and Disaster Recovery). Atos Codex Data Lake Engine het die eerste virtualiseringsoplossing geword wat gesertifiseer is
As jy belangstel in besonderhede, sal ons graag ons vrae in die kommentaar beantwoord.
Bron: will.com