私の新しいOracle DBAの話はセンスですか


15

MSSQLボックスにFC LUNをセットアップするとき、さまざまな種類(クォーラム、MSDTC、TempDB、データ、ログ、バックアップなど)の約8個を超える個別のLUNをそれらに提示する必要はほとんどありません。

新しいOracle DBAがあり、彼は最初の新しいサーバーに必要なLUNのリストを私に与えてくれました-それらは38個あります!これは、DBが1つしかない、非常に基本的なDBボックス用です。それらはすべてかなり小さい(100GB)LUNであり、LVMタイプの方法でASMを使用して明確にまとめられています。

これを行うための最良の方法は、私はオラクルの専門家ではありませんが、私にとっては複雑すぎるようですが、この問題に関するあなたの考えや経験は何ですか?


1
1つのDBに38個のLUN ...何?!?!
ザイファー

回答:


19

私はOracle DBAです。新しいDBAは、多くのOracle DBAとオーバーエンジニアリングのように機能しています。

  1. Oracleは38個のLUNを必要としません。多数のLUNにデータファイルを展開しましたが、これらは非常にアクティブで非常に大きいシステム上にあります。LUNは新しいRAIDグループにマップする必要はありませんか?したがって、ファイルを別々のLUNに配置することは、とにかく何も広げる必要はありません(私はこれに関する専門家ではありません)。

  2. この種のファイルストライピングが行うことは、DBAにとってはるかに多くの作業を行うことです。これにより、チームに対する彼の重要性が高まります。多くのOracle DBAは、自分自身をより重要に思わせ、常に物事をオーバーエンジニアリングしようとしています。

  3. データをDiffernet RAIDグループ/ LUNに分離することは、Oracle固有ではありません。その使用法に基づきます。ファイルを適切に分散させるために、DBAはアプリケーションを理解して、何にアクセスされているかを知る必要があります(ただし、データからインデックスを分離しても、アクセスはシリアルなのでパフォーマンスが向上しません...)。彼はアプリケーションを知っていますか?彼はデータベースを見て、どのオブジェクトが何度もアクセスされているかを確認しましたか?何を広げる必要がありますか?バルクの書き込みと読み取りは何で、分離する必要があります。

これは、中小規模のデータベースのように聞こえます。活動レベルは?彼はおそらく知らないでしょう。

一般に、小規模なデータベースでは、パフォーマンスを向上させるためにファイルシステムレベルで多くのことを行う必要はありません。95%はSQLであり、開発者はループ内で多くのsqlステートメントを実行しますか。

編集数年後!):

これを投稿してから、SANエンジニアと時間をかけて話し合い、SANとLUNの知識をいくらか向上させました。最初のLUNは「論理的」です。個別のRAIDグループ、ディスクなどにマップする必要はありません。これはSANエンジニアによってセットアップされ、DBAには表示されません。SANでIOを分離することは、ほとんどの人が知っていることです。

私は非常に高い活動レベルを持つ非常に大規模なシステムに取り組んでいます。数百のLUN、RAIDグループなどがあり、ファイルをあらゆる場所に分散しています。SANエンジニアと協力してLUNを構成し、それらがSANのさまざまな部分に分散されるようにします。OSレベルからLUNがどのようにマップされるかについては、実際には可視性がありません。新しいファイルシステムは、SAN上の新しい場所にデータがマッピングされていることを意味しません。

ASMのストライピングに関するHPの論文に関する限り。SANを使用する場合、これはまったく意味がありません。ストライピング、ミラーリング、RAIDなどはすべて表面下で行われます。アプリケーションレベルまたはデータベースレベルでは表示されません。「ストライピング」用にOracle ASMを構成することは、SANでは無意味です。なぜなら、RAID 5構成を使用している可能性のある論理ボリューム間でストライピングするだけだからです(大部分は制御コストのため。SANは数百万ドルの投資です)。ファイルシステムが表示されるだけです。それらは、必ずしも異なるディスクまたはSANの異なる場所にマップされるわけではありません。

