【发布时间】:2014-09-09 02:39:00
【问题描述】:
您好,我有一些数据,我需要一些帮助来找到正确的数据结构来显示它。我的目标是制作一张像上图一样的地图。不同的物理站点会有纬度和经度信息,但圆形半径将由每个站点的不同统计数据确定。用户将能够选择他们想要查看的数据集。大约有 26 组数据。只有一组位置。
我的数据如下所示:
地点(约 5000 件)
var locSchema = mongoose.Schema({
name : 'string',
siteID : 'number',
address1 : 'string',
address2 : 'string',
loc: {type: [Number], index: '2dsphere'}
});
具体数据(约12000条)
var dataSchema = mongoose.Schema({
providerNumber : "number", //The "siteID" of the site.
date : "date",
volume : "number",
cost : "number",
label : "string", //There are 26 different stats each with a different label
siteID : "oid" //The oid of the site
});
我的第一个猜测是它们应该是一个集合,每条数据都存储为一个数组:
name : 'string',
siteID : 'number',
address1 : 'string',
address2 : 'string',
loc: {type: [Number], index: '2dsphere'},
data : [
{
providerNumber : "number", //The "siteID" of the site.
date : "date",
volume : "number",
cost : "number",
label : "string", //There are 26 different stats each with a different label
siteID : "oid" //The oid of the site
},
...
]
但我不确定如何在 Mongoose 中创建这种数据结构,尤其是对象数组。此外,可能会有多组更新的数据需要可视化。
所以我的问题是: 1. 该数据的最佳结构是什么? 2. 在 Mongoose 中创建它的语法是什么? 3. 关于使其可扩展的任何建议?
【问题讨论】:
-
这是否意味着每个位置有 2-3 个特定数据?数据多久更新一次?数据将如何被查询?是否总是将其全部拉回,还是您经常只提取部分数据?
-
我有每个位置的 20 - 30 条特定数据。我认为数据将每隔几个月更新一次,而不是经常更新。现在我正在查询整个位置集合并根据纬度和经度进行限制。我正在制作一堆与数据相关的图表,其中大部分将关注一个单独的位置。