본문 바로가기

리디북스 접속이 원활하지 않습니다. 새로 고침(F5)해주세요.
계속해서 문제가 발생한다면 리디북스 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

RIDIBOOKS

리디북스 검색

최근 검색어

'검색어 저장 끄기'로 설정되어 있습니다.


리디북스 카테고리



NoSQL 철저 입문 상세페이지

컴퓨터/IT 개발/프로그래밍

NoSQL 철저 입문

NoSQL 세상을 이해하고 최적의 NoSQL을 선택하자

구매종이책 정가36,000
전자책 정가28,800(20%)
판매가28,800
NoSQL 철저 입문

책 소개

<NoSQL 철저 입문> 데이터베이스 개발자를 위한 철저 가이드!
NoSQL을 유형별로 분석하여 HBase, 레디스, 몽고DB, 카산드라 등 내게 꼭 맞는 모델을 선택할 수 있다!

효율적인 빅데이터 처리 시스템, NoSQL
유형별로 분석한 철저 가이드!


1. 빅데이터를 효과적으로 처리하자!
SNS의 등장과 스마트폰의 대중화로 새로운 형태의 데이터가 수억 건씩 매일 쏟아진다. 분산 처리, 스키마리스, 고가용성, 고확장성 등 NoSQL 유형별 특성과 관계형 데이터베이스의 장점을 활용하면 빅데이터를 효과적으로 처리할 수 있다.

2. 네 가지 유형으로 분석했다!
지금까지 나온 NoSQL 데이터베이스를 분석해 키-값 데이터베이스, 문서 데이터베이스, 컬럼 패밀리 데이터베이스, 그래프 데이터베이스로 나누어 설명한다. 유형별로 기본 개념과 구조, 특성을 소개하고 설계 시 노하우도 담았다. 또한, 연습문제를 통해 각 개념을 철저하게 학습한다.

3. 최적의 NoSQL을 선택하라!
HBase, 카산드라, 몽고DB, Neo4j, 레디스 등 유명한 모델은 많다. 하지만 나에게 꼭 맞는 모델은 어느 것일까? 어떻게 하면 효과적으로 구현할 수 있을까? 사례 연구를 통해 모델 선택 요령을 실감나게 설명하고, 부록에 데이터베이스 목록과 참조 링크를 따로 정리하여 더 자세히 살펴볼 수 있다.

NoSQL 탄생 배경, 다양한 유형의 NoSQL 비교 분석, 효과적으로 설계하는 노하우까지 사례 연구로 설명한다

《NoSQL 철저 입문》은 데이터베이스 개발자와 설계자를 위한 책이다.
이 책은 관계형 데이터베이스를 NoSQL로 대체해야 한다고 주장하지 않는다. 왜 NoSQL이 탄생하게 되었는지, 어떤 점이 NoSQL의 강점인지 설명한다. 그리고 관계형 데이터베이스는 여전히 필요하지만, 엄청난 양의 데이터를 좀 더 효율적으로 저장하고 관리하기 위해 NoSQL의 도움이 필요하다고 이야기한다.
HBase, 카산드라, 몽고DB, Neo4j, 레디스 등 유명한 NoSQL 데이터베이스는 많다. 하지만 어떤 것이 각자의 애플리케이션에 가장 적합한 모델인지 제대로 아는 사람은 적다. 이 책은 NoSQL 데이터베이스 세상을 제대로 알고자 하는 개발자와 설계자를 위해 쓰였다. 다양한 NoSQL 데이터베이스를 구조와 특성에 따라 네 가지 유형으로 나누고 각 유형을 비교하며 장단점을 알아본다. 또한, 현업에서 부딪힌 어려움을 어떻게 해결해야 할지, 효과적으로 설계하는 팁도 사례 연구를 통해 설명한다.
《NoSQL 철저 입문》으로 NoSQL 세상을 이해하고 최적의 NoSQL을 선택하자.



저자 소개

