Vinyl 引擎中 len() 和 count() 的区别是什么?

我在 Vinyl 引擎上使用 space:len()space:count() 得到了不同的结果。这些方法返回的是什么?

点赞
用户1881632
用户1881632

扫描 vinyl space 并计算实际数量可能非常昂贵,这就是 :len() 函数存在的原因。它可以提供快速但近似的结果。如果这对您不起作用,请改用 :count() 函数。 它会进行完全扫描并返回正确的结果。

有关更多信息,请参阅此主题的相关 issue 和实现 commit,其中介绍了以下内容:

index.len 返回存储在索引中的总行数。
它是由 index.info 报告的 memory.rows 和 disk.rows 的总和。请注意,它可能大于存储在空间中的元组数,因为它包括 DELETE 和 UPDATE 语句。
2020-06-23 08:10:45