책 소개
요약
엔터프라이즈 데이터 플랫폼 설계 유용한 개념과 사례를 알아보자!
잘 설계된 데이터 플랫폼의 파이프라인, 스토리지 시스템과 API는 온프레미스 데이터 센터에서 발생하는 복잡한 유지보수 문제와 무분별한 증설, 확장작업을 없애 준다. 클라우드 데이터 플랫폼 설계 패턴을 배우면 어떤 클라우드 공급업체를 사용하더라도 성능을 극대화할 수 있다.
데이터 플랫폼의 유연성을 높이고 비용을 절감하는 6계층 접근 방식을 소개한다. 다양한 소스에서 데이터를 수집하기 위한 패턴을 찾고, 클라우드 공급업체에서 제공하는 서비스를 활용하는 방법을 배울 수 있다.
이 책에 쏟아진 찬사
“데이터 플랫폼을 처음부터 구축하기에 훌륭한 가이드다!”
“클라우드 데이터 플랫폼에 대해 포괄적으로 설명하는 귀중한 자료다.”
“명확하고 간결하게 설명하면서도 유용한 가이드다. 애플리케이션과 플랫폼의 전체 스펙트럼에 걸쳐 아키텍처와 툴을 훌륭하게 소개한다.”
“클라우드 데이터 플랫폼의 아키텍처, 도전 과제와 패턴에 대해 실용적이고도 현실적인 관점을 담고 있다.”
이 책에서 다루는 내용
◆ 정형 및 비정형 데이터 세트에 대한 모범 사례
◆ 클라우드 기반 머신러닝 툴
◆ 메타데이터와 실시간 분석
◆ 디펜시브 아키텍처, 액세스, 보안
이 책의 대상 독자
데이터 플랫폼이 무엇인지, 클라우드의 장점을 활용한 데이터 플랫폼 설계란 무엇인지 궁금한 독자들을 위한 책이다. 데이터 플랫폼 솔루션을 설계할 때 참고할 수 있는 내용을 상세히 다루고 있으며 기술과 비즈니스 간의 연관성을 기반으로 설명했기에 데이터 분석가, 비즈니스 분석가, 프로덕트 오너와 같이 아키텍처, 솔루션 설계를 직접 수행하지 않더라도 솔루션 개념과 원리를 이해할 수 있다. 스트리밍 방식과 배치 방식, 스키마 관리, 기타 주요 디자인 요소 등과 같은 주제를 설계 관점에서 주로 서술한다.
이 책의 구성
1장, '데이터 플랫폼 소개'에서는 클라우드 데이터 플랫폼의 개념부터 시작해 데이터 플랫폼이 필요하게 된 배경과 동향을 간단히 설명한다. 클라우드 데이터 플랫폼 설계 시 필요한 핵심 구성 요소를 설명한다.
2장, '데이터 웨어하우스만이 아닌 데이터 플랫폼인 이유'에서는 클라우드 데이터 플랫폼과 클라우드 데이터 웨어하우스의 차이점을 비교한다.
3장, '빅 3의 활용과 확대: 아마존, 마이크로소프트 애저, 구글'에서는 개념적 플랫폼 아키텍처를 좀 더 설명한 후, AWS, 애저, 구글 클라우드 플랫폼에서 제공하는 서비스와 툴이 이 아키텍처의 각 레이어와 어떻게 매핑되는지 설명한다.
4장, '플랫폼으로 데이터 가져오기'에서는 데이터 플랫폼으로 데이터를 수집하는 방식을 집중해서 다룬다. 관계형 데이터베이스, 파일, 스트리밍, SaaS 시스템의 API 활용 등을 설명한다.
5장, '데이터의 구성과 처리'에서는 데이터 플랫폼에서 데이터를 가장 잘 구조화해서 처리하는 방법을 설명하고, 설정 방식 파이프라인과 데이터 처리 단계의 일반적인 개념을 소개한다.
6장, '실시간 데이터 처리 및 분석'에서는 실시간 데이터 처리와 분석, 실시간 수집과 실시간 처리의 차이, 실시간 데이터의 구성 방법과 변환 방법을 설명한다.
7장, '메타데이터 계층 아키텍처'에서는 메타데이터 계층의 기술적 개념과 이것이 필요한 이유를 설명하고, 기술 메타 데이터 모델의 옵션, 구축 옵션, 현재 시장에 출시된 몇 가지 상용 솔루션과 오픈소스 솔루션을 간단히 소개한다.
8장, '스키마 관리'에서는 스키마 관리 관련 개선 필요 사항들을 알아보고, 접근해볼 수 있는 개선 방식을 몇 가지 알려준다. 그리고 스키마 진화를 모던 데이터 플랫폼에서는 어떻게 대응해야 하는지를 설명한다.
9장, '데이터 액세스 방법과 보안'에서는 데이터 소비자의 다양한 유형과 데이터 액세스 포인트를 설명한다. 데이터 웨어하우스, 애플리케이션 액세스, 머신러닝 사용자, BI와 리포팅 툴 등이다.
10장, '비즈니스 가치 제고를 위한 데이터 플랫폼 활용'에서는 비즈니스 가치를 창출하기 위한 데이터 플랫폼 활용 방법을 설명하고 데이터 플랫폼 프로젝트의 성공을 위해 다뤄야 할 문제점을 논의한다.
상세 이미지
목차
목차
- 1장. 데이터 플랫폼 소개
- 1.1 데이터 웨어하우스에서 데이터 플랫폼으로의 이동과 관련된 동향들
- 1.2 데이터의 속도, 규모, 다양성이 증가하는 상황에서 데이터 웨어하우스의 한계
- 1.2.1 데이터의 다양성
- 1.2.2 데이터 규모
- 1.2.3 데이터 속도
- 1.2.4 세 가지 V
- 1.3 데이터 레이크가 대안이 될 수 있을까?
- 1.4 퍼블릭 클라우드 활용
- 1.5 클라우드, 데이터 레이크, 데이터 웨어하우스: 클라우드 데이터 플랫폼의 등장
- 1.6 클라우드 데이터 플랫폼의 빌딩 블록(building block)
- 1.6.1 수집 계층
- 1.6.2 스토리지 계층
- 1.6.3 처리 계층
- 1.6.4 서비스 계층
- 1.7 클라우드 데이터 플랫폼이 세 가지 V를 다루는 방법
- 1.7.1 데이터의 다양성
- 1.7.2 데이터 규모
- 1.7.3 데이터 속도
- 1.7.4 추가 V 두 가지
- 1.8 공통 유스 케이스
- 요약
- 2장. 데이터 웨어하우스만이 아닌 데이터 플랫폼인 이유
- 2.1 클라우드 데이터 플랫폼과 클라우드 데이터 웨어하우스: 실용적 측면
- 2.1.1 데이터 소스 자세히 살펴보기
- 2.1.2 클라우드 데이터 웨어하우스만 활용한 사례
- 2.1.3 클라우드 데이터 플랫폼 아키텍처 사례
- 2.2 데이터 수집
- 2.2.1 애저 시냅스로 직접 데이터 수집
- 2.2.2 애저 데이터 플랫폼으로 데이터 수집
- 2.2.3 업스트림 데이터 소스의 변경 관리
- 2.3 데이터 처리
- 2.3.1 웨어하우스에서 데이터 처리
- 2.3.2 데이터 플랫폼에서 데이터 처리
- 2.4 데이터 액세스
- 2.5 클라우드 비용 고려사항
- 요약
- 2.6 연습문제 정답
- 3장. 빅 3의 활용과 확대: 아마존, 마이크로소프트 애저, 구글
- 3.1 클라우드 데이터 플랫폼 계층 아키텍처
- 3.1.1 데이터 수집 계층
- 3.1.2 고속 스토리지와 저속 스토리지
- 3.1.3 처리 계층
- 3.1.4 기술 메타데이터 계층(Technical metadata layer)
- 3.1.5 서비스 계층과 데이터 소비자
- 3.1.6 오케스트레이션 오버레이와 ETL 오버레이 계층
- 3.2 데이터 플랫폼 아키텍처에서 계층의 중요성
- 3.3 클라우드 데이터 플랫폼 계층에 활용할 수 있는 툴 매핑
- 3.3.1 AWS
- 3.3.2 구글 클라우드
- 3.3.3 애저
- 3.4 상용 소프트웨어 및 오픈소스 대안
- 3.4.1 배치 데이터 수집
- 3.4.2 스트리밍 데이터 수집 및 실시간 분석
- 3.4.3 오케스트레이션 계층
- 요약
- 3.5 연습문제 답안
- 4장. 플랫폼으로 데이터 가져오기
- 4.1 데이터베이스, 파일, API, 스트림
- 4.1.1 관계형 데이터베이스(Relational databases)
- 4.1.2 파일
- 4.1.3 SaaS API
- 4.1.4 스트림
- 4.2 관계형 데이터베이스에서 데이터 수집
- 4.2.1 SQL 인터페이스를 사용해 RDBMS에서 데이터 수집
- 4.2.2 테이블 전체 데이터 수집
- 4.2.3 증분 데이터 수집
- 4.2.4 변경 데이터 캡처
- 4.2.5 CDC 공급 업체 개요
- 4.2.6 데이터 타입 변환(Data type conversion)
- 4.2.7 NoSQL 데이터베이스에서 데이터 수집
- 4.2.8 RDBMS 또는 NoSQL 수집 파이프라인용 메타데이터 캡처
- 4.3 파일에서 데이터 수집
- 4.3.1 수집된 파일 추적
- 4.3.2 파일 수집 메타데이터 캡처
- 4.4 스트림 방식의 데이터 수집
- 4.4.1 배치와 스트리밍 수집의 차이점
- 4.4.2 스트리밍 파이프라인의 메타데이터 캡처
- 4.5 SaaS 애플리케이션들로부터 데이터 수집
- 4.5.1 API 설계 표준의 부재
- 4.5.2 전체 데이터나 증분 데이터 내보내기(export) 처리 방법의 표준 부재
- 4.5.3 일반적으로 결과 데이터는 중첩된 JSON 도큐먼트다
- 4.6 클라우드 데이터 수집에서 네트워크 및 보안 고려 사항
- 4.6.1 클라우드 데이터 플랫폼과 타 네트워크 간 연결
- 요약
- 4.7 연습문제 답안
- 5장. 데이터의 구성과 처리
- 5.1 데이터 플랫폼에서 처리(Processing) 계층을 별도로 분리한다는 것
- 5.2 데이터 처리 스테이지
- 5.3 클라우드 스토리지 구성
- 5.3.1 클라우드 스토리지 컨테이너와 폴더
- 5.4 공통 데이터 처리 단계
- 5.4.1 파일 포맷 변환
- 5.4.2 데이터 중복 제거
- 5.4.3 데이터 품질 검사
- 5.5 설정 가능한 파이프라인
- 요약
- 5.6 연습문제 정답
- 6장. 실시간 데이터 처리 및 분석
- 6.1 실시간 수집 계층과 실시간 처리 계층 비교
- 6.2 실시간 데이터 처리 유스케이스
- 6.2.1 소매점(Retail) 유스케이스: 실시간 수집
- 6.2.2 온라인 게임 유스케이스: 실시간 수집과 실시간 처리
- 6.2.3 실시간 수집과 실시간 처리의 비교 요약
- 6.3 실시간 수집과 실시간 처리의 활용 시점
- 6.4 실시간 사용을 위한 데이터 구조화
- 6.4.1 고속 스토리지의 구조
- 6.4.2 고속 스토리지 스케일링 방법
- 6.4.3 실시간 스토리지에서 데이터 구조화
- 6.5 실시간 시스템에서 공통 데이터 변환
- 6.5.1 실시간 시스템에서 데이터 중복의 원인
- 6.5.2 실시간 시스템에서 데이터 중복 제거
- 6.5.3 실시간 파이프 라인에서 메시지 포맷 변환
- 6.5.4 실시간 데이터 품질 체크
- 6.5.5 배치 데이터와 실시간 데이터 결합하기
- 6.6 실시간 데이터 처리용 클라우드 서비스의 종류
- 6.6.1 AWS 실시간 처리 서비스
- 6.6.2 GCP 실시간 처리 서비스
- 6.6.3 애저 실시간 처리 서비스
- 요약
- 6.7 연습문제 해답
- 7장. 메타데이터 계층 아키텍처
- 7.1 메타데이터의 의미
- 7.1.1 비즈니스 메타데이터
- 7.1.2 파이프라인 메타데이터(데이터 플랫폼 내부 메타데이터)
- 7.2 파이프라인 메타데이터의 장점
- 7.3 메타데이터 모델
- 7.3.1 메타데이터 도메인
- 7.4 메타데이터 계층 구현 옵션
- 7.4.1 설정 파일의 모음인 메타데이터 계층
- 7.4.2 메타데이터 데이터베이스
- 7.4.3 메타데이터 API
- 7.5 기존 솔루션 개요
- 7.5.1 클라우드 메타데이터 서비스
- 7.5.2 오픈소스 메타데이터 계층
- 요약
- 7.6 연습문제 답안
- 8장. 스키마 관리
- 8.1 스키마 관리가 필요한 이유
- 8.1.1 기존 데이터 웨어하우스 아키텍처의 스키마 변경
- 8.1.2 스키마 온 리드 방식
- 8.2 스키마 관리 방식
- 8.2.1 스키마를 계약으로 다루는 방식
- 8.2.2 데이터 플랫폼의 스키마 관리
- 8.2.3 스키마 변경 모니터링
- 8.3 스키마 레지스트리 구현
- 8.3.1 아파치 아브로 스키마
- 8.3.2 스키마 레지스트리 솔루션
- 8.3.3 메타데이터 계층의 스키마 레지스트리
- 8.4 스키마 진화 시나리오(Schema evolution scenarios)
- 8.4.1 스키마 호환성 규칙
- 8.4.2 스키마 진화와 데이터 변환 파이프라인
- 8.5 스키마 진화와 데이터 웨어하우스
- 8.5.1 클라우드 데이터 웨어하우스의 스키마 관리 기능
- 요약
- 8.6 연습문제 답
- 9장. 데이터 액세스 방법과 보안
- 9.1 데이터 소비자 유형
- 9.2 클라우드 데이터 웨어하우스
- 9.2.1 AWS 레드시프트
- 9.2.2 애저 시냅스
- 9.2.3 구글 빅쿼리(Google BigQuery)
- 9.2.4 적합한 데이터 웨어하우스 선정하기
- 9.3 애플리케이션 데이터 액세스
- 9.3.1 클라우드 관계형 데이터베이스
- 9.3.2 클라우드 키/밸류 데이터 저장소
- 9.3.3 전문 검색 서비스
- 9.3.4 인메모리 캐시
- 9.4 데이터 플랫폼에서의 머신러닝
- 9.4.1 클라우드 데이터 플랫폼에서의 머신러닝 모델 라이프사이클
- 9.4.2 ML 클라우드 협업 툴
- 9.5 비즈니스 인텔리전스와 리포팅 툴(reporting tool)
- 9.5.1 BI 툴(Business Intelligence tool)과 클라우드 데이터 플랫폼 통합
- 9.5.2 BI 툴로 엑셀(Excel) 사용하기
- 9.5.3 클라우드 공급 업체 서비스에 포함돼 있지 않은 BI 툴
- 9.6 데이터 보안
- 9.6.1 사용자, 그룹 및 역할
- 9.6.2 자격 증명 및 설정 관리
- 9.6.3 데이터 암호화
- 9.6.4 네트워크 바운더리(boundary)
- 요약
- 9.7 연습문제 정답
- 10장. 비즈니스 가치 제고를 위한 데이터 플랫폼 활용
- 10.1 데이터 전략이 필요한 이유
- 10.2 분석 역량 성숙을 위한 여정
- 10.2.1 SEE: 데이터로부터 인사이트를 얻는 단계
- 10.2.2 PREDICT: 데이터를 활용해서 예측하는 단계
- 10.2.3 DO: 분석 결과를 기반으로 액션을 진행하는 단계
- 10.2.4 CREATE: 분석을 넘어서 제품에 반영하는 단계
- 10.3 데이터 플랫폼: 분석 역량 성숙을 강화하는 엔진
- 10.4 플랫폼 프로젝트 장애물들
- 10.4.1 시간에 대한 인식 차
- 10.4.2 사용자 확산
- 10.4.3 사용자로부터의 신뢰성 확보와 데이터 거버넌스
- 10.4.4 플랫폼 사일로
- 10.4.5 달러 댄스
- 요약
도서 오류 신고
정오표
정오표
[p. 158]
3장에서 언급한 AWS 글루(Glue) 같은 툴에는 이러한 최고 수위최고 수위 값을 추적할 수 있는 기능이 내장돼 있다.
->
3장에서 언급한 AWS 글루(Glue) 같은 툴에는 이러한 최고 수위 값을 추적할 수 있는 기능이 내장돼 있다.