Top

빅쿼리를 활용한 데이터 웨어하우스 구축 [단계별로 배우는 구글 클라우드 관리형 데이터 분석]

  • 원서명BigQuery for Data Warehousing: Managed Data Analysis in the Google Cloud (ISBN 9781484261859)
  • 지은이마크 무케티(Mark Mucchetti)
  • 옮긴이백진욱
  • ISBN : 9791161755755
  • 40,000원
  • 2021년 10월 19일 펴냄
  • 페이퍼백 | 544쪽 | 188*235mm
  • 시리즈 : 데이터 과학

책 소개

요약

구글의 BigQuery(빅쿼리) 기술을 바탕으로 리포팅과 대시보드 기능을 지원하는 데이터 웨어하우스를 구축하는 방법을 설명한다. BigQuery를 사용해 설계, 빌드, 로드, 검색, 유지하는 방법을 단계별로 진행하면서 데이터 웨어하우스를 구축할 수 있다. 유용하면서도 확장 가능하며 유지보수가 쉬운 모던 데이터 분석 시스템을 어떻게 만드는지에 대한 궁금증을 해결해준다. 그리고 BigQuery 머신러닝 기능을 사용해 데이터를 예측하고 조직의 데이터 문제를 해결하는 방법을 설명한다.

이 책에서 다루는 내용

◆ 프로젝트와 조직을 위한 데이터 웨어하우스 설계
◆ 다양한 외부 및 내부 소스에서의 데이터 로드
◆ 복잡한 워크플로를 위한 구글 클라우드 플랫폼 서비스 통합
◆ 조직 성장에 대응하는 데이터 웨어하우스 유지 및 확장
◆ 웨어하우스 데이터 분석, 리포팅 및 대시보드 생성

이 책의 구성

1부, ‘웨어하우스 구축’에서는 백지상태에서 데이터 저장소에 대한 요구 사항을 정하고 구성하는 방법을 설명한다. 몇 가지 예제로 데이터 웨어하우스나 SQL 저장소 없이 BigQuery에서 바로 데이터에 접근하는 방법을 알려준다. 이미 사용하는 데이터 저장소가 있다면 어떤 전략을 채용할지 설명한다. 마지막으로 비용 측면에서 예산과 데이터의 가용성 사이의 절충안을 논의한다.
2부, ‘웨어하우스 채우기’에서는 기존 데이터 소스에서 데이터 웨어하우스로 옮기는 방법인 로딩(loading), 스트리밍(Streaming) 그리고 데이터플로우(Dataflow)를 설명한다. BigQuery에서 바로 로딩과 스트리밍을 관리할 수 있다. 데이터플로우에 한 장을 할애해 확장 가능한 커스텀 데이터 파이프라인을 구성하는 기술을 설명한다.
3부, ‘웨어하우스 사용’에서는 데이터 웨어하우스를 구축한 후 가능한 작업을 기술한다. 8장에서는 처음 BigQuery를 실행한 후 데이터를 다루는 방법에 있어 기초를 세우는 방법을 설명하고 9장에서는 BigQuery에서 SQL을 어떻게 사용하는지를 알려준다.
4부, ‘웨어하우스 유지 및 관리’에서는 데이터 웨어하우스에서 회사에 가치를 부여할 수 있는 데이터를 운영할 수 있다. 다만 데이터도 주기적인 관리가 필요하다. 문제 발생을 예방하기 위한 데이터 관리 전략을 설명한다. 14장에서는 조직에서 큰 스케일의 변화가 있을 때 데이터 웨어하우스에 어떤 변화가 있을지 설명한다.
5부, ‘데이터 리포팅과 시각화’에서는 부가적인 부분을 다룬다. 정보를 리포트로 만들거나 실시간 대시보드를 만들고 분석을 위해 데이터를 어떻게 조직에게 전달하는지를 다룬다.
6부, ‘데이터의 잠재력 향상’에서는 BigQuery의 획기적인 기능인 머신러닝(ML, machine learning) 기능을 설명하고 우리가 다루는 데이터에서 어떻게 사용하는지 설명한다. 공개 데이터 세트를 사용해 기존 데이터와 연동하는 방법도 설명한다.

저자/역자 소개

지은이의 말