저자 - 댄 설리번
데이터 아키텍트이자 데이터 과학자인 댄 설리번은 비즈니스 인텔리전스, 머신 러닝, 데이터 마이닝, 텍스트 마이닝, 빅데이터, 데이터 모델링, 애플리케이션 설계 분야에 20년 넘게 몸담아 왔다. 복잡한 게노믹스(genomics)와 프로테오믹스(proteomics) 데이터 분석부터 수많은 데이터베이스 애플리케이션 설계와 구현에 이르기까지, 많은 프로젝트를 수행했다. 최근에는 NoSQL 데이터베이스 모델링, 데이터 분석, 클라우드 컴퓨팅, 텍스트 마이닝, 생명과학 분야의 데이터 통합 작업에 집중했다. 관계형 데이터베이스 설계 분야에서 많은 경험이 있어 정기적으로 NoSQL 데이터베이스 관련 작업도 한다. NoSQL, 클라우드 컴퓨팅, 실시간 분석, 데이터 웨어하우징, 비즈니스 인텔리전스를 소재로 많은 글을 쓰고 발표를 했다. 생명과학, 금융, 에너지, 제조, 보건, 보험, 유통, 전력, 이동통신, 제약, 출판 등 수많은 분야에서 일해왔다.

역자 - 홍형경

목차

1부 NoSQL 데이터베이스 개요

1장 요구 사항에 따른 데이터베이스의 종류

1.1 관계형 데이터베이스 설계
전자 상거래 애플리케이션

1.2 초기 데이터베이스 관리 시스템
플랫 파일 데이터 관리 시스템
계층형 데이터 모델 시스템
네트워크 데이터 관리 시스템
초기 데이터 관리 시스템 요약

1.3 관계형 데이터베이스의 혁명
관계형 데이터베이스 관리 시스템

1.4 NoSQL 데이터베이스의 출현 배경
확장성
비용
유연성
가용성

1.5 요약

1.6 사례 연구

1.7 참고자료

1.8 참고문헌

연습문제

2장 다양한 NoSQL 데이터베이스
2.1 분산 데이터베이스에서의 데이터 관리
영구적인 데이터 저장
데이터 일관성 유지
데이터 가용성 확보
응답 시간·일관성·지속성 간의 균형 맞추기
CAP 이론: 일관성, 가용성, 그리고 파티셔닝

2.2 ACID와 BASE 071
ACID: 원자성, 일관성, 고립성, 지속성
BASE: 기본적인 가용성, 소프트 상태, 결과적 일관성
결과적 일관성의 유형

2.3 NoSQL 데이터베이스의 네 가지 유형
키-값 데이터베이스
문서 데이터베이스
컬럼 패밀리 데이터베이스
그래프 데이터베이스

2.4 요약

2.5 참고자료

2.6 참고문헌

연습문제

2부 키-값 데이터베이스

3장 키-값 데이터베이스 소개

3.1 배열에서 키-값 데이터베이스까지
배열: 보조 바퀴를 단 키-값 저장 구조
연관 배열: 보조 바퀴를 떼어버리자
캐시: 자전거에 기어를 달자
메모리와 디스크 키-값 데이터베이스: 자전거에서 오토바이로

3.2 키-값 데이터베이스의 핵심 특징
단순성: 복잡한 데이터 모델이 필요한 사람은 없다
속도: 빠를수록 좋다
확장성: 빠른 속도를 유지하라

3.3 키: 의미 없는 값을 가진 식별자, 그 이상인 존재
키 생성 방법
키를 사용해 값을 가져오기

3.4 값: 원하면 어떤 데이터든지 저장한다
값은 엄격한 데이터 타입을 요구하지 않는다
값 검색의 한계

3.5 요약

3.6 참고자료

3.7 참고문헌

연습문제

4장 키-값 데이터베이스 용어 정리
4.1 키-값 데이터베이스 데이터 모델링 용어


이름공간
파티션
파티션 키
스키마리스(스키마가 없는 데이터구조)

4.2 키-값 아키텍처 용어
클러스터

복제

4.3 키-값 데이터베이스 구현에 관한 용어
해시 함수
해시 충돌
압축

4.4 요약

4.5 참고자료

연습문제

5장 키-값 데이터베이스 설계
5.1 키 설계와 파티셔닝
키는 명명규칙을 따라야 한다
잘 설계된 키는 코드의 양을 줄여준다
값의 범위 처리
구현 상 제약을 고려해 키를 만들어야 한다
파티셔닝에서 키를 어떻게 사용할까?

