빅데이터

네이선 마츠 and other
384p
Where to buy
Rate
웹 규모의 데이터를 획득하고 분석하기 위해 특별히 설계된 아키텍처를 사용해서 빅데이터 시스템 구축 방법을 소개한다. 이 책에서 설명하는 람다 아키텍처는 확장 가능하고 이해하기 쉬운 접근법으로 적은 인원의 팀으로도 구축과 운영이 가능하다. 빅데이터 시스템의 이론과 실제적인 구현 방법과, 빅데이터를 처리하기 위한 일반적인 프레임워크를 발견하고 하둡과 스톰, 그리고 NoSQL 데이터베이스와 같은 특정 기술들을 알려준다.

Author/Translator

Table of Contents

1장 빅데이터를 위한 새로운 패러다임 1.1 이 책의 구성 1.2 전통적인 데이터베이스를 사용하여 확장하기 1.3 NoSQL은 만병통치약이 아닙니다. 1.4 기본 원칙 1.5 빅데이터 시스템에 요구되는 속성 1.6 완전 증분 아키텍처의 문제점 1.7 람다 아키텍처 1.8 최근의 기술 동향 1.9 예제 애플리케이션: SuperWebAnalytics.com 1.10 요약 2장 빅데이터를 위한 데이터 모델 2.1 데이터의 속성 2.2 데이터 표현을 위한 팩트 기반 모델 2.3 그래프 스키마 2.4 SuperWebAnalytics.com에 대한 최종 데이터 모델 2.5 요약 3장 빅데이터를 위한 데이터 모델: 사례 3.1 어째서 직렬화 프레임워크인가요? 3.2 아파치 스리프트 3.3 직렬화 프레임워크의 한계 3.4 요약 4장 일괄처리 계층의 데이터 저장소 4.1 마스터 데이터 집합 저장소의 요구 사항 4.2 일괄처리 계층을 위한 저장소 솔루션 선택 4.3 분산 파일시스템의 동작 방식 4.4 분산 파일시스템을 사용하여 마스터 데이터 집합을 저장하기 4.5 수직 분할 4.6 분산 파일시스템의 하위 수준 속성 4.7 SuperWebAnalytics.com의 마스터 데이터 집합을 분산 파일시스템에 저장하기 4.8 요약 5장 일괄처리 계층의 데이터 저장소: 사례 5.1 하둡 분산 파일시스템 사용하기 5.2 페일을 사용하여 일괄처리 계층에 데이터를 저장하기 5.3 SuperWebAnalytics.com의 마스터 데이터 집합 저장하기 5.4 요약 6장 일괄처리 계층 6.1 일괄처리의 구실로 좋은 예제 6.2 일괄처리 계층에서 계산을 수행하기 6.3 재계산 알고리즘 대 증분 알고리즘 6.4 일괄처리 계층에서의 확장성 6.5 맵리듀스: 빅데이터 계산을 위한 패러다임 6.6 맵리듀스의 하위 수준 속성 7장 일괄처리 계층: 사례 7.1 사례가 되는 보기 7.2 데이터 처리 코드에서 생기는 흔한 함정 7.3 J캐스캘로그 소개 7.4 합성 7.5 요약 8장 일괄처리 계층 예제: 아키텍처와 알고리즘 8.1 SuperWebAnalytics.com 일괄처리 계층의 설계 8.2 전체 작업흐름 8.3 새 데이터 채워 넣기 8.4 URL 정규화 8.5 사용자 식별자 정규화 8.6 페이지뷰의 중복 제거 8.7 일괄처리 뷰 계산 8.8 요약 9장 일괄처리 계층 예제: 구현 9.1 시작점 9.2 작업흐름 구현 준비 9.3 새 데이터 채워 넣기 9.4 URL 정규화 9.5 사용자 식별자 정규화 9.6 페이지뷰의 중복 제거 9.7 일괄처리 뷰 계산 9.8 요약 10장 서빙 계층 10.1 서빙 계층에 대한 성능 측정기준 10.2 정규화/비정규화 문제에 대한 서빙 계층의 해결책 10.3 서빙 계층 데이터베이스에 대한 요구 사항 10.4 SuperWebAnalytics.com을 위한 서빙 계층 설계 10.5 완전 증분 솔루션과의 대조 10.6 요약 11장 서빙 계층: 사례 11.1 엘리펀트DB의 기본 11.2 SuperWebAnalytics.com의 서빙 계층 구축하기 11.3 요약 12장 실시간 뷰 12.1 실시간 뷰 계산하기 12.2 실시간 뷰 저장하기 12.3 증분식 계산의 어려운 점 12.4 비동기식 대 동기식 갱신 12.5 실시간 뷰 만료시키기 12.6 요약 13장 실시간 뷰: 사례 13.1 카산드라의 데이터 모델 13.2 카산드라 사용하기 13.3 요약 14장 큐잉과 스트림 처리 14.1 큐잉 14.2 스트림 처리 14.3 ‘한 번에 하나’ 방식의 상위 수준 스트림 처리 14.4 SuperWebAnalytics.com 속도 계층 14.5 요약 15장 큐잉과 스트림 처리: 사례 15.1 아파치 스톰으로 토폴로지 정의하기 15.2 아파치 스톰 클러스터와 배포 15.3. 메시지 처리 보장하기 15.4 SuperWebAnalytics.com의 시간대별 순방문자 수를 구하는 속도 계층 구현하기 15.5 요약 16장 ‘미세 일괄’ 스트림 처리 16.1 ‘정확히 한 번’ 의미구조 달성하기 16.2 ‘미세 일괄’ 처리의 핵심 개념 16.3 ‘미세 일괄’ 처리용으로 파이프 다이어그램을 확장하기 16.4 SuperWebAnalytic.com을 위한 속도 계층 완성하기 16.5 다른 관점에서 보는 이탈률 분석 예제 16.6 요약 17장 ‘미세 일괄’ 스트림 처리: 사례 17.1 트라이던트 사용하기 17.2 SuperWebAnalytic.com을 위한 속도 계층 완성하기 17.3 완전한 내결함성을 가진, 인-메모리 방식 ‘미세 일괄’ 처리 17.4 요약 18장 람다 아키텍처, 더 깊이 살펴보기 18.1 데이터 시스템을 정의하기 18.2 일괄처리 계층과 서빙 계층 18.3 속도 계층 18.4 질의 계층 18.5 요약

