2017-12-10 11 views
0

MongoDB를 둘러보고 나는 최선의 해결책이 무엇인지 궁금합니다. 컬렉션 동물과 각 동물의 이름과 유형이 있습니다.NoSQL 중복 데이터 또는 새 문서

프런트 엔드 필요에 따라 각 유형마다 색상이 있습니다.

먼저 하나 :

Animal 
    .animal 1 
    name: Simba 
    race: lion 
    type: 
     name: felin 
     color: blue 
    .animal 2 
    name: Franck 
    race: turtle 
    type: 
     name: turtle 
     color: red 
    .animal 3 
    name: Francis 
    race: turtle 
    type: 
     name: turtle 
     color: red 

둘째 :

Animal 
    .animal 1 
    name: Simba 
    race: lion 
    type: (id of type collection) 
Type 
    .type 1 
    name: felin 
    color: blue 
    .type 2 
    name: turtle 
    color: red 

그래서, 중복해야 데이터

그래서 두 가지 가능성이있다? 아니면 새로운 컬렉션을 만들어야합니까?

시간 내 주셔서 감사합니다.

답변

0

type 문서가 자주 변경되지 않고 내부의 2-3 가지 속성으로 만 제한되는 경우 더 좋은 방법입니다.

type 문서에 특성을 더 추가하려면 type-idanimals 컬렉션에 저장하고 새 컬렉션을 만들어야합니다. 당신의 type 문서가 미래에 자주 변경하려고 할 경우

또한, 대신 당신은 단지 한 장소를 변경하려면, 거기에 그 type있다 animals의 각 레코드를 업데이트 할 수 없습니다 것 (type 컬렉션) .

0

형식 키에 2 개의 하위 키만있는 첫 번째 방법을 선호합니다. 나는 DB 조작을 포함하여 더 많은 수의 키를 가지고있을 때 새로운 콜렉션을 선호합니다.