2010-12-31 27 views
1

Sehr geehrte Experten. Ich habe eine Frage in Bezug auf mehrere Dateigruppen in SQL Server 2005. Ich bin überzeugt, dass unsere Datenbank sekundäre Datendateien haben sollte, aus verschiedenen Gründen wie: Aus Gründen der Verfügbarkeit ist es immer am besten, nur Systemdaten in Ihren primären Daten zu halten Datei (mit Sql2k5 und höher, solange die primäre Datendatei verfügbar ist, kann die Datenbank online gebracht werden, so dass Sie/etc. Nicht-Systemdaten reparieren/wiederherstellen können, während Sie so viel online wie möglich haben). Wenn wir trennen können aus diesem System Katalogdaten in der primären Datendatei, und legen Sie unsere Benutzerdaten in eine sekundäre Datei, die primäre Datei ist kleiner, bekommt viel weniger Updates und fügt, und damit die Chance auf Korruption durch z Ein schlechter Plattensektor wird minimiert.Mehrere Datendateien und mehrere Dateigruppen

Mein Dilemma ist, wie wir Benutzerdaten davon abhalten können, NICHT in die primäre Datendatei zu gelangen. Der einzige Weg, es mir möglich erscheint, ist wie folgt:

  • nur die Primärdaten-Datei in der Primärdateigruppe Keeping
  • Erstellen eine Secondary-Datei-Gruppe mit sekundären Datendateien und die Erstellung meiner physischen Objekte wie Tabellen/Indizes usw. für diese sekundäre Dateigruppe.

vorschlagen Also bitte:

  1. Ist es immer ratsam, eine Sekundär-Datei-Gruppe mit Sekundärdaten-Dateien zu haben und die primäre Datei-Gruppe mit nur primären Daten-Datei in ihm verlassen? Bitte schlagen Sie etwas anderes vor.
  2. Gibt es bei der obigen Konfiguration einen Leistungseinfluss für kleine Datenbanken, die weniger als 10 GB groß sind?

Vielen Dank im Voraus!

Antwort

4

Keine Trennung zwischen System- und Benutzerdaten. Es fügt nichts hinzu. Im wirklichen Leben ist entweder Ihr MDF da oder nicht. Es gibt nicht viele Grautöne.

  • Ich näherte Terabyte Größe
  • Sehr hohe Belastung
  • Mehr als eine große Tabelle (nicht:

    Was Splitting, ich würde nicht mit mehreren Dateigruppen, bis eine oder mehrere der Mühe nur eine große Tabelle)

  • Vielleicht getrennte Indizes basierend auf Last/Größe/große Tabellen

Und nur, wenn ich separa haben kann te LUNs oder RAID-Arrays für jede Datei. Sonst ist es sinnlos, weil Sie eine endliche Ressource zwischen mehreren Dateien sind Dividieren

Zusammenfassung: für die meisten Datenbanken, es ist es nicht wert

+0

Vielen Dank gbn. –

+0

Wenn Sie "große" Tabelle sagen, was meinst du? Anzahl der Reihen? Größe der Daten? Im Vergleich zur Datenbank insgesamt? Danke –

+0

> 100 GB und Milliarden von Zeilen in der Regel. – gbn