gpt4 book ai didi

memory-management - 在 Redis 中建模数据

转载 作者:可可西里 更新时间:2023-11-01 11:22:45 25 4
gpt4 key购买 nike

我正在构建一个在 Redis 中实时跟踪许多计数器的系统。每个计数器基本上是特定 url 上显示的广告关键字的展示次数、转化详细信息。

即。如果在特定网址上显示 10 个关键字,我需要更新每个关键字的展示次数和转化次数。并且在 url 的每次展示中,可能会显示一组不同的 10 个关键字。

即。我需要的基本数据模型是这样的

  • > 网址=>

     k1 =>
    impression => 2
    conversion => 1
    k2 =><br>
    impression => 100
    conversion => 8
    .
    .
    k100 (max around 100)</li>

我知道 Redis 没有嵌套哈希,所以我无法存储 2 级哈希,如上所示。

解决这个问题的最佳方法是什么?

我想把 k1-impression 和 k1 conversion 结合起来做成一个字段

即喜欢

  • 网址 =>

       k1-impression => 100
    k1-conversion => 3
    .<br>
    . so on</li>

但问题是“k1”、“k2”等的长度很重要(120-150 字节),我不想复制该数据,如果可能的话,以节省内存。

我将如何着手解决这个问题?

我们将不胜感激。

最佳答案

如果您的关键字足够长以至于您担心,您应该将它们规范化。生成keyword -> id 的散列,以及id -> keyword 的散列,用于对它们进行编码和解码。然后,您可以获得 url => {kw_id:impressions => 1123, kw_id:conversions => 28} 形式的每个 url 哈希值。当您开始需要为关键字建立索引时,这也能很好地为您服务,例如,一旦您收到要求显示所有 url 中表现最好的前 10 个关键字时,您就会这样做。

关于memory-management - 在 Redis 中建模数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12499189/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com