Les index bitmap accélèrent les requêtes en permettant au moteur de base de données de filtrer les lignes par des opérations sur les bits plutôt que d'analyser chaque ligne. Utilisez ces index sur les colonnes fréquemment utilisées dans des filtres d'égalité ou de plage pour réduire le volume de données lu lors de l'exécution.
Créer un index bitmap
CREATE INDEX [IF NOT EXISTS] <index_name> ON <table_name> (<column>) USING BITMAP;
| Paramètre | Description |
|---|---|
index_name |
Nom de l'index bitmap. |
table_name |
Table sur laquelle créer l'index bitmap. |
column |
Colonne sur laquelle créer l'index bitmap. |
Consulter les informations d'un index
Pour lister les index d'une table, exécutez la commande suivante :
SHOW INDEX FROM [db_name.]<table_name>;
Supprimer un index bitmap
DROP INDEX [IF EXISTS] <index_name> ON [db_name.]<table_name>;
Limites
Périmètre d'application
Un index bitmap ne s'applique qu'à une seule colonne. Les index bitmap multicolonnes ne sont pas pris en charge.
Ces index ne fonctionnent que sur les données stockées au format Segment V2. La création d'un index bitmap sur une table convertit automatiquement son format de stockage en Segment V2.
Modèles de table et colonnes pris en charge
| Modèle de table | Colonnes prises en charge |
|---|---|
| Modèle Duplicate Key | Toutes les colonnes |
| Modèle Unique Key | Toutes les colonnes |
| Modèle Aggregate Key | Colonnes clés uniquement |
Types de données pris en charge
| Catégorie | Types de données |
|---|---|
| Numérique | TINYINT, SMALLINT, INT, BIGINT, LARGEINT, DECIMAL |
| Chaîne de caractères | CHAR, VARCHAR |
| Date et heure | DATE, DATETIME |
| Autre | BOOL |