supposons que j'ai une table qui stocke 100 millions d'enregistrements de chaînes de tailles variables jusqu'à 20 caractères dans un champ de colonne. J'ai besoin d'indexer cette colonne, j'ai seulement une machine 2Go-Ram, est-ce suffisant pour effectuer une telle tâche? Est-ce que le moteur db mysql est recommandé pour le stockage?l'index de base de données et l'utilisation de la mémoire
Répondre
Si vous avez 2 Go de mémoire principale, alors oui, vous devriez pouvoir créer l'index sans aucun problème; La mémoire virtuelle est une chose merveilleuse, et le SGBD peut très bien faire en sorte de déverser des données sur le disque au fur et à mesure.
Si vous avez seulement 2 Go d'espace disque, vous n'avez pas assez d'espace pour les données et l'index.
À la surprise de personne ne, il est 2 Go de mémoire principale, et non 2 Go de disque (ce commentaire a été principalement en plaisantant - mais ces jours-ci, si quelqu'un dit 256 Go, on ne sait pas si elles font référence à l'espace disque ou à la mémoire principale, ce pourrait être soit).
Oui, si le SGBD ne peut pas créer l'index dans cette contrainte, il n'est pas digne d'être appelé SGBD.
MySQL peut probablement faire le travail. Ce n'est pas ce que je recommanderais, mais je suis très motivé dans ce domaine parce que je suis l'un des développeurs d'un SGBD alternatif (commercial). Nous n'avons pas assez d'informations sur votre budget, etc. pour pouvoir vous conseiller de manière fiable.
Si vous avez 2 Go d'espace disque, vous devriez probablement perdre la boîte X-) –
2 Go de mémoire principale
Les bases de données sont généralement conçues d'une manière qui leur permet de travailler avec plus de données que vous avez de RAM disponible. Le fait de lui donner plus de mémoire de travail accélérera les choses, mais il devrait être capable de construire l'index et d'y effectuer des recherches.
- 1. Dans la base de données de mémoire
- 2. Mémoire de fuites de données de base?
- 3. Supprimer uniquement de la mémoire et non de la base de données
- 4. Base de données HSQL 100% en mémoire
- 5. Gestion de la mémoire lors de l'utilisation de la base de données sqlite dans l'iphone
- 6. données de base iphone executeFetchRequest problème de mémoire
- 7. Photos et Base de données
- 8. Alternative au TimesTen dans la base de données de la mémoire
- 9. iPhone et données de base
- 10. Comment limiter les ressources de mémoire globales de la base de données Oracle 10g
- 11. Enregistrement sur disque d'une base de données en mémoire
- 12. transactions de base de données et threads
- 13. .NET et couches de base de données
- 14. ORM et index de base de données
- 15. Charge-t-il les données de la base de données?
- 16. base de données relationnelle et la structure de réseau
- 17. Modifications de la base de données et branchement VCS
- 18. Services de domaine et communication avec la base de données
- 19. Comet, responseText et utilisation de la mémoire
- 20. Chargement des tables de base de données en lecture seule dans la mémoire
- 21. Copier la base de données de la base de données Mysql
- 22. structure de la base de données
- 23. Meilleure façon de synchroniser la base de données client avec la base de données du serveur
- 24. Restauration de la base de données
- 25. comment se connecter et insérer et récupérer des données de la base de données?
- 26. Chargement de la base de données iPhone
- 27. Base de données de la banlieue britannique
- 28. Comparer et modifier Modifier la capture de données et la notification de modification de base de données
- 29. nom de la base de données variable
- 30. Sécurité de la base de données
Avez-vous une contrainte de temps? –
Voulez-vous dire suffisant pour construire l'index en premier lieu, ou pour utiliser l'index pour faire des requêtes? – leonm
@Remus: la contrainte de temps est lâche, pas plus de 24 heures @leonm: Je veux dire les deux – user157195