假设我有一个包含数百万个具有价格属性的小部件的数据库。小部件属于供应商,我将小部件卖给客户,首先从供应商那里购买,然后再卖给客户。有了这个基本设置,如果客户向我询问每个低于 50 美元的小部件,列出它们是微不足道的。
但是,我对各个供应商的小部件价格进行了不同的标记。所以我可以将供应商 A 的小部件加价 10%,我可以将供应商 B 的小部件加价 5 美元。在数据库中,这些标记将与我的 ID、供应商 ID、标记类型(平面、百分比)和标记率一起存储在连接表中。最重要的是,供应商可以在向我销售时添加他们自己的标记(这些标记将与供应商的 ID、我的 ID 和标记类型/费率在同一个连接表中)。
因此,如果我想从供应商 A 处出售 45 美元的小部件,它可能会被供应商的 10% 加价(至 49.50 美元)加价,然后是我自己的 10 美元固定加价(至 59.50 美元)。该小部件不会出现在客户搜索价格低于 50 美元的小部件中。但是,一个 80 美元的小部件在到达客户端时可能会被标记为 45 美元,并且应该在结果中返回。这些标记可能会发生变化,假设我是这个系统中通过供应商向客户销售小部件的数百人中的一员,所有人在该标记表中都有自己的标记关系。
有没有在数百万个对象上快速执行这样的计算的先例?我意识到这是一个巨大的、非平凡的问题,但我很好奇人们将如何开始解决这样的问题。