Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage zur Performanz fragmentierter MS SQL 2000 Datenbanken im Hauptspeicher

Frage Entwicklung Datenbanken

Mitglied: SirAliks

SirAliks (Level 1) - Jetzt verbinden

05.06.2012 um 17:37 Uhr, 2652 Aufrufe, 2 Kommentare

Hallo Zusammen,
wir planen gerade ein SQL Server Hardware Update und haben 2 Datenbanken á 20GB auf einem Windows 2003 Server mit MS SQL 2000 Enterprise. Die DB macht täglich viele Änderungen mit, was sich auch auf die Fragmentierung der Indizes auswirkt.

Problemstellung:
Wir haben auf dem neuen System 8 Kerne,Samsung 830 SSDs und 64GB schnellen DDR3 Ram zur Verfügung. Die beiden DBs nehmen insgesamt ~40 GB vom RAM in Anspruch wenn sie komplett hineingeladen werden. Soweit so gut.
Die DBs wurden bisher mit ddbc shrinkdatabase nach dem ddbc dbreindex der Tabellen von 35GB auf 20GB geschrumpft,aus Mangel an Platz auf dem Server bisher. (Wir wissen, dass das Shrinken das Reindexieren quasi zu nichte macht.)

Die Datenbanken haben je 35GB nach dem DBREINDEX und passen somit nicht mehr in den RAM von max 64GB.
Das die DBs komplett im RAM liegen können war eines unserer Primärziele.

Nun ist die Frage die wir uns stellen:
Ist es Performanztechnisch optimaler die DBs nicht mehr zu shrinken und die logische Fragmentierung der Indizes damit auf 0% zu bekommen? Was dann aber zur Folge hätte,dass die DBs nicht mehr in den RAM passen und wir mehr Disk I/Os haben.

oder

Ist es besser die DBs weiterhin mit DBREINDEX und folgendem shrink komplett in den RAM zu bekommen, um so die schnellen RAM Zugriffszeiten auszureizen. (Die log. Fragmentierung der Tabellen nach dem shrink beträgt immer über 60%.)


Ich lese mich gerade in die Speicher- und Dateiverwaltung vom SQL Server ein, wäre aber über jeden kompetenten Ratschlag, Hinweis oder Literaturverweis dankbar!


lg

Alikz
Mitglied: chfr77
06.06.2012 um 09:36 Uhr
Ich würde empfehlen nicht so billige SSD's zu nehmen und über ein Upgrade auf zumindest SQL 2005 nachzudenken. Das die DBs komplett im RAM sein müssen versteh ich nicht. Wenn das aber eingehalten werden soll, müsst ihr deutlich mehr Geld ausgeben. Bei Server 2003 R2 x64 geht das super, das Limit von dem ist 1TB (bzw 32GB bei 'standard').
Hol lieber ein RAID 1+0 oder 5+0 mit einem Controller der 1GB Puffer hat und darunter dann gute SAS-Platten. Hardware-Interrupts wegen Disk-IO ist schon fast das übelste, aber das "shrink" und Gebastel zieht die CPU runter und andere Fehlerquellen an und zwingt Dich dazu die Hardware anzupassen sobald die DB wieder etwas größer ist.
Bitte warten ..
Mitglied: SirAliks
11.06.2012 um 10:28 Uhr
Hi,

danke für deine Antwort.

Ein Upgrade auf SQL 2005 kommt nicht in Frage und der OS Wechsel ebensowenig(interne Entscheidung).
Die Samsung SSDs sind ausreichend und haben sehr gute Latenzzeiten+Datendurchsatzraten.
Im Raid1 macht man damit nichts verkehrt.

Wenn die DBs komplett im RAM liegen sind die Queryzeiten und Cachetreffer unübertroffen hoch (so die Theorie).


Wir haben das Problem aber mittlerweile gelöst.

DBBC INDEXDEFRAG defragementiert die Tabellenindizes ohne zusätzlichen Speicherplatz zu verbrauche, ergo die DB Datei wächst nicht unnötige 10 GB an und kann somit (hoffentlich effekktiv) im Speicher verweilen.

lg
aliks
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Datenbanken
MS-SQL-Server + T-SQL+Batch (4)

Frage von kallewirsch zum Thema Datenbanken ...

Datenbanken
gelöst Täglicher Export einer View aus MS SQL 2008 in Excel oder CSV (9)

Frage von Arafat zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...