Rechercher : dans
Par :

Stockage: fichier ou base de donnée ?

Dernière réponse le 2 jun 2009 à 15:54:57 kelsett, le 1 jun 2009 à 20:31:13 
 Signaler ce message aux modérateurs

Bonjour,
J'ai une question :)

Est ce que vous pourriez me dire qu'est ce qui est le mieux entre le stockage par fichier ou par base de donnée ? Si possible avec des arguments, rapidité/pompage de bande passante/etc ?

J'ai essayé les deux mais mes sites sont pas assez gros pour vraiment comparer les deux systèmes...

Configuration: Carte Mère : Asus Maximus Formula SE chipset X38
Mémoire Vive : Crucial Ballistic 2x1 Go PC8500 CAS 4-4-4-12
Processeur : Intel Core 2 Quad Q6600 @ 3.5GHz
Carte Graphique : MSI GeForce 8800 Ultra OC Supercloaked
Disque Dur : Seagate Barracuda 500 Go - 32Mo

Meilleures réponses pour « Stockage: fichier ou base de donnée ? » dans :
[Organisation] Créer une base de connaissances VoirLe but d'une base de connaissances est de modéliser et stocker de manière informatique un ensemble de connaissances, idées, concepts ou données et de permettre leur consultation/utilisation. Il existe plusieurs méthodes et logiciels différents pour...
Oracle - Informations sur la taille de la base de données VoirEn général la taille de la base de données est définie comme total de la taille des fichiers de données. Le code permet d'aider à gérer l'espace au niveau de la base de données. In general the size of the database is defined as total size of the...
Sauvegarde de la base de données gérée par l’utilisateur Voir1. Interroger des vues pour obtenir des informations sur les fichiers de base de données Utilisez la vue V$DATAFILE pour obtenir la liste des noms et des états de tous les fichiers de données Utilisez la vue V$CONTROLFILE pour afficher tous les...
Bases de données - Utilisation de formulaires VoirUtilisation de formulaires Afin d'exploiter les bases de données, il faut fournir une interface à l'utilisateur lui permettant de visualiser des données en fonction de certains critères. Pour cela il existe un outil : les formulaires. Un formulaire...
Administrateur de bases de données VoirAdministrateur de bases de données L'administrateur de bases de données (parfois appelé responsable de bases de données ou en anglais database administrator, noté DBA) est chargé du maintien et de l'évolution des bases de données constituant le...
Microsoft Windows - La base de registre VoirQu'est-ce que la base de registres Dans la version 3.1 de Microsoft Windows, les applications installées étaient configurées vis-à-vis de Windows grâce à des fichiers de configuration (dont l'extension était .ini). D'autre part, deux fichiers de...

1

raylcool, le 1 jun 2009 à 20:35:23

C'est du stockage de texte ?

Répondre à raylcool

2

kelsett, le 1 jun 2009 à 20:37:35

Oui, par exemple pour stocker les news d'un site.

Répondre à kelsett

3

raylcool, le 1 jun 2009 à 20:38:15

Fait du stockage par base de données alors, ce sera plus rapideà mon avis.

Répondre à raylcool

4

kelsett, le 1 jun 2009 à 20:42:25

J'aimerai bien parce que c'est plus facile à écrire :) mais je me demande quand même s'il le fait de devoir se connecter à la base de donnée puis envoyer les instructions puis attendre de recevoir c'est pas plus long que de juste récupérer un fichier texte et séparer les valeurs... D'autres avis ?

Répondre à kelsett

5

le_boss, le 1 jun 2009 à 21:02:55
  • +1

A mon avis, pour une telle utilisation, la différence sera complètement invisible.

Je penche malgré tout pour l'utilisation de la base de données... ça donne d'autres possibilités pour l'avenir, si tu veux aller plus loin (requêtes, etc), et selon le nombre de données parallèles à tes news (date, auteur, etc) c'est bien plus pratique à exploiter via une base de données que par un fichier texte (après tout, la base de données est faite pour ça... tandis que le fichier texte, c'est pas l'utilisation première).

Répondre à le_boss

6

benvii, le 1 jun 2009 à 21:10:13

Moi j'utilise des petits fichiers text :
* un fichier contenant la dernière id
* et un fichier par news (exemple $id.news)

Le seul problème c'est que tu ne peux pas faire des recherches comme dans une bdd. Sinon je pense que c'est plus rapide car tu vas directement chercher la news qu'il te faut en local (sur le même serveur), à la place de contacter un autre serveur qui fait office de bdd. Benvii

Répondre à benvii

7

le_boss, le 1 jun 2009 à 21:20:11

Je crois pas que ce soit très courant que la base de données soit sur un autre serveur, pour ce genre de sites en tout cas...

cela dit, je répète... même si il y a une différence de vitesse entre les deux, ce sera tellement infime qu'on ne verra pas la différence.

Répondre à le_boss

8

raylcool, le 1 jun 2009 à 21:20:59

Ouais franchement le plus simple est la base de donnée, il ne faut pas se poser de questions à mon avis.

Répondre à raylcool

9

PhP, le 1 jun 2009 à 21:29:00
  • +2

Bsr

Fichier vs BD ?

je dirais la bd : certe pour les très petits volumes elle peut paraître disproportionner et son emploi sera peut être plus lent qu'avec un fichier encore que les bd sont tellement optimisées ! Par contre dès que le nombre de fichiers augmente il est clair qu'elle devient incontournable.

