Je réfléchissais à la façon dont les stockages de valeurs-clés actuels implémentent la «date d'expiration» pour les articles. Actuellement, j'ai 2 variantes pour cela dans mon esprit:
- ils ne font rien (gardent les données expirées), et ne vérifient que lorsque vous faites, par exemple, GET par une clé. Le problème ici est que si vous êtes limité en mémoire, les éléments expirés ne seront pas supprimés.
ils conservent des structures de données supplémentaires pour pouvoir «expirer au plus tôt». Je vois que cela peut être fait avec quelque chose comme ça:
storage_data = dict(key -> [value, expire_timestamp]) expire_tree = SomeBinaryLikeTree(expire_timestamp -> [keys])