Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 面向文档的数据库(MongoDB?)和开票/订购?_Ruby On Rails_Mongodb_Mongoid_Document Oriented Db - Fatal编程技术网

Ruby on rails 面向文档的数据库(MongoDB?)和开票/订购?

Ruby on rails 面向文档的数据库(MongoDB?)和开票/订购?,ruby-on-rails,mongodb,mongoid,document-oriented-db,Ruby On Rails,Mongodb,Mongoid,Document Oriented Db,熟悉面向文档的数据库概念,并有一些与订单和订单处理相关的高级问题 在这个世界上,人们是如何获取订单的?订单是否只是Orders集合中的一个新文档?order\u item是否与另一文档中列出的产品相关?或者假设order\u item将被复制并插入到订单文档中,因此很难报告一段时间内售出的产品的总数 如何解决交易缺失的问题并保持诚信 抱歉,虽然我很想理解,但对我来说还是很陌生……如果真的有道理的话,将所有这些出售的“东西”封装为“对象”,并在服务器和客户端之间移动它们,听起来很吸引人。只是需要一

熟悉面向文档的数据库概念,并有一些与订单和订单处理相关的高级问题

在这个世界上,人们是如何获取订单的?订单是否只是
Orders
集合中的一个新文档?
order\u item
是否与另一文档中列出的
产品相关?或者假设
order\u item
将被复制并插入到订单文档中,因此很难报告一段时间内售出的
产品的总数

如何解决交易缺失的问题并保持诚信

抱歉,虽然我很想理解,但对我来说还是很陌生……如果真的有道理的话,将所有这些出售的“东西”封装为“对象”,并在服务器和客户端之间移动它们,听起来很吸引人。只是需要一些帮助来概念化大局中的应做和不应做

一个人如何在这个世界上获得秩序?订单是否只是订单集合中的新文档

对。这就是这些数据库的工作方式

订单项目是否与其他文档中列出的产品相关

可以。取决于你在做什么

或者假设订单项目将被复制并插入到订单文档中

也有可能。这对于历史分析和数据仓库非常有效

因此,也许很难报告一段时间内销售的产品总数

总是很难报告一段时间内销售的产品总量

今天,产品“23SKIDOO”是一款23l、开阀、带双部件的framistat

去年,在召回之前,同一款产品是一款23l闭阀framistat,只有一个小部件

在前一年,同样的产品实际上是22.5升

这些是“相同”的产品吗?营销部称之为“23SKIDOO”。但也有不同之处

单个产品表无法正确解决此问题。然后,人们要做的就是发明产品线和产品系列,这样他们就可以推出“23SKIDOO-B”和“23SKIDOO-PLUS”产品,它们都是“23SKIDOO”系列的一部分

产品线、产品系列和其他更奇特的分组是变通方法和技巧,可以神奇地使不相关的产品一起报告,并提供“随时间销售的总产品”,即使产品明显不同

将产品复制到订单中(虽然这似乎是浪费)可以比许多常用的解决方法保留更多的历史保真度

如何解决交易缺失的问题并保持完整性

MongoDB有锁

不清楚你所说的缺少交易是什么意思

一个人如何在这个世界上获得秩序?订单是否只是订单集合中的新文档

对。这就是这些数据库的工作方式

订单项目是否与其他文档中列出的产品相关

可以。取决于你在做什么

或者假设订单项目将被复制并插入到订单文档中

也有可能。这对于历史分析和数据仓库非常有效

因此,也许很难报告一段时间内销售的产品总数

总是很难报告一段时间内销售的产品总量

今天,产品“23SKIDOO”是一款23l、开阀、带双部件的framistat

去年,在召回之前,同一款产品是一款23l闭阀framistat,只有一个小部件

在前一年,同样的产品实际上是22.5升

这些是“相同”的产品吗?营销部称之为“23SKIDOO”。但也有不同之处

单个产品表无法正确解决此问题。然后,人们要做的就是发明产品线和产品系列,这样他们就可以推出“23SKIDOO-B”和“23SKIDOO-PLUS”产品,它们都是“23SKIDOO”系列的一部分

产品线、产品系列和其他更奇特的分组是变通方法和技巧,可以神奇地使不相关的产品一起报告,并提供“随时间销售的总产品”,即使产品明显不同

将产品复制到订单中(虽然这似乎是浪费)可以比许多常用的解决方法保留更多的历史保真度

如何解决交易缺失的问题并保持完整性

MongoDB有锁


不清楚缺少事务是什么意思。

所以一般问题总是很难回答。然而,我鼓励您这样做的是查看您希望应用程序执行的读写模式。与RDBMS模式设计一样,某些文档设计也存在权衡

这里有一个指向以MongoDB为中心的模式设计演示文稿的链接。这可能有助于您了解其中一些权衡和设计选项


所以一般问题总是很难回答。然而,我鼓励您这样做的是查看您希望应用程序执行的读写模式。与RDBMS模式设计一样,某些文档设计也存在权衡

这里有一个指向以MongoDB为中心的模式设计演示文稿的链接。这可能有助于您了解其中一些权衡和设计选项


很有帮助,谢谢,还有很多我所期待的。现在,因为你已经详细介绍了处理“产品”的方法,如果你有2-3个不同的目录,需要参考“相同”的产品,你会怎么做?产品的部分(价格、尺寸等)可能不同,但可以想象,产品名称或描述的更改可能需要在多个“文档”中复制。我们现在是不是在冒险走出面向文档数据库的最佳状态?@Meltemi:也许吧。这个