1부 클라우드 컴퓨팅 개요 1장 클라우드의 출현 ___인터넷 서비스 업체의 성공 ______아마존의 인프라 서비스 ______구글의 컴퓨팅 인프라와 플랫폼 서비스 ______세일즈포스닷컴의 소프트웨어 서비스 ______뉴욕타임즈의 클라우드 컴퓨팅 활용 사례 ___클라우드 컴퓨팅 개념의 등장 ______포괄적인 개념으로서의 클라우드 ______클라우드 컴퓨팅에 대한 정의 ______클라우드 컴퓨팅의 분류
2장 클라우드 컴퓨팅 아키텍처 ___아키텍처의 변화 ______분산 아키텍처의 출현 ______프레임워크와 경량 컨테이너 ___클라우드 서비스를 위한 아키텍처 ______분산 기술의 발전 ______아키텍처 ______단계별 진화 ___오픈소스 솔루션
2부 클라우드 컴퓨팅 기술 3장 경량 애플리케이션 서버 ___쓰리프트: 페이스북의 애플리케이션 서버 ______시스템 요구 사항 ______설치 ______인터페이스 정의 언어 ______코드 생성과 개발 ______데모: 블로그 애플리케이션 서버 ___에이브로: 더그 커팅이 만든 애플리케이션 서버 ______스키마 ______객체 컨테이너 파일 ______프로토콜 ______설치 ______코드 생성와 GenAvro ______서버와 클라이언트 코드 개발 ___제티: 내장형 웹서버
4장 분산 코디네이터 ___분산된 환경에서의 고려 사항 ______네임 서비스/부하 분산 ______분산 락이나 동기화 문제 ______장애 상황 판단 문제 ______환경 설정 값 관리 ___주키퍼: 야후의 분산 코디네이터 ______주키퍼 시스템 구성 ______주키퍼 설치 ______데이터 모델 ______세션 ______이벤트 처리 ______데이터 관리 정책 ______멀티서버 구성과 운영 ______C 언어 API ______분산 락 구현 ___분산 시스템 구성: 주키퍼 활용 ______클러스터 멤버십과 네이밍 서비스 ______이중화 구성 ______애플리케이션 환경 설정 관리 ______생성자/소비자
5장 하둡 분산 파일 시스템 ___구글 파일 시스템 ___하둡 파일 시스템 구성 ______동작 방식 ______특징과 장단점 ___설치 ______설치 요구 사항 ______ssh 환경 설정 ______다운로드 ______환경 설정 ______배포 ___하둡 파일 시스템 운영 ______실행과 관리 ______데이터 노드 제거 ______사용자 루트 패스 ______안전 모드 ___파일 시스템 API 활용 ______기본 파일 처리 API ______데모: 블로그 애플리케이션 ______응용 사례: 클라우드 스토리지 서비스
6장 대용량 데이터 분석 프레임워크 맵리듀스 ___맵리듀스 소개와 구조 ______맵리듀스 프로그램 모델 ______시스템 구성 ______맵리듀스 처리 흐름 ___설치 ______스크립트 환경 설정 ______mapred-site.xml ______실행과 중지 ______작업 관리 명령 ___맵리듀스 프로그래밍 ______WordCount 예제 ______맵리듀스 프로그래밍 요소 ______데이터 흐름 설계 ______InputFormat 구현 ______파티셔너 구현 ______OutputFormat 구현 ______공통 데이터 배포 ______디버깅 ___맵리듀스 튜닝 ______맵 태스크 ______병합 정렬(Merge Sort) ______리듀스 태스크 ______잡 트래커와 태스크 트래커 튜닝 ___정렬 ______부분 정렬 ______전체 정렬 ___조인 ______맵 사이드 조인 ______리듀스 사이드 조인 ___하둡 버전
7장 NoSQL ___NoSQL 개요 ______CAP 이론 ______NoSQL의 특징과 분류 ___구글 빅테이블 ___클라우데이터 ______시스템 구성 ______데이터 모델 ______데이터 분산 ______데이터 저장 ______클러스터 멤버십과 장애 복구 ______설치 ______실시간 데이터 처리 ______배치 데이터 처리 ______클라우데이터 셸 ______응용 사례 1: 블로그 데이터 저장 ______응용 사례 2: 크롤과 검색 서비스 ______성능 ___HBase ______데이터 모델 ______설치 ______예제 프로그램 ______배치 데이터 처리 ___카산드라(Cassandra) ______다이나모(Dynamo) ______카산드라 시스템 구성 ______데이터 모델 ______데이터 분산 ______클러스터 멤버십과 장애 복구 ______설치 ______예제 프로그램 ______정합성 수준 ______응용 사례: 블로그 데이터 검색 ___몽고디비 ______데이터 모델과 인덱스 ______데이터 복제와 샤딩 ______설치와 실행 ______가용성, 확장성 구성 ______예제 프로그램 ______맵리듀스 ___MySQL 분산 구성 ______MySQL 마스터-슬레이브 ______MySQL 고가용성 구성 ______MySQL MMM ______MySQL MMM 설치 ___NoSQL 사용 시 주의 사항
8장 로그 수집과 분석 ___척와: 하둡 기반의 로그 저장 분석 솔루션 ______시스템 구성과 동작 ______딜리버리 모델 ______데이터 모델과 처리 ______설치 ______동적 로그 수집 설정 ___스크라이브: 페이스북의 로그 관리 솔루션 ______설치 ______스토어 구성 ______분산 구성
9장 캐시: 성능 향상을 위한 필수 요소 ___메모리 캐시 ___memcached ______설치 ______프로토콜 ______명령 ______C/C++ 클라이언트 라이브러리 ______자바 클라이언트 라이브러리 ___멤베이스(Membase): 분산 memcached 서버 ______멤베이스 서버 개요 ______멤베이스 서버 설치 ______버킷 구성 ______멤베이스 클라이언트 예제