2010-11-19 5 views
1

J'écris une application web qui a besoin de stocker les données envoyées par un client, attendre que l'autre client le demande et le lise (sur de petits intervalles, comme 3 ou 4 secondes), puis supprimer ces données. Actuellement je suis en train de sauvegarder ces données dans des fichiers plats, mais je voudrais savoir s'il serait plus efficace de les écrire dans une base de données.Lors du stockage de petites données sur le côté serveur, quoi de plus efficace, DDBB ou fichiers?

Je sais qu'il est généralement plus efficace d'utiliser une base de données, mais dans ce cas je vais essayer de traiter beaucoup de demandes avec de petites quantités de données.

Merci à l'avance et désolé pour mon anglais :)

+0

C'est en fait une question très intéressante. Je suppose que votre meilleur pari serait de construire dans les deux sens et de tester le stress, mais je suis intéressé de voir ce que les autres fournissent des réponses. (Et votre anglais est bon) – David

Répondre

0

Je suis d'accord avec le commentaire de David ci-dessus. La question est de savoir combien d'E/S allez-vous engager pour chaque lecture/écriture. Cela peut être affecté par beaucoup de facteurs. Je suppose que l'option de fichier plat sera la plus rapide, surtout si votre base de données est sur un serveur distant et que les données doivent être envoyées sur votre réseau interne pour les lire et les écrire.

Selon la quantité de données que vous avez et le nombre de requêtes traitées, les E/S les plus rapides consisteraient à conserver les données en mémoire. Bien sûr, ce n'est pas très tolérant aux pannes - mais c'est aussi une autre considération. La base de données vous fournirait une meilleure intégrité (sur l'utilisation de fichiers plats) en cas d'échec - mais si ce n'est pas le cas, vous voudrez peut-être le garder en mémoire.

+0

Merci pour vos réponses, j'utilise django en ce moment, je vais essayer de configurer memcached pour conserver les données en mémoire en utilisant le système de cache django. Je suis un programmeur relativement noob, donc je ne sais pas si tout ira bien. – Nacho

Questions connexes