我目前有一个使用mongodb作为数据库的社交游戏应用程序。我的问题是,如果我想创建积分和徽章系统,有什么建议。成就/徽章的业务逻辑可能会变得非常复杂并且非常临时,因此实时授予徽章似乎效率不高。我正在想象将跟踪的操作添加到某处的队列中,即AmazonSQS,或者仅使用用户的事件提要作为队列,并让另一个离线工作进程通过并仅处理每个操作/事件的影响,以查看阈值是否为任何特定的徽章都会被划掉。我对这种方法的担心是,徽章查询似乎会变得非常密集,而且我还必须跟踪大量的操作。我可以设想的成就包括诸如过去4周每周获得第二名的人的徽章,或者在50个州中的每一个州都有friend的人的徽章……等等……对
我们有一个可以处理无模式财务数据的应用程序。更准确地说,shemaless数据是关于订单的信息,其中的字段由商家自定义。一致性和持久性很重要。由于我们的数据报告非常动态,因此非常困难。每条记录可能略有不同,也可能完全不同。如果我们继续使用关系数据库,看来我们唯一的选择是将“文档”序列化为blob。报告必须单独完成,可能通过将数据复制到由用户定义的报告定义的公共(public)结构中(每个“报告”都有一个自定义表格)。另一种选择是面向文档的NoSQL数据库,例如MongoDB。在做了一些研究之后,似乎大多数人不会信任NoSQL数据库的财务数据,因为它依赖于BASE。而不是ACID.我似乎
我们有一个可以处理无模式财务数据的应用程序。更准确地说,shemaless数据是关于订单的信息,其中的字段由商家自定义。一致性和持久性很重要。由于我们的数据报告非常动态,因此非常困难。每条记录可能略有不同,也可能完全不同。如果我们继续使用关系数据库,看来我们唯一的选择是将“文档”序列化为blob。报告必须单独完成,可能通过将数据复制到由用户定义的报告定义的公共(public)结构中(每个“报告”都有一个自定义表格)。另一种选择是面向文档的NoSQL数据库,例如MongoDB。在做了一些研究之后,似乎大多数人不会信任NoSQL数据库的财务数据,因为它依赖于BASE。而不是ACID.我似乎
我知道NoSQL不是关系数据库,所以我无法绘制ERD或其他只能应用于关系数据库的方法。我的困惑是:我应该说明什么样的方法或图表来设计NoSQL数据库?谢谢。 最佳答案 这是最近10gen事件演示的摘要,表明思维导图是这项工作最合乎逻辑的工具。我预计会出现更专业的工具,但总的来说,思维导图与非关系模式设计非常吻合。“我们大多数人都是视觉学习者。通常,视觉学习者在借助图表或图片来解释信息时会发现信息“点击”。对于MongoDB,该图片是代表数据库自然方法的叶子。在在RDBMS世界中,数据库模式通过实体关系(ER)图“可视化”。ER图是有
我知道NoSQL不是关系数据库,所以我无法绘制ERD或其他只能应用于关系数据库的方法。我的困惑是:我应该说明什么样的方法或图表来设计NoSQL数据库?谢谢。 最佳答案 这是最近10gen事件演示的摘要,表明思维导图是这项工作最合乎逻辑的工具。我预计会出现更专业的工具,但总的来说,思维导图与非关系模式设计非常吻合。“我们大多数人都是视觉学习者。通常,视觉学习者在借助图表或图片来解释信息时会发现信息“点击”。对于MongoDB,该图片是代表数据库自然方法的叶子。在在RDBMS世界中,数据库模式通过实体关系(ER)图“可视化”。ER图是有
现在有适用于Mongodb和redis的RESTapi。我可以使用我的语言驱动程序连接到这些数据库。或者我可以使用RESTapi。我知道RESTapi更容易理解,也更容易从一种语言转换为另一种语言。但功能较少。但是如果我已经很好地使用了语言驱动程序,还有什么理由使用其余的api?谢谢。 最佳答案 在我看来,当您必须在异构环境中集成多个不同的客户端时,RESTfulAPI很有用。当您需要已经为HTTP解决的功能(例如缓存或负载平衡)时,它也很好。 关于mongodb-为什么在什么场景下使用
现在有适用于Mongodb和redis的RESTapi。我可以使用我的语言驱动程序连接到这些数据库。或者我可以使用RESTapi。我知道RESTapi更容易理解,也更容易从一种语言转换为另一种语言。但功能较少。但是如果我已经很好地使用了语言驱动程序,还有什么理由使用其余的api?谢谢。 最佳答案 在我看来,当您必须在异构环境中集成多个不同的客户端时,RESTfulAPI很有用。当您需要已经为HTTP解决的功能(例如缓存或负载平衡)时,它也很好。 关于mongodb-为什么在什么场景下使用
跟进我在modelingrelationaldatawithnosql上的问题,我已经阅读了几篇关于这个主题的文章:Nosqldoesn'tmeannon-relationalNosqlEcommerceExample他们似乎暗示nosql可以处理规范化的关系数据。让我们继续我之前的示例,一个CMS系统有两种类型的数据:文章和作者,其中文章有作者的引用(按ID)。以下是系统需要支持的操作:通过id和作者一起获取文章获取特定作者的所有文章查找作者按创建日期排序的前10篇文章如果相同的数据存储在RDBMS上,我想了解这些操作与相同操作的性能。请特别说明该操作是否使用MapReduce、
跟进我在modelingrelationaldatawithnosql上的问题,我已经阅读了几篇关于这个主题的文章:Nosqldoesn'tmeannon-relationalNosqlEcommerceExample他们似乎暗示nosql可以处理规范化的关系数据。让我们继续我之前的示例,一个CMS系统有两种类型的数据:文章和作者,其中文章有作者的引用(按ID)。以下是系统需要支持的操作:通过id和作者一起获取文章获取特定作者的所有文章查找作者按创建日期排序的前10篇文章如果相同的数据存储在RDBMS上,我想了解这些操作与相同操作的性能。请特别说明该操作是否使用MapReduce、
如果我进行计数查询,我会在db.coll.find({"A":1,"createDate":{"$gt":newDate("2011-05-21"),"$lt":newDate("2013-08-21")}}).count()这使用以下索引db.coll.ensureIndex({"A":1,"createDate":1})同样,有4列A、B、C、D(值始终为0或1),我对其运行4个计数查询并在我查看了聚合框架文档并创建了一个聚合查询来将所有4个总和一起计算。db.coll.aggregate({$match:{"createDate":{$gt:newDate("2013-05-21