我正在尝试使用MongoDB,并希望就将域名存储在domain
集合中的最佳方法发表意见,并有一些疑问:
_id
键是否有意义?我不愿意使用自定义ID,因为我已经读过很多专家,只是将ObjectId
保留为默认类型。{sld: "google", tld: "com"}
。然后我将添加一个{tld: 1, sld: 1}
的复合索引。这具有允许查询在顶级域下查找域的优点。似乎更灵活,但以两个字段代替一个字段为代价。域存储为两个字段:
db.createCollection("domains",{
validator: {
$jsonSchema: {
properties: {
sld: {
bsonType: "string",
title: "Second Level Domain"
},
tld: {
bsonType: "string",
title: "Top Level Domain",
},
},
required: [
"sld",
"tld"
]
}
},
validationLevel: "strict",
validationAction: "error"
})