Benutzer mit den meisten Antworten
Testumgebung vs Instanzen

Frage
-
Hallo,
Frage an erfahrene Entwickler.
Welche Variante für das betreiben eines SQL Server 2014 (Standard Edition) ist optimal?1. mehrere Instanzen (Produktiv, Test, Entwicklung) auf einem Rechner
2. getrennt 1.Rechner=Produktiv , 2.Rechner=Test und Entwicklung (Developer-Edition)
Tendenz geht zur 1.Variante, da kostengünstiger (Hardware) oder gibt es klare Argumente für die zweite Variante?
Gruß ro_grille
Antworten
-
Hi,
ich würde alleine schon aus Gründen der Verfügbarkeit, die ja anscheinend doch recht wichtig ist, mind. zwei baugleiche Systeme einplanen.
Ok, ich selbst würde wahrscheinlich, vorbehaltlich einer genaueren Prüfung, VMs einsetzen, die dann im Fall der Fälle problemlos auf einem anderen Host einsetzbar wären. Aber das kann man auch nicht verallgemeinern.
Eine SSD als primären Datenspeicher einzusetzen, ist IMHO recht mutig. Ob das nun wirklich so viel bringt wie Du dir davon erhoffst, kann ich mangels eigener Prüfungen nicht sagen. Wenn man aber dem hier:
http://www.schneider-wulf.de/blog/performance-steigerung-mit-ssd-platten-bringt-...-rein-gar-nichts/
http://sqlperformance.com/2014/11/io-subsystem/knee-jerk-performance-tuning-just-add-ssd
http://sqlmag.com/storage/using-solid-state-disks-sql-server-storage-solutions
Glauben schenken mag, bringt es oft nicht viel bis gar nichts. Aber auch hier kommt es natürlich wieder auf den Einzelfall und dessen individuelle Anforderungen an. Eine SSD kann, wie viiiiiiiiiiel RAM auch, keine Probleme beseitigen, die bspw. in der Datenbankstruktur, schlechten Anwendungen, ... liegen.
Ich hab mal eine sehr stark beanspruchte Temp DB auf eine SSD auslagern lassen, das wiederum hat in dem dortigen Fall schon einiges gebracht. Die restlichen Datenbanken liegen aber nach wie vor auf normalen Platten bzw. anderen Speichern.
Bzgl. deiner "Datensicherungsplatte": Du weißt aber schon, dass das maximal für eine Kurzzeitspeicherung bis zur eigentlichen Datensicherung, die auf einem anderen System stattfinden sollte, im besten Fall auch nicht im selben Raum/Gebäude/Planet bzw. wenn möglich, gleich in einer anderen Galaxie (gibt ja jetzt genug neue Auswahlmöglichkeiten, nachdem Forscher mal "einfach so" 883 neue Galaxien entdeckt haben^^). Auf jeden Fall nicht im gleichen Rechner.
Bzgl. der Grafikkarte muss ich passen, nicht meine Baustelle :)
Evtl. melden sich noch andere, die mehr zu deinem geplanten System sagen können. Ich persönlich würde mir da nochmal in mich gehen.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
- Bearbeitet Stefan FalzModerator Samstag, 13. Februar 2016 16:01
- Als Antwort markiert ro_grille Montag, 15. Februar 2016 09:09
-
Am 13.02.2016 schrieb ro_grille:
es sind ca. 15 Datebanken mit ca. 40 Tabellen/Datenbank.
Zugriff ist mit 30-40 Usern angedacht, Tendenz bei weiterer Entwicklung steigend.
Final-Datenbank bearbeitet ca. 12 Mio Datensätze, Speicherbedarf ca. 100-130 GB.
Normal Speicherbedarf/Datenbank ca. 300 MB.
Aus meiner Sicht sollte der Rechner mit folgender Hardware ausgestattet sein:
- BS Window Server 2012 64 bit + MSSS 2014 64 bit
- SSD primär 500 GB , 2. Festplatte 2 TByte (Datensicherung)
- CPU i7-4xxxK 4,3 GHz, RAM 32- 64 GB DDR4
- Grafikarte Nvidia Geforce GTX 970 (Berichtrendering+ Entlastung CPU)Mir fehlt hier die Ausfallsicherheit. Wo ist das RAID-System? Für das
OS ein RAID1, für die Datenbanken ein Raid10. Jeweils natürlich eine
Hotspare HDD mit einplanen.SSD ist IMHO auch oversized, wenn Du schnelle SAS Platten nimmst, 15K
sollten schon drehen, reicht das völlig aus. Und die sind auch genau
dafür gemacht und haben auch 24/7 Support.Für zwei Rechner mit annährend gleicher Ausstattung wären die Kosten schon sportlich ...
Und dabei hast Du IMHO die Lizenzkosten noch gar nicht erfasst.
Servus
Winfried
WSUS Package Publisher: http://wsuspackagepublisher.codeplex.com/
HowTos zum WSUS Package Publisher http://www.wsus.de/wpp
GPO's: http://www.gruppenrichtlinien.de
NNTP-Bridge für MS-Foren: http://communitybridge.codeplex.com/- Als Antwort markiert ro_grille Montag, 15. Februar 2016 09:08
Alle Antworten
-
Hi,
von welchen Größenordnungen hinsichtlich Datenbanken, Speicherverbrauch, CPU Nutzung, Anzahl gleichzeitiger Zugriffe, usw. reden wir denn?
Eine ganz allgemeine Empfehlung kann man eigentlich nicht geben, wenn man die Bedingungen, die an die Instanzen und die Hardware gestellt werden, nicht kennt.
Bei kleinen, unkritischen Systemen, die nicht sonderlich viel Last produzieren, würde eigentlich rein technisch nichts gegen einen Server mit mehreren Instanzen sprechen. Ob das aber nun wirklich so gemacht werden soll, hängt von vielen Faktoren ab, die wir hier nicht kennen. Poste doch mal ein paar mehr Details zu euren Instanzen, deren Verwendung, ...
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Hallo,
es sind ca. 15 Datebanken mit ca. 40 Tabellen/Datenbank.
Zugriff ist mit 30-40 Usern angedacht, Tendenz bei weiterer Entwicklung steigend.
Final-Datenbank bearbeitet ca. 12 Mio Datensätze, Speicherbedarf ca. 100-130 GB.
Normal Speicherbedarf/Datenbank ca. 300 MB.Aus meiner Sicht sollte der Rechner mit folgender Hardware ausgestattet sein:
- BS Window Server 2012 64 bit + MSSS 2014 64 bit
- SSD primär 500 GB , 2. Festplatte 2 TByte (Datensicherung)
- CPU i7-4xxxK 4,3 GHz, RAM 32-64 GB DDR4
- Grafikarte Nvidia Geforce GTX 970 (Berichtrendering+ Entlastung CPU)
Für zwei Rechner mit annährend gleicher Ausstattung wären die Kosten schon sportlich ...
Gruß ro_grille
-
Hi,
ich würde alleine schon aus Gründen der Verfügbarkeit, die ja anscheinend doch recht wichtig ist, mind. zwei baugleiche Systeme einplanen.
Ok, ich selbst würde wahrscheinlich, vorbehaltlich einer genaueren Prüfung, VMs einsetzen, die dann im Fall der Fälle problemlos auf einem anderen Host einsetzbar wären. Aber das kann man auch nicht verallgemeinern.
Eine SSD als primären Datenspeicher einzusetzen, ist IMHO recht mutig. Ob das nun wirklich so viel bringt wie Du dir davon erhoffst, kann ich mangels eigener Prüfungen nicht sagen. Wenn man aber dem hier:
http://www.schneider-wulf.de/blog/performance-steigerung-mit-ssd-platten-bringt-...-rein-gar-nichts/
http://sqlperformance.com/2014/11/io-subsystem/knee-jerk-performance-tuning-just-add-ssd
http://sqlmag.com/storage/using-solid-state-disks-sql-server-storage-solutions
Glauben schenken mag, bringt es oft nicht viel bis gar nichts. Aber auch hier kommt es natürlich wieder auf den Einzelfall und dessen individuelle Anforderungen an. Eine SSD kann, wie viiiiiiiiiiel RAM auch, keine Probleme beseitigen, die bspw. in der Datenbankstruktur, schlechten Anwendungen, ... liegen.
Ich hab mal eine sehr stark beanspruchte Temp DB auf eine SSD auslagern lassen, das wiederum hat in dem dortigen Fall schon einiges gebracht. Die restlichen Datenbanken liegen aber nach wie vor auf normalen Platten bzw. anderen Speichern.
Bzgl. deiner "Datensicherungsplatte": Du weißt aber schon, dass das maximal für eine Kurzzeitspeicherung bis zur eigentlichen Datensicherung, die auf einem anderen System stattfinden sollte, im besten Fall auch nicht im selben Raum/Gebäude/Planet bzw. wenn möglich, gleich in einer anderen Galaxie (gibt ja jetzt genug neue Auswahlmöglichkeiten, nachdem Forscher mal "einfach so" 883 neue Galaxien entdeckt haben^^). Auf jeden Fall nicht im gleichen Rechner.
Bzgl. der Grafikkarte muss ich passen, nicht meine Baustelle :)
Evtl. melden sich noch andere, die mehr zu deinem geplanten System sagen können. Ich persönlich würde mir da nochmal in mich gehen.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
- Bearbeitet Stefan FalzModerator Samstag, 13. Februar 2016 16:01
- Als Antwort markiert ro_grille Montag, 15. Februar 2016 09:09
-
Am 13.02.2016 schrieb ro_grille:
es sind ca. 15 Datebanken mit ca. 40 Tabellen/Datenbank.
Zugriff ist mit 30-40 Usern angedacht, Tendenz bei weiterer Entwicklung steigend.
Final-Datenbank bearbeitet ca. 12 Mio Datensätze, Speicherbedarf ca. 100-130 GB.
Normal Speicherbedarf/Datenbank ca. 300 MB.
Aus meiner Sicht sollte der Rechner mit folgender Hardware ausgestattet sein:
- BS Window Server 2012 64 bit + MSSS 2014 64 bit
- SSD primär 500 GB , 2. Festplatte 2 TByte (Datensicherung)
- CPU i7-4xxxK 4,3 GHz, RAM 32- 64 GB DDR4
- Grafikarte Nvidia Geforce GTX 970 (Berichtrendering+ Entlastung CPU)Mir fehlt hier die Ausfallsicherheit. Wo ist das RAID-System? Für das
OS ein RAID1, für die Datenbanken ein Raid10. Jeweils natürlich eine
Hotspare HDD mit einplanen.SSD ist IMHO auch oversized, wenn Du schnelle SAS Platten nimmst, 15K
sollten schon drehen, reicht das völlig aus. Und die sind auch genau
dafür gemacht und haben auch 24/7 Support.Für zwei Rechner mit annährend gleicher Ausstattung wären die Kosten schon sportlich ...
Und dabei hast Du IMHO die Lizenzkosten noch gar nicht erfasst.
Servus
Winfried
WSUS Package Publisher: http://wsuspackagepublisher.codeplex.com/
HowTos zum WSUS Package Publisher http://www.wsus.de/wpp
GPO's: http://www.gruppenrichtlinien.de
NNTP-Bridge für MS-Foren: http://communitybridge.codeplex.com/- Als Antwort markiert ro_grille Montag, 15. Februar 2016 09:08
-
Hallo die Herren,
vielen Dank für die interessanten Tipps.
Ein RAID-System mit SAS-Platten (15K) wäre wahrscheinlich die sauberste und professionellste Lösung.
Ausfallsicherheit ist mit Schwerpunkt, da 30-40 User permanent/täglich zugreifen werden.
Die Logik (Abfragen) soll/wird zu 95% auf dem Server erfolgen, da hätte eine SSD die Nase vorn (siehe Links Stefan).
Lizenzkosten sind nicht in der Betrachtung, da der Server schon produktiv, in einer Art Testphase, läuft.
Zu diesem Thema gibt es intern noch einigen Geprächsbedarf bevor es richtig zur Sache geht.
Letztendlich werden die Kostenveranwortlichen entsprechend den möglichen Varianten entscheiden.Nochmals vielen Dank ... hat uns sehr geholfen.
Gruß ro_grille
-
Hallo,
wenn man testet macht man auch mal einen Stress-Test. Sind Test- und Produktion SQL Server auf einem Rechner, dann leidet der Prod Server bei einem Stress-Test mit.
Oder die Installation eines neuen Service Packs, das will man vorab auch mal testen und auch da ist es besser, wenn die Testinstanz auf einem eigenen Rechner läuft.
Olaf Helper
[ Blog] [ Xing] [ MVP] -
Am 15.02.2016 schrieb ro_grille:
Ein RAID-System mit SAS-Platten (15K) wäre wahrscheinlich die sauberste und professionellste Lösung.
Ausfallsicherheit ist mit Schwerpunkt, da 30-40 User permanent/täglich zugreifen werden.
Die Logik (Abfragen) soll/wird zu 95% auf dem Server erfolgen, da hätte eine SSD die Nase vorn (siehe Links Stefan).Sind denn die SPs sooo umfangreich, das man wirklich den Unterschied
zwischen SSD und SAS HDD merkt? Bei nur 30-40 User bin ich der
Meinung, den Unterschied merkst Du nicht.Lizenzkosten sind nicht in der Betrachtung, da der Server schon produktiv, in einer Art Testphase, läuft.
Ich meinte nicht die Lizenz des SQL Servers, sondern die SQL-CALs.
Computer- oder Benutzer CAL? Prozessor Lizenz? Jeder direkte oder
indirekte Zugriff auf den SQL Server benötigte eine Zugriffslizenz.Servus
Winfried
WSUS Package Publisher: http://wsuspackagepublisher.codeplex.com/
HowTos zum WSUS Package Publisher http://www.wsus.de/wpp
GPO's: http://www.gruppenrichtlinien.de
NNTP-Bridge für MS-Foren: http://communitybridge.codeplex.com/ -
Hallo,
@Olaf
Danke für die Tipps, wird in die Betrachtung/Entscheidung mit einbezogen.@Winfried
Den Unterschied SSD vs. HDD merkt man deutlich, da wir einen temporären Testrechner (MSSS 2014 Developer-Edition) mit SSD und viel Power haben.
Die Lizenzen (vorerst 10 Benutzer-CAL) sind produktiv scharf.Gruß ro_grille
-
Am 16.02.2016 schrieb ro_grille:
*@Winfried
*Den Unterschied SSD vs. HDD merkt man deutlich, da wir einen temporären Testrechner (MSSS 2014 Developer-Edition) mit SSD und viel Power haben*.Welche *genauen* HDDs sind denn an *genau* welchem Controller verbaut?
Servus
Winfried
WSUS Package Publisher: http://wsuspackagepublisher.codeplex.com/
HowTos zum WSUS Package Publisher http://www.wsus.de/wpp
GPO's: http://www.gruppenrichtlinien.de
NNTP-Bridge für MS-Foren: http://communitybridge.codeplex.com/ -
Hallo Winfried,
es gibt nur eine HDD (1 TByte) in diesem Produktiv-Rechner (Controller, sicher Standard).
Keine Partitionen, keine Domäne ... alles liegt auf LW:C, Remote-Zugriff als Administrator, das wars.
Konfiguration=Standard (OS Window Server 2012 R2 64-Bit).
Wurde uns so von der IT-Abteilung, entgegen unserem Vorschlag (Hardware s.o.), bereitgestellt.
Thema Kosten ... ^^ (Büro-PC von der Stange).Wir können das erstmal nicht ändern, deshalb dieser Thread, um einen neuen Anlauf mit entsprechen Argumenten zu starten.
Habe mal an den Eigenschaften/Einstellungen der Festplatte gedreht (max. Leistung), hat eine kleine Verbesserung der Performance gebracht.
Hatte kürzlich auch gelesen, dass durch ändern des Energiesparplans auf Höchstleistung der Turbo erst richtig zündet usw..
Wenn Du noch einige Tricks/Tipps für die Performance-Verbesserung (Win Server 2012 R2, SQL Server) hast, wäre prima.
Gruß ro_grille
-
Am 20.02.2016 schrieb ro_grille:
es gibt nur eine HDD (1 TByte) in diesem Produktiv-Rechner (Controller, sicher Standard).
Und das wäre aber sehr interessant. Wenn es denn eine SATA-HDD ist,
ist natürlich eine SSD viel schneller.Keine Partitionen, keine Domäne ... alles liegt auf LW:C, Remote-Zugriff als Administrator, das wars.
Je nach Anzahl der zugreifenden Benutzer und je nach Belastung des SQL
Servers wird das recht schnell erschöpft sein.Konfiguration=Standard (OS Window Server 2012 R2 64-Bit).
Wurde uns so von der IT-Abteilung, entgegen unserem Vorschlag (Hardware s.o.), bereitgestellt.
Thema Kosten ... ^^ (Büro-PC von der Stange).Tja, richtige Server kosten Geld. Wenn das für euch nicht
bereitgestellt wird, habt ihr wohl Pech gehabt.Wir können das erstmal nicht ändern, deshalb dieser Thread, um einen neuen Anlauf mit entsprechen Argumenten zu starten.
Habe mal an den Eigenschaften/Einstellungen der Festplatte gedreht (max. Leistung), hat eine kleine Verbesserung der Performance gebracht.
Hatte kürzlich auch gelesen, dass durch ändern des Energiesparplans auf
Höchstleistung der Turbo erst richtig zündet usw..
Wenn Du noch einige Tricks/Tipps für die Performance-Verbesserung (Win Server 2012 R2, SQL Server) hast, wäre prima.Den SQL Server, die Daten, die TempDB und die Logs auf einer HDD in
unterschiedlichen Partitionen zu speichern, ist nicht hilfreich. Kein
RAID-System zu haben ist auch nicht förderlich.Du solltest also folgendes schon haben:
SAS-Platten an einem Raidcontroller. 2 SAS Platten für das OS, am
besten noch eine als Hotspare. Für die Daten sollte es ein extra RAID
an extra Platten sein. Du siehst, der RAID-Controller muss schon etwas
können, die SAS Platten sollten mind. 10K machen, besser mehr.Servus
Winfried
WSUS Package Publisher: http://wsuspackagepublisher.codeplex.com/
HowTos zum WSUS Package Publisher http://www.wsus.de/wpp
GPO's: http://www.gruppenrichtlinien.de
NNTP-Bridge für MS-Foren: http://communitybridge.codeplex.com/ -
Am 20.02.2016 schrieb ro_grille:
Nicht noch einige Tipps zur Performancesteigerung des aktuellen System ? ^^
Da gibt/gäbe es sicherlich so manches, mangels Erfahrung kann ich dir
dazu aber nicht viel schreiben.
Die Vergrößerung der DBs, egal ob TempDB oder Logdateien, sollte in
großen Schritten eingestellt sein, nicht in Prozent Angaben.Den Rest muss man am laufenden System analysieren.
Servus
Winfried
WSUS Package Publisher: http://wsuspackagepublisher.codeplex.com/
HowTos zum WSUS Package Publisher http://www.wsus.de/wpp
GPO's: http://www.gruppenrichtlinien.de
NNTP-Bridge für MS-Foren: http://communitybridge.codeplex.com/ -
Hallo Winfried,
danke für die schnelle Antwort.
Nicht noch einige Tipps zur Performancesteigerung des aktuellen System ? ^^
Gruß ro_grille
Es gibt einige Dutzend Best Practices für SQL Server
Ich verweise jetzt mal auf keine URL, da ich garantiert dabei einige vergessen würde.Ich empfehle also einfach mal google und Whitepaper von Microsoft im Fokus.
Was für dieses System aber wirklich wichtig ist, kommt auf die Workload an, die keiner von uns beurteilen kann.
Insofern würde ich mit den allgemeinen Best Practices beginnen, um nichts zu verschenken, und ansonsten mal über die Performance-/Kapazitäts-Anforderungen der Applikationen Erkundigungen einholen.
Andreas Wolter (Blog | Twitter)
MCSM: Microsoft Certified Solutions Master Data Platform/SQL Server 2012
MCM SQL Server 2008
MVP Data Platform
www.SarpedonQualityLab.com | www.SQL-Server-Master-Class.com