個人財務 Oracle 12cでのデータベース・バッファ・キャッシュの基本 - ダミー

Oracle 12cでのデータベース・バッファ・キャッシュの基本 - ダミー

目次:

ビデオ: 【T3】SQL チューニングの基礎 高塚 遥 2025

ビデオ: 【T3】SQL チューニングの基礎 高塚 遥 2025
Anonim

Oracle 12cの データベース・バッファ・キャッシュ は、通常、SGAの最大部分です。それはディスク上のファイルから来るデータを持っています。ディスクからのデータへのアクセスはメモリーよりも遅いため、データベース・バッファー・キャッシュの唯一の目的は、メモリーにデータをキャッシュしてより高速にアクセスできるようにすることです。

データベースバッファキャッシュには、すべてのタイプのオブジェクトのデータを含めることができます。

  • テーブル

  • インデックス

    <!
  • システム・データ

データベース・バッファ・キャッシュの という用語では、 バッファ という用語はデータベース・ブロックを指します。 データベース・ブロック は、Oracleが読み書きする最小限の記憶領域です。データを含むすべてのストレージセグメントはブロックで構成されています。ディスクからデータを要求すると、最低でも1ブロックが読み込まれます。 1つの行だけを要求しても、同じ表の多くの行が検索される可能性があります。同じ行が1つの列を要求する場合も同じです。 Oracleはブロック全体を読み取ります。ブロック全体には多くの行があり、その行にはすべての列が読み込まれます。

<!あなたの部門表に10行しかない場合、1つの部門だけの名前を要求していても、全体をメモリに読み込むことができると考えるのは実現可能です。

Oracle 12cでのバッファ・キャッシュの状態

バッファ・キャッシュ

は、使用可能な領域とブロックの状態(共有プールがどのSQLを保持するかを決定する方法と同様)に応じて、バッファキャッシュは、独自のバージョンのLRUアルゴリズムを使用します。

<!バッファ・キャッシュ内のブロックは、 Free: 現在使用されていない

Pinned:

現在アクセス中 > Dirty:

  • ブロックは変更されていますが、まだディスクに書き込まれていません。 空きブロック

  • 空きブロックは、必要なときには理想的です。しかし、あなたのデータベースが非常に小さく、全体がメモリに収まらない限り、おそらくそうではありません。 LRUアルゴリズムは、バッファプール内で共有プールとは少し異なります。各ブロックにスコアを付け、それがアクセスされてからの経過時間を計算します。たとえば、ブロックはタッチされるたびにポイントを取得します。

  • ポイントが高いほど、ブロックがメモリからフラッシュされる可能性が低くなります。しかし、それは頻繁にアクセスされなければならないか、スコアが減少する。メモリリソースの競争が高ければ、ブロックはメモリ内にとどまるために頑張らなければならない。 各ブロックにスコアと時間を与えることで、このような状況が発生するのを防ぐことができます。月の終わりにブロックにアクセスしてレポートを作成します。スコアはシステム内の他のどのブロックよりも高い。そのブロックは決して再びアクセスされません。

データベースが再起動されるか、別のブロックが最終的にそれを打ち負かすのに十分なポイントを獲得するまで、メモリを無駄にしてしまいます。あなたがもはやそれにアクセスしなくなった後、時間コンポーネントは非常に早くそれを老化させます。

固定ブロック

現在アクセス中のブロックは

固定ブロックである。

ブロックはバッファ・キャッシュにロック(または固定)されているため、Oracleプロセス(ユーザーを表すことが多い)がバッファ・キャッシュからアクセスできません。

ダーティブロック

変更されたブロックは、

ダーティブロックである。 データベースシャットダウン中に変更が確実に保持されるようにするには、これらのダーティブロックをバッファキャッシュからディスクに書き込む必要があります。データベースは、ダーティ・リストまたは書き込みキュー内のダーティ・ブロックに名前を付けます。 ブロックが変更されるたびに、データが失われないようにディスクに書き込む必要があると考えるかもしれません。これはそうではありません。たとえ

コミット

(変更を永久に保存する)であってもそうではありません!いくつかの構造がデータの消失を防ぐのに役立ちます さらに、Oracleにはギャンブルの問題があります。すべての変更に対してブロックをディスクに書き込むと、システムのパフォーマンスがクロールされます。これに対処するために、Oracleはデータベースが失敗する可能性が低く、ブロックをディスクに大きなグループでのみ書き込むという蓋然性を示しています。 心配しないでください。それは失われたデータに対するリスクでもありません。 Oracleはデータベースのパフォーマンスを今すぐ

