Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Jaké jsou kompromisy mezi používáním indexů a skenováním tabulek


Jaké jsou kompromisy mezi používáním indexů a skenováním tabulek


Kompromisy mezi používáním indexů a prohledáváním tabulek v MySQL na AWS RDS závisí na několika faktorech, jako je velikost tabulky, počet řádků, vzor dotazu a typ dat, ke kterým se přistupuje. Zde je několik klíčových kompromisů, které je třeba zvážit:

Indexy

1. Výhody:
- Rychlejší provádění dotazů: Indexy mohou výrazně zlepšit výkon dotazů tím, že databázi umožňují rychle najít konkrétní řádky.
- Snížený diskový I/O: Indexy mohou snížit diskové I/O operace tím, že databázi umožní přímý přístup k požadovaným datům.
- Vylepšené získávání dat: Indexy mohou zlepšit získávání dat tím, že databázi umožňují rychle najít konkrétní řádky.

2. Nevýhody:
- Zvýšené požadavky na úložiště: Indexy vyžadují další úložný prostor, což může zvýšit celkové požadavky na úložiště.
- Zvýšená údržba: Indexy vyžadují pravidelnou údržbu, jako je přestavba a reorganizace, aby byl zajištěn optimální výkon.
- Zvýšená složitost: Indexy mohou databázi zkomplikovat a ztížit její správu a údržbu.

Skenování tabulek

1. Výhody:
- Jednoduché a snadno implementovatelné: Skenování tabulek je jednoduché a snadno implementovatelné a vyžaduje minimální nastavení a údržbu.
- Nízké požadavky na úložiště: Skenování tabulek vyžaduje minimální úložný prostor, protože nevyžadují další indexy.
- Flexibilita: Skenování tabulek je flexibilní a lze je použít s různými vzory dotazů a datovými typy.

2. Nevýhody:
- Pomalejší provádění dotazu: Prohledávání tabulek může být pomalejší než indexované dotazy, protože databáze potřebuje prohledat celou tabulku, aby našla požadovaná data.
- Zvýšené diskové I/O: Prohledávání tabulek může zvýšit diskové I/O operace, protože databáze potřebuje číst celou tabulku, aby našla požadovaná data.
- Snížené načítání dat: Skenování tabulek může omezit načítání dat, protože databáze potřebuje prohledat celou tabulku, aby našla požadovaná data.

Závěr

Závěrem lze říci, že volba mezi používáním indexů a prohledávání tabulek v MySQL na AWS RDS závisí na konkrétních požadavcích a omezeních vašeho prostředí. Indexy mohou zajistit rychlejší provádění dotazů a lepší načítání dat, ale vyžadují další úložný prostor a údržbu. Skenování tabulek je jednodušší a snadněji implementovatelné, ale může být pomalejší a může zvýšit diskové I/O operace.

Citace:
[1] https://techcommunity.microsoft.com/t5/sql-server-blog/index-examples-and-tradeoffs/ba-p/383126
[2] https://www.sqlservercentral.com/forums/topic/table-scan-vs-clustered-index-scan
[3] https://stackoverflow.com/questions/30094/table-scan-vs-add-index-which-is-quicker
[4] http://venkatsqlinterview.blogspot.com/2011/05/difference-between-index-scan-and-index.html
[5] https://dzone.com/articles/there-any-differences-between