0

我需要为活动的优惠券代码兑换提供每小时(每天,每周)报告。一个活动可以有多个优惠券代码。

我打算使用 MongoDB 并有两种方法:

  1. 将每个兑换详情存储在一个文档中,并根据搜索条件查询该文档。
  2. 创建一个小时的单个文档,并将兑换详细信息作为嵌套文档。此处文档的键将是活动 ID 开始时间和结束时间。代表每个赎回的嵌套文档将与方法 1 中的相同。

就性能而言,第二种方法是否有任何优势。平均一个小时内的总兑换次数为 1000 次,一个活动的最大兑换次数为 100 万次。

我还必须考虑 MongoDB 中单个文档的 16 MB 大小限制。

请帮我设计这个解决方案。

问候, 阿布舍克

4

1 回答 1

0

我建议您使用您提到的第一种方法,因为您不会拥有那么多数据。如果您确保索引,那么运行这些搜索中的任何一个都需要几毫秒。我们使用 MongoDB 已经有一段时间了,我们正在处理超过 2000 万条记录的结果,从搜索中检索数据只需不到一秒钟的时间,如果您想更改查询,它会更加清晰和清晰未来。

于 2013-08-05T12:04:36.923 回答