Klaszter vs nem klaszterindex
Az indexek nagyon fontosak minden adatbázisban. Ezeket a táblázatokból történő adatok lekérdezésének javítására használják. Logikailag és fizikailag függetlenek a kapcsolódó táblázatok adataitól. Ezért az indexeket el lehet dobni, újra létrehozni és újraépíteni anélkül, hogy az az alaptáblák adatait befolyásolja. Az Oracle szerver automatikusan fenntarthatja indexeit, a DBA bevonása nélkül, amikor a kapcsolódó táblákat beillesztik, frissítik és törlik. Több index típus létezik. Itt van néhány közülük.
1. B-fa indexek
2. Bitmap indexek
3. Funkcionális indexek
4. Fordított kulcs indexek
5. B-fa klaszter indexek
Mi a nem klaszterindex??
A fenti indextípusok közül a következők nem fürtözött indexek.
• B-fa index
• Bitmap index
• Funkció alapú index
• Fordított kulcs indexek
A B-fa indexek a legszélesebb körben alkalmazott adatbázis-típusok. Ha a CREATE INDEX parancs kiadásra kerül az adatbázisban, a típus megadása nélkül, az Oracle szerver létrehoz egy b-fa indexet. Ha egy b oszlopfa indexet hoz létre egy adott oszlopban, az Oracle szerver tárolja az oszlop értékeit és megőrzi a táblázat aktuális sorára mutató hivatkozást..
A bitmap indexeket akkor hozzák létre, ha az oszlopadatok nem túl szelektívek. Ez azt jelenti, hogy az oszlopok adatai alacsonyak a kardinalitásukkal. Ezeket kifejezetten adatraktárakhoz tervezték, és nem jó bitmap indexeket használni erősen frissíthető vagy tranzakciós táblákon..
A funkcionális indexek az Oracle 8i-től származnak. Itt egy függvényt használunk az indexelt oszlopban. Ezért egy funkcionális indexben az oszlopadatokat nem rendezik szokásos módon. Osztályozza az oszlopok értékeit a függvény alkalmazása után. Ezek nagyon hasznosak, ha a kiválasztott lekérdezés WHERE bezárásakor melyik funkciót használják.
A fordított kulcsú indexek nagyon érdekes index típusok. Tegyük fel, hogy egy oszlop számos egyedi karakterlánc-adatot tartalmaz, például 'cityA', 'cityB', 'cityC' stb. Minden érték mintázattal rendelkezik. Az első négy karakter megegyezik, és a következő részek megváltoznak. Tehát amikor a REVERSE kulcsindex létrehozásra kerül ezen az oszlopon, az Oracle visszafordítja a karakterláncot, és visszaállítja azt egy b-fa indexben.
A fent említett index típusok NEM CLUSTERED indexek. Ez azt jelenti, hogy az indexált adatokat a táblán kívül tárolják, és a táblára rendezett hivatkozásokat tartják fenn.
Mi az a csoportosított index??
A csoportosított indexek az indexek speciális típusa. Az adatokat az asztali adatok fizikai tárolásának módja szerint tárolja. Tehát nem lehet sok fürtözött index egy táblához. Az egyik tábla csak egy fürtözött indexet tartalmazhat.
Mi a különbség a fürtözött és a nem csoportosított indexek között?? 1. A táblázatnak csak egy fürtözött index lehet, de egy táblázatban akár 249 nem fürtözött index is lehet. 2. A csoportosított index automatikusan létrejön az elsődleges kulcs létrehozásakor, de a nem csoportosított index az egyedi kulcs létrehozásakor jön létre.. 3. A csoportosított index logikai sorrendje megegyezik a táblázat adatainak fizikai sorrendjével, de a nem csoportosított indexeknél ez nem. |