如何优化Postgresql模式

如何优化Postgresql模式,sql,database,postgresql,Sql,Database,Postgresql,我正在创建在线商店api。这是Postgresql模式。 我想做的是在products表中添加颜色列,同时我想通过颜色计数来计算产品的总数量,例如:10个红色100个黑色等等 我还想添加带有产品和用户ID的愿望列表表。 我想的是,随着数据越来越大,用户越来越多,他们可能会有非常大的列表,需要花很多时间来查询或进行大量选择。 我相信有更好的方法 这很难回答。您已经有了一个键/值表product\u details,可以向产品添加通用属性。但是在products表中选择具体属性是个好主意。然而,颜色

我正在创建在线商店api。这是Postgresql模式。 我想做的是在products表中添加颜色列,同时我想通过颜色计数来计算产品的总数量,例如:10个红色100个黑色等等

我还想添加带有产品和用户ID的愿望列表表。 我想的是,随着数据越来越大,用户越来越多,他们可能会有非常大的列表,需要花很多时间来查询或进行大量选择。
我相信有更好的方法

这很难回答。您已经有了一个键/值表
product\u details
,可以向产品添加通用属性。但是在
products
表中选择具体属性是个好主意。然而,颜色是很难的。产品可以有一种或两种或多种颜色。还有浅绿色、深绿色、石灰、翡翠、鼠尾草、翡翠、橄榄。。。一种颜色的多种色调或两种颜色的混合。所以,定义你需要什么。每个产品有多少种颜色?主色?第二颜色?颜色层次?至于愿望清单:我认为这不会是一个问题。有了正确的索引表,无论表有多大,都可以快速获得用户列表。这就是我试图弄明白的,不同的产品可以有不同的选项,例如书籍的规格不同,然后是手机。此外,如果我添加评论、评论和其他内容,它在后端会变得越来越大,我会选择大量数据,并根据产品id从所有评论和所有评论中进行选择。我知道,例如在oracle中,有一些方法可以简化索引,还有一些其他方法,但我从未在web应用中使用过这么大的RDB。