Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Commencer à utiliser les filtres Bloom
ElastiCache prend en charge la structure de données du filtre Bloom, qui fournit une structure de données probabiliste peu encombrante pour vérifier si un élément fait partie d'un ensemble. Lorsque vous utilisez des filtres Bloom, des faux positifs sont possibles : un filtre peut indiquer de manière incorrecte l'existence d'un élément, même si cet élément n'a pas été ajouté à l'ensemble. Cependant, l'utilisation de filtres Bloom empêchera les faux négatifs, c'est-à-dire des indications incorrectes indiquant qu'un élément n'existe pas, même si cet élément a été ajouté à l'ensemble.
Vous pouvez définir le pourcentage de faux positifs potentiels à un taux adapté à votre charge de travail, en ajustant le taux fp. Vous pouvez également configurer la capacité (le nombre d'éléments qu'un filtre Bloom peut contenir), les propriétés dimensionnelles et non dimensionnelles, etc.
Une fois que vous avez créé un cluster avec une version de moteur prise en charge, le type de données Bloom et les commandes associées sont automatiquement disponibles. Le type de bloom
données est compatible avec l'API avec la syntaxe de commande du filtre Bloom des bibliothèques clientes officielles de Valkeyvalkey-py
, notammentvalkey-java
, etvalkey-go
. Vous pouvez facilement migrer les applications Valkey et Redis OSS existantes basées sur Bloom vers. ElastiCache Pour une liste complète des commandes, voirCommandes du filtre Bloom.
Les métriques liées à Bloom BloomFilterBasedCmds
BloomFilterBasedCmdsLatency
, et BloomFilterBasedCmdsECPUs
sont intégrées CloudWatch pour surveiller l'utilisation de ce type de données. Pour de plus amples informations, veuillez consulter Métriques pour Valkey et Redis OSS.
Note
Pour utiliser les filtres Bloom, vous devez utiliser ElastiCache Valkey 8.1 ou version ultérieure.
Le type de données Bloom n'est pas compatible avec RDB avec d'autres offres Bloom non basées sur Valkey.
Vue d'ensemble des types de données des filtres Bloom
Les filtres Bloom sont une structure de données probabiliste peu encombrante qui permet d'ajouter des éléments et de vérifier si des éléments existent. Les faux positifs sont possibles lorsqu'un filtre indique de manière incorrecte l'existence d'un élément, même s'il n'a pas été ajouté. Cependant, les filtres Bloom garantissent l'absence de faux négatifs (indiquant à tort qu'un élément n'existe pas, même s'il a été ajouté).
La principale source de documentation pour les filtres Bloom se trouve sur la page de documentation de valkey.io. Il contient les informations suivantes :
Cas d'utilisation courants des filtres Bloom
Publicité/Déduplication d'événements
Détection des fraudes
Filtrer les contenus dommageables et les spams
Détection unique des utilisateurs
Différences entre les filtres de floraison scalables et non scalables
Comment choisir entre des filtres de floraison redimensionnables et non scalables
-
Découvrez les propriétés réglables des filtres Bloom. Cela inclut le taux de faux positifs, la capacité, les propriétés de mise à l'échelle et de non-mise à l'échelle, etc.
Manipulation de grands filtres Bloom
-
Recommandations et informations sur la manière de vérifier si un filtre Bloom atteint sa limite d'utilisation de mémoire et s'il peut être redimensionné pour atteindre la capacité souhaitée.
-
Vous pouvez vérifier spécifiquement la quantité de mémoire consommée par un document de filtre Bloom à l'aide de la commande BF.INFO
.
-
Limite de taille des fleurs
La consommation de mémoire par un seul objet du filtre Bloom est limitée à 128 Mo. Vous pouvez vérifier la quantité de mémoire consommée par un filtre Bloom à l'aide de la BF.INFO <key> SIZE
commande.
Bloom ACLs
À l'instar des catégories existantes par type de données (@string, @hash, etc.), une nouvelle catégorie @bloom est ajoutée pour simplifier la gestion de l'accès aux commandes et aux données Bloom. Aucune autre commande Valkey ou Redis OSS existante n'appartient à la catégorie @bloom.
Trois catégories d'ACL existantes ont été mises à jour pour inclure les nouvelles commandes Bloom : @read, @write et @fast. Le tableau suivant indique le mappage des commandes Bloom aux catégories appropriées.
commande Bloom | @read | @write | @fast | @bloom |
---|---|---|---|---|
BF.AJOUTER |
y |
y |
y |
|
BF.CARD |
y |
y |
y |
|
BF.EXISTE |
y |
y |
y |
|
BF.INFO |
y |
y |
y |
|
BF.INSERT |
y |
y |
y |
|
BF.MADD |
y |
y |
y |
|
BF.MEXIST |
y |
y |
y |
|
BF.RESERVE |
y |
y |
y |
Métriques liées au filtre Bloom
Les CloudWatch métriques suivantes relatives aux structures de données Bloom sont fournies :
Métriques CW | Unit | Sans serveur/conçu par vos soins | Description |
---|---|---|---|
BloomFilterBasedCmds |
Nombre |
les deux |
Le nombre total de commandes du filtre Bloom, y compris les commandes de lecture et d'écriture. |
BloomFilterBasedCmdsLatency |
Microsecondes |
Autogéré |
Latence de toutes les commandes du filtre Bloom, y compris les commandes de lecture et d'écriture. |
BloomFilterBasedCmdsECPUs |
Nombre |
sans serveur |
ECPUs consommé par toutes les commandes du filtre Bloom, y compris les commandes de lecture et d'écriture. |
Commandes du filtre Bloom
Les commandes du filtre Bloom
Name (Nom) | Description |
---|---|
BF.AJOUTER |
Ajoute un seul élément à un filtre Bloom. Si le filtre n'existe pas déjà, il est créé. |
CARTE BF |
Renvoie la cardinalité d'un filtre Bloom. |
BF. EXISTE |
Détermine si le filtre Bloom contient l'élément spécifié. |
BF.INFO |
Renvoie les informations d'utilisation et les propriétés d'un filtre Bloom spécifique. |
BF.INSÉRER |
Crée un filtre de floraison avec 0 éléments ou plus, ou ajoute des éléments à un filtre de floraison existant. |
B.F. MADD |
Ajoute un ou plusieurs éléments à un filtre Bloom. |
B.F. EXISTE |
Détermine si le filtre Bloom contient un ou plusieurs éléments. |
B.RESERVE |
Crée un filtre de floraison vide avec les propriétés spécifiées. |
Note
BF.LOAD n'est pas pris en charge par. ElastiCache Cela ne concerne que l'utilisation de l'AOF, qui n'est ElastiCache pas prise en charge.