2012-10-27 7 views
0

Je suis à la recherche d'un logiciel de base de données où je peux stocker 1TB + données.
La taille moyenne d'une ligne va être de 5 Ko.
Je fais mes devoirs à ce sujet pour le mois passé et j'ai présélectionné deux logiciels:Logiciel de base de données pour stocker des données 1TB

  1. SQLite
  2. MySQL MyISAM

Essentiellement, la base de données ne doit pas utiliser trop de données supplémentaires pour stocker les lignes et il doit être conforme ACID.
Je suis ouvert à toute autre suggestion de logiciel DB.
L'application que je prévois d'utiliser ne comportera qu'une seule connexion simultanée. SQLite est bon et répond aux exigences sauf que, lorsque vous supprimez un ROW, il ne supprime pas les données du fichier et conserve les ressources libérées jusqu'à ce que les données soient remplacées par de nouvelles données. Il faut utiliser VACUUM pour nettoyer les ressources gratuites qui peuvent prendre beaucoup de temps et de ressources. SQLite est également très efficace pour stocker les données par rapport à sa taille. Il n'ajoute pas beaucoup de données au contenu. SQLite ne permet pas non plus de séparer le fichier INDEX afin qu'il puisse être placé sur un SSD pour des recherches plus rapides. MySQL MyISAM est bon et il est également très efficace pour stocker les données et n'ajoute pas de contenu. Mais MyISAM n'est pas conforme à l'ACID et peut entraîner une perte de données en cas de panne de courant, etc. INNODB n'est pas efficace pour stocker les données et les données supplémentaires qu'il ajoute pour stocker chaque ligne est assez élevée par rapport à MyISAM.

Y at-il un logiciel de base de données gratuit qui surmonte ces contraintes ou c'est la meilleure option que j'ai?

+1

"innodb .. n'est pas efficace ..." - comparé à quoi? – ethrbunny

+0

@ethrbunny semble avoir lu FUD 10 ans. – bobwienholt

+0

L'efficacité du stockage sur disque est-elle vraiment votre principale préoccupation lors de la sélection d'un moteur de base de données? Je n'ai pas vu cela comme une préoccupation puisque les disques durs coûtent un dollar par mégaoctet ... –

Répondre

3

Vous devriez vous demander comment vous allez utiliser ces données. 1 To est grand, mais gérable, mais la question est de savoir comment ces données vont être stockées. Est-ce une table unique ou une structure relationnelle? Y a-t-il une structure quelconque, ou en profites-tu davantage d'une base de données comme MongoDB qui permet essentiellement de stocker des objets.

Le nombre de lectures par rapport au nombre d'écritures, ce sont des chiffres qui sont plus importants.

Je pense que vous vous concentrez trop sur la taille de l'overhead. Un couple de Go supplémentaires ne vous coûtera pas, mais migrer vers une base de données différente parce que vous avez fait le mauvais choix.

+0

C'est une structure relationnelle. MongoDB prend 2-3 fois la quantité d'espace pour stocker des données. Je suis d'accord avec le point de frais généraux, mais j'étais juste curieux de savoir s'il existe un meilleur logiciel. Il y aura des écritures plus souvent ainsi que des lectures. – user1066991

Questions connexes