Pangkalahatang-ideya ng Hadoop 2.0 Cluster Architecture Federation



Ang Apache Hadoop 2.x ay binubuo ng mga makabuluhang pagpapabuti sa Hadoop 1.x. Pinag-uusapan ng blog na ito ang tungkol sa Hadoop 2.0 Cluster Architecture Federation at ang mga bahagi nito.

Hadoop 2.0 Cluster Architecture Federation

Panimula:

Sa blog na ito, sisisid ako nang malalim sa Hadoop 2.0 Cluster Architecture Federation. Ang Apache Hadoop ay umunlad nang malaki mula nang mailabas ang Apache Hadoop 1.x. Tulad ng iyong pagkakaalam mula sa dati kong blog na ang sumusunod sa Master / Slave Topology kung saan kumikilos ang NameNode bilang isang master daemon at responsable para sa pamamahala ng iba pang mga node ng alipin na tinatawag na DataNodes. Sa ecosystem na ito, ang solong Master Daemon o NameNode ay nagiging isang bottleneck at sa kabaligtaran, ang mga kumpanya ay kailangang magkaroon ng NameNode na lubos na magagamit. Ang mismong kadahilanang ito ang naging pundasyon ng HDFS Federation Architecture at HA (Mataas na Magagamit) Arkitektura .

Ang mga paksang sakop ko sa blog na ito ay ang mga sumusunod:





  • Ang kasalukuyang HDFS Architecture
  • Mga limitasyon ng kasalukuyang HDFS Architecture
  • Arkitektura ng HDFS Federation

Pangkalahatang-ideya ng Kasalukuyang HDFS Architecture:

Single Namespace HDFS Architecture - Pangkalahatang-ideya ng Hadoop 2.0 Cluster Architecture Federation - Edureka

kung paano gamitin ang goto sa sawa

Tulad ng nakikita mo sa figure sa itaas, ang kasalukuyang HDFS ay may dalawang mga layer:



  • HDFS Namespace (NS): Ang layer na ito ay responsable para sa pamamahala ng mga direktoryo, mga file at mga bloke. Nagbibigay ito ng lahat ng pagpapatakbo ng File System na nauugnay sa Namespace tulad ng paglikha, pagtanggal o pagbabago ng mga file o mga direktoryo ng file.
  • Layer ng Imbakan: Binubuo ito ng dalawang pangunahing bahagi.
    1. Pamamahala sa Block : Ginagawa nito ang mga sumusunod na operasyon:
      • Pana-panahong sinusuri ang mga tibok ng puso ng DataNodes at pinamamahalaan nito ang pagiging miyembro ng DataNode sa kumpol.
      • Namamahala sa mga ulat ng block at nagpapanatili ng lokasyon ng pag-block.
      • Sinusuportahan ang mga pagpapatakbo ng block tulad ng paglikha, pagbabago, pagtanggal at paglalaan ng lokasyon ng block.
      • Pinapanatili ang kadahilanan ng pagtitiklop na naaayon sa buong kumpol.

2. Physical Storage : Pinamamahalaan ito ng DataNodes na may pananagutan sa pagtatago ng data at sa gayong paraan ay nagbibigay ng Basahin / Sumulat ng access sa data na nakaimbak sa HDFS.

Kaya, pinapayagan ka ng kasalukuyang HDFS Architecture na magkaroon ng isang solong namespace para sa isang kumpol. Sa arkitekturang ito, isang solong NameNode ang responsable para sa pamamahala ng namespace. Ang arkitektura na ito ay napaka-maginhawa at madaling ipatupad. Gayundin, nagbibigay ito ng sapat na kakayahan upang maibigay ang mga pangangailangan ng maliit na kumpol ng produksyon.

Mga limitasyon ng Kasalukuyang HDFS:

Tulad ng tinalakay nang mas maaga, ang kasalukuyang HDFS ay sumapat sa mga pangangailangan at paggamit ng mga kaso ng isang maliit na kumpol ng produksyon. Ngunit, malalaking organisasyon tulad ng Yahoo, natagpuan ng Facebook ang ilang mga limitasyon habang ang kumpol ng HDFS ay lumago nang mabilis. Mabilis na tingnan natin ang ilan sa mga limitasyon:



  1. Ang namespace ay hindi nasusukat tulad ng DataNodes. Samakatuwid, maaari lamang kaming magkaroon ng bilang ng mga DataNode sa kumpol na maaaring hawakan ng isang solong NameNode.
  2. Ang dalawang layer, ibig sabihin, Namespace layer at storage layer ay mahigpit na isinama na ginagawang mahirap ang kahaliling pagpapatupad ng NameNode.
  3. Ang pagganap ng buong Hadoop System ay nakasalalay sa throughput ng NameNode. Samakatuwid, ang buong pagganap ng lahat ng mga pagpapatakbo ng HDFS ay nakasalalay sa kung gaano karaming mga gawain ang maaaring hawakan ng NameNode sa isang partikular na oras.
  4. Iniimbak ng NameNode ang buong namespace sa RAM para sa mabilis na pag-access. Ito ay humahantong sa mga limitasyon sa mga tuntunin ng laki ng memorya ibig sabihin Ang bilang ng mga bagay na namespace (mga file at bloke) na makayanan ng isang solong namespace server.
  5. Marami sa mga samahan (vendor) na mayroong pag-deploy ng HDFS, pinapayagan ang maraming mga samahan (nangungupahan) na gamitin ang kanilang namespace ng kumpol. Kaya, walang paghihiwalay ng namespace at samakatuwid, mayroong walang paghihiwalay kabilang sa samahan ng samahan na gumagamit ng kumpol.

