Hadoop은 아파치 재단의 초기 버전은 2003 원래 야 후 대용량 데이터 분산된 시스템 인프라 개발 Google의 게시 된 학술 논문을 기반으로 Dougcutting. 사용자가 쉽게 개발 하 고 배포의 기본 내용을 알고 있기 없이 Hadoop에서 데이터의 대량 처리 하는 응용 프로그램을 실행할 수 있습니다. 낮은 비용, 높은 안정성, 높은 확장성, 높은 효율과 높은 내결함성 기능 Hadoop 가장 인기 있는 큰 데이터 분석 시스템, 아직는 HDFs 만들고 MapReduce 구성 요소는 그것을 통과 한 번 문제가-일괄 처리 작업 오프 라인 데이터 처리에만 작동 실시간으로 섹스를 요구 하는 현장에 대 한 필요가 있다. 그 결과, Hadoop 기반 도구의 다양 한 만들어진 공유 가장 일반적으로 사용 하는 13에 오픈 소스 리소스 예약, 스트림 컴퓨팅, 그리고 다양 한 비즈니스 시나리오를 포함 하 여 Hadoop 생태계에서 도구. 첫째, 우리 자원 관리와 관련 된 봐.
통합된 자원 관리/예약 시스템
기업 및 단체, 서버 비즈니스 논리에 대 한 클러스터로 분할 하는 경향이 고 데이터 집약적인 처리 프레임 워크는 신흥, mapreduce를 지 원하는 등 오프 라인 처리, 폭풍과 임 팔 라 온라인 처리를 지 원하는 반복 컴퓨팅 및 흐름 처리 프레임 워크 S4, 스파크 그들은 다른 실험실에서 출생 하 고 자신의 강점을. 관리 비용을 절감 하 고 리소스 사용률 증가, 일반적인 아이디어 발생-하이 프레임 워크는 같은 클러스터에서 실행; 따라서, 많은 자원을 통합 관리/예약 시스템, Google의 보 그, 아파치 원사 등 이제는 트위터 Mesos ( 에 공헌한 아파치 재단, Tencent 검색 Torca, Facebookcorona (오픈 소스),이 이번에는 Apachemesos 및 원사에 초점:
1. ApacheMesos
코드 관리 주소: APACHESVN
Mesos 제공, 효율적인 자원 격리 및 분산된 응용 프로그램 프레임 워크 및 지원 Hadoop, MPI, hypertable 걸쳐 공유 촉발, 등등.
Mesos는 동물원의 사육 담당자 내결함성 복제 구현, linuxcontainers를 사용 하 여 작업을 격리 여러 자원 (메모리, CPU) 할당 계획을 지원 하 여 사용 하는 아파치 인큐베이터에서 오픈 소스 프로젝트입니다. 자바, 파이썬, C + + 웹 기반 사용자 인터페이스를 제공 하는 새로운 병렬 응용 프로그램을 개발 하기 위해 api를 제공 합니다 couched 클러스터 상태 보기.
2. HadoopYARN
코드 관리 주소: APACHESVN
Mesos, 원사 임시 자원 격리 솔루션 컨테이너에 대 한 참조에 대 한 MapReduce2.0, 일컬어 원사 하지만 아직 성숙 하기 위해 자바 가상 머신 메모리 격리를 제공 하지 마십시오.
Mapreduce1.x,yarn 아키텍처는 클라이언트 쪽에서 많이 변경 되지 않습니다 및 원사, 개발자, ResourceManager를 사용 하는 반면 대부분의 호출 인터페이스, API에 호환성의 유지 Applicationmaster 및 NodeManager 원래 프레임에서 코어 jobtracker 및 Tasktracker을 교체합니다. ResourceManager는 중앙 서비스, 일정에 대 한 책임, Applicationmaster, applicationmaster;의 존재를 모니터링 이외에 속한 각 작업을 시작 NodeManager는 컨테이너의 상태를 유지 하 고 rm.에 하트 비트를 유지 하 Applicationmaster는 오래 된 구조에서 Jobtracker와 비슷한 작업 수명 주기 내에서 모든 작업에 대 한 책임.
Hadoop에 실시간 솔루션
우리는 비즈니스 논리 요구 사항에 따라 인터넷 기업에서 기업 검색 비즈니스에 종사 하는 회사 등 컴퓨팅 프레임 워크의 다양 한 사용 하 경향이 있다: MapReduce, 스파크 등으로 처리 하는 자연 언어와 구축 인덱싱 웹. 이 섹션은 폭풍, 임 팔 라, 스파크 3 프레임 워크에 의해 공유 됩니다.
3. ClouderaImpala
코드 관리 주소: GitHub
임 팔 라 Cloudera, 오픈 소스 massivelyparallelprocessing (MPP) 쿼리 엔진에 의해 개발 된다. 와 같은 메타 데이터, SQL 구문, ODBC 드라이버, 사용자 인터페이스 (Huebeeswax) 하이브, HDFs 또는 HBase에 직접 빠르고, 대화형 SQL 쿼리를 제공할 수 있습니다. 2012 년 말에 첫 번째 버전이 릴리스 되었습니다와 임 팔 라, Dremel의 영감에서 개발 되었다.
임 팔 라 더 이상 느린 하이브 + mapreduce 배치 하지만 오히려 분산된 쿼리 엔진 (Queryplanner, Querycoordinator, 및 Queryexecengine 구성 된) 사용 하 여 상용 병렬 관계형 데이터베이스와 비슷합니다. HDFs 또는 hbase 선택, 조인 및 통계 함수를 사용 하 여 대기 시간을 크게 감소 시키는에서 직접 데이터를 쿼리할 수 있습니다.
4. 스파크
코드 관리 주소: 아파치
스파크는 HDFs를 기반으로 하는 오픈 소스 데이터 분석 클러스터 컴퓨팅 프레임 워크를, 캘리포니아 대학, 버클리 Amplab에 의해 원래 개발. 스파크, Hadoop, 같은 대규모, 낮은 대기 시간 데이터 분석 응용 프로그램을 빌드하는 데 사용 됩니다. 스파크는 스칼라, 스칼라를 사용 하 여 응용 프로그램 프레임 워크에서 구현 됩니다.
스파크는 메모리에 기반한 분산된 데이터 집합을 사용 하 여 반복 작업 및 대화형 쿼리 최적화. Hadoop, 달리 스파크와 스칼라 긴밀 하 게 통합 하 고, 그리고 스칼라 관리 지역 집단 개체 같은 분산된 데이터 집합. 분산된 데이터 집합에 지원 반복 작업을 촉발 하 고 실제로 실행 될 수 있는 hadoop 하 둡 파일 시스템 (원사, Mesos, 경유 등).
5. 폭풍
코드 관리 주소: GitHub
폭풍은 분산, 결함 허용 실시간 컴퓨팅 시스템 Backtype에서 개발 하 고 트위터에 의해 점령. 폭풍우는 실시간 컴퓨팅 및 데이터베이스를 업데이트 하기 위해 사용 되는 스트림 처리 플랫폼입니다. 또한 폭풍 "지속적인 컴퓨팅" 사용할 수 있습니다 (continuouscomputation), 데이터 스트림, 그리고 계산에 대 한 흐름의 형태로 사용자에 게 출력에 지속적인 쿼리. 그것은 또한 "분산된 RPC"에 비싼 작업 실행에 대 한 사용할 수 있습니다.
Hadoop에 다른 솔루션
말했듯이 이전 기사, 사업, 실시간 요구에 따라 다양 한 실험실 폭풍, 임 팔 라, 불꽃, Samza, 및 다른 스트리밍 실시간 처리 도구를 개발 했습니다. 이 섹션에서 우리는 성능, 호환성, 및 데이터 유형 연구, 상어, 피닉스, Apacheaccumulo, Apachedrill, Apachegiraph, Apachehama을 포함 한 오픈 소스 솔루션 공유 합니다. Apachetez, Apacheambari
6. 상어
코드 관리 주소: GitHub
상어, 대표 하는 "Hiveonspark", Apachehive와 호환 대규모 데이터 웨어하우스 시스템에 대 한 내장 된 불꽃. 기존 데이터 또는 쿼리 수정 없이 100 배 배 빠른에서 hiveql를 수행할 수 있습니다.
상어 지원 하이브 쿼리 언어, 메타 저장소, 직렬화 형식 및 사용자 정의 기능, 완벽 한 통합을 위한 기존 하이브 배포, 더 빠르고, 더 강력한 대안 이다.
7. 피닉스
코드 관리 주소: GitHub
피닉스는 Java로만 쓰여진을 제공 하는 JDBC 드라이버는 클라이언트에 포함 될 수 있는 apachehbase 기반 SQL 계층 이다. 피닉스 쿼리 엔진 하나 이상의 hbasescan SQL 쿼리를 변환 하 고 표준 JDBC 결과 집합을 생성 하기 위해 실행 합니다. 다른 수백만 줄 번호는 밀리초, HBASEAPI, 협업 프로세서 및 간단한 쿼리에 대 한 사용자 지정 필터, 그것의 성능 레벨을 사용 하 여, 직접의 성능 수준을 초입니다. 피닉스 완전히 GitHub에서 호스팅입니다.
피닉스 주목할 만한 기능 포함: 1, 포함 된 JDBC 드라이버, 메타 데이터를 포함 하 여 java.sql 인터페이스의 대부분의 구현 api; 2, 수 키의 숫자를 통해 또는 열, 3, DDL를 키/값 단위 지원, 4, 버전의 스키마 창 고; 5, DML 지원; 5, 클라이언트의 일괄 제한 트랜잭션 지원, 6, 달성 하기 위해 처리를 통해 밀접 하 게 Ansisql 표준을 따릅니다.
8. ApacheAccumulo
코드 관리 주소: APACHESVN
Apacheaccumulo 단위 액세스 제어 및 사용자 지정 서버 쪽 처리에 기반 하는 신뢰성, 확장성, 높은-성능, 정렬, 분산 키 값 저장소 솔루션입니다. Apachehadoop, 동물원의 사육 담당자 및 중고품 건설에 따라 googlebigtable 디자인 아이디어를 사용 합니다. Accumulo 처음 NSA에 의해 개발 하 고 아파치 재단에 기증 했다.
대비 Googlebigtable accumulo 셀 기반 액세스에 주로 승진 하며 서버 쪽 프로그래밍 메커니즘, 그리고 후자의 수정 데이터 처리 과정에서 어느 시점에 키-값 쌍을 수정 하는 Accumulo
9. ApacheDrill
코드 관리 주소: GitHub
본질적으로, Apachedrill는 googledremel 오픈 소스 구현, NoSQL에 대 한 SQL와 몇 가지 언어를 지 원하는 분산된 MPP 쿼리 층 및 하 둡 데이터 스토리지 시스템, Hadoop 사용자가 도움이 될 것입니다 빠른 대량 데이터 집합의 쿼리의 목표를 달성 하는 본질적으로. 현재 드릴만만 드릴 비전의 초기 기능을 포함 하는 프레임으로 계산 될 수 있습니다.
훈련의 목적은 데이터 원본, 데이터 형식 및 데이터의 페타의 빠른 검사를 통해 쿼리 언어의 더 넓은 범위를 지원 하기 위해 (에서 몇 초에 대 한), 그리고 큰 데이터 집합의 대화형 분석을 위한 분산된 시스템.
10. ApacheGiraph
코드 관리 주소: GitHub
Apachegiraph는 처리 시스템 확장성, 분산, 반복 그래프 영감 BSP (Bulksynchronousparallel)와 오픈 소스와 구글의 Pregel Hadoop 기반 아키텍처.
Giraph 처리 플랫폼은 페이지 순위, 링크, 공유 개인에 순위와 같은 대규모 논리 계산, 실행 적합 합니다. Giraph 소셜 그래프 컴퓨팅에 초점을 맞추고 그리고 페이스 북은 그것의 opengraph 도구의 핵심 사용자의 수조 및 분 이내에 그들의 행동 사이의 연결을 다루는.
11. ApacheHama
코드 관리 주소: GitHub
Apachehama는 BSP (Bulksynchronousparallel) 구글의 Pregel 흉내 낸 Hadoop 기반에 따라 컴퓨팅 프레임 워크. 대규모 과학 계산, 처리 하는 데 사용 특히 매트릭스 및 그래프 계산. Bspmaster/groomserver (Computationengine), 동물원의 사육 담당자 (distributedlocking) (StorageSystems) Hdfs/hbase 클러스터 된 환경에서 시스템 아키텍처 구성 이 3 조각으로 구성 됩니다.
12. ApacheTez
코드 관리 주소: GitHub
Apachetez는 계산 프레임 워크 기반 Hadoopyarn Dag (방향 없는 그래프, directedacyclicgraph). 그것은 맵/리듀스 사이 파일 스토리지를 줄이고 더 큰 DAG 작업에 여러 맵/리듀스 작업을 결합 하는 동안 여러 개의 하위 프로세스로 맵/리듀스 프로세스를 분할 합니다. 동시에 그것은 합리적인 하위 프로세스를 결합 하는 작업의 실행 시간을 줄일 수입니다. Hortonworks에서 개발 하 고 주요 지원을 제공 합니다.
13. ApacheAmbari
코드 관리 주소: APACHESVN
Apacheambari는 직관적인 운영 도구와 복잡 한 hadoop 작업을 숨길 하 고 클러스터 작업을 훨씬 간단 하 게 만들 수 있는 강력한 hadoopapi를 제공 하는 오픈 소스 프레임 워크 구축, 관리, 및 apachehadoop 클러스터 모니터링입니다. 첫 번째 버전은 2012 년 6 월에에서 릴리스 되었습니다.
Apacheambari는 아파치의 최고 프로젝트, 빠르면 8 월 2011, Hortonworks 도입 Ambari apacheincubator 프로젝트는 Hadoop 클러스터의 궁극적인 간단한 관리에 대 한 비전을 개발. 2 년 이상에서 개발 커뮤니티로 성장 했습니다 크게 작은 팀에서 다양 한 단체의 hortonworks. Ambari 사용자 기반 배포는 대규모에 그들의 대규모 데이터 센터에서는 Hadoop 클러스터를 관리 하는 Ambari에 의존 하는 많은 기관과 꾸준히 증가 되었습니다.
현재 지원 되는 Apacheambari Hadoop 구성 요소 포함: HDFS, MapReduce, 하이브, Hcatalog, HBase, 동물원의 사육 담당자, Oozie, 돼지, 및 Sqoop.