5.2 구조화된 값 설계
구조화된 데이터 유형은 대기 시간을 줄이는 데 도움이 된다
값이 크면 읽기와 쓰기 연산이 비효율적일 수 있다

5.3 키-값 데이터베이스의 한계
키만으로 값 조회하기
범위 질의를 지원하지 않는 키-값 데이터베이스
관계형 데이터베이스의 SQL과 필적할 만한 표준 질의 언어의 부재

5.4 키-값 데이터베이스를 위한 설계 패턴
TTL 키
테이블 모방
집계
원자적 집계
열거형 키
인덱스

5.5 요약

5.6 사례 연구: 모바일 애플리케이션을 위한 키-값 데이터베이스 구성

5.7 참고자료

연습문제

3부 문서 데이터베이스

6장 문서 데이터베이스 소개

6.1 문서란 무엇인가
문서란 그리 간단한 것이 아니다
문서와 키-값 쌍
컬렉션에서 여러 문서 관리하기

6.2 명시적으로 스키마를 정의하지 말자

6.3 문서 데이터베이스의 기본 연산 작업
컬렉션에 문서 삽입하기
컬렉션에 있는 문서 삭제하기
컬렉션에 있는 문서 갱신하기
컬렉션에서 문서 조회하기

6.4 요약

6.5 참고자료

연습문제

7장 문서 데이터베이스 용어 정리
7.1 문서와 컬렉션 용어
문서
컬렉션
중첩 문서
스키마리스
다형적 스키마

7.2 파티션 유형
수직 파티셔닝
수평 파티셔닝과 샤딩

7.3 데이터 모델링과 질의 처리
정규화
비정규화
질의 프로세서

7.4 요약

7.5 참고자료

연습문제

8장 문서 데이터베이스 설계
8.1 정규화와 비정규화, 둘 간에 균형을 맞춘 검색
일대다 관계
다대다 관계
조인의 필요성
조인: 관계형 데이터베이스가 짊어진 무거운 짐
문서 데이터베이스 모델러는 무엇을 해야 할까?

8.2 가변적인 문서 처리 계획
너무 커진 문서의 이동 회피

8.3 인덱스의 골디락스 존
읽기 부하가 큰 애플리케이션
쓰기 부하가 큰 애플리케이션

8.4 공통 관계 모델링
문서 데이터베이스에서 일대다 관계
문서 데이터베이스에서 다대다 관계
문서 데이터베이스의 계층 관계 모델링

8.5 요약

8.6 사례 연구: 고객 적하 목록
중첩할 것인가? 중첩하지 않을 것인가?
인덱스 선택
유형별로 컬렉션을 분리해야 할까?

8.6 참고자료

연습문제

4부 컬럼 패밀리 데이터베이스

9장 컬럼 패밀리 데이터베이스 소개

9.1 태초에 구글의 빅테이블이 있었다
컬럼을 동적으로 제어하기
로우, 컬럼 이름, 타임스탬프에 의한 인덱싱
데이터의 저장 위치 제어
원자적으로 처리되는 로우의 읽기와 쓰기
정렬 순서대로 로우 관리하기

9.2 키-값 데이터베이스와 문서 데이터베이스의 차이점과 유사점
컬럼 패밀리 데이터베이스의 특징
컬럼 패밀리 데이터베이스와 문서 데이터베이스 간의 유사점과 차이점
컬럼 패밀리 데이터베이스 대 관계형 데이터베이스

9.3 컬럼 패밀리 데이터베이스에서 사용되는 아키텍처
HBase 아키텍처: 다양한 유형의 노드
카산드라 아키텍처: P2P(Peer-to-Peer)
용어 살펴보기: 가십 프로토콜
열역학과 분산 데이터베이스: 안티-엔트로피가 필요한 이유
이것 좀 들고 있어요: 힌트 핸드오프

9.4 어떤 경우에 컬럼 패밀리 데이터베이스를 사용하면 좋은가?

9.5 요약

9.6 참고자료

연습문제