데이터(data)와 정보(information)는 서로 다른 개념이다. 데이터 웨어하우스 기술로 방대한 양의 원시 데이터를 수집하고 변환해 조직이 사용할 수 있는 정보를 유추할 수 있다. 구글 BigQuery는 입문자도 사용할 수 있는 서버리스, 글로벌 접근성, 보안성까지 추가된 데이터 웨어하우스다. 이 책을 읽고 초기 디자인, 설치, 데이터 가져오기, 스트리밍, 유지 보수, 시각화와 혁신적 기능까지 경험할 수 있다. 이미 알고 있는 데이터베이스, 웨어하우스 혹은 분석에 도움을 주는 정보들도 얻을 수 있다. 어떤 방식으로 진행을 하더라도 BigQuery를 사용해 정보가 지식으로 변환하는 여정의 마지막 단계로 나아가는 데 도움을 줄 수 있다.

지은이 소개

마크 무케티(Mark Mucchetti)

의료 및 전자 상거래 분야의 업계 기술 리더다. 인텔 8088에서 BASIC 및 터보 C를 시작으로 지금은 클라우드에서 Node.js를 사용하는 등 30년 이상 컴퓨터 작업과 소프트웨어를 작성해왔다. 그동안 기술에 대한 깊은 애정과 관리 기술로 세계적 수준의 플랫폼을 만드는 엔지니어링 그룹을 구축하고 성장시켜왔다. 데이터베이스, 릴리스 엔지니어링, 프론트엔드 및 백엔드 코딩, 프로젝트 관리 분야에서도 일했다. 로스앤젤레스 지역에서 기술 임원으로 일하면서 기술 팀원들이 최고의 잠재력을 갖고 업무 목표를 달성할 수 있도록 지도하고 있다.

옮긴이의 말

데이터는 어디에나 존재한다. 이제 데이터 분석은 비즈니스에 있어 필수적인 요소다. 대부분의 회사는 분석 스택을 만들면서 많은 시행착오를 겪는다. 그중 가장 먼저 맞닥뜨리는 것은 어떻게 데이터 웨어하우스(Data Warehouse)를 구축할 것인지에 관한 고민이다. 대부분의 데이터 분석 스택은 데이터 웨어하우스와 같은 중앙저장소에 데이터를 저장한 후 데이터를 변환해 BI 도구 혹은 보고서를 만드는 식으로 구성한다. 데이터 웨어하우스가 대두되기 전에는 프로덕션 DB를 직접 쿼리하는 방식으로 구현했다. 하지만 이런 방법은 프로덕션 성능에 부담을 주게 돼 읽기 전용 복제본을 사용하게 됐다. NoSQL 데이터베이스를 사용할 경우 지원되는 도구와 표준이 부족하기 때문에 SQL 데이터베이스에 로드한 후 분석했다. 최근에는 다양한 데이터 소스를 통합해서 인사이트를 얻어야 하는 복잡한 요구사항의 수용을 위해 데이터 웨어하우스의 존재가 부각됐다. 데이터 웨어하우스를 구축하면 다양한 이벤트, 애플리케이션 데이터, 마케팅 데이터, CRM 데이터, API로 얻을 수 있는 모든 데이터를 한곳에 모아 정제한 다음, 분석과 모델링을 할 수 있게 된다. 하지만 이런 기술은 기업 수준의 투자가 아니면 불가능했다. 그리고 기업들에도 데이터 웨어하우스 운영 및 워크플로 유지보수는 쉬운 일이 아니었다. 하지만 데이터 웨어하우스가 클라우드로 옮겨가면서 개발자들도 손쉽게 접할 수 있는 기술이 됐다.
데이터 웨어하우스는 중앙 분석 데이터 저장소로 분석 쿼리에 최적화된 데이터베이스라고 생각하면 된다. 다음과 같은 이유로 데이터 웨어하우스 사용을 고려하게 된다. 다수의 데이터 소스의 데이터를 결합해 분석이 필요할 때, 분석용 데이터와 트랜잭션 데이터를 분리해야 할 때, NoSQL과 같이 분석 쿼리에 적합하지 않을 때, 자주 쓰이는 분석 쿼리를 최적화할 때다.
하지만 저장소만으로 데이터 웨어하우스는 혼자 분석 스택을 감당할 수 없다. 데이터 웨어하우스를 구축하려면 워크플로와 운영을 포함해 스토리지(추출과 로드), 프로세스(변환과 모델), 접근(시각화와 전달)의 세 가지 기능을 충족해야 한다.
Amazon Redshift, google BigQuery, snowflake, presto와 같은 여러 가지 데이터 웨어하우스가 떠오르고 있다. 하지만 BigQuery는 완전 관리형 서버리스 서비스로 누구나 약정 없이 바로 시작할 수 있다.
이 책을 통해 BigQuery의 기술뿐만 아니라 데이터 엔지니어링에 필요한 여러 가지 GCP 기술들을 접할 수 있다. Cloud Functions, Dataflow, DLP 등 여러 가지 GCP 서비스들을 사용해 데이터 웨어하우스를 구축, 유지, 관리하는 방법을 배울 것이다. 시간이 지남에 따라 퇴색되고 더 나은 도구가 나오더라도 데이터 웨어하우스를 구축하는 방법론과 유지보수를 위한 기초지식을 다루기 때문에 두고두고 여러 번 참고할 수 있을 것이다. 이 책은 기술보다는 사람과의 관계를 강조한다. 데이터 전략 및 수행에 있어 BigQuery는 단순한 도구일 뿐이다. 데이터 웨어하우스 구축을 통해 인사이트를 얻고 비즈니스 예측까지 할 수 있는 기회를 갖고 데이터 주도적인 결정을 할 수 있길 바란다.

