Indexek postgresql postgres profi cég
Ebben a cikksorozatban fog összpontosítani az indexek a PostgreSQL.
Bármilyen kérdése lehet a különböző nézőpontokból. Fogunk beszélni, hogy mit kell érdekli az alkalmazás fejlesztője, a DBMS: milyen indexek vannak, miért PostgreSQL olyan sok különböző, és hogyan kell használni őket, hogy gyorsítsák fel lekérdezések. Talán a téma lehet nyitott és kevesebb szóval, de titokban reméljük kíváncsi a fejlesztők, akik érdekeltek a részletek a belső szerkezetét és azt is, hogy a megértés ilyen részleteket nem csak hallgatni mások véleményét, hanem felhívni a saját következtetéseit.
Az első részben beszéltünk, hogy a hozzáférési mód információt kell szolgáltatnia magáról. Lássuk, mi van benne ez a felület.
Minden ingatlan hozzáférési módszerek táblázatban mutatjuk be pg_am (am - hozzáférési mód). akkor magamnak egy listát a rendelkezésre álló módszerek az alábbi táblázatban: B-fán alapuló, hash, lényeget, gin, spgist, Brin
Bár a hozzáférést a módszereket lehet jogosan tulajdonítható, és a szekvenciális olvasás, történelmileg, ez nem szerepel.
Az első cikk néztük PostgreSQL léptető, a második - a felület hozzáférés módját, és készen áll, hogy beszéljünk az adott típusú indexek. Kezdjük a hash index.
Sok modern programozási nyelvek közé tartozik a hash tábla, mint az alap adattípust. Külsőleg úgy néz ki, mint egy hagyományos tömb, de alkalmazunk index nem egész szám, és bármilyen adattípust (például, karakterlánc). Hash index PostgreSQL van elrendezve hasonló módon. Hogyan működik ez?
Már tárgyalt PostgreSQL léptető és az interfész módszerek, valamint a hozzáférési módszerek - hash index. Most beszéljünk a leghagyományosabb és alkalmazott indexek - B-fa. A fej, hogy minél több, fenntarthat türelem.
B-fán alapuló index, más néven B-fa, alkalmas adatokat lehet válogatni. Más szóval, az üzemeltetők „több” meg kell határozni az adattípus „nagyobb vagy egyenlő”, „kisebb mint”, „kisebb vagy egyenlő” és „egyenlő”. Megjegyzendő, hogy ugyanazok az adatok néha lehet válogatni a különböző módon, amely elvezet minket a fogalom a család a piaci szereplők.
GIST - rövid «általános keresési fa». Ez egy kiegyensúlyozott keresési fa, ugyanúgy, mint azt korábban b-fa.
Mi a különbség? b-tree index mereven csatlakozik a szemantika összehasonlítás támogatása „több” szereplők „kisebb mint”, „egyenlő” - ez minden, amit tehet (de képes nagyon jó!). De a modern adatbázisokban tárolják, és az ilyen típusú adatok, amelyek esetében a szolgáltatók egyszerűen nincs értelme: helyére vonatkozó információt, a szöveges dokumentumok, képek ...
Az ötödik rész a sorozat az indexek a PostgreSQL adatbázis cikkek nem hagyja abba, és most Jegor Rogov írja a folytatást.