장바구니 담기 close

장바구니에 상품을 담았습니다.

빅데이터 저장 및 분석을 위한 New NoSQL&mongoDB

빅데이터 저장 및 분석을 위한 New NoSQL&mongoDB

  • 주종면
  • |
  • 데이터북
  • |
  • 2020-02-08 출간
  • |
  • 574페이지
  • |
  • 188 X 257 X 25 mm /1153g
  • |
  • ISBN 9788996311409
판매가

42,000원

즉시할인가

40,740

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
40,740

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평




1장. MongoDB 시작과 종료
최근 빅 데이터와 클라우드 컴퓨팅 기술의 확산과 함께 NoSQL 기술이 각광 받고 있는 것이 현실입니다.
1장에서는 NoSQL 기술이 왜 필요한지 그 역사적 배경에 대해 알아보고 MongoDB를 Startup, Shutdown하는 방법과 절차에 대해 소개합니다.

2장. 데이터의 입력/수정/삭제
MongoDB는 하나의 데이터 저장기술이기 때문에 데이터의 입력, 수정, 삭제, 조회가 요구됩니다. 또한, 관계형 데이터베이스와 같이 트랜잭션을 제어하기 위해 COMMIT, ROLLBACK문과 유사한 데이터 처리가 요구되어지기도 합니다.
이번 장에서는 MongoDB에서 데이터 처리를 위해 알아야 할 다양한 개념과 문법이 소개됩니다.

3장. 인덱스의 생성과 관리 & 사용자 관리
NoSQL 제품 중 MongoDB가 가지고 있는 가장 큰 장점 중에 하나는 관계형 데이터베이스에서 제공하는 인덱스와 동일한 기능이 제공된다는 것입니다.
이것은 관계형 데이터베이스에 익숙한 개발자가 가장 빠르게 MongoDB에 적응할 수 있는 이유 중에 하나이기도 합니다.
또한, 인가된 사용자 만이 MongoDB에 접속하기 위해서는 사용자의 생성과 관리가 요구됩니다.

4장. Collection 설계
기존의 관계형 데이터베이스는 정규화라는 분석, 설계 기법에 의해 정형화된 데이터 구조로 생성되는 반면, NoSQL 기술의 대표적인 제품 중에 하나인 MongoDB는 비정형 데이터 구조로 설계됩니다.
초당 몇 만건 이상의 빅 데이터가 발생하는 기업 환경에서 빠른 쓰기작업을 통해 데이터를 수집, 저장하기 위해서는 그에 맞는 적절한 데이터 구조가 요구되는데 이것을 위해서는 체계화된 분석, 설계 기술이 요구됩니다.

5장. 논리적 구조와 물리적 구조
MongoDB에서 데이터를 저장하는 논리적 구조를 컬렉션이라고 합니다. 하나의 컬렉션은 여러 개의 익스텐트로 구성되며 하나의 익스텐트는 여러 개의 데이터 레코드로 구성됩니다. 이러한 구조를 논리적 구조라고 합니다.
MongoDB의 가장 큰 특징 중에 하나는 관계형 데이터베이스에 비해 빅 데이터의 빠른 쓰기와 읽기 작업이 가능하다는 것 입니다. 이것이 가능한 이유는 메모리 매핑을 이용한 데이터 처리 기술을 제공하기 때문인데 5장에서는 MongoDB의 물리적 구조를 자세히 설명합니다.

6장. 샤딩 시스템
초당 몇 만건의 빅 데이터가 입력되면 아무리 좋은 시스템에서도 데이터의 집중화로 인해 성능 지연 문제가 발생할 수 밖에 없습니다. 이러한 문제를 해소하기 위해 MongoDB에서는 샤딩 시스템이라는 데이터 분산 처리
기술을 제공하고 있습니다. 데이터가 집중화되었을 때 하나의 서버가 아니라 여러 대의 서버에 데이터를 분산 저장함으로써 발생하는 쓰기 대기 시간을 최소화하고 데이터의 안전한 저장과 관리가 가능하도록 해주는 솔루션 중에 하나입니다.
이 장에서는 하나의 시스템에서 여러 대의 가상 서버를 통해 샤딩 시스템을 구축하는 방법을 소개합니다.

