| 000 | 01058camcc2200337 c 4500 | |
| 001 | 000045677452 | |
| 005 | 20111114174430 | |
| 007 | ta | |
| 008 | 111111s2011 ulka 001c kor | |
| 020 | ▼a 9788979148527 ▼g 13560 | |
| 035 | ▼a (KERIS)REQ000021157798 | |
| 040 | ▼a 211062 ▼c 211062 ▼d 244002 ▼d 211009 | |
| 041 | 1 | ▼a kor ▼h eng |
| 082 | 0 4 | ▼a 005.758 ▼2 22 |
| 085 | ▼a 005.758 ▼2 DDCK | |
| 090 | ▼a 005.758 ▼b 2011 | |
| 100 | 1 | ▼a Hewitt, Eben |
| 245 | 1 0 | ▼a 카산드라 완벽 가이드 / ▼d 에벤 휴잇 지음 ; ▼e 송무찬, ▼e 최원우 옮김 |
| 246 | 1 9 | ▼a Cassandra : ▼b the definitive guide |
| 260 | ▼a 서울 : ▼b 한빛미디어, ▼c 2011 | |
| 300 | ▼a 436 p. : ▼b 삽화 ; ▼c 24 cm | |
| 500 | ▼a 색인수록 | |
| 500 | ▼a 부록: 비관계형 분야의 고찰, 카산드라로 만드는 블로그 | |
| 500 | ▼a 페이스북, 트위터를 지탱하는 기술 NoSQL | |
| 630 | 0 0 | ▼a Apache Cassandra (Computer system) |
| 650 | 0 | ▼a Database management ▼x Computer programs |
| 700 | 1 | ▼a 송무찬, ▼e 역 |
| 700 | 1 | ▼a 최원우, ▼e 역 |
| 900 | 1 0 | ▼a 휴잇, 에벤, ▼e 저 |
| 945 | ▼a KLPA |
소장정보
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 과학도서관/Sci-Info(1층서고)/ | 청구기호 005.758 2011 | 등록번호 121214668 (13회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
| No. 2 | 소장처 과학도서관/Sci-Info(1층서고)/ | 청구기호 005.758 2011 | 등록번호 121214669 (8회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
컨텐츠정보
책소개
카산드라 데이터베이스 관리 시스템을 이용하는 방법, 실제 서비스 환경에서 사용할 수 있는 실용적인 예제와 기술을 소개한다.카산드라가 사용하는 비관계형 디자인의 장점과 데이터 모델링에 대해 자세하게 설명한다.
대규모 서비스를 위한 새로운 해법, NoSQL
습관처럼 데이터베이스라면 관계형 데이터베이스를 사용한 것이 아닐까? 관계형 데이터베이스로는 하루 5억명 이상이 사용하는 서비스를 개발할 수 없다. 대규모 서비스 개발을 위해 등장한 것이 비관계형 데이터베이스다. 비관계형 데이터베이스 솔루션 중에 카산드라는 뛰어난 확장성을 자랑한다. 페이스북에서 개발해서 오픈 소스로 공개되었으며, 현재 다양한 웹 서비스나 SNS에서는 카산드라를 사용하고 있다. 그러나 관계형 데이터베이스라는 관성과 타성에 젖어 있는 사람들은 카산드라가 제시하는 비전을 믿지 않는다. 그리스 신화에서 카산드라는 현실을 정확하게 예언하는 예언자지만, 저주를 받아 아무도 그 말을 믿지 않는다. 그리하여 자신의 도시 트로이의 멸망을 예언하지만, 아무도 믿지 않는다. 지금 카산드라가 처한 현실을 정확하게 설명하는 이름이 아닐까? 이제 여러분도 카산드라의 예언이 진실인지 아닌지 확인해보자.
도서 특징(책 표지 글)
대규모 웹을 위한 분산 데이터베이스
시스템을 무한히 확장해 갈 수 있다면 데이터로 무슨 일을 할 수 있을까? 아파치 카산드라를 이용한다면 여러 데이터 센터에 흩어져 있는 수백 테라에 이르는 데이터도 처리할 수 있다. 페이스북, 트위터, 그 외 대용량 데이터를 처리하는 회사라면 관심 가는 능력이 아닐까? 『카산드라 완벽 가이드』는 카산드라 데이터베이스 관리 시스템을 이용하는 방법, 실제 서비스 환경에서 사용할 수 있는 실용적인 예제와 기술을 소개한다.
카산드라가 사용하는 비관계형 디자인의 장점과 데이터 모델링에 대해 자세하게 설명한다. 대용량 데이터 처리를 위한 데이터베이스 확장 문제를 해결하거나 애플리케이션의 경쟁력을 얻고 싶은 개발자, DBA, 애플리케이션 아키텍트라면 카산드라의 속도와 유연성이 어떻게 도움이 되는지 살펴보기 바란다.
【주요내용】
o 카산드라의 컬럼 지향 구조 이해하기
o 카산드라 데이터 처리
o 클러스터에 노드를 추가하거나 제거하기
o 관계형 모델에서 카산드라 데이터 모델로 변경하기
o 클러스터의 사용량, 메모리 패턴을 모니터링하기
o 성능 최적화를 위한 메모리 설정, 데이터 스토리지, 캐시 구성
정보제공 :
저자소개
에벤 휴잇(지은이)
글로벌 기업에서 애플리케이션 아키텍처의 디렉터로 일하고 있으며, 시스템 전략과 디자인을 책임지고 있다. 아파치 카산드라 프로젝트의 문서화에 기여했으며, 『Java SOA Cookbook』(O'Reilly, 2009)을 비롯해 몇 권의 기술 서적을 집필했다.
송무찬(옮긴이)
네오위즈, 엔씨소프트 등에서 8년간 서비스를 개발했고, 현재 미국 실리콘밸리에 있는 회사에서 서버와 안드로이드 앱을 동시에 개발 중이다. 서버리스(Serverless) 아키텍처 도입으로 서버에 대한 부담이 많이 줄어든 덕분에 앱 개발에 더 집중하고 있다. 안드로이드 기반의 IoT 프로젝트 등에 관심이 있고, 서버와 효율적인 통신 방법에도 관심이 있다. 『카산드라 완벽 가이드』(한빛미디어, 2011)를 공동 번역했다., 스레드 작업을 효율적으로 배치해 성능을 개선할 수 있는 『안드로이드 애플리케이션의 성능 개선을 위한 스레드 관리』(한빛미디어, 2015)라는 책을 썼고, 『안드로이드 디자인 패턴과 활용 사례』(에이콘, 2017)를 번역했다.
최원우(옮긴이)
대학원에서 암호학 및 무선 네트웍 보안 프로토콜을 전공 후, 한글과 컴퓨터((구)소프트 포럼), NC 소프트, 스마일 게이트, 미국 남코반다이 그리고 NHN을 거치면서 플랫폼 및 게임 서버 개발자로 일하고 있습니다. 그동안 한국, 미국, 영국에서 개발자(or 풀스택 엔지니어)로서 도전적인 업무를 수행하며 지속적으로 이론과 실무 능력을 향상시키기 위해 노력하고 있는 개발자입니다.
목차
목차 옮긴이 서문 = 4 추천사 = 8 지은이 서문 = 9 감사의 글 = 14 표지 이미지 설명 = 15 CHAPTER 1 카산드라 소개 01 관계형 데이터베이스의 문제점 = 27 02 관계형 데이터베이스 재검토 = 33 03 카산드라 엘리베이터 피치 = 41 50단어 카산드라 = 41 분산화와 비집중화 = 41 탄력적인 확장성 = 43 고가용성과 결함 허용 = 43 조정기능한 일관성 = 44 브루어의 CAP 정리 = 47 로우 지향 = 51 스키마 프리 = 52 고성능 = 52 04 카산드라의 유래 = 52 05 카산드라 사용 사례 = 54 대규모 배치 = 54 대규모 쓰기, 통계, 분석 = 54 지리적 분산 = 55 진화하는 애플리케이션 = 55 06 누가 카산드라를 사용하는가? = 55 07 요약 = 57 CHAPTER 2 카산드라 설치 01 바이너리 설치 = 59 압축 풀기 = 59 카산드라 구성 = 60 02 소스 빌드 = 61 기타 빌드 타겟 = 62 메이븐으로 빌드하기 = 63 03 카산드라 실행하기 = 63 윈도에 설치하기 = 64 리눅스에 설치하기 = 64 서버 시작하기 = 65 04 명령줄 클라이언트 인터페이스 실행하기 = 66 05 CLI 기본 명령어 = 68 도움말 = 68 서버 연결 = 69 환경 기술하기 = 70 키스페이스와 컬럼 패밀리 생성 = 73 데이터 쓰기와 읽기 = 75 06 요약 = 76 CHAPTER 3 카산드라 데이터 모델 01 관계형 데이터 모델 = 77 02 간단한 소개 = 78 03 클러스터 = 82 04 키스페이스 = 82 05 컬럼 패밀리 = 84 컬럼 패밀리 옵션 = 86 06 컬럼 = 87 와이드 로우, 스키니 로우 = 89 컬럼 정렬 = 89 07 슈퍼 컬럼 = 91 복합 키 = 93 08 RDBMS와 카산드라의 디자인 차이 = 95 쿼리 언어가 없음 = 95 참조 무결성 없음 = 95 보조 인덱스 = 95 정렬은 디자인 결정이다 = 96 비정규화 = 97 09 디자인 패턴 = 98 구체화 뷰 = 98 값이 없는 컬럼 = 100 집합 키 = 100 10 기억할 점 = 101 11 요약 = 101 CHAPTER 4 예제 애플리케이션 01 데이터 디자인 = 103 02 호텔 앱 RDBMS 디자인 = 105 03 호텔 앱 카산드라 디자인 = 105 04 호텔 애플리케이션 코드 = 106 데이터베이스 생성하기 = 107 데이터 구조 = 110 연결하기 = 112 데이터베이스에 데이터 미리 넣기 = 113 검색 애플리케이션 = 124 05 트위산드라 = 135 06 요약 = 135 CHAPTER 5 카산드라 아키텍처 01 시스템 키스페이스 = 137 02 P2P = 138 03 가십과 결함 발견 = 139 04 안티엔트로피와 읽기 복구 = 141 05 멤테이블, SSTable, 커밋 로그 = 143 06 힌트 핸드오프 = 145 07 컴팩션 = 146 08 블룸 필터 = 147 09 툼스톤 = 148 10 SEDA = 149 11 매니저와 서비스 = 150 카산드라 데몬 = 150 스토리지 서비스 = 151 메시징 서비스 = 151 힌트 핸드오프 매니저 = 152 12 요약 = 152 CHAPTER 6 카산드라 설정 01 키스페이스 = 153 컬럼 패밀리 생성하기 = 157 0.6에서 0.7로 전환하기 = 159 02 복제본 = 159 03 복제본 배치 전략 = 160 심플 스트래티지 = 161 올드 네트워크 토폴로지 스트래티지 = 162 네트워크 토폴로지 스트래티지 = 163 04 복제 계수 = 164 복제 계수 증가하기 = 165 05 파티셔너 = 168 랜덤 파티셔너 = 169 순서 보존 파티셔너 = 169 컬레이팅 순서 보존 파니셔너 = 170 바이트 순서 파티셔너 = 170 06 스니치 = 170 심플 스니치 = 171 프로퍼티 파일 스니치 = 171 07 클러스터 생성하기 = 172 클러스터 이름 변경하기 = 173 클러스터에 노드 추가하기 = 173 다중 시드 노드 = 177 08 동적 링 참여 = 179 09 보안 = 181 SimpleAuthenticator 사용하기 = 182 프로그램 인증 = 186 MD5 암호화 사용하기 = 188 자신만의 인증 제공하기 = 189 기타 설정 = 190 10 기타 도구 = 192 키 조회 = 192 이전 설정 불러오기 = 192 11 요약 = 195 CHAPTER 7 데이터 읽기와 쓰기 01 RDBMS와 카산드라의 쿼리 차이 = 197 업데이트 쿼리 부재 = 197 쓰기에서 레코드 레벨 원자성 = 197 서버측 트랜잭션 지원 부재 = 198 중복 키 부재 = 198 02 기본 쓰기 속성 = 198 03 일관성 레벨 = 199 04 기본 읽기 속성 = 201 05 API = 202 범위와 슬라이스 = 202 06 설정과 데이터 삽입 = 203 07 간단한 get 사용법 = 212 08 값의 일부를 시딩하기 = 215 09 슬라이스 조건자 = 215 get_slice로 특정 컬럼 이름 가져오기 = 216 슬라이스 범위로 컬럼 집합 가져오기 = 216 로우의 모든 컬럼을 가져오기 = 219 10 범위 슬라이스 가져오기 = 219 11 멀티겟 슬라이스 = 222 12 삭제 = 225 13 배치 뮤테이트 = 227 배치 삭제 = 227 범위 고스트 = 229 14 프로그램으로 키스페이스 컬럼 패밀리 정의하기 = 230 15 요약 = 231 CHAPTER 8 클라이언트 01 클라이언트 기본 API = 234 02 스리프트 = 234 자바를 위한 스리프트 지원 = 239 예외 = 239 스리프트 요약 = 240 03 에이브로 = 240 에이브로 앤트 타겟 = 240 에이브로 스펙 = 244 에이브로 요약 = 245 04 기트 요약 = 245 05 클라이언트 노드 연결하기 = 247 클라이언트 목록 = 247 DNS 라운드 로빈 = 247 로드 밸런서 = 247 06 카산드라 웹 콘솔 = 248 07 헥터 = 251 특징 = 252 헥터 API = 252 08 HectorSharp = 253 09 Chirper = 259 10 Chiton = 260 11 Pelops = 260 12 Kundera = 262 13 Fauna = 263 14 요약 = 263 CHAPTER 9 모니터링 01 로깅 = 265 테일링 = 268 일반적인 팁 = 269 02 JMX와 MBean 개요 = 271 MBean = 274 JMX 통합 = 277 03 JMX로 카산드라와 상호작용하기 = 277 04 카산드라의 MBean = 280 org.apache.cassandra.concurrent = 284 org.apache.cassandra.db = 284 org.apache.cassandra.gms = 285 org.apache.cassandra.service = 285 05 사용자 정의 카산드라 MBean = 288 06 런타임 분석 도구 = 291 JMX와 JHAT을 사용한 힙 분석 = 291 스레드 문제 탐지 = 296 07 상태 검사 = 297 08 요약 = 298 CHAPTER 10 유지보수 01 링 정보 = 300 info = 300 ring = 300 02 통계 정보 = 301 cfstats 사용하기 = 301 tpstats 사용하기 = 303 03 기본 유지보수 = 305 repair = 305 flush = 306 cleanup = 307 04 스냅샷 = 307 스냅샷 하기 = 308 스냅샷 제거 = 309 05 클러스터의 로드밸런싱 = 310 로드밸런스와 스트림 = 310 06 노드 해제 = 314 07 노드 업데이트 = 317 토큰 제거하기 = 317 컴팩션 임계값 = 318 동작 중인 클러스터에서 컬럼 패밀리 변경하기 = 318 08 요약 = 318 CHAPTER 11 성능 최적화 01 데이터 스토리지 = 319 02 리플라이 타임아웃 = 322 03 커밋 로그 = 322 04 멤테이블 = 323 05 동시성 = 324 06 캐시 = 325 07 버퍼 크기 = 326 08 파이썬 스트레스 테스트 = 327 파이썬 스리프트 인터페이스 생성 = 327 파이썬 스트레스 테스트 실행 = 330 09 시작과 JVM 설정 = 334 JVM 최적화 = 334 10 요약 = 337 CHAPTER 12 하둡과 통합하기 01 하둡이란? = 340 02 MapReduce 사용하기 = 340 카산드라 하둡 소스 패키지 = 341 03 단어 세기 예제 = 342 카산드라로 데이터 출력하기 = 345 하둡 스트리밍 = 346 04 맵리듀스 관련 도구 = 346 피그 = 346 하이브 = 347 05 클러스터 설정 = 348 06 사용 사례 = 350 Raptr.com: 키스 쏜힐 = 350 Imagini: 데이브 가드너 = 351 07 요약 = 351 부록 A 비관계형 분야의 고찰 01 비관계형 데이터베이스 = 354 02 객체 데이터베이스 = 355 03 XML 데이터베이스 = 356 SoftwareAG Tamino = 358 eXist = 359 오라클 버클리 XML DB = 359 MarkLogic Server = 359 Apache Xindice = 359 요약 = 360 04 문서 지향 데이터베이스 = 360 IBM 로터스 = 363 Apache CouchDB = 363 MongoDB = 364 Riak = 365 05 그래프 데이터베이스 = 366 FlockDB = 370 Neo4J = 370 06 키-값 저장소와 분산 해시테이블 = 372 아마존 다이나모 = 373 프로젝트 볼드모트 = 374 레디스 = 375 07 컬럼형 데이터베이스 = 375 구글 빅테이블 = 377 HBase = 378 하이퍼테이블 = 380 다언어 지속성 = 380 08 요약 = 381 부록 B 카산드라로 만드는 블로그 카테고리 테스트 메서드 = 389 포스트 테스트 메서드 = 394 코멘트 테스트 메서드 = 403 용어집 = 409 찾아보기 = 428



