我正在构建一个电子商务系统,该系统使用复合桶哈希来有效地对类似项目进行分组。在没有考虑为什么选择这个系统的情况下,可以说它解决了分布式电子商务系统面临的几个关键问题。
有11个桶,所有这些桶都代表不同的值。我们将这些字段称为A到K.第12个字段L是产品ID数组。可以将这一切都想象为叶级(L)是数据的层次结构。
我在MongoDB中运行了一些初始测试,我将这些数据存储为单独的文档。但是,这样做效率不高,因为给定的A到K集可能有很多L值,所以这些可以存储为数组。
这给了我两个选择:
我知道#2是MongoDB的高度非传统用法。有什么技术原因我不应该这样做吗?如果没有,使用官方C#驱动程序,我将如何执行此插入?
答案 0 :(得分:1)
如果您选择了#2选项,则可以使用optimised创建自己的Custom Id Generator复合ID(使用A-K)。
您是否在compound keys上运行了测试?