Description

람다 아키텍처로 알아보는 실시간 빅데이터 구축의 핵심 원리와 기법 소셜 네트워크, 웹 분석, 그리고 지능적 전자 상거래와 같은 서비스에서는 종종 전통적인 데이터베이스로 처리하기에는 너무 큰 규모의 데이터를 관리해야 합니다. 확장되고 요구가 늘어남에 따라 복잡성은 증가하고, 빅데이터를 다루는 것은 단지 RDBMS의 규모를 두 배로 늘리거나 유행하는 새로운 기술을 내놓는 것만큼 간단하지는 않습니다. 다행히 확장성과 단순성은 서로 배타적이지 않습니다. 단지 다른 접근법을 취할 필요가 있을 뿐입니다. 빅데이터 시스템은 병렬로 동작하는 여러 대의 장비를 사용하여 데이터를 저장하고 처리하며, 대부분의 개발자들이 빅데이터 시스템을 다루려면 익숙하지 않은 근본적인 도전을 마주해야 합니다. 빅데이터는, 클러스터링된 하드웨어와 웹 규모의 데이터를 모으고 분석할 수 있도록 특화 설계된 새로운 도구들을 이용하는 아키텍처를 사용하여 이러한 시스템을 구축하는 방법을 알려줍니다. 작은 팀으로도 구축하고 운영할 수 있는 빅데이터 시스템으로의 확장성 있고 이해하기 쉬운 접근법을 설명합니다. 이 책은 현실적인 예제를 따라가면서 빅데이터 시스템에 관한 이론과 빅데이터 시스템을 실제로 구축하는 방법을 독자들에게 안내합니다. 빅데이터를 읽기 위해 대규모 데이터 분석이나 NoSQL 도구에 대한 경험이 필요하지는 않습니다. 전통적인 데이터베이스에 익숙하면 도움이 되지만 필수는 아닙니다. 이 책의 목적은 데이터 시스템에 관한 사고를 하는 방법과 어려운 문제를 쪼개서 단순한 해결책을 찾는 방법을 여러분에게 가르쳐 주는 것입니다. 기본 원칙으로 시작하여 그로부터 아키텍처의 각 구성요소에 필요한 속성을 이끌어 낼 것입니다. 빅데이터 시스템을 소개하고, 웹 규모 데이터의 실시간 처리 안내 하둡, 카산드라, 스톰 같은 도구들과 전통적 데이터베이스 기술의 확장 소셜 네트워크, 실시간 분석,전자 상거래사이트와 같은 웹 규모의 애플리케이션은 상당한 양의 데이터를 다룹니다. 그 데이터의 속도와 양은 전통적인 데이터베이스 시스템의 처리 한계를 넘습니다. 이런 애플리케이션들은 어떤 크기의 데이터라도 빠르게 저장하고 처리할 수 있도록 여러 장비를 클러스터 형태로 엮어서 사용하는 아키텍처가 필요합니다.다행히 규모와 단순성은 서로 배타적이지 않습니다. 이 책은 웹 규모의 데이터를 획득하고 분석하기 위해 특별히 설계된 아키텍처를 사용해서 빅데이터 시스템 구축 방법을 소개합니다. 이 책에서 설명하는 람다 아키텍처는 확장 가능하고 이해하기 쉬운 접근법으로 적은 인원의 팀으로도 구축과 운영이 가능합니다. 빅데이터 시스템의 이론과 실제적인 구현 방법과, 빅데이터를 처리하기 위한 일반적인 프레임워크를 발견하고 하둡과 스톰, 그리고 NoSQL 데이터베이스와 같은 특정 기술들을 알려줍니다. 빅데이터에 관심을 갖고 이것저것 궁금한 입문자, 실무에서 직접 활용 중인 사람 모두에게 딱 필요한 도서입니다. 또한 본문 내 ‘용어 대역 원칙 및 용어 대역표’를 추가함으로써 실무자가 현장에서 직접 사용되는 원어를 쉽게 찾아볼 수 있습니다.

Collections

1