開発者がDBAの知識のどの領域を掘り下げる必要がありますか?[閉まっている]


11

質問がかなり広いことを認めなければならないので、少し絞ってみます。私たちの会社では3〜4人の開発者がおり、SQL Serverベースのインストールをお客様のサイトで実行しています(データベースサイズは最大100GB、最大同時ユーザー数100、イントラネットアプリケーション)。私たちの誰もが、(何であれ)データベースの実行/保守/管理について本当に良い経験をしていません。顧客はそれほどでもありません。これまでは問題なく動作していますが、すべてが適切に行われているためなのか、私たちが熟練していない領域や状況に達しなかったためなのか、はっきりとはわかりません。

ですから、DBAの視点からデータベース実行する際に知っておくべき重要なことを探しています。あなたは難しい事実を知っており、一日の仕事であなたの日に最も重要なことを知っています。

どの科目でより深い知識を収集する必要がありますか、何を聞いたことがありますか、また最初に直面するまで気にしないことができますか?

Software Engineers and DBAsという質問は承知していますが、私が探していたものではありません。周りにもたくさんの本がありますが、実務経験のある方から是非お願いします。


回答:


5

私は@Catcallに同意する傾向があります。データベースの回復がリストのトップにあるはずです。バックアップとリカバリの両方のオプションの影響は、通常、DBAチームの外部ではほとんど理解されておらず、災害を引き起こす可能性が最も高いです。

  • すべてのデータベースおよびシステムについて、技術的および非技術的管理によって)RPO(回復ポイント目標)およびRTO(回復時間目標)を定義し、同意したことを確認します。
  • 非技術スタッフが従うことができる範囲で、バックアップとリカバリの手順を文書化します。
  • すべてのドキュメントが印刷された形式と電子形式で、オンサイトとオフサイトの両方で保管されていることを確認します。ローカルネットワークに格納されている障害復旧Runbookは、建物が燃えている場合にはあまり役に立ちません。
  • 多くの場合、回復手順のあらゆる側面をテストします。バックアップは関係ありません。問題はリストアです。

次に、データベースにとらわれない観​​点から、データベースサーバーが何のために構築されているかを理解します。提供、原子性、一貫性、独立性と耐久性をあなたのトランザクションやデータに。一般的に誤解されていますが、多くの場合、パフォーマンスの問題の原因とデータの不整合の主な原因です。

選択したプラットフォームについて、ACIDコンプライアンスの実装方法の内部を調べます。トランザクションログの機能、ログ先行書き込みとは何か、分離レベルストレージの内部などのトピックを探します。データベース内部の主要な側面を理解することで、DBA作業、パフォーマンスチューニング、リソース管理などの他の側面を把握しやすくなります。


5

私が毎日扱う2つのこと。

  1. 災害からの回復。

  2. 性能調整。(個々のクエリとdbms自体の両方。)

災害復旧計画は

  • スクリプト、
  • テスト済み、および
  • 練習した。

私は、Pythonで書かれたものではなく、俳優が従う何かの意味でスクリプトを使用しています。関与する必要があるすべての人に、何をすべきかを正確に伝える必要があります。(そして、多くの場合、まさに何を言うべきか。)

クエリのパフォーマンスチューニングには、キー、インデックス、および正規化の理解が含まれます。(しばしば「チューニング」問題は実際には構造的な問題です。)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.