나는 다음과 같은 링크를 저장하기 위해 노력하고있어 : MongoDB를 : 스파 스 값 독특하고 드문 드문 복합 인덱스
URL = {
hostname: 'i.imgur.com',
webid: 'qkELz.jpg'
}
나는이 두 필드에 독특하고 희소 복합 인덱스를 원하는을 이유로 :
hostname
과webid
의 조합은 고유해야합니다.webid
은 항상hostname
으로 쿼리됩니다.webid
은 전 세계적으로 고유 할 필요는 없습니다.URL
에는 webid가 없어도됩니다. 일반 인덱스에, 그렇지 않은 반면, 나는 복합 인덱스의 경우 추측MongoError: E11000 duplicate key error index: db.urls.$hostname_1_webid_1 dup key: { : "imgur.com", : null }
, 널 (null)이 계산됩니다 :이 작업을 수행 할 때
그러나, 나는 다음과 같은 오류가 발생합니다.
이 문제를 해결하려면? 지금은 hostname
과 webid
을 따로 색인화 할 예정입니다.
을 (http://www.mongodb.org/display/DOCS/ 색인 # 색인 - 고유 한 % 3Atrue) (복합 또는 기타) 동일한 키를 사용할 수 없습니다. (hostname, null)을 사용하여 하나의 레코드를 삽입 할 수 있어야하지만 동일한 호스트 이름을 가진 두 번째 레코드는 중복됩니다. – Stennie