NoSQL

NoSQL, Column Family

어휘 창고 지기 2020. 8. 10. 11:14
반응형

이제는 Column Family에 관해 설명하겠습니다.
가장 쉽게 이해하는 방법은 엑셀의 시트를 예로 드는 것입니다.

앞서 예로 든 학생 정보를 엑셀의 시트에 입력한다면 어떤 모양이 될까요?
아마도 우리는 다음과 같이 첫 줄에 번호, 이름, 나이, 핸드폰번호, 유선전화번호, 이메일을 입력할 것입니다.
우리는 아래의 표에서 세로줄을 한국어로는 '열', 영어로는 Column이라고 부릅니다.

번호 이름 나이 핸드폰번호 유선전화번호 이메일
1 홍길동 14   02-1234-4567 hong@gmail.com
2 이순신 14 010-222-5678   lee@gmail.com

학생 정보 시트는 다음의 항목들을 가집니다.
    번호, 이름, 나이, 핸드폰번호, 유선전화번호, 이메일

그런데 항목마다 학생이 가지는 값이 다릅니다.
홍길동 학생은 핸드폰번호가 없고, 이순신 학생은 유선전화번호가 없습니다.
엑셀로 표현된 위의 표를 Column Family로 저장된 모습을 다음과 같이 표현할 수 있습니다.

 

홍길동 학생의 예

번호 이름 나이 유선전화번호 이메일
1 홍길동 14 02-1234-4567 hong@gmail.com

 

이순신 학생의 예

번호 이름 나이 핸드폰번호 이메일
2 이순신 14 010-222-5678 lee@gmail.com

위의 표에서 알 수 있듯이 학생마다 없는 정보는 굳이 항목(Key 또는 Column)에 포함하지 않습니다.
홍길동 학생은 핸드폰번호 항목을 포함하지 않고, 이순신 학생은 유선전화번호 항목을 가지지 않습니다.
물론 핸드폰번호와 유선전화번호는 학생 정보 시트의 항목으로 존재합니다.
학생마다 값이 존재하는 항목만 가질 뿐입니다.
이 때문에 Column Family는 Document와 유사해 보입니다.


그러나 Column Family는 항목을 미리 정의한다는 면에서 Document와는 다릅니다.

<요약>
· Column Family는 Column(Key)을 미리 정의합니다.
· Row 마다 값이 존재하는 Column(Key)과 Value만 가지며 값이 없는 Column은 제외합니다.

 

반응형

'NoSQL' 카테고리의 다른 글

CAP 원칙  (0) 2020.08.18
No Single Point Of Failure  (0) 2020.08.10
Scalability  (1) 2020.08.10
NoSQL, Document  (0) 2020.08.10
NoSQL, Key: Value  (0) 2020.08.10