NoSQL

NoSQL, Document

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

Key: Value를 설명하면서 Value에 여러 값이 들어가는 예를 들었습니다.

Key Value
1학년:1반:1번 이름: 홍길동, 나이: 14, 전화번호: 010-111-1234, 이메일: hong@gmail.com


위의 예와 같이 Document는 여러 값의 묶음이라 할 수 있습니다.
그러나 여러 값을 묶을 때 따라야 할 규칙이 있습니다.
앞서 Value 안의 여러 값을 구분하기 위해 Value 내에서도 Key를 지정한다고 설명했습니다.
마찬가지로 Document의 여러 값을 구분하기 위한 Key를 지정해야 합니다.
JSON, XML 형식은 Key와 Value를 표현하는 데 매우 유용합니다.

위의 Key: Value 내용을 JSON과 XML로 표현한 예를 보겠습니다.

JSON 형식
{ 
    "이름": "홍길동", "나이": 14, "전화번호": "010-111-1234", "이메일": "hong@gmail.com" 
} 
XML 형식
<학생> 
    <이름>홍길동</이름>
    <나이>14</나이>
    <전화번호>010-111-1234</전화번호>
    <이메일>hong@gmail
.com</이메일> 
</학생> 


위의 예를 통해 알 수 있듯이 JSON 형식이든 XML 형식이든 값을 의미하는 Key를 지정합니다.


그런데 위의 예에서 이상한 점을 발견할 수 있습니다.
'이름: 홍길동, 나이: 14, 전화번호: 010-111-1234, 이메일: hong@gmail.com'의 Key에 해당하는 '1학년:1반:1번'을 명시하지 않았습니다.
'홍길동'을 찾기 위한 번호가 필요하므로 Key에 해당하는 '1학년:1반:1번'을 JSON과 XML에 다음과 같이 추가합니다.

JSON 형식
{ 
    "ID": "1학년:1반:1번", "이름": "홍길동", "나이": 14, "전화번호": "010-111-1234", "이메일": "hong@gmail.com" 
} 
XML 형식
<학생> 
    <ID>1학년:1반:1번</ID>
    <이름>홍길동</이름>
    <나이>14</나이>
    <전화번호>010-111-1234</전화번호>
    <이메일>hong@gmail
.com</이메일> 
</학생> 


비로소 여러 학생 중 '1학년:1반:1번'에 해당하는 '홍길동'의 정보를 찾을 수 있습니다.

<요약>
· Document는 여러 값을 Key로 구분한 묶음이다.

JSON 형식
{ 
    "ID": "1학년:1반:1번", "이름": "홍길동", "나이": 14, "전화번호": "010-111-1234", "이메일": "hong@gmail.com" 
} 

반응형

'NoSQL' 카테고리의 다른 글

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