옮긴이 소개

백진욱

카네기멜론 대학에서 컴퓨터공학 학사와 석사를 취득했다. 삼성전자에 다니다가 마이뮤직테이스트를 공동 창업해 8년간 CTO 포지션으로 일했다. 행파이브를 비롯한 여러 스타트업의 테크니컬 컨설팅을 해왔으며, 딜리버스라는 물류 스타트업을 공동 창업해 다시 한번 열정을 불태우고 있다. 데이터와 클라우드 기술의 결합에 의한 혁신에 많은 관심이 있고 조직에 DataOps와 MLOps를 적용하는 것에 흥미를 갖고 있다.

목차

목차
  • 1부. 웨어하우스 구축

  • 1장. BigQuery 살펴보기
    • 구글 클라우드 플랫폼
    • GCP 시작
    • GCP 사용
      • Cloud Console
      • Command Line Interface
      • 프로그래밍 방식 액세스
    • BigQuery Cloud Console
      • SQL 쿼리
      • 유용한 정보
    • 웨어하우스 디자인
    • 데이터 저장소로서의 BigQuery
      • 행 지향 접근
      • 열 지향 접근
    • 데이터 웨어하우스로서의 BigQuery
    • 주요 질문
      • 기초
      • 확장성
    • 데이터 정규화
    • 요약

  • 2장. 웨어하우스 프로젝트 시작
    • 시작에 앞서
    • 핵심 질문
      • 제한적인 리소스는 무엇인가?
      • 조직의 업무 분야는 무엇인가?
      • 조직의 차별점은 무엇인가?
      • 필요한 데이터를 알려줄 수 있는 사람은 누구인가?
      • 고객에게 필요한 데이터를 파악하고 있는 사람은 누구인가?
      • 핵심 객체는 무엇인가?
      • 핵심 관계는 무엇인가?
      • 시간은 어떤 역할을 하는가?
      • 비용은 어떤 역할을 하는가?
    • 일반적인 고려사항
    • 업무 승인
      • 관계자 인터뷰
      • 갈등 해결
      • 문서 산출물
      • 비즈니스 수용
      • 결정 기록
    • 설계 방식 선택
      • 트랜잭션 저장소
      • 스타/눈송이 스키마
      • NoSQL
      • BigQuery
    • BigQuery 모델
      • 프로젝트
      • 데이터 세트
      • 테이블
    • 요약

  • 3장. 데이터 모델
    • 데이터 모델
    • 수집 속도
    • 과거 데이터의 가치
    • 데이터 모델 생성
    • 데이터 세트 생성
    • 테이블 생성
      • 소스
      • 파일 형식
      • 대상
      • 스키마
      • 모드
      • 파티션 및 클러스터 설정
      • 고급 옵션
      • 파티셔닝
      • 클러스터링
    • BigQuery 데이터 읽기
      • BigQuery UI
      • bq 커맨드 라인
      • BigQuery API
      • BigQuery Storage API
    • 요약

  • 4장. BigQuery 비용 관리
    • BigQuery 모델
    • BigQuery 비용 모델
      • 스토리지 가격
      • 주문형 가격
      • 정액제
      • BigQuery 예약
    • 비용 최적화
      • 연간 약정
      • 테이블 분할
      • 로딩 vs 스트리밍
      • 쿼리 작성
      • 쿼리 비용 확인
    • GCP 예산 도구
      • GCP 요금 계산기
      • 주문형 모델 제한 설정
      • 예약 할당량 설정
      • BigQuery에 결제정보 로드
    • 요약

  • 2부. 웨어하우스 채우기

  • 5장. 웨어하우스 데이터 로드
    • 로딩과 마이그레이션
      • 파일
      • Google Cloud Storage
      • 타사 이전 솔루션
      • Java Database Connectivity
      • Document-Based Storage/NoSQL
      • 외부 데이터 소스
    • 요약

  • 6장. 데이터 웨어하우스 스트리밍
    • 장점과 단점
      • 데이터 일관성
      • 데이터 가용성
      • 스트리밍 사용 조건
    • 스트리밍 코드 작성
      • Google App Engine
      • 발생할 수 있는 문제
    • 고급 스트리밍 기능
      • 시간순으로 분할
      • 수집순으로 분할
      • 템플릿 테이블
    • 요약

  • 7장. Dataflow
    • 주요 개념
      • Driver Program
      • 파이프라인
      • Directed-Acyclic Graph
      • PCollection
      • PTransform
    • 파이프라인 구축
      • 준비
      • 튜토리얼
      • Google Dataflow Runner
    • Dataflow Templates
    • Dataflow SQL
      • 주요 개념 확장
      • Dataflow SQL 확장
      • Dataflow SQL 파이프라인 작성
      • Dataflow SQL 작업 배포
    • 요약

  • 3부. 웨어하우스 사용

  • 8장. 웨어하우스 관리
    • 질문과 계획
    • 회고
    • 로드맵
      • 제품 결함
      • 기술 부채
      • 유지보수
      • 범위 축소
      • 시스템화
      • 낙관적인 확장성
      • 우선순위
    • 푸시-풀 전략
    • 데이터 고객 유형
      • 데이터 분석가
      • 엔지니어
      • 임원 및 경영진
      • 영업직
    • 요약

  • 9장. 웨어하우스 쿼리
    • BigQuery SQL
      • 기본 문법
      • 추가 구문
      • 이전 데이터 액세스
    • 집합과 교차
      • UNION ALL/DISTINCT
      • INTERSECT
      • EXCEPT
    • 조인
      • CROSS JOIN
      • INNER JOIN
      • OUTER JOIN
      • USING
      • 셀프 조인
    • 하위 쿼리
      • WITH절
    • 중첩 데이터
      • UNNEST
    • 파티션
      • 수집 시간 파티션 테이블
      • 날짜/타임스탬프 파티션 테이블
      • 정수 범위 파티션 테이블
    • 날짜 함수
      • 협정 세계시
      • 일반 사용 사례
    • 그룹핑
      • ROLLUP
      • HAVING
    • 집계 함수
    • BigQuery GIS
      • GEOGRAPHY의 개념
      • GIS 함수
      • 시각화
    • 기타 함수들
    • 요약

  • 10장. 예약 작업
    • BigQuery의 예약 쿼리
      • 쿼리 예약하기
      • 쿼리 검토
    • Cloud Scheduler
      • 이름
      • 빈도
      • 대상
      • 상태
      • 명령줄 사용
      • 스케줄링 모범 사례
    • 다른 예약 방법
      • Cloud Tasks
      • Cloud Composer
      • BigQuery Transfer Service
    • 요약

  • 11장. GCP의 서버리스 함수
    • 장점
      • 관리
      • 확장성
      • 비용
      • 가용성
    • 단점
      • 지연
      • 리소스 제한
      • 이식성
      • 관리
    • BigQuery와 Cloud Functions
    • 함수 작성
      • 함수 이름
      • 리전
      • 트리거
      • 인증
      • 변수, 네트워킹, 고급 설정
      • 코드
      • 소스코드
      • Cloud Functions 배포
    • Cloud Functions 호출
      • HTTP 트리거
      • Cloud Pub/Sub 트리거
      • Cloud Storage 트리거
      • Cloud Firestore
      • 직접 트리거
      • Firebase 트리거
    • Cloud Scheduler
    • 실제 애플리케이션 예제
      • 제안하는 디자인
    • 요약

  • 12장. Cloud Logging
    • 로그와 분석의 연관성
      • Abigail’s Flowers 예제
    • Cloud Logging
      • 로그 탐색기
      • Cloud Logging 쿼리
    • BigQuery 로그 싱크
      • 싱크
      • 싱크 생성
    • 측정항목과 알림
      • 측정항목 생성
      • 로그 기반 측정항목
      • 측정항목 내보내기
      • 알림
    • 피드백 루프
    • 요약

  • 4부. 웨어하우스 유지 및 관리

  • 13장. 고급 BigQuery 기능
    • 분석 함수
      • 정의
      • 윈도우 프레임
      • 파티션
      • 실행 순서
      • 숫자 함수
      • 윈도우 프레임 문법
      • 탐색 함수
      • 집계 분석 함수
    • BigQuery 스크립팅
      • 블록
      • 변수
      • Comments 주석
      • IF/THEN/ELSEIF/ELSE/END IF
      • 제어 흐름
    • 저장 프로시저, 사용자 정의 함수, 뷰
      • 저장 프로시저
      • 사용자 정의 함수
      • 자바스크립트 사용자 정의 함수
      • 구체화된 뷰
    • 요약

  • 14장. 데이터 거버넌스
    • 데이터 거버넌스 정의
      • 가용성
      • 컴플라이언스
      • 일관성
      • 비용 관리
      • 의사 결정
      • 성능
      • 품질
      • 보안
      • 사용성
    • 거버넌스 전략
    • 책임과 역할
      • 고위 경영진
      • 거버넌스 위원회
      • 주제 전문가
      • 데이터 분석가
      • 데이터 엔지니어
    • 기록 시스템
      • Golden Record
      • 단방향 데이터 흐름
    • 보안
      • 인증
      • 권한
      • 암호화
      • 분류
      • 데이터 손실 방지
      • 감사
    • 데이터 수명 주기
      • 수집에서 사용 가능 상태까지
      • 활성 데이터 및 품질 측정
      • 폐기
    • 거버넌스 정책 수정
    • 로드맵
    • 승인
    • Google Cloud Data Catalog
      • 개요
      • BigQuery
      • 외부 연결
      • 개인 식별 정보
    • 요약

  • 15장. 장기적인 전략 수립
    • 비즈니스 변화
      • 큰 비즈니스 변화
      • 핵심 성과 지표
      • 타임라인
      • 접근 방법
      • 데이터 프로그램 품의서
    • 자연적인 성장
      • 변화 제어
      • 소스 제어 관리
      • 데이터 보존 고려사항
      • 개인 정보 보호법
      • 비용 관리
      • 만료 기간
      • 장기 스토리지
    • 데이터 조작 언어
    • 중단 시간
      • 코드 프리즈
      • 단계적 성능 저하
    • BigQuery 생태계
    • 요약

  • 5부. 데이터 리포팅과 시각화

  • 16장. 리포팅
    • 리포팅
    • 리포팅과 데이터 대중화
      • 역사
      • 회색시장 데이터
      • 리포팅을 통한 대중화
      • 역사는 반복된다
    • 제품 관점의 리포팅
      • B2B의 관점
      • 리포팅 시스템 품의
      • 제품 관리
    • 요구사항 정의
      • 플랫폼
      • 보고서
      • 로드맵
    • 솔루션 분포
      • Google Cloud Platform
      • 서드 파티
      • 그 외의 방법
    • 요약

  • 17장. 대시보드와 시각화
    • 시각화
      • 시각화 기능
    • 대시보드
      • 시각화와 대시보드
      • 대시보드 계층
      • 사용 사례
      • 접근성
      • 신선함
      • 관련 측정항목
      • 주요 비즈니스 변화
      • 커뮤니티
    • 대시보드 구축
      • 하드웨어
      • 소프트웨어
      • 유지보수
    • 요약

  • 18장. Google Data Studio
    • 데이터 스튜디오 보고서와 BigQuery
      • 데이터 소스
      • BigQuery 커넥터
      • 보고서 준비
      • 보고서 생성
      • 차트 작성
      • 보고서 보기 옵션
    • 추가 기능
      • 데이터 스튜디오 탐색기
      • 데이터 혼합
      • 계산된 필드
      • 커뮤니티 추가 기능
      • Google 애널리틱스
    • BigQuery BI Engine
    • 요약

  • 6부. 데이터의 잠재력 향상

  • 19장. BigQuery ML
    • 배경 지식
      • 인공지능
      • 머신러닝
      • 통계와의 관계
      • 윤리
    • BigQuery ML 개념
      • 비용
      • 지도 학습과 비지도 학습
      • 모델 유형
      • 수행 절차
    • 예제
      • k-평균 군집화
      • 분류
    • 요약

  • 20장. Jupyter Notebook과 공개 데이터 세트
    • 심연의 가장자리
    • Jupyter Notebook
      • 노트북 설정
      • 노트북 인터페이스
      • Python 데이터 분석
    • BigQuery 연결
      • 커널에 데이터 추가하기
      • BigQuery 데이터 추가
    • dataframe 탐색
      • 둘러보기
      • 개별 값 탐색
      • 다중 값 탐색
      • 다음 단계
      • 매직 명령어
    • AutoML Tables
      • 데이터 세트 가져오기
      • 학습 설정
      • 모델 학습
      • 모델 평가
      • 예측
      • 추가 분석
    • 데이터 인사이트 퍼널
    • 요약

  • 21장. 결론
  • 부록 A. Cloud Shell과 Cloud SDK
  • 부록 B. 데이터 프로젝트 품의서 샘플

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안