1
我有一个成员对象现在被存储。我的服务使用Foursquare场馆API来显示会员附近的地点。我想开始跟踪他们访问过的地方。如何优化RailsDB等NoSQL数据库中的“用户跟踪”类型数据?
我可以将属性添加到成员,如:
Member {
public List<Place> PlacesVisited {get;set;}
}
但是,这将基本上是重复已经存储在RavenDB中放置物品。此外,会员在整个网站使用,而他们访问的地方只需要在一个页面上显示。如果他们只访问了几个地方,那么这不会是什么大不了的事情,但是一旦他们开始拥有数百个或更多...我会越来越无效地拖拽越来越多的数据(当不需要时)。
我可以把访问的地方放在另一个对象。也许是这样的:
VisitedPlace {
public Member Member {get;set;}
public Place Place {get;set;}
public DateTime WhenVisited {get;set;}
...
}
这并不让我从复制的数据,但它确实意味着我不拉的成员访问了,不需要时的所有地方。
此外,在未来,我可能会追踪更多的地方访问...有没有更好的方式/模式?我对NoSQL相当陌生,这是我第一个使用RavenDB的项目。提前致谢!
你知道......我认为那样可以。甚至使像 'PlacesVisited { 公共字符串PlaceId {获得;设置} 公共字符串地名{获取;集;} 公众的DateTime DateVisited {获取;集;} }' 并把那会员像这样: '成员{ public List VisitedPlaces {get; set;} }' 注意:我希望我们可以在评论中更好地显示代码...;) –
Chaddeus