1

比较 hstore 性能的完全假设的问题是 postgress 假设每个用户都有一个关注者列表。有两种实现方式

  1. 与“关注者”表的多对多关系( user_id,follower_id )
  2. 一个 hstore 列,其中的值是关注者的 id。(带有 GiST 索引)

如果我想找到关注某个用户的所有用户,哪个版本会执行得更快?

  1. SELECT follower_id from follower where user_id = '1234'
  2. SELECT user_id from user where (data @> 'followers=>'1234')

在现实生活中,对于选项 b,我们可能还会维护用户关注的所有用户的列表——为了这个问题,假设我们不这样做。

4

0 回答 0