서브메뉴

본문

엔터프라이즈 데이터 레이크 구축 (람다 아키텍처 기반의 엔터프라이즈 데이터 레이크 구축 가이드)
엔터프라이즈 데이터 레이크 구축 (람다 아키텍처 기반의 엔터프라이즈 데이터 레이크 구축 가이드)
저자 : 톰시 존|판카이 미스라
출판사 : 에이콘출판
출판년 : 2018
ISBN : 9791161751399

책소개

2019년 대한민국학술원 우수학술도서 선정도서

디지털 트랜스포메이션을 추구하는 기업이 빅데이터 가치 실현에 필요한 기업 내 단일 저장소인 '데이터 레이크'를 구축할 수 있도록 안내하는 실전서이다. 데이터에 대한 이해부터 아키텍처 구축에 필요한 코드까지 모든 과정을 망라해, 데이터 레이크 구축에 어려움을 겪는 기업에게 이정표가 될 것이다.

★ 이 책에서 다루는 내용 ★
■ 적절한 빅데이터 기술을 사용해 엔터프라이즈급 데이터 레이크 구축
■ 람다 아키텍처의 핵심과 엔터프라이즈 환경에 적용하는 방법 이해
■ 아파치 스쿱(Sqoop)과 그 기능에 대한 기술적 세부 사항
■ 카프카(Kafka)와 하둡 구성요소를 통합해 엔터프라이즈 데이터 획득
■ 스트림 기반 처리를 위한 스트리밍 기술과 플룸 사용 방법 학습
■ 아파치 플링크(Flink)의 스트림 기반 처리에 대한 이해
■ 하둡 구성 요소 통합 방법과 엔터프라이즈 환경의 데이터 레이크에 제공할 수 있는 장점
■ 일래스틱 스택(Elastic Stack)을 사용해 고성능 스트리밍 애플리케이션을 빠르게 구축
■ 설정으로 다양한 유형의 데이터 포맷을 데이터 획득 과정에서 일관되게 처리하는 방법

★ 이 책의 대상 독자 ★
■ 기업에서 엔터프라이즈급 데이터 레이크를 구현하고자 하는 자바 개발자나 설계자
■ 람다 아키텍처와 빅데이터 기술에 대한 실제 경험을 얻으려는 자바 개발자
■ 빅데이터의 세계를 발견하고 해당 기술을 사용해 실용적인 솔루션을 구현하고자 하는 자바 개발자
[교보문고에서 제공한 정보입니다.]

출판사 서평

