하둡

하둡[Apache Hadoop] 빅데이터 이야기 (2) - 하둡 제너널 이야기(Hadoop General)

neubillylee 2024. 9. 24. 16:26
            1.  하둡의 제너널 이야기 

              아래 도표는 세계 최조로 공개하는 테이블입니다. 하둡의 역사를 버전별로 나열한 것입니다. 그 중 버전 1에서 버전 3.5 SNAPSHOT 마지막까지를 나열해보았습니다. 

              1.0.4 1.2.1 2.4.1 2.5.2 2.6.0 2.7.0 2.8.0 2.9.0 2.10.0
                               
              General General General General General General General General General
              Overview Overview Overview Overview Overview Overview Overview Overview Overview
              Single Node Setup Single Node Setup Single Node Setup Single Node Setup Single Node Setup Single Node Setup Single Node Setup Single Node Setup Single Node Setup
              Cluster Setup Cluster Setup Cluster Setup Cluster Setup Cluster Setup Cluster Setup Cluster Setup Cluster Setup Cluster Setup
                CLI MiniCluster Hadoop Commands Reference Hadoop Commands Reference Hadoop Commands Reference Hadoop Commands Reference Commands Reference Commands Reference Commands Reference
                  File System Shell FileSystem Shell FileSystem Shell FileSystem Shell FileSystem Shell FileSystem Shell FileSystem Shell
                  Hadoop Compatibility Hadoop Compatibility Hadoop Compatibility Hadoop Compatibility Hadoop Compatibility Hadoop Compatibility Hadoop Compatibility
                    FileSystem Specification FileSystem Specification Interface Classification Interface Classification Interface Classification Interface Classification
                        FileSystem Specification FileSystem Specification FileSystem Specification FileSystem Specification

              3.0.0 3.1.0 3.2.0 3.3.0 3.4.0 3.5.0-SNAPSHOT
                         
              General General General General General General
              Overview Overview Overview Overview Overview Overview
              Single Node Setup Single Node Setup Single Node Setup Single Node Setup Single Node Setup Single Node Setup
              Cluster Setup Cluster Setup Cluster Setup Cluster Setup Cluster Setup Cluster Setup
              Commands Reference Commands Reference Commands Reference Commands Reference Commands Reference Commands Reference
              FileSystem Shell FileSystem Shell FileSystem Shell FileSystem Shell FileSystem Shell FileSystem Shell
              Compatibility Specification Compatibility Specification Compatibility Specification Compatibility Specification Compatibility Specification
              Downstream Developer's Guide Downstream Developer's Guide Downstream Developer's Guide Downstream Developer's Guide Downstream Developer's Guide
              Interface Classification Admin Compatibility Guide Admin Compatibility Guide Admin Compatibility Guide Admin Compatibility Guide
              FileSystem Specification Interface Classification Interface Classification Interface Classification Interface Classification Interface Classification
                FileSystem Specification FileSystem Specification FileSystem Specification FileSystem Specification

              하둡 버전 1.04부터 곧 나올 하둡 버전 3.5까지 몇 가지 주목할 점이 있습니다. 
              바로 공통 분모 입니다. Overview, Single Node Setup, Cluster Setup 세 가지를 사용할 수 있습니다. General 메뉴1.04 버전이 세상에 공개 되기 시작 하기 전, 숨겨진 것이 있었다면 0.23 버전이 존재했습니다. 이는 아주 간단했습니다. 우선 HDFS 연합 그리고 MapReduce NextGen (YARN or MRv2)라는 이름을 0.23 버전에 수록하여 상당한 개선을 이루었다고 합니다. 
              이는  안정 버전(hadoop-1.x)으로 말을 하고 있습니다. 그들이 말하는 안전은 HDFS와 MapReduce의 개선 사항에 대한 간략한 개요입니다. 

              * HDFS 연합 (HDFS Federation)
              네임 서비스의 수평적 확장을 위해 연합은 여러 독립적인 Namenode/Namespace를 사용합니다. Namenode는 독립적이며 서로 조정할 필요가 없습니다. Datanode는 모든 Namenode에 의해 블록의 공통 저장소로 사용됩니다. 각 Datanode는 클러스터의 모든 Namenode에 등록됩니다. Datanode는 주기적인 하트비트와 블록 보고서를 보내고 Namenode의 명령을 처리합니다. 자세한 내용은 HDFS 연합 문서에서 확인할 수 있습니다.


              • Scalability: Uses multiple independent Namenodes/Namespaces to scale the name service horizontally.
              • Independence: Namenodes operate independently without needing coordination.
              • Common Storage: Datanodes serve as common storage for blocks across all Namenodes.
              • Communication: Datanodes register with all Namenodes, sending periodic heartbeats and block reports, and handling commands.

              * 맵리듀스 (MapReduce NextGen (YARN 또는 MRv2))

              hadoop-0.23에 도입된 새로운 아키텍처는 JobTracker의 두 가지 주요 기능인 자원 관리와 작업 생명 주기 관리를 별도의 구성 요소로 나눕니다. 새로운 ResourceManager는 애플리케이션에 대한 전역 컴퓨팅 자원 할당을 관리하고, 애플리케이션별 ApplicationMaster는 애플리케이션의 스케줄링과 조정을 관리합니다. 애플리케이션은 고전적인 MapReduce 작업의 단일 작업이거나 이러한 작업의 DAG(Directed Acyclic Graph)일 수 있습니다. 
              ResourceManager와 각 머신의 NodeManager 데몬은 해당 머신에서 사용자 프로세스를 관리하며, 이들은 함께 컴퓨팅 패브릭을 형성합니다. 애플리케이션별 ApplicationMaster는 사실상 프레임워크 특정 라이브러리이며, ResourceManager와 협상하여 자원을 할당받고 NodeManager와 협력하여 작업을 실행하고 모니터링하는 역할을 합니다

              • Separation of Concerns: Divides JobTracker’s functions into resource management and job life-cycle management.
              • ResourceManager: Manages global compute resource assignments.
              • ApplicationMaster: Manages application scheduling and coordination, either for single jobs or DAGs of jobs.
              • NodeManager: Manages user processes on each machine, forming the computation fabric with ResourceManager.
              [ Apache Hadoop 3 퀵 스타트 가이드    흐리시케시 비제이 카람벨카르]

              이제 2002년 본격적으로 하둡은 정상 궤도에 도달합니다. 한 예로, 2000년대 초반, 월드 와이드 웹(World Wide Web)의 검색 엔진은 개선되고 정확한 결과를 제공하기 위해 경쟁했습니다. 주요 과제 중 하나는 이러한 대규모 데이터를 인덱싱하여 하드웨어의 비용 요소에 대한 제한을 유지하는 것이었습니다. 더그 커팅(Doug Cutting)과 마이크 카페렐라(Mike Caferella)는 2002년 검색 엔진과 웹 크롤러를 포함한 Nutch를 개발하기 시작했다. 그러나 가장 큰 과제는 성숙한 클러스터 관리 시스템의 부족으로 인해 수십억 페이지의 색인을 생성하는 것이었습니다. 2003년 Google은 Google의 분산 파일 시스템(GFS)(https://ai.google/research/pubs/pub51)에 대한 연구 논문을 발표했습니다. 이것은 그들이 NDFS라는 Nutch를 위한 분산 파일 시스템을 고안하는 데 도움이 되었습니다. 2004년 Google은 MapReduce 프로그래밍을 전 세계에 소개했습니다. MapReduce의 개념은 Lisp 프로그래밍 언어에서 영감을 받았습니다. 2006년에 Hadoop은 Lucene 산하에 만들어졌습니다. 같은 해에 Doug는 Yahoo에 고용되어 간신히 살아남은 Yahoo Search의 가장 어려운 문제 중 일부를 해결했습니다.

              2007년에 LinkedIn, Twitter 및 Facebook과 같은 많은 회사가 이 플랫폼에서 작업을 시작한 반면 Yahoo의 프로덕션 Hadoop 클러스터는 1,000노드 표시에 도달했습니다. 2008년, ASF(Apache Software Foundation)는 Hadoop을 Lucene에서 옮겨 최상위 프로젝트로 졸업했습니다. 이 시기는 Cloudera라는 최초의 하둡 기반 상용 시스템 통합 회사가 설립된 시기였습니다.  

              2009년에 AWS는 MapReduce 호스팅 기능을 제공하기 시작했고 Yahoo는 24k 노드 프로덕션 클러스터 마크를 달성했습니다. 이 해는 MapR이라는 또 다른 SI(System Integrator)가 설립된 해였습니다. 

              2010년 ASF는 HBase, Hive, Pig를 전 세계에 출시했습니다. 2011 년에 Yahoo의 앞길이 어려워 보였으므로 Yahoo의 원래 Hadoop 개발자는 Yahoo와 분리되어 Hortonworks라는 회사를 설립했습니다. Hortonworks는 Hadoop의 100% 오픈 소스 구현을 제공합니다. 같은 팀은 또한 ASF의 프로젝트 관리 위원회의 일원이 됩니다. 

              ASF는 2012년 하둡 1.0의 첫 번째 주요 릴리스를 출시했고, 바로 다음 해에 하둡 2.X를 출시했습니다. 그 후 몇 년 동안 Apache 오픈 소스 커뮤니티는 헌신적이고 다양한 개발자 커뮤니티 덕분에 Hadoop의 마이너 릴리스를 계속했습니다. 2017년 ASF는 Apache Hadoop 버전 3.0을 출시했습니다. 비슷한 맥락에서 Hortonworks, Cloudera, MapR 및 Greenplum과 같은 회사도 Apache Hadoop 에코시스템의 자체 배포를 제공하는 데 참여하고 있습니다.

               

 

 

 

 

 

 

 

 

 

 

https://ubuntu.com/tutorials/install-ubuntu-server#1-overview

 

ubuntu.com

 

 

 

 

 

Apache Hadoop 3.4.0 – MapReduce Tutorial

<!--- Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or a

hadoop.apache.org