IBMには、アクティビティに基づいてSANがディスクへの書き込み先を決定できる新しい機能があるようです。ここでの私のポイントは、SANを最適化する人々は専門家であるということです。あなたは彼らと協力する必要があります。DBAまたはアプリケーション開発者には、何かが広がっているかどうかを確認する可視性がありません。

私が見たところ、ほとんどの店には非常に優れたSANエンジニアがいません。それは中学生向けの仕事になる傾向があります。良いもののほとんどはコンサルタントになる傾向があります。そのため、多くの場合、メーカーがデフォルトのセットアップを使用しているだけです。繰り返し追加するLUNを追加しても、表面下でSANエンジニアが構成しない限り、おそらくデータは分散しません。それに加えて、1つのLUNを使用して、それを分散させることができます。優秀なSANエンジニアがいない限り、これらはすべて意味がありません。問題のDBAがSANについて何も知らず、SANについても十分に知らないことは明らかです。

時間標準構成の99.9%で十分です。特定のIOボトルネックがない限り、これは不要です。その場合は、SAおよびSANエンジニアと協力して、問題を特定する必要があります。多くの場合、SANのレイアウトとは関係ありません。繰り返しますが、DBAと開発者は、これを理解するための知識は言うまでもなく、下で何が起こっているのかを見ることができません。SANは非常に複雑です。


すべての点で、注意すべき点はわずかです。-1.「SANは複雑です」-Oracleデータベースもそうです。ITインフラストラクチャまたはITシステムで最も高価な製品の1つです。2.「ストライピング/スプレッド/ ect」-合意。DBAは、I / Oの問題に直面しない限り、下で何が起こっているのかを知る必要はありませんが、残念ながら、パフォーマンス関連の問題の場合は常にIOボトルネックになります。3.繰り返しますが、DBAは異なります-インフラ/コアDBAとアプリケーションDBA。インフラDBAは、OSとディスク(SAN)を操作するDBに関連するアクティビティを担当しています。そのため、彼は何が起こっているかについて十分な知識が必要です。4.上記のすべて

5

THISを使って、彼を頭の上で叩いてみることができます。これは、同じ(Stripe And Mirror Everything)アプローチを説明しています。


1
それが彼がやろうとしていることだと思います-私たちのアレイがRAID10を備えた既に厄介な獣であることに気付いていません。
チョッパー

4

私たちはMSSQLとmySQLを使用しているため、直接的な答えはありません。しかし、私のDBAがおかしく聞こえるものを求めたときはいつでも…そのように。各作品がなぜ必要なのかを文書化するよう彼に要求します。これは、多くの場合、突然より健全なものに心を変える2つの目的に役立ちます。 。この場合、38個のLUNのそれぞれの必要性を正当化するドキュメントを要求します


回答をありがとう、私はこれを求めましたが、彼はまだ応答していません、私は最初にあなたに良い人々と確認すると思いました;)
Chopper3

2

ASMでのストライピングとハードウェアレベルでのパフォーマンスがパフォーマンスに有利になる可能性があることを示す調査があります。 HP-Oracleホワイトペーパー これらのパフォーマンスの向上は、主に同時実行性の高い状況で見られますが、期待どおりに聞こえません。しかし、あなたのDBAが慣れているものかもしれません。


実際、これは高度な並行処理であり、単なるDBにすぎません。
チョッパー3

1

AIX上のDB2の場合、DBAはデータベースごとに5つのボリュームを取得します。各ボリュームはDBの異なる部分に対応します。1つはDB用、もう1つはプライマリログ用、1つはアーカイブログ用、1つはtempなどです。これらはボリュームであり、LUNである必要はありません。ストレージの管理方法によって異なります。


詳細が必要-1つのDBに38個のLUN、または1つのDBに38個のLUNと新しいサーバーのビルドが必要ですか?Windows上のOracleですか、Linux / Unixですか?Linux / Unixの管理者は、アプリやDBに入る前に、OS専用の小さなパーティション(/ usr、/ var、swap、/ etcなど)を必要とする傾向があります。あなたは彼と詳細な議論をする必要があると思います、そしてあなたは両方ともより多くの研究をする必要があるかもしれません。たとえば、IOの理由で多くの非共有ディスクが必要になる場合があります。
mfinni
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.