7장. 리프리카 & 리프리카셋
빅 데이터의 효율적인 운영과 관리를 위해서 반드시 요구되는 기능 중에는 빅 데이터에 장애가 발생했을 때 얼마나 빠른 시간 내에 데이터를 원상 복구할 수 있느냐 입니다.
MongoDB에서는 Master/Slave 기능, 리프리카셋 기능들을 통해 이것을 구현할 수 있습니다.

8장. MongoDB 성능 튜닝
빅 데이터의 효과적인 운영과 관리를 위해서는 MongoDB의 논리적, 물리적 구조에 대한 이해와 설계 패턴에 대한 명확한 해석을 통해 구축해야 합니다.
하지만, 대부분의 사용자들이 이러한 기술에 대한 이해 부족으로 인해 성능 지연과 같은 다양한 문제점에 노출되어 있는 것이 현실입니다.
MongoDB의 튜닝은 하드웨어 튜닝, 디자인 튜닝, 아키텍처 튜닝, 문장 튜닝 등으로 나누어 수행할 수 있는데 각 방법들에 대한 구체적인 대안을 제시합니다.

9장. MongoDB 백업과 복구 & 유틸리티
빅 데이터에 대한 효율적인 수집과 저장 후 예기치 못한 장애 발생은 데이터의 유실로 이어지는데 이것은 기업 입장에서는 치명적일 수 밖에 없는 것이 현실입니다.
9장에서는 MongoDB에서 제공하는 다양한 백업과 복구 방법 그리고 MongoDB를 운영하면서 발생하는 성능 지연, 장애 현상들에 대한 로그 수집 및 관리 방법들에 대한 유틸리티를 사용하는 방법에 대해 자세히 소개합니다.


목차


머리말
추천사
책의 특징과 구성

CHAPTER 1. NoSQL 개념
1.1 NoSQL이란?
1.2 NoSQL의 시대적 요구
1.3 NoSQL의 장점
1.4 NoSQL의 종류
1.5 NoSQL 제품군
1.6 MongoDB EcoSystem
1.7 적용 사례

CHAPTER 2. MongoDB 설치 및 데이터 처리
2.1 MongoDB란?
2.1.1 용어 설명(Terminology)
2.1.2 설치 환경 및 지원 드라이버
2.1.3 MongoDB 발전 추이
2.2 MongoDB 시작과 종료
2.2.1 MongoDB 서버 시작
2.2.2 MongoDB 서버 종료
2.2.3 기능 호환 버전 (feature compatibility version)
2.3 데이터 처리
2.3.1 Collection 생성과 관리
2.3.2 Insert & Update & Remove
2.3.3 Unique ID
2.3.4 JSON 타입과 BSON 타입
2.3.5 Data Type 종류
2.3.6 연산자(Operator) 종류
2.3.7 빅 데이터의 추출과 분석
2.3.8 MapReduce 기능
2.4 Lock 정책
2.4.1 Isolation과 Transaction

CHAPTER 3. 인덱스의 생성과 관리&사용자 관리
3.1 인덱스 생성과 관리
3.2 인덱스 재 구성과 삭제
3.3 인덱스의 종류
3.3.1 Single?key 인덱스와 Compound key 인덱스
3.3.2 Non?Unique 인덱스 & Unique 인덱스
3.3.3 Sparse 인덱스
3.3.4 Partial 인덱스
3.3.5 Background 인덱스
3.3.6 Covered 인덱스
3.3.7 GeoSpatial 인덱스
3.3.8 GeoMetry 인덱스
3.3.9 wildCard Index
3.4 사용자 생성과 관리
3.4.1 passwordPrompt() 메쏘드
3.5 시스템 롤과 사용자 롤
3.6 Auditing 기능
3.7 Client Side Field Level Encryption