Une base de données permet :
de gèrer des petits volumes de données mais aussi de monter en puissance
d'administrer, de modifier facilement la structure des données
d'indexer donc de faire des tris et des recherches rapidement
de gèrer les accès concurrentiels, les transactions, les contraintes, l'intégrité des données
Accès via un langage normalisé : SQL

Par contre elle ne se prête pas à toutes les structures de données c'est sûr : les arborescences, les graphes ... pas vraiment génial avec les bd
les images, les sons et plus généralement tout les documents volumineux c'est pas son truc non plus même si les types de champs BLOB existent.
les objets utilisés en POO non plus du moins pour les SGBDR classiques
PhP  
Il y a 10 types de personnes dans le monde : ceux qui compre­nnent le binaire et les autres ...

Répondre à PhP

11

kelsett, le 1 jun 2009 à 21:37:39

*j'avais pas vu ton message, mais pour te répondre : *

justement, j'utilise qu'un seul fichier pour stocker les news, du type :

id|auteur|date|resumé|news|etc
id|auteur|date|resumé|news|etc
id|auteur|date|resumé|news|etc
id|auteur|date|resumé|news|etc


donc pas de contrainte de ce coté là, je n'ai pas besoin de plus d'un fichier.

Répondre à kelsett

12

PhP, le 1 jun 2009 à 21:46:19

Oui avec un fichier de news ça passe encore :-)

Mais que se passe-t-il lorsque 2 utilisateurs postent une new en même temps ?

Tu me diras la probabilité que ça arrive est faible ... cependant d'après un certain Murphy lol

PhP  
Il y a 10 types de personnes dans le monde : ceux qui compre­nnent le binaire et les autres ...

Répondre à PhP

13

raylcool, le 1 jun 2009 à 21:49:36

Les connexions simultanées sont prévus par les hébergeurs normalement et sont parfois limitées, moi pour mon site je suis chez ovh et je dois être limité à 10 mais c'est énorme pour l'utilisation que j'en ai. Un site comme commentçamarche.net doit avoir un hébergeur qui lui permet d'avoir beaucoup plus de connexions simultanées.

Répondre à raylcool

14

kelsett, le 1 jun 2009 à 21:54:11

Pas envie de savoir, Murphy c'est plus quelqu'un à connaitre depuis que j'ai découvert que la probabilité que ma tartine tombe du coté de la confiture est directement proportionnelle à la valeur du tapis qui est en dessous xD

Mais sérieusement, ca prend combien de temps au serveur d'ajouter 800 caractères dans un fichier... 1 millième de seconde ? Moins ? On est quoi 10 utilisateurs à tout casser, à écrire peut être 3-4 news chacun/jour au meilleur des cas, combien y a de chance qu'un accident comme ca arrive? ^^

Répondre à kelsett

15

raylcool, le 1 jun 2009 à 21:56:18

Pour info, pour la tartine ça ne dépend que de la hauteur de ta table et rien d'autre, tu n'as qu'a essayer tu verras. Il n'y a pas de question de poids de la confiture c'est une connerie. ^^

Répondre à raylcool

18

PhP, le 1 jun 2009 à 22:04:05
  • +1

Si le sol est propre et sec alors la tartine elle décide toujours de tomber côté confiture

si le sol comporte une flaque d'eau (à cet endroit comme un fait exprès et pas à un autre) alors elle peut également décider de tomber côté biscotte/pain

lol


PhP  
Il y a 10 types de personnes dans le monde : ceux qui compre­nnent le binaire et les autres ...

Répondre à PhP

19

raylcool, le 1 jun 2009 à 22:05:00

MDR tu as raison ^^

Répondre à raylcool

20

 pyschopathe, le 2 jun 2009 à 15:54:57

Les accès disques sont relativement long, un accès au fichier prendra donc plusieurs millisecondes.

Dans le cas de ton site avec tes quelques news et tes quelques utilisateurs, des fichiers seront tout à fait appropriés. Et dans le pire des cas si deux personnes postent en même temps, vous aurez des données inconsistantes, ce qui ne semble pas être critique pour ton appli.

Par contre, si ton site est amené à grossir ou à gagner en fonctionnalités (autres que poster/afficher les posts dans l'ordre du fichier), tu gagnerais à utiliser directement une BD.

Répondre à pyschopathe

10

kelsett, le 1 jun 2009 à 21:34:14

En fait c'est parce que récemment j'ai eu à créer un site où il me fallait un système de news assez puissant, et honte à moi j'ai eu la flemme de le faire moi même, et j'ai utilisé CuteNews, qui utilise justement un fichier texte avec toutes les news dedans, et depuis j'ai fait deux-trois autres sites en utilisant des fichiers textes pour m'entrainer un peu parce que jusqu'alors j'avais utilisé que les bases de données, mais donc voilà au final je me posais la question. (==> benvii : tu devrai utiliser, comme cutenews, qu'un seul fichier texte ce qui te permettrai justement de faire des recherches...).

Répondre à kelsett

16

arthezius, le 1 jun 2009 à 21:56:43

Je pense quand même qu'en terme de maniabilité il vaut mieux prendre un base de donnée.
Rien que pour par exemple faire des modifs d'une donnée précise, faire des cherches, etc... « La recherche commence là où s'arrête la connaissance. »

Répondre à arthezius

17

raylcool, le 1 jun 2009 à 21:57:59

C'est clair il n'y a pas photo !!!

Répondre à raylcool
Collection CommentÇaMarche.net