我收藏了大约 15 万部电影,并且我有几个播放列表,其中几部电影多次出现。
我想在 Redis 上缓存电影和播放列表。
我需要的是播放列表只保存对电影的引用,因此当我检索播放列表时,它将带来引用的电影,但如果我更改电影,它将在所有播放列表中更改。
我不想检索只有 id 的播放列表,然后必须再次按 id 检索每部电影,有没有办法直接在一个查询中执行此操作?好像它是一个指针......
谢谢!
我收藏了大约 15 万部电影,并且我有几个播放列表,其中几部电影多次出现。
我想在 Redis 上缓存电影和播放列表。
我需要的是播放列表只保存对电影的引用,因此当我检索播放列表时,它将带来引用的电影,但如果我更改电影,它将在所有播放列表中更改。
我不想检索只有 id 的播放列表,然后必须再次按 id 检索每部电影,有没有办法直接在一个查询中执行此操作?好像它是一个指针......
谢谢!
如我所见,您有两个选择:
使用 RedisGears ( https://github.com/RedisGears/RedisGears )。在一条 python 行中,您可以完全按照您的需要进行操作,并且它将在集群上完美运行。它看起来像这样(假设播放列表是位于 redis 哈希中的电影的 redis 列表):
GB().flatmap(lambda r: r).repartition(lambda r:r).map(lambda r: execute('hgetall', r)).run('< playlist_key_name >')