Combien coûte l'appel de executeFetchRequest sur le managedObjectContext? Cela dépend-il de la taille de l'ensemble de données? Est-ce quelque chose qui peut être fait souvent ou devrait être évité autant que possible?Combien coûte l'exécution de la requête de récupération dans les données de base?
Répondre
C'est relativement cher. Chaque extraction que vous exécutez implique un aller-retour du contexte à travers le modèle vers le magasin persistant, ce qui implique un accès au fichier. Au mieux, votre recherche sera aussi lente que l'accès au fichier du magasin. Dans certains cas (en particulier en cherchant de gros BLOB binaires), il sera considérablement plus lent. Aller chercher avec précaution. Toutefois, rappelez-vous qu'un chargement n'est pas aussi cher que le déclenchement d'un défaut. Vous devriez vous inquiéter plus sur le déclenchement des défauts pour accéder aux données que vous devriez faire des extractions supplémentaires. En outre, l'exécution d'un ou de plusieurs extractions de grande taille est considérablement moins coûteuse que l'exécution de plusieurs petites extractions (un peu comme accéder à un gros fichier est plus facile que d'accéder à une centaine de petites). La meilleure politique est d'essayer d'anticiper lors de la conception de votre application quelles données seront nécessaires, puis de la récupérer en une fois ou en quelques grandes récupérations et de la mettre en cache aussi longtemps que possible.
Comme pour la plupart des choses, la pré-optimisation n'est jamais une bonne chose. S'en sortir est rarement le goulot d'étranglement pour une application et quand il est, il apparaîtra très rapidement.
En général, je ne me préoccupe pas de la performance des extractions, ni même de la défaillance, jusqu'à ce que je remarque un problème de performance. Ensuite, il est temps pour les optimisations.
Jusqu'à ce que vous ayez assemblé l'application et que vous exécutiez des données sur le matériel réel, il est assez difficile, et généralement inutile, de deviner l'emplacement des goulots d'étranglement. Construire, tester et observer.
- 1. Combien coûte reloadData de UITableView?
- 2. C# Combien coûte Directory.Exists
- 3. Combien coûte le binaire de collage (list_to_binary)?
- 4. Récupération HyperSQL Base de données
- 5. Récupération de caractères corrompus dans la base de données
- 6. Combien coûte l'ajout d'un élément à ItemControl?
- 7. Combien coûte-t-il de créer un nouveau UIWebView?
- 8. Récupération de la base de données de MySQL vers SQLite
- 9. Combien coûte une application en ce qui concerne les clés dans un fichier de configuration?
- 10. Base de données: Pagination SQL - Combien de pages?
- 11. Android: Récupération des données de la question de la base de données
- 12. Polymorphisme avec requête de base de données
- 13. Requête de données de base pour iPhone
- 14. Récupération de données
- 15. Formulaire HTML/requête de base de données
- 16. Emplacement du fichier de base de données SQL physique (récupération)?
- 17. Stocke les données de datagrid dans la base de données
- 18. Récupération de la valeur du cookie et stockage dans la base de données
- 19. Mise en cache des objets ASP.NET - combien coûte trop?
- 20. sortie incorrect pour la requête de base de données SQL
- 21. Question d'héritage - récupération des données du fichier de base de données Access et de SQL Express
- 22. Convertir ou convertir lors de la récupération des données d'une base de données?
- 23. Relations indexées dans les données de base
- 24. Gestion des données de hiérarchie dans la base de données
- 25. Récupération des commentaires d'une base de données PostgreSQL
- 26. Insérer dans la base de données oracle
- 27. Récupération d'une valeur NULL de la base de données et affectation à une variable de date
- 28. Récupération de la base de données MySql à partir de l'application Cocoa - Mise en pont PHP
- 29. Comment puis-je savoir de combien d'espace j'ai besoin pour la base de données mysql
- 30. Dans la base de données de mémoire