Ist mein neuer Oracle DBA sprechend sinnvoll?


15

Wenn wir FC-LUNs für unsere MSSQL-Boxen einrichten, müssen wir ihnen selten mehr als 8 verschiedene LUNs (Quorum, MSDTC, TempDB, Daten, Protokolle, Backup und einige andere) präsentieren.

Wir haben einen neuen Oracle-DBA und er hat mir eine Liste der LUNs gegeben, die er für seinen ersten neuen Server haben möchte - es gibt 38 davon! und dies ist für eine wirklich einfache DB-Box mit nur einer einzigen DB. Sie sind alle recht kleine (100 GB) LUNs und werden mithilfe von ASM auf LVM-artige Weise eindeutig miteinander verbunden.

Ist der beste Weg, dies zu tun, ich bin wirklich kein Oracle-Experte, aber es scheint mir zu komplex, was sind Ihre Gedanken und Erfahrungen in dieser Angelegenheit?


1
38 LUNs für eine einzelne DB ... was?!?!
Zypher

Antworten:


19

Ich bin ein Oracle DBA. Ihr neuer DBA verhält sich wie eine Menge Oracle-DBAs und über das Engineering hinaus.

  1. NO oracle benötigt KEINE 38 LUNs. Ich habe Datendateien auf eine große Anzahl von Luns verteilt, aber diese befinden sich auf Systemen, die SEHR aktiv und SEHR groß sind. LUNs müssen nicht neuen RAID-Gruppen zugeordnet werden, oder? Wenn Sie also Dateien auf separaten Luns haben, müssen Sie sowieso nichts ausbreiten (ich bin kein Experte in diesem Bereich).

  2. All diese Art von Datei-Striping wird dem DBA viel mehr Arbeit bringen. Dies erhöht seine Bedeutung für das Team. Viele Oracle-Datenbankadministratoren versuchen, sich STÄNDIG wichtiger zu machen und Dinge zu überdenken.

  3. Das Aussondern von Daten auf verschiedene Schlachtzugsgruppen / Luns ist nicht orakelspezifisch. Es basiert auf der Nutzung. Um Dateien richtig zu verteilen, muss Ihr DBA die Anwendung verstehen, um zu wissen, auf was zugegriffen wird (übrigens verbessert das Trennen von Indizes von Daten NICHT die Leistung, da der Zugriff seriell erfolgt ...). Kennt er die Anwendung? Hat er in der Datenbank nachgesehen, auf welche Objekte häufig zugegriffen wird? Was muss verteilt werden? Was Bulk schreibt und liest, muss isoliert werden.

Das klingt nach einer kleinen / mittleren Datenbank. Was ist die Aktivitätsstufe? Er weiß es wahrscheinlich nicht.

Im Allgemeinen müssen Sie bei kleineren Datenbanken nicht viel auf Dateisystemebene tun, um die Leistung zu verbessern. 95% ist SQL und die Entwickler führen zu viele SQL-Anweisungen in Schleifen aus.

editieren ( Jahre später !):

Ich habe einige Zeit mit SAN-Ingenieuren verbracht und meine Kenntnisse über SANs und LUNs etwas verbessert, seitdem ich dies veröffentlicht habe. Zunächst einmal ist eine LUN 'logisch'. Es ist nicht erforderlich, RAID-Gruppen, Festplatten usw. zuzuordnen. Dies wird vom SAN-Techniker eingerichtet und ist für den DBA nicht sichtbar. Es gibt viel mehr zu IO in einem SAN zu trennen, als die meisten Menschen erkennen.

Ich arbeite an einem sehr großen System mit einer sehr hohen Aktivität. Wir haben Hunderte von LUNs, RAID-Gruppen usw. Wir verteilen Dateien überall. In Zusammenarbeit mit den SAN-Ingenieuren konfigurieren wir LUNs, um sicherzustellen, dass sie auf verschiedene Teile des SAN verteilt sind. Wir haben wirklich KEINE Einsicht, wie die LUNs von der Betriebssystemebene aus zugeordnet werden. Ein neues Dateisystem bedeutet nicht, dass wir Daten einem neuen Speicherort im SAN zugeordnet haben.

Soweit das HP-Papier zum Striping von ASM. Dies ist bei der Arbeit mit einem SAN völlig bedeutungslos. Striping, Mirroring, RAID usw. werden unter der Oberfläche ausgeführt. Sie sehen es nicht auf Anwendungs- oder Datenbankebene. Die Konfiguration von Oracle ASM für "Striping" ist in einem SAN immer bedeutungslos, da Sie nur ein Striping über logische Volumes durchführen, für die möglicherweise eine RAID 5-Konfiguration verwendet wird (die überwiegende Mehrheit ist auf Kontrollkosten zurückzuführen. SANs sind Investitionen in Höhe von mehreren Millionen Dollar). Sie sehen nur Dateisysteme. Diese werden nicht notwendigerweise verschiedenen Festplatten oder verschiedenen Speicherorten im SAN zugeordnet.

IBM hat anscheinend eine neue Funktion, mit der das SAN basierend auf der Aktivität entscheiden kann, wo auf Datenträger geschrieben werden soll. Mein Punkt hier ist, dass Leute, die SANs optimieren, Spezialisten sind. Sie müssen mit ihnen arbeiten. Ein DBA oder ein Anwendungsentwickler kann nicht sehen, ob etwas verteilt wird.

