1

我试图在很宽的行中存储非常简单的评论,但问题是我想要获得最高评论。

所以起初我尝试使用UTF8比较器类型,每个列名都以喜欢数量开头,后面跟着时间戳,例如:

Comments_CF = {
    parent:{
        8_timestamp: comment,
        5_timestamp: comment,
        1_timestamp: comment,
        ...
    }
    ...
}

这种方法的问题在于,例如2_timestamp>19_timestamp因为字典顺序2大于19

我可能可以将热门评论存储在单独的 CF 中,但是我需要做两个查询而不是一个,所以我真的很想避免这种情况,有什么建议吗?

4

2 回答 2

1

使用复合,其中第一个组件是长的,第二个是适合您的时间戳格式的任何类型。这样排序将是正确的。

于 2012-12-16T17:20:06.600 回答
1

2 个查询而不是 1 个通常没什么大不了的。你也可以只做一个复合值(喜欢的数量+评论)并自己对评论进行排序......从我所看到的东西来看,除了一些帖子之外,从来没有很多评论,所以这会非常快。

还有其他模式也可能在这里激发想法......

https://github.com/deanhiller/playorm/wiki/Patterns-Page

于 2012-12-17T00:49:53.250 回答