sql >> Databáze >  >> RDS >> Mysql

MySQL – jak dlouho vytvořit index?

Je třeba zvážit několik faktorů:

  • Řazení je operace N.log(N).
  • Řazení pro 14 milionů řádků se může dobře vejít do hlavní paměti; řazení s 500 miliony řádků pravděpodobně ne, takže se řazení rozlije na disk, což věci enormně zpomalí.

Vzhledem k tomu, že faktor má velikost přibližně 30, nominální doba řazení pro velký soubor dat by byla řádově 50krát delší – méně než dvě hodiny. Potřebujete však 8 bajtů na datovou hodnotu a asi dalších 8 bajtů režie (to je odhad – nalaďte se na mySQL, pokud víte více o tom, co ukládá do indexu). Takže 14M × 16 ≈ 220 MB hlavní paměti. Ale 500 M × 16 ≈ 8 GB hlavní paměti. Pokud váš počítač nemá k dispozici tolik paměti (a MySQL není nakonfigurováno tak, aby ji používal), pak se velká část přelévá na disk a to představuje spoustu zbytku času.



  1. Jak se připojit k databázi Cloud SQL MySQL z App Engine?

  2. 3 způsoby, jak naformátovat číslo jako procento v PostgreSQL

  3. jak vybrat 2 tabulky takto

  4. Jak snadno importovat více souborů SQL do databáze MySQL?