Combien de lignes de données sont trop nombreuses lignes de données?
Est-il une règle dure et rapide sur la façon de grand est trop grand pour une table SQL?
Nous sommes le stockage de SCORM données de suivi dans une paire nom/valeur de format et il pourrait être n'importe où de 4 à 12 lignes par utilisateur et par cours, en bas de la route est-ce que ça va être une mauvaise chose car il y a des centaines de cours et des milliers d'utilisateurs?
OriginalL'auteur BigOmega | 2009-03-18
Vous devez vous connecter pour publier un commentaire.
J'ai personnellement eu des tables dans la production de 50 millions de lignes, et c'est faible par rapport à celles que j'ai entendu. Vous pourriez avoir besoin pour optimiser votre structure avec le partitionnement, mais jusqu'à ce que le test de votre système dans votre environnement, vous ne devriez pas perdre de temps à le faire. Ce que vous avez décrit est assez petite, à mon humble avis
Devrais-je ajouter, j'ai été à l'aide de SQL Server 2000 & 2005, chaque SGBD a ses propres limitations de taille.
J'ai travaillé sur un téraoctet de taille moyenne DB SQL 2008...comme pour pourquoi Wikipédia a besoin de 400 serveurs....Je parie qu'ils peuvent servir un article très rapide à partir d'un serveur, mais ils ne servent pas d'une page d'un utilisateur à un moment, ils probally ont des milliers d'utilisateurs l'accès aux pages.
Merci Josh Pour répondre à mon commentaire . Cela m'aide, et Vous êtes tellement utile
OriginalL'auteur JoshBerke
Le nombre magique est des milliards. Jusqu'à ce que vous obtenez des milliards de lignes de données, vous ne parlez pas beaucoup de données.
De faire le calcul.
De 4 à 12 lignes par utilisateur et par cours,... des centaines de cours et des milliers d'utilisateurs?
De 400 000 à 1 200 000 lignes. Supposons 1000 octets par ligne.
Qui est de 400 à 1,2 Go de données. Vous pouvez acheter des disques de 100 go pour 299 $sur l'Apple store. Vous pouvez facilement dépenser plus de $299 de temps facturable de la transpiration sur des détails qui ne sont pas beaucoup plus d'importance.
Jusqu'à 1 to de données (1000 Go), vous ne parlez pas beaucoup de données.
100 go de disque pour 299$? Peut-être il y a 5 ans! Aujourd'hui, vous pouvez obtenir 1 to+ 100$!
Ouais, mais il a dit "à l'Apple store". Vous pouvez à peine obtenir une souris pour moins de 100$.
Le point est que glorieusement cher de stockage n'est pas cher. Stockage bon marché est vraiment pas cher. Essorage plus de stockage est un gaspillage d'argent.
OriginalL'auteur S.Lott
100 (cours) * 1000 (utilisateurs) * 10 (enregistrements) est seulement un million de dollars. C'est le bas de gamme, mais un décent base de données devrait gérer ça d'accord.
Ce qui semble douteux sont des paires Nom/Valeur. Qui limite votre capacité à correctement indice de choses, ce qui sera essentiel pour obtenir de bons résultats.
OriginalL'auteur Joel Coehoorn
Aucune règle dure et rapide, mais il est un dur et rapide de façon à obtenir un nombre.
Écrire un programme pour remplir le tableau avec les données factices environ rapprochant de la forme attendue des données réelles (par exemple, similaire à la régularité, des personnages, des schémas, etc.) Exécuter des tests de performance contre elle en utilisant des requêtes avec le mannequin de données, en augmentant progressivement le nombre de lignes dans la table, peut-être, par pas de 1000 ou 10000 lignes.
À la crête de lorsque les performances de la requête (par exemple, les requêtes complété par seconde) devient inacceptable, vous aurez votre "trop grand" nombre de lignes.
+1 Belle astuce.
OriginalL'auteur Triynko
Une fois, j'ai travaillé sur un formulaire web le système avec plus de 300 millions de lignes dans leur paire nom/valeur de la table. Nombre de formulaires plus de 300 lignes par la soumission d'un formulaire. La Performance n'était pas trop mal fait, mais c'était un pain PITA à la requête de! Mon sql capacité d'écriture nettement amélioré au cours de la vie de ce concert.
Mais à mon humble avis, si vous avez quelque chose à dire se débarrasser de lui à la faveur d'un standard normalisé table.
OriginalL'auteur John MacIntyre
Pas vraiment. Tout dépend des besoins de votre entreprise, et vous aurez à acheter le produit qui prend en charge votre estimation du nombre de lignes.
OriginalL'auteur Otávio Décio
Non, il n'y a pas vraiment de règle sur le nombre de lignes que vous pouvez avoir dans un tableau, ça dépend beaucoup de la quantité de données, il est dans les lignes, et la façon dont les données peuvent être indexées.
Une estimation rapide sur les chiffres que vous avez déclaré donne quelque chose comme des dizaines de millions de lignes. Ce n'est certainement pas trop, mais c'est assez pour que ça pourrait être un problème si vous n'êtes pas un peu attention.
Peut-être, le tableau pourrait être normalisées? Le même nom se produire beaucoup, de sorte que vous pouvez mettre les noms dans un tableau distinct et utiliser l'id dans la table?
OriginalL'auteur Guffa
Je ne pense pas qu'il y est vraiment une limite ici, mais de l'espace disque. MAIS s'il vous PLAÎT ajouter les bons indices, tandis que son petit, parce que quand la table est énorme index va prendre beaucoup plus de temps à ajouter. De Plus, si vous avez mal à l'index des interrogations de ralentir comme il gorws et les gens vont se plaindre quand il n'y a vraiment rien de mal, mais une merde à pas d'index.
OriginalL'auteur Jojo
J'ai travaillé sur des bases de données, où nous avons essayé de créer des tables avec 2B lignes de données - qui ne fonctionne pas, nous sommes arrivés à 500 m et le re-conçu. L'un des plus grands pièges de travailler avec une grande table a le temps de faire les suppressions, je vois souvent l'approche où les anciens enregistrements sont archivés, puis supprimé de la table principale. Si la table est assez grande, que la suppression sera exécuté pour le nombre d'heures que les index sont reconstruits.
Vous ne savez pas où la coupure est mais l'instinct indique une table > 10M lignes est probablement trop gros. Notre approche a été de partition de données par jour, donc nous nous sommes retrouvés avec une table pour une semaine de données, et un autre tableau récapitulatif par mois, et un autre résumé depuis des années - très commun dans DataWarehousing. BTW c'était SQL 7.0, intéressés à savoir si les DB sont mieux à ce type de choses encore?
Les deux bases de données Mysql et Sql Server a une partition trop.
OriginalL'auteur MrTelly
Votre question invites plus de questions que de réponses.
J'ai construit quelques bases de données stockant des données SCORM, et je n'ai jamais eu à aller avec un tag/système de valeur, comme vous le suggérez.
Une chose que vous voulez vous rappeler est bien ce n'est pas le nombre de lignes dans le tableau, sa TAILLE (en octets) de la table. Tout simplement:
tableau de taille = taille de la ligne (avg) * nombre de lignes
La question à poser est: "quelle est la table est trop gros"?
OriginalL'auteur Bret Weinraub