10장 컬럼 패밀리 데이터베이스 용어 정리
10.1 컬럼 패밀리 데이터베이스의 기본 구성 요소
키스페이스
로우 키
컬럼
컬럼 패밀리

10.2 구조와 프로세스: 컬럼 패밀리 데이터베이스 구현
컬럼 패밀리 데이터베이스의 내부 데이터 구조와 구성 매개변수
옛 친구: 클러스터와 파티션
내부 살펴보기: 또 다른 컬럼 패밀리 데이터베이스 구성 요소

10.3 프로세스와 프로토콜
복제
안티-엔트로피
가십 프로토콜
힌트 핸드오프

10.4 요약

10.5 참고자료

연습문제

11장 컬럼 패밀리 데이터베이스 설계
11.1 테이블 설계 지침
조인 대신 비정규화
값이 없는 컬럼 사용하기
컬럼 이름과 컬럼 값을 사용해 데이터 저장하기
단일 로우를 이용한 엔터티 모델
로우 키에서 핫스팟 회피
적당한 수의 컬럼 값 버전 유지
컬럼 값에서 복잡한 데이터 구조 회피

11.2 인덱스 구성 지침
컬럼 패밀리 데이터베이스가 관리하는 보조 인덱스는 언제 사용하면 좋을까?
테이블을 이용한 보조 인덱스 생성과 관리

11.3 빅데이터를 다루기 위한 도구
빅데이터의 추출, 가공, 적재
빅데이터 분석
빅데이터 모니터링 도구

11.4 요약

11.5 사례 연구: 고객 데이터 분석
사용자 요구 사항 파악

11.6 참고자료

연습문제

5부 그래프 데이터베이스

12장 그래프 데이터베이스 소개

12.1 그래프란 무엇인가?

12.2 그래프와 네트워크 모델링
지리적 위치 모델링
전염병 모델링
추상적이고 구체적인 엔터티 모델링
소셜 미디어 모델링

12.3 그래프 데이터베이스의 장점
조인을 피하면 더 빠른 질의가 가능하다
단순화한 모델링
엔터티 간의 여러 관계

12.4 요약

12.5 참고자료

연습문제

13장 그래프 데이터베이스 용어 정리
13.1 그래프의 구성 요소
정점
에지
경로
루프

13.2 그래프에서의 연산 작업
그래프의 합집합
그래프의 교집합
그래프의 순회

13.3 그래프와 정점의 속성
동형성
순서와 크기
차수
근접성
매개성

13.4 그래프의 유형
무방향 그래프와 방향 그래프
유동 네트워크
이분 그래프
다중 그래프
가중 그래프

13.5 요약

13.6 참고자료

연습문제

14장 그래프 데이터베이스 설계
14.1 그래프 설계 시작하기
소셜 네트워크 그래프 데이터베이스의 설계
질의를 통한 설계

14.2 그래프 질의
사이퍼: 선언에 의한 질의
그렘린: 그래프 순회에 의한 질의

14.3 그래프 데이터베이스 설계 팁과 함정
검색 시간 향상을 위한 인덱스 사용하기
적절한 유형의 에지 사용하기
그래프 순회 시 사이클 감시하기
그래프 데이터베이스의 확장성 고려하기

14.4 요약

14.5 사례 연구: 운송 경로 최적화
사용자 요구 사항 파악
그래프 분석 솔루션 설계

14.6 참고자료

연습문제

6부 애플리케이션에 맞는 데이터베이스 선택하기

15장 데이터베이스 선택하기

15.1 NoSQL 데이터베이스 선택하기
키-값 데이터베이스 선택 기준
문서 데이터베이스 선택 기준과 사용 사례
컬럼 패밀리 데이터베이스 선택 기준과 사용 사례
그래프 데이터베이스 선택 기준과 사용 사례

15.2 NoSQL 데이터베이스와 관계형 데이터베이스 함께 사용하기

15.3 요약

15.4 참고자료

연습문제

7부 부록

부록A 연습문제 정답
부록B NoSQL 데이터베이스 목록
부록C 용어 해설


리뷰

구매자 별점

1.5

점수비율

  • 5
  • 4
  • 3
  • 2
  • 1

2명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

'구매자' 표시는 리디북스에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기


spinner
모바일 버전