Die anderen Antworten sind technisch korrekt, aber nicht korrekt. Folgendes müssen Sie dem Unternehmen fragen:
Welchen Zeithorizont strebe ich an? In Ihrem Fall suchen Sie eine 12-Monats-Nummer.
Werden wir in dieser Zeit Daten archivieren oder alle Daten behalten? In einigen Unternehmen dürfen (oder müssen) Sie nur eine bestimmte Datenmenge aufbewahren, wie in den letzten 12 Monaten. In diesem Fall müssen Sie das Datenwachstum herausfinden (das in den nachfolgenden Fragen beantwortet wird), dann aber wieder auf die letzten 12 Monate zurückgreifen. Sie können nicht einfach sagen: "Im Moment beträgt diese Datenmenge 100 GB", denn wenn Ihr Datenvolumen wächst, wachsen auch die letzten 12 Monate. Die Zeitmenge kann konstant sein, die Daten jedoch nicht.
Werden wir zusätzliche Benutzer hinzufügen? Zum Beispiel könnte das Geschäft in neue Gebiete wachsen oder neue Kunden gewinnen. Wenn sie die Benutzerbasis verdoppeln, werden in einigen Fällen auch die Daten verdoppelt.
Erwarten wir ein Wachstum des Geschäftsvolumens? Wenn Sie beispielsweise Verkäufe auf einer Website verfolgen und Super Bowl- oder Weltcup-Anzeigen schalten, kann Ihr Datenvolumen die Wachstumskurve des Hockeyschlägers beeinflussen.
Werden wir der App zusätzliche Funktionen hinzufügen? Wenn die App plötzlich Bilder speichert, wirkt sich dies dramatisch auf die Datenbankgröße aus.
Fügen wir Daten aus einer anderen Quelle hinzu oder protokollieren wir neue Daten? Wenn Sie mit der Erfassung von Website-Klicks beginnen oder in einem Data Warehouse zusätzliche Quellen hinzufügen, wächst das Datenvolumen.
Werden Entwickler oder Datenbankadministratoren Leistungsoptimierungsindizes sein? Wenn Sie zulassen, dass Benutzer Indizes erstellen, können Sie die Größe Ihrer Daten leicht verdoppeln (oder verdreifachen oder vervierfachen), je nachdem, wie übereifrig sie werden.
Und solange Sie diese Fragen stellen, sollten Sie auch fragen, ob die Leistung voraussichtlich gleich bleibt, sich verschlechtert oder besser wird. Ich mag es, das projizierte Wachstum in einem Liniendiagramm abzubilden und dann die Investitionen in Hardware und Personalschulung über denselben Zeitraum zu vergleichen.
Sie können zukünftiges Wachstum nicht genau projizieren, ohne eine Geschichte des vorherigen Wachstums. Sie können jedoch mithilfe des Sicherungsverlaufs betrügen und einen groben Trend erzielen, wie von Erin Stellato in Trending Database Growth From Backups beschrieben .
Zeichnen Sie die Ausgabe der folgenden Abfrage in Excel:
quelle
Es gibt viele Möglichkeiten, wie Sie die Datenbankkapazität planen können.
Wenn der MSDB-Sicherungsverlauf regelmäßig gekürzt wird, bleiben nicht mehr viele Daten für die Analyse übrig
Wie Mark betonte, kann dies mit der von Erin beschriebenen Methode erfolgen - Trenddatenbankwachstum aus dem Backup.
Sie können sogar PIVOT verwenden, um das Datenbankwachstum über einen Zeitraum von 12 Monaten aus dem Sicherungsverlauf wie folgt zu ermitteln:
Es gibt noch einen anderen Weg, den Sie wirklich nützlich finden werden, wie er von Chad Miller in SSC - Database Space Capacity Planning hervorragend beschrieben wurde . Er konzentriert sich auch darauf,
days remaining
was sehr nützlich ist.quelle
Es gibt andere Methoden, die mathematische Berechnungen beinhalten, und dies würde genaue Ergebnisse liefern. Wie bereits erwähnt, beziehen sich Backups am besten auf das Datenwachstum, da Sie sagten, Sie müssten die Größe der Datenbank unter Microsoft-Links berechnen und vorhersagen
Schätzen Sie die Größe der Datenbank
Schätzen Sie die Größe des Clustered Index
Schätzen Sie die Größe des Haufens
Schätzen Sie die Größe der Tabelle
quelle
Hoffe dieser Code hilft:
Funktioniert basierend auf dem Verlauf der Sicherungsgröße (in MB) und gibt Monat für Monat minimale MB, durchschnittliche MB, maximale MB und Unterschiede zu anderen Monaten in MB an.
Listet alle Datenbanken mit Sicherungen mit Ausnahme der Systemdatenbanken auf.
quelle
Ich denke, Brent Ozars Beitrag ist genau richtig. Ich war in einem massiv aufgeblähten DB-Projekt und hatte genau das gleiche Problem wie hier, und es ist einfach nicht so einfach.
Da es besser ist, zumindest etwas zu tun - auch wenn es nicht wirklich so genau ist -, würde ich die erforderlichen Tabellen und einen Job (oder eine andere gewünschte Methode, alles, um nur die Größen abzufragen und sie an einem zuverlässigen Ort zu speichern) einrichten, um sie zu verfolgen die Zeilen und den Speicherplatz, die wöchentlich für DB und alle seine Tabellen verwendet werden, und verwenden Sie diese, um die wahrscheinlichste Wachstumskurve zu projizieren. Die Verwendung des Sicherungsverlaufs ist ebenfalls eine gute Idee. Unabhängig von der Methode benötigen Sie jedoch Zeit, um auch aus der Ferne zuverlässige Daten zu erhalten.
Davon abgesehen hängt es wirklich von Ihrer Situation ab. Möglicherweise ist die Nutzung% Ihrer Datenbank nur noch ein Bruchteil der Nutzung in den nächsten 6 Monaten, beispielsweise wenn Ihre Software an Boden gewinnt, sodass es unmöglich ist, das bevorstehende explosive Wachstum vorherzusagen. Möglicherweise gibt es jährliche massive Datenübertragungen, die die Größe der Datenbank verdoppeln, aber Sie werden erst nachträglich von dieser Masse erfahren.
Aber wie gesagt, wenn Wachstum ein Problem ist, sollten Sie unbedingt etwas tun, um den Überblick zu behalten. Das Letzte, was Sie möchten, ist, sich in 6 Monaten mit einer DB zu befinden, die doppelt so massiv ist wie ihre ursprüngliche Lebensdauerprojektion, und Ihrem Kunden erklären zu müssen, wie oder warum dies passiert ist, ganz zu schweigen davon, dass Sie erraten müssen, wie viel mehr sie wachsen wird in den nächsten 6 Monaten. Es gibt auch einige sehr offensichtliche Vorteile, wenn Sie wissen, wohin die neuen Daten gegangen sind und wie das relative Wachstum jeder Tabelle in einem bestimmten Zeitraum ist, da sie mit relativ geringem Aufwand wertvolle Informationen zu verschiedenen Trends, potenziellen Softwareproblemen usw. liefern können .
quelle