1부 ‘개요’에서는 데이터, 데이터 레이크, 그리고 주요 컴포넌트와 관련된 다양한 개념을 소개한다. 1부는 다음과 같은 4개의 장으로 구성돼 있다.
1장, ‘데이터에 대한 소개’에서는 책 전반에 대해 소개하고 데이터가 무엇인지, 그리고 기업에서 데이터가 갖는 의미를 살펴본다. 또한 현대에서 데이터는 왜 중요하며 어떻게 사용할 수 있는지 설명한다. 실제 사례를 통해 데이터의 중요성을 살펴보고, 데이터가 오늘날 비즈니스를 어떻게 변화시키는지 알아본다. 실제 사례를 통해 데이터를 이용해 기업에 변화를 줄 방법에 대해 생각해볼 수 있는 계기가 될 것이다.
2장, ‘데이터 레이크의 개념’에서는 데이터 레이크의 개념을 좀 더 자세히 알아보고, 기업이 직면한 문제를 해결하기 위해 데이터 레이크를 어떻게 활용할 수 있을지 설명한다. 또한 람다 아키텍처와 데이터 레이크를 활용하는 방법에 대해 간략하게 미리 보기도 제공한다. 이에 따라 데이터 레이크의 개념과 조직에서 데이터 레이크를 구축할 때 선택할 수 있는 다양한 접근법을 소개한다.
3장, ‘람다 아키텍처 패턴’에서는 람다 아키텍처와 다양한 컴포넌트, 그리고 데이터 레이크와 람다 아키텍처 패턴 간의 연결과 관련된 세부 사항을 설명한다. 람다 아키텍처가 탄생하게 된 배경과 람다 아키텍처를 이용해 해결할 수 있는 문제점을 통해 람다 아키텍처에 대한 상세한 정보를 얻을 수 있다. 또한 람다 아키텍처의 핵심 개념을 이해하고 기업에서 이를 적용할 수 있는 방법을 설명한다. 그리고 배치와 실시간 처리 영역에 람다 아키텍처를 정의하기 위해 활용할 수 있는 다양한 패턴과 컴포넌트도 설명한다. 여기까지 읽으면 데이터와 데이터 레이크, 람다 아키텍처에 대한 충분한 배경 지식을 보유할 수 있으며, 기업용 데이터 레이크 구현을 위한 다음 단계로 나아갈 수 있다.
4장, ‘데이터 레이크에 적용된 람다 아키텍처’에서는 람다 아키텍처의 각 계층(컴포넌트)에 사용할 수 있는 기술을 설명하며, 이를 통해 현재 시장을 선도하는 기술을 선택할 수 있게 돕는다. 현재 빅데이터 시장에 존재하는 다양한 하둡 배포판을 설명하고, 기업용 데이터 레이크에서 람다 아키텍처를 적용하는 데 어떻게 활용 가능한지 설명한다. 그리고 기업용 데이터 레이크에서 배치, 속도, 제공 계층의 세부 사항 및 아키텍처의 인과 관계를 기술적인 관점에서 설명한다.
2부, ‘데이터 레이크의 기술적 구축 단위’에서는 각 장에서 데이터 레이크 구현 일부가 될 다양한 기술을 설명한다. 각 장에 필요한 기술을 설명하고, 점진적으로 데이터 레이크와 단일 고객 뷰(SCV, Single Customer View)를 구축해 나간다. 각 장에서 다룬 기술의 주요 상세 내용은 이 책의 범위를 벗어나지 않는 수준으로 다룬다. 2부는 다음과 같은 6개의 장으로 구성돼 있다.
5장, ‘아파치 스쿱을 사용한 배치 데이터 획득’에서는 아파치 스쿱에 대해 깊이 있게 설명한다. 스쿱을 선택한 이유를 설명하고 이 영역에서 선택할 수 있는 다른 기술적 대안을 제시한다. 또한 데이터 레이크와 람다 아키텍처를 연결하는 자세한 예제를 제공한다. 이를 통해 기업의 원천 데이터 소스에서 데이터 레이크로 데이터를 가져오는 스쿱 프레임워크와 이와 유사한 방식에 대해 이해하게 될 것이다. 또한 스쿱의 기술적 세부 사항 및 구조적으로 해결해야 할 문제점을 설명하며, 스쿱의 동작 방식 및 하둡 기술과 연계할 수 있는 다양한 방법을 예제로 알아본다.
6장, ‘아파치 플룸을 사용한 스트림 데이터로부터 데이터 획득’에서는 데이터 레이크와 람다 아키텍처의 연결을 담당하는 아파치 플룸에 대해 깊이 있게 설명한다. 프레임워크로서의 플룸을 살펴보고 데이터 레이크에서 플룸을 어떻게 사용할 수 있는지 설명한다. 또한 플룸 고유의 능력인 트랜잭션 제어와 데이터 재사용 동작 예제를 통해 플룸 아키텍처와 데이터를 획득하고 소비하는 역할로 플룸을 사용하는 방법 및 기술적 세부 사항을 설명한다. 그리고 스트림 기반 처리에 사용하는 스트리밍 기술에 플룸을 사용하는 방법도 설명한다.
7장, ‘아파치 카프카를 사용한 메시지 전달 계층’에서는 아파치 카프카를 깊이 있게 설명한다. 7장부터는 해당 기술을 선택한 이유 및 다른 기술적 대안도 함께 설명한다. 카프카를 메시지 기반의 미들웨어로 사용하는 방법을 설명하며, 다른 메시지 전달 엔진과 어떠한 차이점을 보이는지도 설명한다. 그리고 카프카와 그 기능 및 클라이언트(게시자), 중개자와 소비자(구독자)의 관점에서 수평적 확장 기능을 구축하는 데 활용하는 방법을 자세히 알아본다. 또한 카프카를 하둡 컴포넌트와 통합해 기업 데이터를 획득하는 방법과 이를 통해 데이터 레이크에 제공되는 기능에 대해서도 알아본다.
8장, ‘아파치 플링크를 사용한 데이터 처리’에서는 스트리밍 기반의 처리와 스트리밍 그리고 아파치 플링크의 개념을 설명한다. 데이터 레이크의 관점에서 플링크에 대해 자세히 알아보고, 동작 예제를 통해 근 실시간 데이터 처리를 위한 빅데이터 기술 영역에서 플링크를 어떻게 사용하는지 설명한다. 또한 스트리밍 기능이 아키텍처의 다양한 계층에 어떠한 영향을 미치는지 알아보고, 계층이 스트리밍 처리에 어떠한 영향을 주는지 알아본다.
9장, ‘아파치 하둡을 사용한 데이터 저장소’에서는 아파치 하둡에 대해 깊이 있게 설명한다. 하둡 영역 내의 다양한 하둡 컴포넌트와 기능, 그리고 이러한 컴포넌트를 사용해 기업용 데이터 레이크에 제공할 수 있는 방법을 자세히 설명한다. 데이터 레이크 관점에서 하둡을 구현 레벨에서 설명하고, 파일 저장소, 파일 형식과 데이터 레이크의 바탕이 되는 맵리듀스와 관련된 하둡 프레임워크 기능을 알아보며, 이를 근 실시간 처리를 위해 스택에 적용할 수 있는 특정 패턴을 구성하는 방법을 알아본다.
10장, ‘일래스틱서치 색인 데이터 저장소’에서는 일래스틱서치에 대해 깊이 있게 설명한다. 데이터 색인 프레임워크로서 일래스틱서치를 설명하고, 효율적인 검색을 위해 프레임워크에서 제공하는 다양한 데이터 분석기(analyzer)를 소개한다. 데이터 레이크에 일래스틱서치를 어떻게 활용할지 설명하고, 일정한 성능을 보장하기 위한 효율적인 데이터 샤딩 및 분산 메커니즘 및 데이터 레이크와 규모 있는 데이터에 일래스틱서치를 활용하는 방법을 설명한다. 또한 동작 예제를 통해 고속 스트리밍과 고성능 애플리케이션에 일래스틱서치를 어떻게 사용할 수 있는지 알아본다.
3부, ‘모두 통합’에서는 1부와 2부의 모든 기술 컴포넌트를 모아 데이터 레이크 구성의 큰 그림을 제시한다. 기업의 요구 사항에 따라 필요한 부분을 더욱 자세히 탐구해 볼 수 있게 추가적인 개념이나 기술들을 설명한다. 3부에서 다루는 모든 기술에 대한 상세 내용은 이 책의 범위를 벗어나지 않는 수준으로 다룬다. 그러나 추가로 논의되는 기술을 알아야 할 필요가 있으며, 필요에 따라 데이터 레이크 구현에 어떻게 적용할 수 있는지 방법을 알고 있어야 한다. 3부는 다음과 같이 2개의 장으로 구성돼 있다.
11장, ‘데이터 레이크 컴포넌트 연동’에서는 데이터 레이크, 람다 아키텍처와 다양한 기술을 소개한 후 모두 가져와 퍼즐 조각을 맞추듯 하나의 그림으로 완성한다. 이 단계에서 성취감을 느낄 수 있으며, 예제로 사용한 코드 베이스를 그대로 조직에 가져와 동작시킬 수도 있다. 완전한 기능을 갖춘 데이터 레이크를 구현하기 위해 데이터 레이크의 다양한 부분을 통합하는 방법을 알아본다. 또한 앞에서 배운 모든 것을 결합해 실제 동작하는 데이터 레이크 예제를 완성한다.
12장, ‘데이터 레이크 활용 방법 제안’에서는 책 전반에 걸쳐 ‘단일 고객 뷰(SCV)’ 예제를 다뤘지만, 데이터 레이크 도입 시 기업마다 고려해야 할 부분이 존재하는 만큼 여러 사례를 통해 좀 더 다양한 경우를 살펴본다. 다양한 사용 사례는 데이터 레이크에서 큰 이익을 얻을 수 있으며 소유, 운영, 반응성(reactiveness)과 관련된 비용을 최소화하고, 데이터로부터 의미 있는 정보를 이끌어 낼 수 있게 도움을 준다. 또한 기업용 데이터 레이크 구축에 도움이 될 것이다.

