sql >> Database >  >> NoSQL >> HBase

Rack Awareness in Hadoop en zijn voordelen

Deze Hadoop-zelfstudie draait helemaal om Rack Awareness in Hadoop. In deze blog beschrijven we alles over Rack Awareness in HDFS .

Allereerst zullen we bestuderen wat HDFS Rack Awareness-eigenschap is, wat de behoefte is aan Rack Awareness in Hadoop. Daarna bespreken we de plaatsing van replica's via Rack Awareness in HDFS.

Ten slotte zullen we ook de verschillende voordelen van Rack Awareness in Hadoop-framework bespreken.

Inleiding tot HDFS Rack Awareness

Rackbewustzijn in Hadoop is het concept dat nauwere Datanodes kiest op basis van de rackinformatie. De Hadoop-installatie gaat er standaard van uit dat alle nodes tot hetzelfde rack behoren.

Om het netwerkverkeer te verbeteren tijdens het lezen/schrijven van HDFS-bestanden in grote clusters van Hadoop. NameNode kiest dataknooppunten die zich op hetzelfde rack of een nabijgelegen rots bevinden om verzoeken te lezen/schrijven (clientknooppunt). HDFS Namenode bereikt deze rackinformatie door rack-ID's van elk dataknooppunt bij te houden.

Waarom rackbewustzijn?

Het belangrijkste doel van Rack-bewustzijn is:

  • Betrouwbaarheid en beschikbaarheid van gegevens verbeteren.
  • Betere clusterprestaties.
  • Voorkomt gegevensverlies als het hele rack uitvalt.
  • Om de netwerkbandbreedte te verbeteren.
  • Houd de bulkstroom indien mogelijk in het rek.

Replica-plaatsing via Rack Awareness in Hadoop

Het belangrijkste doel van replicaplaatsing via rackbewustzijn, het beleid is om de betrouwbaarheid van gegevens te verbeteren, enz.

Een eenvoudig beleid is om replica's op het rack te plaatsen om te voorkomen dat gegevens verloren gaan wanneer een volledig rack uitvalt. En sta het gebruik van bandbreedte van meerdere racks toe bij het lezen van een bestand.

Op meerdere rackclusters, blokkeren replicatie volgt het onderstaande beleid:

U mag niet meer dan één replica op één knooppunt plaatsen. Plaats ook niet meer dan twee replica's op hetzelfde rack. Dit heeft een knelpunt dat het aantal racks dat wordt gebruikt voor blokreplicatie altijd kleiner moet zijn dan het totale aantal blokreplica's.

Bijvoorbeeld;

  • Als een Hadoop-framework een nieuw blok maakt, wordt de eerste replica op het lokale knooppunt geplaatst. En plaats een tweede in een ander rek, en de derde bevindt zich op een ander knooppunt op het lokale knooppunt.
  • Als u een blok opnieuw repliceert en het aantal bestaande replica's één is, plaatst u het tweede op een ander rack.
  • Als het aantal bestaande replica's twee is en de twee replica's zich in hetzelfde rack bevinden, plaatst u de derde op een ander rack.

Voordelen van rackbewustzijn in Hadoop

Laten we het nu hebben over enkele voordelen van Rack Awareness in Hadoop HDFS-

  • Zorg voor hogere bandbreedte en lage latentie –  Dit beleid maximaliseert de netwerkbandbreedte door blok binnen een rack over te dragen in plaats van tussen racks. De YARN kan de taakprestaties van MapReduce optimaliseren door taken toe te wijzen aan knooppunten die qua netwerktopologie dichter bij hun gegevens staan.
  • Biedt gegevensbescherming tegen rackstoringen -  Namenode wijst de blokreplica's van 2 en 3 blokken toe aan knooppunten in een ander rek dan de eerste replica. Het biedt dus gegevensbescherming, zelfs tegen rackstoringen. Dit is echter alleen mogelijk als Hadoop is geconfigureerd met kennis van de rackconfiguratie.
  • Minimaliseer de schrijfkosten en maximaliseer de leessnelheid -  Rackbewustzijn, beleid plaatst lees-/schrijfverzoeken naar replica's die zich in hetzelfde rack bevinden. Dit minimaliseert dus de schrijfkosten en maximaliseert de leessnelheid.

Conclusie

Concluderend is het het concept dat nauwere Datanodes kiest op basis van de rackinformatie om de betrouwbaarheid van de gegevens te verbeteren. Het belangrijkste doel van Rack-Awareness is het voorkomen van gegevensverlies als het hele rack uitvalt. Het verbetert ook de netwerkbandbreedte. Leer meer over HDFS-eigenschappen in detail.

Als je vragen hebt met betrekking tot Rack Awareness in Hadoop, deel deze dan met ons in het commentaargedeelte. We zullen ons best doen om u te helpen.


  1. How-to:gebruik de HBase Thrift-interface, deel 1

  2. Redis + ActionController::Live threads sterven niet af

  3. MongoDB-query met elemMatch voor geneste arraygegevens

  4. Redis instellen op Webfaction