Von dem, was ich gesehen habe, haben die meisten Geschäfte keine sehr guten SAN-Ingenieure. Es ist in der Regel ein Job für Jugendliche. Die meisten guten sind Berater. Daher verwenden Sie die meiste Zeit nur das Standard-Setup des Herstellers. Wenn Sie das Hinzufügen weiterer LUNs wiederholen, werden die Daten wahrscheinlich nicht verteilt, es sei denn, Sie haben einen SAN-Techniker, der sie unter der Oberfläche für Sie konfiguriert. Darüber hinaus können Sie 1 LUN haben und diese für Sie ausbreiten lassen. Sofern Sie keinen guten SAN-Ingenieur haben, ist all dieses Zeug bedeutungslos. Mir ist klar, dass der fragliche DBA nicht genug über SANs weiß, um überhaupt zu wissen, dass er nichts weiß.

In 99,9% der Fälle sind Standardkonfigurationen in Ordnung. Dies ist nicht erforderlich, es sei denn, Sie haben einen bestimmten E / A-Engpass. In diesem Fall müssen Sie mit dem SA- und SAN-Techniker zusammenarbeiten, um das Problem zu ermitteln. Die meiste Zeit hat es NICHTS mit dem Layout des SAN zu tun. Auch hier haben DBAs und Entwickler keinen Zugriff darauf, was darunter vor sich geht, geschweige denn das Wissen, um dies herauszufinden. SANs sind sehr komplex.


Bei allem Respekt, nur ein paar Punkte zu beachten: - 1. "SAN ist komplex" - So ist Oracle-Datenbank. Sogar eines der teuersten Produkte in jeder IT-Infrastruktur oder jedem IT-System. 2. "Striping / Spreading / ect" - vereinbart. Datenbankadministratoren müssen nicht wissen, was darunter vor sich geht, solange sie keine Probleme mit E / A haben. Leider ist dies immer ein E / A-Engpass bei leistungsbezogenen Problemen. 3. Wiederum unterscheiden sich DBAs - Infra / Core DBA vs. Application DBA. Der Datenbankadministrator von Infra ist mit Aktivitäten im Zusammenhang mit der Arbeit mit Datenbanken, Betriebssystemen und Festplatten (SAN) beauftragt. 4. Alle oben genannten

5

Sie können versuchen, ihn mit THIS über den Kopf zu hauen, indem Sie den SAME-Ansatz (Stripe And Mirror Everything) beschreiben, der erfrischend einfach ist.


1
Ich denke, das ist es, was er versucht - ohne zu bemerken, dass unser Array mit RAID10 bereits ein böses Biest ist.
Chopper3

4

Ich habe keine direkte Antwort, da wir MSSQL und mySQL verwenden. Aber wann immer mein DBA nach etwas fragt, das einfach verrückt klingt ... so. Ich fordere ihn auf zu dokumentieren, warum jedes Stück erforderlich ist. Dies dient zwei Zwecken: einem oft, wenn sie plötzlich ihre Meinung zu etwas Vernünftigerem ändern, und zwei ermöglichen es mir, ihren Denkprozess zu sehen, damit ich eine Systemlogik auf das anwenden kann, was sie wollen, und eine Alternative präsentieren kann, die nicht so verrückt ist . SO in diesem Fall würde ich um ein Dokument bitten, das die Notwendigkeit für jede der 38 LUNs begründet


Danke für die Antwort, ich habe darum gebeten, aber er hat noch nicht geantwortet, dachte, ich würde mich zuerst bei Ihnen
melden

2

Es gibt Studien, die belegen, dass Striping in ASM und auf Hardwareebene für die Leistung von Vorteil sein kann. HP-Oracle Whitepaper Diese Leistungssteigerungen treten meist in Situationen mit hoher Parallelität auf, die nicht so klingen, wie Sie es erwarten. Aber vielleicht ist Ihr DBA daran gewöhnt.


Eigentlich wird dies SEHR gleichzeitig sein, nur eine einfache DB - also danke.
Chopper3

1

Ich weiß, dass unsere Datenbankadministratoren für DB2 unter AIX 5 Volumes pro Datenbank erhalten - jedes für einen anderen Teil der Datenbank. Eine für die Datenbank, eine für das primäre Protokoll, eine für das Archivprotokoll, eine für die temporäre Datei und etwas anderes. Dies sind Volumes, es müssen keine LUNs sein. Dies hängt davon ab, wie Sie Ihren Speicher verwalten möchten.


Weitere Details sind erforderlich - möchte er 38 LUNs für eine DB oder 38 LUNs für eine DB PLUS für den Build des neuen Servers? Ist es Oracle unter Windows oder Linux / Unix? Linux- / Unix-Administratoren möchten in der Regel mehr kleinere Partitionen nur für das Betriebssystem, bevor Sie sich überhaupt mit Apps und DBs befassen - / usr, / var, swap, / etc und so weiter. Ich denke, Sie müssen eine ausführliche Diskussion mit ihm führen, und Sie müssen möglicherweise beide mehr Nachforschungen anstellen. Er könnte zum Beispiel aus E / A-Gründen eine Menge ungeteilter Festplatten benötigen.
mfinni
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.