★ 옮긴이의 말 ★
데이터를 다루는 일을 하면서 주로 오픈소스 소프트웨어로 데이터 처리 문제를 해결했다. 문제 해결에 도움이 되는 책을 찾다 보면 개별 소프트웨어를 다룬 서적은 많지만 이를 모두 엮어 기업 환경의 문제를 실제로 해결하는 가이드가 되어주는 책은 거의 없어 아쉬웠다. 그러던 차에 이 책을 만나 번역까지 하게 되는 행운을 잡았다.
개별 오픈소스 소프트웨어를 조합해 유기적으로 통합된 엔터프라이즈급의 데이터 아키텍처를 설계하려면 개별 소프트웨어에 대한 깊이 있는 지식과 시행착오, 그리고 고민이 필요하다. 이 책은 빠르게 해답에 도달하도록 충분한 지식 전달과 구체적인 안내를 해줄 것이다. / 양원국

데이터 레이크, 처음에는 생소하지만 멋진 단어라고 느꼈다. 이 책은 골짜기 어디선가 만들어진 물줄기들이 산을 타고 흘러내려와 잔잔히 고여 있는 호수가 되는 것처럼 기업 내에 흩어져 있는 데이터를 하나로 담을 수 있는 데이터 호수를 만드는 방법에 대해 이야기하는 책이다.
디지털 트랜스포메이션 시대에 맞춰 데이터 레이크를 구축하고 싶지만, 너무나 광범위한 해당 영역의 벽에 부딪혀 망설이거나, 막연하다는 생각을 갖고 있는 기업 및 독자에게 많은 도움이 될 수 있도록 빅데이터의 개념부터 아키텍처 구성 방법, 그리고 기술에 이르기까지 빅데이터 구축에 필요한 전체 과정을 담아냈다.
이 책은 각 계층에서 사용하는 다양한 기술들의 역사 및 특징, 그리고 장단점 등의 설명을 통해 기술에 대한 이해의 폭을 좀 더 넓힐 수 있도록 도움을 주며, 실무 환경에 따라 고려할 수 있게 각 계층의 대안이 될 만한 기술들을 함께 소개한다. 이 책에서 제시하는 예제를 따라 하다 보면 본인도 모르는 사이 데이터 레이크를 구축하게 되는 기쁨을 맛보게 될 것이다. / 우성한

