문서 기반 데이터베이스와 키/가치 기반 데이터베이스의 차이점
인기 있는 비 SQL 데이터베이스에는 세 가지 유형이 있습니다.
- 키 / 가치 : 레디스, 도쿄 내각, 메모캐시
- Column 패밀리: Cassandra, HBase
- 문서: MongoDB, CouchDB
나는 그것에 대해 많은 이해 없이 긴 블로그를 읽었다.
관계형 데이터베이스를 알고 있으며 MongoDB/CouchDB와 같은 문서 기반 데이터베이스에 대해 잘 알고 있습니다.
이것들과 리스트에 있는 두 개의 앞의 것의 주요 차이점은 무엇인지 누가 제게 말해줄 수 있나요?
주요 차이점은 데이터 모델과 쿼리 기능입니다.
주요 가치 저장소
첫 번째 유형은 매우 간단하며 아마도 더 이상의 설명이 필요하지 않을 것입니다.
데이터 모델: 키 값 저장소 이상
Cassandra와 같은 데이터베이스의 정확한 명칭에 대해서는 논란이 있지만, 칼럼 패밀리 스토어라고 부르고 싶습니다.키와 값의 쌍은 카산드라의 필수적인 부분이지만, 그것에만 국한된 것은 아닙니다.키와 값의 쌍을 중첩할 수 있으므로 하나의 키가 여러 개의 하위 키와 값의 쌍을 참조할 수 있습니다.
단, 키와 값의 쌍을 무기한 네스트할 수는 없습니다.세 가지 수준(열 패밀리) 또는 네 가지 수준(초열 패밀리)으로 제한됩니다.칼럼 패밀리라는 용어가 생각나지 않는 경우 WTF는 SuperColumn 기사입니다.이것은 Cassandra의 데이터 모델에 대한 좋은 설명입니다.
CouchDB 및 MongoDB와 같은 문서 데이터베이스는 전체 문서를 JSON 오브젝트 형태로 저장합니다.이러한 오브젝트는 네스트된 키와 값의 쌍으로 간주할 수 있습니다.Cassandra와 달리 키와 값의 쌍을 원하는 만큼 중첩할 수 있습니다.또한 JSON은 어레이를 지원하며 문자열, 숫자 및 부울 값 등 다양한 데이터 유형을 이해합니다.
쿼리
열 패밀리 스토어는 키 또는 맵 축소 함수를 쓰는 것만으로 조회할 수 있다고 생각합니다.SQL 데이터베이스에서처럼 값을 쿼리할 수 없습니다.프로그램에 더 복잡한 쿼리가 필요한 경우 원하는 데이터에 액세스하기 위해 인덱스를 만들고 유지 관리해야 합니다.
문서 데이터베이스는 키별 쿼리 및 맵 축소 함수별 쿼리를 지원하지만 "Give me all users with 10 posts"와 같은 값별 기본 쿼리를 수행할 수도 있습니다.문서 데이터베이스는 이러한 방식으로 더 유연합니다.
Ayende는 Key-Value와 Document 데이터베이스의 차이에 대해 다음과 같이 설명했습니다.
문서 데이터베이스는 기본적으로 하나의 주요 예외를 제외하고 키/값 저장소입니다.문서 DB는 단순히 blob을 저장하는 대신 데이터를 데이터베이스가 인식할 수 있는 형식(예: JSON, XML 등)으로 저장해야 합니다.대부분의 doc dbs에서는 이제 문서 데이터에 대한 쿼리를 허용할 수 있습니다.
언급URL : https://stackoverflow.com/questions/3554169/difference-between-document-based-and-key-value-based-databases
'programing' 카테고리의 다른 글
| Jquery를 사용하여 워드프레스에 대한 Ajax 검색 결과를 검색하는 방법 (0) | 2023.03.26 |
|---|---|
| Oracle 스토어드 프로시저 내의 텍스트 검색 (0) | 2023.03.26 |
| Wordpress에서 실제로 준비된 문장을 얻으려면 어떻게 해야 합니까? (0) | 2023.03.26 |
| Wordpress에서 임의의 투고 가져오기 (0) | 2023.03.26 |
| MongoDB 데이터베이스 연결 열기 (0) | 2023.03.26 |