てきとーにのんびりだらだら

毎日更新目標!SEブログ!

今日は6時半起き!始業前から勉強始めて質のいい一日にするぞー!

おつおつー^^
えーと、今朝の夢はと。
飛行機乗ってて何かに追いかけられてて、その追いかけられてる人と降りるタイミングずらせたっていう夢と旅の目的地が三陸のどこかで電車が一向に来なくて旅行諦めたら実は数分後に来ていたっていう夢。 あとは、なぜか中学で楽器の演奏会があってフルートをなぜかやっててフルートの接合部分の滑りがよくておとしちゃったり、練習は当日まで全然やってなかったりっていう夢。
えーなんですか(´・_・`)
昨日いい夢見て寝ようと願って寝たのにこの有様は笑
3つの夢すべて悪夢笑
これはちょっとなにかおかしいですね笑
もし夢の内容をいいものに変えられるなら朝から変にストレス抱えることはないでしょうということでネットで記事を探してみました笑(執念


意外とない⁉いい夢を見る方法


冒頭でも話したとおり、悪夢が続くなかいい夢みたいと思い安易な考えで「夢」「幸せ」で調べるとずらっと怪しいサイトが上がっていたため、
検索するワードをそのまま変えずにCiNiiで検索をかけてみましたが、それも不発。
逆に悪夢などで調べてみると「コロナウイルスパンデミック・ドリーム」が検索にひっかかりました。
論文に出ていた内容とかではなく記事にあったものなので、信憑性に欠けますがウィキペディアにも一応ありました。

コロナウイルスパンデミック・ドリーム(英: Coronavirus Pandemic Dream)は、新型コロナウイルス感染症(COVID-19)の流行の影響により、悪夢や睡眠障害が増加する現象[1]。

ja.wikipedia.org

ウィキペディアによると
『その原因として、それ以前の日常的な環境や日々の刺激がなくなったことで、インスピレーションが不足し、潜在意識が夢の題材を過去の記憶からより多く引き出すことを余儀なくされている、と考える夢の専門家もいる。』
そうなので、これは自分の夢と共通してるかもなんて思いました^^;
解決方法は日々家にいても刺激を得ること?なんて思っているため明日のブログは家でも刺激を感じられるにはどうしたらいいか調べてみようかなーなんて思っています!
では今日も勉強に移りましょう!
※5章が終わりませんでした、原因は理解しようと少し調べものをしてしまったこと、業後は休みの時間はとっていなかったもののほかのところで無駄に動画を見てしまったことが原因です。


oracleインスタンス管理について


oracleデータベースの常駐部分であるインスタンスについて解説しようと思います。
SGAとバックグラウンドプロセスから構成され、インスタンスを起動させておかないとデータベースの使用はできません。 インスタンスを構成するSGAとバックグラウンドプロセスはあくまで総称であってさらにその中でも様々なメモリー領域やプロセスに分かれます。
ちなみに、バッググラウンドプロセスはサーバープロセスとは異なり特定の接続に限定されないプロセスで、SGAはインスタンス起動時に割り当てられるメモリ領域です。 SGAにはプロセス間で共有されるデータが保管されます。 また内容については後程詳しく見ていきますが、インスタンスはデータベースファイルと対となる必要があります、1対1の関係です。

バッググラウンドプロセスとSGAの主な種類

以下にそれぞれの具体的なプロセスとコンポーネントを表でまとめました。

コンポーネント 説明
データベースライター(DBWn) データベースバッファキャッシュ内の更新済ブロックをデータファイルに書き込む
ログライター(LGWR) REDOログバッファのREDOデータ(更新履歴情報)をREDOログファイルに書き出す
チェックポイント(CKPT) DBWnに対してブロック書き出し指示を出す。制御ファイルにチェックポイント情報を書き込む
システムモニター(SMON) インスタンス異常終了の場合に、次回インスタンス起動時にデータベースファイルの整合性を復旧する処理を実行する
プロセスモニター(PMON) プロセスが以上終了した場合、そのプロセスが使用していたデータやリソースの後処理(クリーンアップ)を実行する
管理モニター(MMON) 性能分析などで使用される統計情報を定期収集する
アーカイバ(ARCn) ログスイッチの発生後、REDOログファイルのREDOデータをアーカイブログファイルとしてコピーする
プロセス名 説明
データベースバッファキャッシュ データファイルから読み込んだブロックをキャッシュする。更新済ブロックを一時的に保管(バッファ機能)
共有プール 解析済のSQLデータディクショナリの情報などをキャッシュする
REDOログバッファ REDOログファイルに書き込む前のREDOデータを一時的に保管する
Javaプール Java言語で記述されたストアドプログラムの実行に使用される
ラージプール バックアップや並列処理などの作業領域として使用される

この中のうちの一部を説明していきたいと思います(黒本に則り)

データベースバッファキャッシュ

このコンポーネントはブロックの読み出し書き込みの性能向上のためのメモリー領域です。表や索引のデータはブロックとしてデータファイルに記録されています。サーバープロセスとデータファイルの間にあるのがデータバッファキャッシュです。
データバッファキャッシュの機能としてキャッシュ機能とバッファ機能(遅延書き込み)がありこれらが性能向上に関係しています。
キャッシュ機能はサーバープロセスからブロックをデータファイルから読み出した際にデータバッファキャッシュにキャッシュしておくことで2回目もし同じブロックを読み出すというときにキャッシュから読み出せます。
バッファ機能についてはその逆でサーバープロセスが書き込みを行う際、データファイルのブロックではなくデータベースバッファキャッシュのブロックに書きこみます。 その後DBWnが書き込みを行います。
これを遅延書込みといいますが、これによってブロックの更新についてデータバッファキャッシュの更新だけで済みます。また、ストレージ装置(データファイル)の処理能力を超えるようなブロック更新の場合、一度にすべてではなくタイミングずらして書込みを行うことができ処理負荷を平準化できます。

REDOログバッファ、共有プール

このコンポーネントはサーバープロセスがブロック更新するタイミングでREDOデータを生成しますが、そのREDOデータをトランザクションコミット(更新を確定)までの間、一時保管しておく領域となります。 REDOデータを残す理由としてはデータベースバッファキャッシュへ保管される際にインスタンスで障害があるとブロックの更新が失われてしまうためです。
LGWRはREDOログバッファからREDOログファイルにデータを移す際に使用されます。 共有プールは解析済のSQLの情報をキャッシュし、同一のSQL実行の場合の時間短縮やサーバーへの負荷の軽減へつなげる役割や、データディクショナリのキャッシュの役割がある。
データディクショナリとはデータベースの内部管理情報のことで様々な処理でこの情報にアクセスをしている。ちなみにデータディクショナリはSYSTEM1表領域に格納されています。

PGA(プログラムグローバル領域)

PGAとはプロセスごとの専用メモリー領域で、プロセス専用のデータを保管します。プロセスごとのPGAは共有されませんが、SGAはデータの共有が可能です。