처음 빅데이터라는 기술을 접했을 때, 그리고 살아있는 빅데이터 시스템을 목격했을 때의 떨림이 아직도 생생하다. 누군가에게는 지나가는 비즈니스 용어였을지도 모르는 그 기술이 제게는 참 신기하고 알고 싶은 존재였다.
단위 기술을 설명하는 좋은 책이 많지만 전체 빅데이터 파이프라인을 어떤 구조와 기술로 실체화할 수 있는지 알려주는 책을 찾기는 매우 어렵다. 이 책은 다음과 같은 순서로 데이터 레이크를 구축하는 데 필요한 지식을 전달한다.
첫째, 엔터프라이즈 데이터를 이해하는 데 필요한 기초 이론을 설명한다.
둘째, 데이터 레이크를 구성하는 각 계층의 역할과 조건을 알려준다. 람다 아키텍처를 핵심 축으로 데이터 레이크는 외부 시스템에 최신의 데이터를 제공하는 구조를 설명한다.
셋째, 각 계층을 구성하는 데 사용된 오픈소스에 대한 설명을 실전 코드와 함께 설명한다. 각 계층에 적합한 오픈소스 소프트웨어에 대한 개념과 사용법을 설명한다.
마지막으로 빅데이터 거버넌스와 전체 아키텍처를 통합하는 방법을 설명해 독자가 데이터 레이크를 구축하면서 놓치면 안 되는 내용을 설명한다. 데이터 중심의 경영을 실현하기 위해 데이터 레이크라는 강력한 전략 무기를 얻고자 하는 경영자나 실무자에게 이 책이 도움이 됐으면 한다. / 이영호
[교보문고에서 제공한 정보입니다.]

목차정보

1부. 개요
1장. 데이터에 대한 소개
__데이터 탐색
__엔터프라이즈 데이터란?
__엔터프라이즈 데이터 관리
__빅데이터의 개념
__데이터의 연관성
__데이터의 품질
__데이터는 어디에 있을까?
__엔터프라이즈 환경의 현재 상태
__기업의 디지털 트랜스포메이션은
__데이터 레이크 사용 사례 이해
__요약

2장. 데이터 레이크의 개념
__데이터 레이크란 무엇인가?
__데이터 레이크는 기업을 어떻게 도울 수 있을까?
__데이터 레이크는 어떻게 동작하는가?
__데이터 레이크와 데이터 웨어하우스의 차이점
__데이터 레이크 구축을 위한 접근법
__람다 아키텍처 기반의 데이터 레이크
__요약

3장. 람다 아키텍처 패턴
__람다 아키텍처란?
__람다 아키텍처의 역사
__람다 아키텍처의 원칙
__람다 아키텍처의 컴포넌트
__람다 아키텍처의 완전한 동작 방식
__람다 아키텍처의 장점
__람다 아키텍처의 단점
__람다 아키텍처 관련 기술 개요
__람다 아키텍처 응용
__람다 아키텍처의 실제 활용 사례
__카파 아키텍처
__요약

4장. 데이터 레이크에 적용된 람다 아키텍처
__하둡 배포판
__엔터프라이즈 환경의 빅데이터 체계를 위한 선택 기준
__데이터 처리를 위한 배치 계층
__제공 계층
__요약

