Computer >> 컴퓨터 >  >> 프로그램 작성 >> 데이터 베이스

Hadoop 에코시스템 기본 사항:2부

원래 Tricore에서 발행:2017년 7월 11일

Apache™ Hadoop®에 대한 2부작 시리즈의 1부에서는 Hadoopecosystem과 Hadoop 프레임워크를 소개했습니다. 2부에서는 쿼리, 외부 통합, 데이터 교환, 조정 및 관리를 위한 구성 요소를 포함하여 Hadoop 프레임워크의 더 많은 핵심 구성 요소를 다룹니다. 또한 Hadoop 클러스터를 모니터링하는 모듈을 소개합니다.

쿼리

이 시리즈의 1부에서는 Apache Pig™를 스크립팅 도구로 소개했습니다. Pig 라틴어로 작성된 Pig는 실행 가능한 MapReduce 작업으로 변환됩니다. 1부에서 자세히 알아볼 수 있는 몇 가지 이점을 제공합니다.

그러나 일부 개발자는 여전히 SQL을 선호합니다. 알고 있는 것을 사용하고 싶다면 대신 SQL을 Hadoop과 함께 사용할 수 있습니다.

하이브

Apache Hive™는 대량의 데이터를 관리하고 구성하는 분산 데이터 웨어하우스입니다. 이 웨어하우스는 HDFS™(HadoopDistributed File System) 위에 구축되었습니다. Hive 쿼리 언어인 HiveQL은 SQL 의미 체계를 기반으로 합니다. 런타임 엔진은 HiveQL을 데이터를 쿼리하는 MapReduce 작업으로 변환합니다.

Hive는 다음과 같은 기능을 제공합니다.

  • 대량의 원시 데이터를 보관하기 위한 도식화된 데이터 저장소입니다.

  • HDFS의 원시 데이터에 대한 분석 및 쿼리를 실행하기 위한 SQL과 유사한 환경입니다.

  • 외부 관계형 데이터베이스 관리 시스템(RDBMS) 애플리케이션과의 통합

다음 이미지는 Hadoop 생태계의 아키텍처를 시각화한 것입니다.

Hadoop 에코시스템 기본 사항:2부 하둡 생태계의 아키텍처

외부 통합

Apache Flume™은 대량의 로그 데이터를 HDFS로 효율적으로 수집, 집계 및 이동하기 위한 안정적이고 사용 가능한 분산형 서비스입니다. Flume은 내결함성과 장애 조치 복구가 지원되는 스트리밍 데이터 흐름 아키텍처를 사용하여 대량의 이벤트 데이터를 전송합니다.

Flume은 다음과 같은 기능도 제공합니다.

  • 네트워크 트래픽, 로그 및 이메일 메시지와 같은 대용량 이벤트 데이터를 전송합니다.

  • 여러 소스의 데이터를 HDFS로 스트리밍합니다.

  • Hadoop 애플리케이션에 대한 안정적인 실시간 데이터 스트리밍을 보장합니다.

데이터 교환

Apache Sqoop™은 관계형 데이터베이스 및 엔터프라이즈 데이터 웨어하우스와 같은 외부 데이터 저장소와 Hadoop 간에 대량 데이터를 효율적으로 전송하도록 설계되었습니다. Sqoop은 TeradataDatabase, IBM® Netezza, Oracle® Database, MySQL™ 및 PostgreSQL®과 같은 관계형 데이터베이스와 함께 작동합니다. Sqoop은 빅 데이터를 수집하는 대부분의 기업에서 널리 사용됩니다.

Sqoop은 다음과 같은 기능을 제공합니다:

  • 데이터베이스에 따라 가져온 데이터에 대한 스키마 설명 프로세스의 대부분을 자동화할 수 있습니다.

  • MapReduce 프레임워크를 사용하여 데이터를 가져오고 내보냅니다. 이를 통해 Sqoop은 병렬 메커니즘과 내결함성을 제공할 수 있습니다.

  • 모든 주요 RDBMS 데이터베이스에 대한 커넥터를 제공합니다.

  • 전체 및 증분 로드, 데이터 병렬 내보내기 및 가져오기, 데이터 압축을 지원합니다.

  • Kerberos 보안 통합을 지원합니다.

조정

Apache Zookeeper™는 클러스터 전체에서 동기화를 가능하게 하는 분산 애플리케이션을 위한 조정 서비스입니다. 분산 애플리케이션이 데이터를 저장하고 검색할 수 있는 중앙 집중식 리포지토리를 제공합니다.

Zookeeper는 클러스터에서 작업을 관리하는 데 사용되는 관리 Hadoop 도구입니다. 일부 개발자는 한 노드의 데이터 변경 사항이 다른 노드로 전달되기 때문에 이 도구를 "감시 보호 장치"라고 합니다.

하둡 클러스터 프로비저닝, 관리 및 모니터링

Apache Ambari™는 Apache Hadoop 클러스터를 프로비저닝, 관리 및 모니터링하기 위한 웹 기반 도구입니다. 도구를 설치하고 관리, 구성 및 모니터링 작업을 수행하기 위한 매우 간단하지만 고도의 대화형 사용자 인터페이스가 있습니다. Ambari는 히트 맵과 같은 클러스터 상태 정보를 볼 수 있는 대시보드를 제공합니다. 또한 MapReduce, Pig 및 Hive 애플리케이션을 기능과 함께 볼 수 있으므로 성능 특성을 쉽게 진단할 수 있습니다.

Ambari는 다음 기능도 제공합니다.

  • 노드를 사용한 마스터 서비스 매핑.

  • 설치하려는 서비스를 선택하는 기능.

  • 간단한 사용자 지정 스택 선택.

  • 더 깔끔한 인터페이스.

  • 간소화된 설치, 모니터링 및 관리.

결론

Hadoop은 방대한 양의 데이터를 저장하고 분석하려는 기업에 매우 효과적인 솔루션입니다. 분산 시스템에서 데이터 관리를 위해 많이 찾는 도구입니다. 오픈 소스이기 때문에 기업에서 자유롭게 활용할 수 있습니다. Hadoop에 대한 자세한 내용은 Apache Software Foundation 웹 사이트의 공식 문서를 참조하십시오.

하둡을 사용해 보셨습니까? 피드백 탭을 사용하여 의견을 남기거나 질문하십시오.