Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Hogyan különböznek az I/O műveletek költségei az indexvizsgálatok és a táblázatvizsgálatok között?


Hogyan különböznek az I/O műveletek költségei az indexvizsgálatok és a táblázatvizsgálatok között?


Az I/O-műveletek költségei több szempontból is különböznek az indexvizsgálatok és a táblázatvizsgálatok között:

Index szkennelés

1. I/O műveletek költsége: Az indexellenőrzés általában hatékonyabb az I/O műveletek szempontjából. Csak az indexet kell olvasniuk, amely általában kisebb, mint a teljes tábla, ami kevesebb lemezelérést eredményez.

2. I/O költség: Az indexvizsgálat I/O költsége általában alacsonyabb, mivel az index kompaktabb és gyorsabban olvasható.

3. CPU-költség: Az indexellenőrzés CPU-költsége általában alacsonyabb, mivel az index szervezettebb és hatékonyabban kereshető.

4. Total Operator Cost: Az indexvizsgálat teljes üzemeltetői költsége általában alacsonyabb, mivel tartalmazza az I/O és a CPU költségeit.

Table Scan

1. Az I/O-műveletek költsége: A táblázat-ellenőrzések általában kevésbé hatékonyak az I/O-műveletek szempontjából. A teljes táblázatot el kell olvasniuk, ami több lemezelérést eredményezhet.

2. I/O költség: A táblázatvizsgálat I/O költsége általában magasabb, mivel a tábla nagyobb, és több lemezelérést igényel.

3. CPU-költség: A táblázat-ellenőrzés CPU-költsége általában magasabb, mivel a tábla nagyobb és több feldolgozást igényel.

4. Total Operator Cost: A teljes kezelői költség a táblázatszkennelésnél általában magasabb, mivel tartalmazza az I/O és a CPU költségeit.

Következtetés

Összefoglalva, az index-ellenőrzések általában hatékonyabbak az I/O műveletek és a CPU-használat szempontjából, mint a táblázatvizsgálatok. A kettő közötti választás azonban a lekérdezés és az adatbázis konkrét követelményeitől és korlátaitól függ.

Idézetek:
[1] https://www.ibm.com/docs/en/db2/11.5?topic=methods-data-access-through-index-scans
[2] https://stackoverflow.com/questions/8702905/table-scan-and-index-scan-in-sql
[3] https://dba.stackexchange.com/questions/250474/shouldnt-operator-cost-at-least-be-as-large-as-i-o-or-cpu-cost-that-comprises-i
[4] https://forums.oracle.com/ords/r/apexds/community/q?question=cost-of-a-full-table-scan-is-less-than-an-index-unique-scan -1453
[5] http://venkatsqlinterview.blogspot.com/2011/05/difference-between-index-scan-and-index.html