Arkitektura ng HDFS Federation:

  • Sa HDFS Federation Architecture, mayroon kaming pahalang na scalability ng serbisyo sa pangalan. Samakatuwid, mayroon kaming maraming mga NameNode na federated, ibig sabihin Malaya sa bawat isa.
  • Ang mga DataNode ay naroroon sa ibaba ibig sabihin Nasa ilalim ng layer ng imbakan.
  • Nagrerehistro ang bawat DataNode kasama ang lahat ng mga NameNode sa kumpol.
  • Naghahatid ang DataNodes ng mga pana-panahong heartbeats, harangan ang mga ulat at humahawak ng mga utos mula sa mga NameNode.

Ang nakalarawan na representasyon ng HDFS Federation Architecture ay ibinibigay sa ibaba:

Bago magpatuloy, hayaan mo akong maikling pag-usapan ang nasa itaas na imahe ng arkitektura:

  • Mayroong maraming mga namespace (NS1, NS2,…, NSn) at bawat isa sa kanila ay pinamamahalaan ng kani-kanilang NameNode.
  • Ang bawat namespace ay may sariling block pool (ang NS1 ay mayroong Pool 1, ang NSk ay may Pool k at iba pa).
  • Tulad ng ipinakita sa imahe, ang mga bloke mula sa pool 1 (sky blue) ay nakaimbak sa DataNode 1, DataNode 2 at iba pa. Katulad nito, ang lahat ng mga bloke mula sa bawat block pool ay maninirahan sa lahat ng mga DataNode.

Ngayon, unawain natin nang detalyado ang mga bahagi ng HDFS Federation Architecture:

I-block ang Pool:

Ang block pool ay walang iba kundi ang hanay ng mga bloke na kabilang sa isang tukoy na Namespace. Kaya, mayroon kaming isang koleksyon ng block pool kung saan ang bawat block pool ay pinamamahalaan nang nakapag-iisa mula sa isa pa. Ang kalayaan na ito kung saan ang bawat block pool ay pinamamahalaan nang nakapag-iisa ay nagbibigay-daan sa namespace upang lumikha ng mga Block ID para sa mga bagong bloke nang walang koordinasyon sa iba pang mga namespaces. Ang mga bloke ng data na naroroon sa lahat ng block pool ay nakaimbak sa lahat ng mga DataNode. Karaniwan, ang block pool ay nagbibigay ng isang abstraction na tulad ng mga bloke ng data na naninirahan sa DataNodes (tulad ng sa Single Namespace Architecture) ay maaaring mapangkat na naaayon sa isang partikular na namespace.

Dami ng namespace:

Ang dami ng namespace ay walang iba kundi ang namespace kasama ang block pool nito. Samakatuwid, sa HDFS Federation mayroon kaming maraming mga volume ng namespace. Ito ay isang pansariling yunit ng pamamahala, ibig sabihin, Ang bawat dami ng namespace ay maaaring gumana nang nakapag-iisa. Kung ang isang NameNode o namespace ay tinanggal, ang kaukulang block pool na naninirahan sa DataNodes ay tatanggalin din.

Demo On Hadoop 2.0 Cluster Architecture Federation | Edureka

Ngayon, sa palagay ko mayroon kang isang magandang ideya tungkol sa HDFS Federation Architecture. Ito ay higit pa sa isang teoretikal na konsepto at hindi ito ginagamit ng mga tao sa isang praktikal na sistema ng produksyon sa pangkalahatan. Mayroong ilang mga isyu sa pagpapatupad sa HDFS Federation na nagpapahirap sa pag-deploy. Samakatuwid, ang HA (Mataas na Magagamit) Arkitektura ay ginustong upang malutas ang problema ng Single Point of Failure. Natakpan ko na ang HDFS HA ​​Arkitektura sa susunod kong blog.

Ngayon na naintindihan mo ang Hadoop HDFS Federation Architecture, tingnan ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online na may isang network na higit sa 250,000 nasiyahan na mga nag-aaral na kumalat sa buong mundo. Ang kurso sa Edureka Big Data Hadoop Certification Training ay tumutulong sa mga nag-aaral na maging dalubhasa sa HDFS, Yarn, MapReduce, Pig, Hive, HBase, Oozie, Flume at Sqoop na gumagamit ng mga kaso ng paggamit ng real-time sa Retail, Social Media, Aviation, Turismo, Pananalapi domain.

May tanong ba sa amin? Mangyaring banggitin ito sa seksyon ng mga komento at babalikan ka namin.