Quelle est la complexité en notation O grand de l'ajout de n entrées à une base de données avec m entrées avec des index i dans MySQL et après avoir commis?Complexité d'ajout de n entrées à une base de données
Répondre
L'insertion dans une table MyISAM
sans index prend O(n)
(linéaire).
Insertion dans une table InnoDB
et en tout indice prend log(m) * O(n)
(temps linéaire en fonction du nombre de dossiers déjà existants) le temps (en supposant m >> n
), puisque InnoDB
tables et les index sont B-Trees
.
Le temps global est la somme de ces valeurs.
Cela dépend du nombre d'index que vous avez dans vos tables, entre autres facteurs.
Chaque opération dans une base de données a une complexité différente. Par exemple, la complexité de temps
pour les opérations de recherche B-Tree est O (log n), et le temps pour une recherche réelle dépend de si un balayage de table a lieu, qui est O (n).
J'imagine que vous pourriez construire une équation qui est assez complexe pour ce que vous décrivez. Vous devrez rendre compte de chaque opération individuellement, et je ne suis pas sûr que cela puisse être fait de manière déterministe, étant donné la propension des systèmes de bases de données à décider de manière ad hoc comment exécuter des choses à l'aide de plans de requête, etc ...
- 1. O (N log N) Complexité - Similaire à linéaire?
- 2. Ajustement automatique Entrées de base de données?
- 3. Comptage de plusieurs entrées dans une base de données MySQL?
- 4. Question de complexité de base - Convolution
- 5. exercice complexité de calcul
- 6. Comment INSÉRER plusieurs entrées à la fois dans une base de données MySQL
- 7. Recherche dans une base de données de plus de 3 mil. entrées
- 8. Conception de base de données concernant les entrées dynamiques - Une ligne ou plusieurs lignes?
- 9. Arborescence récursive/complexité temporelle Affectation de schéma
- 10. multiset, carte et carte de hachage complexité
- 11. Modélisation d'une relation 1 à 1..n dans la base de données
- 12. Comment trouver le top n% d'enregistrements dans une colonne d'une base de données en utilisant R
- 13. Utilisation des entrées de la base de données pour créer dynamiquement un diagramme de visio
- 14. La complexité d'une fonction
- 15. Concevoir une base de données
- 16. javascript Validation de textarea à entrées multiples
- 17. Complexité de Perl?
- 18. Supprimer N entrées les plus anciennes dans le tableau
- 19. Complexité d'une fonction donnée
- 20. Copie des données d'une table dans une base de données à une autre base de données séparée
- 21. Comment tirer des données d'une base de données à une autre base de données à l'aide sqlsqerver 2005
- 22. Comment sauvegarder une base de données à partir de ServerGrid.com?
- 23. Ajout de relations à une base de données Access
- 24. Quelques questions sur la complexité
- 25. Diviser algorithme - temps complexité
- 26. Aidez-moi à transformer ces structures de données en tables de base de données
- 27. Existe-t-il un algorithme pour rechercher un élément dans un tableau trié avec une complexité inférieure à log2 (n)
- 28. Comment ouvrir une base de données de base?
- 29. Comment modéliser une relation n-à-n en Objective-C?
- 30. Meilleure façon d'implémenter une table de correspondance plusieurs-à-plusieurs avec des données entrées par l'utilisateur
J'ai ajouté le fait que la table a des index i à la question. – Christian