지난 몇 년 동안 급성장 큰 데이터 저장 메커니즘은 큰 데이터 스토리지 시장 집어 삼. 이 스토리지 솔루션 NoSQL 불리는 전통적인 RDBMS에서 크게 다릅니다.
NoSQL 세계에는 다음과 같은 핵심 멤버 포함
구글 BigTable, HBase, hypertable
아마존 디나모, 볼드모트, Cassendra, Riak
Redis
CouchDB, MongoDB
이러한 솔루션은 몇 가지 공통 기능을 보유 하 고
키 값 저장소에 따라
시스템의 일반 기계에서 실행 됩니다.
데이터 분할 및 복제 후 클러스터에 배포 됩니다.
(때문에 뚜껑 정리) 데이터 일관성에 대 한 요구를 풉니다.
NoSQL을 선택에 대 한 중요 한 기준은 일관성, 가용성 및 허용 오차를 분할 우리가 부르는 (일관성, 가용성, 및 파티션 허용 오차), 모자는. 하지만 모자 원리 두 일관성, 가용성, 및 파티션 허용 오차의 분산된 시스템에서 선택할 수 있습니다.
이 문서는 응용 프로그램 디자인의 의미를 더 깊이 이해 하기 위해 이러한 솔루션 뒤에 일반적인 기술을 추출 하도록 설계 되었습니다. 이 문서는 이러한 솔루션을 비교 하지 않습니다 하 고 특정 제품의 사용을 권장 하지 않습니다.
API 모델
큰 해시 테이블 (키/값 저장소)로 기본 데이터 모델을 볼 수 있습니다.
API 액세스 기본 형태:
지정된 된 키의 해당 값을 추출 하는 get (키):
(키, 값):를 생성 하거나 지정된 된 키에 대 한 해당 값을 업데이트
삭제 (키): 키와 관련된 값 삭제
고급 API와 서버 환경에서 수행 하는 사용자 정의 함수
실행 (키, 작업, 매개 변수): 특별 한 데이터와 작업의 지정된 된 키에 해당 하는 값을 호출 (예: 목록, 설정, 지도, 등.)
MapReduce (Keylist, Mapfunc, Reducefunc): 키 호출 범위 MapReduce
기계 레이아웃
기본 인프라 네트워크의 구성 된 저렴 한, 일반, 신뢰할 수 없는 컴퓨터의 많은 (수백 개)으로 구성 됩니다. 각 기계는 별도 물리적 노드 (PN) 이다. 각 PN 소프트웨어 구성은 동일 하지만 CPU, 메모리, 하드 드라이브, 그리고에 다를 것 이다. 각 PN 다른 하드웨어 구성에 따라 가상 노드의 다른 수를 실행 합니다.
(책임 편집기: 유산의 좋은)