CHAPTER 4. MongoDB를 위한 Data Modeling
4.1 MongoDB의 Data Modeling
4.2 MongoDB 설계 주요 특징
4.2.1 설계 개념
4.2.2 Rich Document 구조
4.2.3 중첩 구조
4.2.4 논-스키마 구조
4.2.5 비정형 데이터 구조
4.2.6 유연한 서버 구조
4.3 MongoDB 설계 기준
4.4 MongoDB 설계 패턴
4.4.1 Embedded Document(Rich Document)
4.4.2 Extent Document(Rich Document)
4.4.3 Link
4.4.4 DBRef 함수를 이용한 Link
4.4.5 N:M 관계 패턴
4.4.6 상속 패턴
4.4.7 계층형 패턴
4.4.8 View
4.4.9 Materialized View
4.5 Validator
4.5.1 $jsonSchema 연산자
4.6 Collection Diagram
4.7 Logical 설계
4.7.1 Database 설계
4.7.2 사용자 설계
4.8 실습 시나리오
4.8.1 실습 시나리오(영업관리 시스템)
4.8.2 실습 시나리오(비디오 렌털관리 시스템)
4.8.3 실습 시나리오(호텔객실 예약관리 시스템)

CHAPTER 5. 논리적 구조& 물리적 구조
5.1 MongoDB 서버 구조
5.2 스토리지 엔진
5.2.1 WiredTiger 저장엔진
5.2.2 Memory Mapping 저장엔진
5.3 Gobal Lock & PageFault
5.4 Text Search 엔진
5.5 GridFS
5.6 MongoDB 환경 명령어
5.7 MongoDB 관리 명령어

CHAPTER 6. Sharding System
6.1 Sharding System이란?
6.2 Sharding 구축을 위한 시스템 환경
6.3 CONFIG 서버
6.4 MongoS 프로세스
6.5 Sharding 환경 설정
6.5.1 샤드 서버 테스트
6.6 Sharding 시스템 구축 시 고려 사항
6.7 Shard 서버의 추가와 삭제
6.8 Chunk 크기 관리
6.9 샤딩 System의 문제점
6.10 ZONE Sharding
6.11 수동 샤딩

CHAPTER 7. Replica & ReplicaSets
7.1 Master & Slave 서버
7.1.1 MASTER & SLAVE 서버 환경 설정
7.1.2 MASTER & SLAVE 복구 방법
7.2 ReplicaSets
7.2.1 Priority(우선 순위)
7.2.2 멤버의 유형
7.2.3 Replica Sets 환경 설정
7.2.4 FailOver
7.2.5 replSetGetStatus 메쏘드
7.2.6 복제 서버의 추가와 삭제
7.2.7 OpLog의 크기 변경
7.2.8 리프리카셋 멤버의 동기화
7.2.9 dbHash 기능
7.2.10 Master-Slave를 ReplicaSets 서버로 변환
7.3 Change Stream
7.4 MongoClient API
7.4.1 Connection String Uri Format
7.5 물리적 설계
7.5.1 Collection 물리적 설계
7.5.2 MongoDB Storage Engine & HW 사양 결정

CHAPTER8 MongoDB 성능 튜닝
8.1 Performance Tuning Point
8.2 디자인 튜닝(Design Tuning)
8.3 문장 튜닝(Statement Tuning)
8.3.1 Profiling 시스템
8.3.2 Profiler 환경 분석 결과 및 상태 확인
8.3.3 Profile Collection의 재생성 및 관리
8.3.4 $planCacheStats 연산자
8.3.5 Profiling 분석 결과
8.3.6 Hint 함수와 Explain 함수
8.4 아키텍처 튜닝(Architecture Tuning)
8.5 인스턴스 튜닝(Instance Tuning)
8.6 하드웨어 튜닝(Hardware Tuning)
8.6.1 mongoperf 유틸리티

CHAPTER 9. MongoDB 백업/복구 & 유틸리티
9.1 백업과 복구 유형
9.2 MongoDump & MongoRestore
9.2.1 MongoDump
9.2.2 MongoRestore
9.3 BsonDump
9.4 MongoImport & MongoExport
9.4.1 MongoExport
9.4.2 MongoImport
9.5 CopyDatabase & CloneDatabase
9.5.1 CopyDatabase
9.5.2 Copy Remote Database
9.6 MongoStat & MongoTop
9.6.1 MongoStat 유틸리티
9.6.2 MongoTop 유틸리티
9.6.3 Web Monitoring
9.6.4 MongoDB Log 수집 & 분석
9.6.5 Log Level 설정 명령어
9.6.6 enableFreeMonitoring

INDEX

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.