から取り戻す可能性があります 。 適切に管理されたシステムでの障害はほとんど発生しないため、パフォーマンスを得るには安価な方法です。しかし、Oracleがそれ自身の後で浄化せずに汚れたブロックを全部残すようなものではありません。

Oracle 12cでの書き込みトリガーのブロック

ブロック書き込み、したがってダーティブロックをトリガーする要因は何ですか? データベースにシャットダウンコマンドが発行されました。 完全または部分的なチェックポイントが発生します。つまり、システムがすべてのダーティバッファを定期的にディスクにダンプします。 あなたによって設定された復旧時間しきい値が満たされています。汚れたブロックの総数が許容できない復旧時間を引き起こします。空きブロックが必要であり、所与の検索量の後に空きブロックが見つからない。 特定のデータ定義言語(DDL)コマンド。 (DDLコマンドは、データベース内のオブジェクトを定義するSQL文です。)

3秒ごと。

その他の理由。アルゴリズムは複雑で、各ソフトウェアリリースで発生するすべての変更を確実に把握することはできません。

  • 実際には、データベースの変更が多い環境では、データベースの書き込みが非常に忙しいです。

Oracle 12cでのデータベース・バッファ・キャッシュの基本 - ダミー

エディタの選択

Squarespaceでサイトの活動を追跡および監視する方法 - ダミー

Squarespaceでサイトの活動を追跡および監視する方法 - ダミー

SquarespaceのWebサイトは、どのようなコンテンツが読者を引き付けるのかを知ることによって、より多くの訪問者を引き付けるのに役立ちます。訪問者があなたのサイトにどのようにして最も人気のあるコンテンツになったかということから、より多くの訪問者を誘導するのに役立ちます。訪問者がどこから来たかを見つける方法

Squarespace 6モードの編集 - ダミー

Squarespace 6モードの編集 - ダミー

Squarespace 6で特定のタスクを実行する場所を知ることは、ウェブサイトを構築したことのない人や、Squarespaceを初めて使用した人のための混乱した決定です。プレビュー:あなたのサイトとコンテンツがどのように見えるかを確認します。

エディタの選択

あなたのLinkedInプロフィールに特許を追加する - ダミー

あなたのLinkedInプロフィールに特許を追加する - ダミー

特許は専門的な業績であり、LinkedInプロフィール。あなたが自分の名前に特許を持つ発明者である場合、特許セクションはあなたの作品を紹介する場所です。 Patentsセクションに特許を追加する方法は次のとおりです。LinkedInプロファイルを開きます。特許セクションが既にある場合は...

あなたのLinkedInプロフィールにプロジェクトを追加する - LinkedInプロフィールのダミー

あなたのLinkedInプロフィールにプロジェクトを追加する - LinkedInプロフィールのダミー

プロジェクトセクションは注目に値する場所です企業主導のイニシアチブへのあなたの関与。エクスペリエンスセクションのシンプルな弾丸よりも大きなスポットライトを必要とする長距離、高歩留まりのプロジェクトは、プロジェクトセクションに属します。

あなたのLinkedInプロフィールに出版物を追加する - ダミー

あなたのLinkedInプロフィールに出版物を追加する - ダミー

LinkedInの出版物セクションは、作業。このセクションは、あなたのライティング能力にスポットを当て、知識を紹介するのに最適な場所です。このセクションはあなたが書いた本のためのものだとは思わないでください。

エディタの選択

Google SketchUp 8でシーンを作成する方法 - ダミー

Google SketchUp 8でシーンを作成する方法 - ダミー

Google SketchUpでシーンを作成する方法は、あなたのモデルのスナップショット。ビューを保存するためにシーンを作成し、そのモデルで作業を続けてからそのシーンに戻っても、モデルはシーンを作成したときの状態に戻りません。カメラの位置は...

Google SketchUp 8でシーンを使ってセクションアニメーションを作成する方法 - ダミー

Google SketchUp 8でシーンを使ってセクションアニメーションを作成する方法 - ダミー

アニメーションを作成するためのシーンは、Google SketchUpモデルを見せてくれる便利で印象的な方法です。基本的な考え方は、シーンを使用してセクションプレーンがモデル内を移動するアニメーションを作成できることです。このテクニックを使用する理由はいくつかあります:...

Google SketchUp 8で新しい地形モデルを作成する方法 - Googleでモデリングするときのダミー

Google SketchUp 8で新しい地形モデルを作成する方法 - Googleでモデリングするときのダミー

SketchUp、地形を作成する必要があるかもしれません。建物の土地のパッチをモデリングしている場合でも、セントラルパークを再設計している場合でも、既存のデータから地形をモデル化することができます。既存のデータは通常輪郭線またはトポ・ラインの形で到着します。