gpt4 book ai didi

node.js - MongoDB。我应该为我的项目选择哪种数据模型?

转载 作者:太空宇宙 更新时间:2023-11-04 02:27:35 26 4
gpt4 key购买 nike

开始学习MongoDB + Node.js。为了练习,我想创建一个收集数据并绘制信息图的网络应用程序。但是我在为 MongoDB 基础选择数据模型时遇到了很大的问题。

它现在是如何工作的,但我认为它的结构很糟糕。

我的服务每小时从 API 检索所有数据并将其收集到集合“帐户”中。

主要问题:这样做可以吗:特殊对象“expStart”中每小时的每个经验值都具有由请求时间生成的唯一 key ?

集合“帐户”中的一份文档的结构:

{
"_id" : ObjectId("54bd56cb699f4890160aacc9"),
"name" : "Shubiii",
"characters" : [
{
"online" : false,
"rank" : 562,
"dead" : false,
"name" : "ShrupShurp",
"league" : "hardcore",
"level" : 93,
"class" : "Ranger",
"experience" : 2515197599,
"expStat" : {
"dd2015_1_19_19_9" : 122120,
"dd2015_1_19_20_11" :45222
}
},
{
"online" : false,
"rank" : 563,
"dead" : false,
"name" : "ShrupShurp2",
"league" : "hardcore",
"level" : 93,
"class" : "Ranger",
"experience" : 2515197599,
"expStat" : {
"dd2015_1_19_19_9" : 3122120,
"dd2015_1_19_20_11" :21212
}
}
],
"challenges" : {
"total" : 3
},
"twitch" : {
"name" : ""
}

}

这是 API 数据结构 ( http://www.pathofexile.com/developer/docs/api ):

{
"total": 15000,
"entries": [
{
"online": false,
"rank": 2,
"dead": false,
"character": {
"name": "iamgodyi",
"level": 100,
"class": "Ranger",
"experience": 4250334444
},
"account": {
"name": "TW_James",
"challenges": {
"total": 0
},
"twitch": {
"name": "destiny601"
}
}
},
{
"online": true,
"rank": 3,
"dead": false,
"character": {
"name": "xVisco",
"level": 100,
"class": "Templar",
"experience": 4250334444
},
"account": {
"name": "xVisco",
"challenges": {
"total": 0
}
}
}
]

}

抱歉我的英语不好。

最佳答案

您可以使用此结构。

{
"_id" : ObjectId("54bd56cb699f4890160aacc9"),
"name" : "Shubiii",
"characters" : {
"online" : false,
"rank" : 562,
"dead" : false,
"name" : "ShrupShurp",
"league" : "hardcore",
"level" : 93,
"class" : "Ranger",
"experience" : 2515197599,
"expStat" : {
"dd2015_1_19_19_9" : 122120,
"dd2015_1_19_20_11" :45222
}
},
"challenges" : {
"total" : 3
},
"twitch" : {
"name" : ""
}
}

关于node.js - MongoDB。我应该为我的项目选择哪种数据模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29367695/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com