Matrice de biți

O matrice de biți (în engleză bitmap ) este o structură de date , în special un tabel de date binare. Aceasta este o colecție ordonată de biți booleeni .

Denumire

Cu siguranță, tabelul de nume sugerează o grilă similară cu cea a cuvintelor încrucișate , dar un tabel de biți poate fi foarte bine în trei dimensiuni sau mai mult. Cu toate acestea, numărul de elemente fiind finit, cunoscut sau chiar definit, colecția poate fi inventariată în funcție de o cale care traversează fiecare „coloană” și fiecare „rând”. Acest spațiu poligraf este redus la un singur fir de Ariane folosit de Tezeu în labirintul lui Dedal . Iată de ce, în limba engleză, conceptele de hartă (hartă), joc, sortiment (set), set sau rețea (matrice) dar și fir (șir) se întâlnesc într-un singur obiect util pentru programare .

Cerere

O aplicație grafică a matricei de biți este imaginea binară . Filtrul Bloom , structura de date, folosește o matrice de biți.

Suport prin limbaje de programare

Indice bitmap

Un index de bază de date de tip bitmap este o matrice de biți care funcționează pe principiul cardinalității . Acest tabel are un rând pentru fiecare tuplu al tabelei indexate și o coloană pentru fiecare valoare distinctă a coloanei indexate. În general, se consideră că indicii bitmap sunt de preferat celorlalți indici atunci când coloana care trebuie indexată are cardinalitate scăzută, chiar dacă acest lucru este contestat. De exemplu, anii sunt în general puțini și ordonați.

Exemplu. Luați în considerare următoarea persoană tabel care reprezintă persoanele cu anul nașterii.

Nimeni
Nume de utilizator anul nașterii
1 1988
2 1990
3 1992
4 1990

Indicele bitmap corespunzător indexării coloanei de naștere dă următorul tabel. Primul rând are o valoare de 1 pentru coloana din 1988 și 0 pentru celelalte coloane de când s-a născut această persoană în 1988.

Nume de utilizator 1988 1990 1992
1 1 0 0
2 0 1 0
3 0 0 1
4 0 1 0

Indexul bitmap anterior, denumit BIDX_PERS_ANNEE este creat cu comanda:

CREATE BITMAP INDEX BIDX_PERS_ANNEE ON Personne (anneeNaissance )

În practică, fiecare rând al unui index bitmap este, de asemenea, asociat cu o adresă fizică, făcând astfel posibilă găsirea sa rapidă. Întregul punct al indexurilor bitmap este, pe de o parte, că pot fi comprimate folosind tehnici precum codificarea intervalului și, pe de altă parte, că acestea sunt utilizate pentru a răspunde la interogări efectuând operații bitbit .

Note și referințe

  1. Christian Soutou, SQL pentru Oracle: Aplicații cu Java, PHP și XML: Optimizarea interogărilor și schemelor - Cu 50 de exerciții corectate ( citiți online )
  2. Olivier Heurtel, Oracle 11g: Administration ( citiți online )
  3. „  Bitmap Index vs. Indexul arborelui B: Care și când?  » , Pe www.oracle.com (accesat la 15 noiembrie 2016 )

Vezi și tu