Bonjour,
J'ai l'intention de recycler mes plusieurs PC à mon domicile pour me servir de serveurs de bases de données dans le cadre d'un moteur de recherche amateur thématique (je me decide toujours pas de quoi traité lol). Je code activement mon premier crawler en C depuis quelques semaines.
Ma base de données volumineuse qu'elle sera, sera stoquer dans plusieurs PC dont la capacité des disques dur va de 400Mo à 20Go, le tout sera coordonnées (pour triés les résultats envoyer par les bases de données) par un programme directement implanter sur le serveur du site web en utilisant les sockets pour joindre les bases de données.
Je suis contraint a me décider entre deux logiciels : MySQL ou SQLite.
Voici mes questions:
- Je souhaite savoir quels sont les grandes différences entre ces deux bases de données (taille, développement, fréquence des mises a jours...) ?
- Lequel de ces deux logiciels est le plus fiable/stable et le plus rapide ?
- Vu que je ne me suis jamais servit de SQLite je voudrais par ailleur savoir si vous avez rencontrer des problemes ou des difficultés diverses.
- SQLite OK pour stoquer jusqu'a 20Go sur une base ?
Merci d'avance.
# MySQL ou SQLite pour grosse base de données ?
Posté par Sebastian . Évalué à 1.
Personnelement je laisserai tomber l'utilisation de SQLite.
Bien que très pratique pour des applications Web->Php, très rapide lorsqu'il sagit de petits scripts.
Mais si tu t'attaques à un projet d'une telle envergure, SQLite ne te sera pas bien bénéfique.
A toi de voir.
Tu peux toujours tester, mais je crois que tu perdras du temps.
Voilà mon avis en tout cas ;)
A bientôt
# Logique...
Posté par Anonyme . Évalué à 3.
Du coup, la reponse a ta question est tout naturellement: MySQL
Par contre, pour quoi se focaliser sur MySQL et ignorer PostGreSQL ?
[^] # Re: Logique...
Posté par juki . Évalué à 1.
Merci a vous deux de m'avoir repondut.
PostGreSQL : Pourqoui pas?! si il est est assez rapide pour ce genre de projet, mais je ne le l'ait jamais utiliser.
# Ca depend
Posté par Ph Husson (site web personnel) . Évalué à 2.
Si c'est pour un acces avec plusieurs clients alors c'est pas sqlite (pourquoi pas mysql plutot que postgresql?)
Sinon juste un client en écriture et plusieurs en lecture(en lecture faut faire gaf avec le vérouillage de tables) ca pourait pourquoi pas aller
SI la table est bien faite (index tel que meme sur les 20giga il trouve en moins de 5s quoi) ca devrait aller
Enfin bon amuse toi bien :p
# elements de réponse
Posté par Mouns (site web personnel) . Évalué à 2.
( http://www.ietf.org/rfc/rfc1925.txt(...) ), je te pose qq questions betes :
sais tu ce qu'est une base de données ?
sais tu ce qu'est une base relationnelle ?
la necessité d'user de la 6ieme forme normale dans ton cas ?
En clair, ta problématique se pose essentiellement dans une approche de d'ensemble de clés multivaluées avec une dependance temporelle forte ( dite dependance de jointure temporelle ).
A partir de là, SQLite, MySQL, PostgreSQL ne sont pas les outils qu'il te faut puisque tu as un surcout excessif lié à la grammaire "naturelle" de SQL, et aux limitations inhérentes au SQL.
vu que ta problematique est sur des ensembles et donc est exprimable dans une certaine mesure avec une algebre relationnelle mais avec des ensembles tres precis de clé/valeurs, il me semble preferable de se tourner sur des berkeleydb pour t'entrainer, puis passer sur du cdb ( de D.J. Bernstein ) et des sparsehashes ( https://sourceforge.net/projects/goog-sparsehash/(...) ).
mais cela c'est si seulement, tu veux de la rapidité serieuse , pas du Buzz techno-marketing autour de la puissance des bases SQL ( je glisse discretement une remarque sur nombre de personnes qui arguent sur le fait que le compilé est plus rapide que l'interprété, et qui a coté vantent les mérites de SQL qui lui est sur-interprété ).
[^] # Re: elements de réponse
Posté par Ph Husson (site web personnel) . Évalué à 1.
tu as un surcout excessif lié à la grammaire "naturelle" de SQL, et aux limitations inhérentes au SQL.
En dehors du fait que c'est interprété (partiellement faux cf plus loin)quels sont les inconvenients?
et qui a coté vantent les mérites de SQL qui lui est sur-interprété
Oui mais non
Un certain nombre (bon au moins sqlite apres j'en sais rien) de base de données supportent la compilation des requete, alors evidement faut compiler au moins une fois à chaque execution (du programme pas de la requete hein), mais bon c'est un surcout négligeable
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.