我有一个带有整数键(时间戳)的表,其中包含应从数据库中删除特定记录的时间。还有一个清理查询,它从这个表中取出过期时间比现在短的记录并删除它们。
Erlang 文档说,有四种类型的表类型:set
、ordered_set
、bag
和duplicate_bag
.
set
是使用哈希表实现的,因此读取需要 O(1) 时间复杂度。ordered_set
是使用树实现的,因此读取需要 O(log(n)) 时间复杂度,但它更好地适用于后续间隔。- 我没有找到有关
bag
实施的信息。
ordered_set
看起来很理想,但我不能使用它,因为两条记录可以有相同的时间戳。所以问题是:
该bag
表是如何实现的,查询后续间隔是否很好?如果没有,我怎样才能获得“ ordered_bag
”功能?