Dans mon projet (en JAVA), je dois sélectionner certaines données de DB. Si datatables n'existent pas, je l'insère et je le sélectionne à nouveau. J'ai fait deux tests:
1.SELECT-INSERT-SELECT données (150 000 lignes) à partir de la table vide.
2.SELECT-INSERT-SELECT données (150 000 lignes) de la table remplie avec 5 milion de lignes de rebut (inutilisées).
Et dans les résultats, j'ai vu que le 2ème cas était de 15% à 25% plus rapide.
Est-ce que quelqu'un peut expliquer pourquoi?
Combien de fois avez-vous exécuté ce test?
Je suppose que 1) pourrait être plus lent en raison de la croissance de la table.
Vous pouvez contrôler thsi en utilisant Utilisation de sp_spaceused
voir http://www.mssqltips.com/sqlservertip/2794/report-to-capture-table-growth-statistics-for-sql-server/
Demandez-vous la même table ou deux tables différentes dans les deux cas ci-dessus?
Si ce sont des tables différentes, je soupçonne que la deuxième table a une indexing de colonne alors que la première ne le fait pas.