2부. 데이터 레이크의 기술적 구축 단위
5장. 아파치 스쿱을 사용한 배치 데이터 획득
__데이터 레이크의 배경: 데이터 획득
__아파치 스쿱인 이유
__스쿱으로 작업
__스쿱 커넥터
__스쿱의 HDFS 지원
__스쿱 작동 예
__스쿱을 사용해야 하는 경우
__스쿱을 사용하지 말아야 하는 경우
__실시간 스쿱: 가능한가?
__대안
__요약

6장. 아파치 플룸을 사용한 스트림 데이터로부터 데이터 획득
__데이터 레이크 관점에서 데이터 획득
__플룸을 선택한 이유
__플룸 아키텍처 원칙
__플룸 아키텍처
__플룸 이벤트: 스트림 데이터
__플룸 에이전트
__플룸 소스
__플룸 채널
__플룸 싱크
__플룸 설정
__플룸 트랜잭션 관리
__기타 플룸 컴포넌트
__문맥 라우팅
__플룸 구동 예제
__플룸을 사용할 때
__플룸을 사용하지 말아야 할 때
__다른 선택 사항
__요약

7장. 아파치 카프카를 사용한 메시지 전달 계층
__데이터 레이크의 상황: 메시지 전달 계층
__왜 아파치 카프카인가?
__카프카 구조
__기타 카프카 컴포넌트
__카프카 프로그래밍 인터페이스
__프로듀서와 컨슈머 신뢰성
__카프카 보안
__메시지 중심 미들웨어로서의 카프카
__카프카의 수평 확장 아키텍처
__카프카 커넥트
__카프카 동작 예제
__카프카를 사용할 때
__카프카를 사용하지 말아야 할 때
__기타 옵션
__요약

8장. 아파치 플링크를 사용한 데이터 처리
__데이터 레이크의 상황: 데이터 흡수 계층
__아파치 플링크를 사용하는 이유
__플링크의 동작 방식
__플링크 API
__플링크 동작 예제
__플링크를 사용해야 하는 경우
__플링크를 사용하면 안 되는 경우
__플링크의 대안
__요약

9장. 아파치 하둡을 사용한 데이터 저장소
__데이터 레이크의 상황: 데이터 저장 및 람다 배치 계층
__하둡을 사용하는 이유
__하둡의 동작 방식
__하둡 에코시스템
__하둡 배포판
__HDFS와 데이터 형식
__근실시간 애플리케이션을 위한 하둡
__하둡 배포 모드
__하둡 동작 예제
__하둡을 사용하면 안 되는 경우
__기타 하둡 처리 옵션
__요약

10장. 일래스틱서치 색인 데이터 저장소
__데이터 레이크의 상황: 데이터 저장소와 람다 속도 계층
__일래스틱서치란?
__일래스틱서치를 사용하는 이유
__일래스틱서치의 동작 방식
__엘라스틱 스택
__엘라스틱 클라우드
__일래스틱서치 DSL(쿼리 DSL)
__일래스틱서치의 노드
__일래스틱서치와 관계형 데이터베이스
__일래스틱서치 에코시스템
__일래스틱서치 배포 옵션
__일래스틱서치 클라이언트
__빠른 스트리밍 계층을 위한 일래스틱서치
__일래스틱서치 데이터 소스
__콘텐츠 색인을 위한 일래스틱서치
__일래스틱서치와 하둡
__일래스틱서치 동작 예제
__일래스틱서치를 사용해야 하는 경우
__일래스틱서치를 사용하면 안 되는 경우
__일래스틱서치의 다른 대안
__요약

3부. 모두 통합
11장. 데이터 레이크 컴포넌트 연동
__데이터 레이크를 어디까지 구현했을까?
__데이터 레이크의 핵심 아키텍처 원칙
__엔터프라이즈 환경의 데이터 레이크가 직면한 과제
__데이터 레이크에 기대하는 것
__다른 활동을 위한 데이터 레이크
__데이터 저장소에 대해 자세히 알아보기
__데이터 처리에 대해 자세히 알아보기
__데이터 보안에 대한 생각
__데이터 암호화에 대한 생각
__데이터 관리 및 거버넌스
__데이터 감사에 대한 생각
__데이터 추적성에 대한 생각
__제공 계층 더 알아보기
__요약

12장. 데이터 레이크 활용 방법 제안
__엔터프라이즈 환경에 사이버 보안 적용
__기업에 대한 고객 인식 알아내기
__효율적인 창고 관리
__브랜드 개발과 기업 마케팅
__더 높은 수준의 개인화 구현
__IoT 데이터 분석 능력 갖추기
__더 실용적이고 유용한 데이터 기록 저장소
__기존 데이터 웨어하우스 인프라 보완
__통신사의 보안 및 규제 준수
__요약
[교보문고에서 제공한 정보입니다.]