検索
ホームページデータベースOracleOracleクラシックスキルRACの詳細説明

この記事では、Oracle に関する関連知識を提供します。主に RAC 関連の問題を紹介します。Oracle Real Application Cluster は、クラスタ環境でマルチマシン共有データベースを実現し、アプリケーションの高可用性を確保するために使用されます。皆様のお役に立てれば幸いです。

OracleクラシックスキルRACの詳細説明

推奨チュートリアル: 「Oracle チュートリアル

ビジネス量の増加に対処するには、通常 2 つの一般的な方向性があります。 1 つは 1 台のサーバーの CPU 演算能力、メモリ容量、ディスク容量などを増やす垂直方向の拡張であり、もう 1 つはサーバーの数を増やすことで処理能力を高める水平方向の拡張です。前者は業務の中断や拡張の限界など多くの問題があり、特にインターネットサービスの急速な発展に伴い、単一のサーバーでは業務負荷を満たすのが困難なため、現在は水平拡張が主流となっています。

Oracle RAC とは何ですか?

Oracle Real Application Cluster (RAC、リアルタイム アプリケーション クラスタ) は、クラスタ環境でマルチマシン共有データベースを実現し、アプリケーションの高可用性を確保すると同時に、自動的に並列処理と負荷分散を実現し、フォールトトレランスと障害時のデータベースのブレークポイントフリーリカバリを実現します。ネットワークコンピューティング環境をサポートするOracleデータベースの中核技術です。

共有ストレージ マルチアクティブ クラスター

このアーキテクチャでは、クラスター内の複数のノードが同じデータベース インスタンスを実行し、どこに存在してもデータは完全に一貫しています。ユーザーはノードアクセスから開始し、取得されるデータは同じです。下図はOracle RACの概略図で、3つのノードでクラスタを構成し、データを共有しています。
OracleクラシックスキルRACの詳細説明
RAC の特徴は次のように要約できます:

  • ノードが相互接続されサーバーとして表示される;
  • クラスター ソフトウェアが内部構造を隠す;
  • ディスクは共有されます;
  • 各マシンは同じオペレーティング システムを使用します;
  • 複数のインスタンスが同じデータベースにアクセスします;
  • 各ノード 例があります;
  • データベース ファイルは物理的または論理的アクセスをサポートします;

データの読み取りと書き込みはソフトウェアによって制御されます。 OracleクラシックスキルRACの詳細説明
OracleクラシックスキルRACの詳細説明

#Oracle RAC と単一データベース サーバーの違い
OracleクラシックスキルRACの詳細説明次に示すように、主な違いは RAC であることです。はクラスタ化されたデータベースであり、クラスタ ソフトウェアによって管理されます。
OracleクラシックスキルRACの詳細説明

Oracle RAC ハードウェア アーキテクチャ

クラスタ全体の可用性を確保するために、Oracle RAC には展開中にハードウェアに関する多くの要件があります。ネットワーク・レベルでは、Oracle RAC には、外部アクセス・ネットワーク、内部プライベート・ネットワーク、ストレージ・ネットワークという合計 3 つのネットワーク システムがあります。
OracleクラシックスキルRACの詳細説明 ネットワークへの外部アクセスについては、これ以上言うまでもなく、誰もが理解していると思います。内部プライベート ネットワークは、主に、データ送信、ハートビート、クラスター管理など、Oracle クラスターの内部使用に使用されます。ネットワークのこの部分では、リンク障害によってクラスターの異常が発生しないように、展開中にデュアル スイッチとデュアル物理リンクが必要です。背後にはストレージ ネットワークがあり、RAC クラスタがストレージ リソースにアクセスするために使用します。この部分もリンク冗長です。


OracleクラシックスキルRACの詳細説明別の例は、2 ノード RAC システムである次の図です。ホストからスイッチまで冗長性が実装されていることがわかります。どのデバイスに障害が発生しても、ビジネスには影響しません。共有ストレージには RAID 冗長性が備わっています。

このうち、ホストをノード(Node)と呼びますが、CPUやメモリなどの構成が同一である必要があり、内部ネットワークと外部ネットワークにアクセスするために、それぞれに少なくとも2枚のネットワークカードが必要です。 、共有ストレージに接続するための HBA カードが使用されますが、さらに多くの場合、FC スイッチを介して FC ストレージ アレイに接続されます。共有ストレージは RAC アーキテクチャの中核であり、ほとんどのファイルは共有ストレージにあり、共有ストレージのセキュリティのために多くの機能が開発されています。一般に、光ファイバーは FC インターフェースを介して接続され、SCSI プロトコルを実行します。

Oracle RAC ソフトウェア アーキテクチャ

###以下に示すように、これは 2 ノードの RAC システムであり、データベース ソフトウェアとして Oracle RDBMS、クラスタ ソフトウェアとして Oracle Clusterware が使用されます。ドライバーは主にネットワークカード、HBAカード、ASMLibなどです。 ###

各ノードは同じオペレーティング システムを使用し、パッチ番号などを含むバージョンが一貫している必要があります。たとえば、オペレーティング システム: RHEL AS 4.8 64 ビット、Linux カーネル バージョン: 2.6.9-89.EL。
OracleクラシックスキルRACの詳細説明
Oracle RAC をより深く理解するために、内部ソフトウェア モジュールの構成を見てみましょう。データベース全体のレベルでは大きな違いはありませんが、主な追加点は、仮想 IP (VIP)、ASM、クラスターウェア、クォーラム ディスクです。これらの新しいコンポーネントは連携して動作し、Oracle のマルチアクティブ クラスタ機能を完成させます。

仮想 IP は、アプリケーションがデータベースにアクセスするための入り口です。この IP はどのサーバーにもバインドされていませんが、クラスター内のどのサーバー間でも移動できます。この機能により、サーバーのクラッシュが発生した場合、データベース クラスターは同じインターフェイスを通じてサービスを外部に提供できるようになります。
OracleクラシックスキルRACの詳細説明
ASM と Clusterware はクラスタ管理機能を実装します。ASM はディスクの同時アクセスによるデータ不整合のリスクを回避するためにディスク管理を実装し、Clusterware は Oracle クラスタのソフトウェア プロセスとリソース スケジューリングの管理に使用されます。 。

クォーラム ディスクは、クラスター内のサーバーの異常を判断するために使用されます。クラスター内のノードは、クォーラム ディスクの特定の領域のデータを定期的に更新することで、自身の正常性状態をマークします。他のノードは、このデータに基づいてノードがダウンしているかどうかを判断できます。

論理構造

次の図は Oracle RAC の論理構造であり、内部の各コンポーネントを順番に紹介します。
OracleクラシックスキルRACの詳細説明

DLM: 同時実行制御

各ノードは共有格納データにアクセスするための同等の権限を持ち、Oracle RAC は複数のノードに対して分散ロック管理 (DLM) を使用して同時アクセスを制御します。分散ロック マネージャーは、ノード間の共有リソースの競合を調整する役割を果たします。ノードがデータにアクセスするときは、まず DLM を通じて適用し、他のノードと競合しないことを確認してから使用する必要があります。

OCR: Amnesia

Amnesia: 各ノードにクラスター構成情報のコピーがある場合、構成変更後に同期がないとエラーが発生します。

したがって、クラスターはすべてのノードで共有される構成情報を 1 つだけ持つことができます。 Oracle RAC は、OCR ディスク ファイルを使用して健忘症を解決します。

OCR ディスクはマスター ノードによってのみ変更できます。各ノードは OCR キャッシュ メモリにコピーを持っています。ノードが OCR ディスクを変更する場合は、マスター ノードを要求し、このノード上の OCR プロセスがローカルおよび他のノードの OCR キャッシュの内容を更新します。 OCR ディスクは数時間ごとに定期的にバックアップされます。

投票ディスク: スプリット ブレイン

スプリット ブレイン: クラスター内のノードはハートビート検出を使用して、相手が正常かどうかを確認します。ハートビートに問題がある場合、両方のノードが次のように判断します。相手が間違っていると判断すると、排他的なデータが必要となり、データの整合性が崩れてしまいます。

投票ディスクはノード間のメンバーのステータスを記録するために使用されます。スプリット ブレインが発生すると、投票数が最も多いノードが選択されて制御を獲得し、他のノードは追い出されます。

IO 分離: キックアウトされたノードはデータにアクセスできなくなるため、IO 分離が必要です。 Oracle RAC のメカニズムは、障害が発生したノードを再起動することです。

Cache Fusion Lock

データベース ファイルは共有され、Cache Fusion Lock はクラスタ レベル外でのストレージ共有と同時アクセス制御を解決します。

4 種類のネットワーク

1.パブリック ネットワーク: パブリック IP を使用して、外部データ クエリ、データベース メンテナンス、およびサーバー メンテナンスを提供します。

2.仮想ネットワーク: 仮想 IP を使用してアプリケーション接続を提供し、アプリケーションはこの IP を使用します。

TCP/IP プロトコルでは、TCP ヘッダーには送信元ポートと宛先ポートが含まれ、IP ヘッダーには送信元 IP と宛先 IP が含まれ、アプリケーション層データベース モニターは IP とポートを記録します。 、データベースまたはモニターに問題があることがわかっています。 TCP/IP プロトコル スタックのタイムアウトは OS によって決定され、OS ごとに定義が異なります。エラーを検出する時間を短縮するために、Oracle RAC は VIP を使用します。仮想 IP はフローティングであり、物理ネットワーク カードにバインドされていません。ノードに障害が発生すると、VIP は正常なノードに移動されます。ただし、正常なノードの監視で VIP が見つかりません。アプリケーションは問題をすぐに検出します。をクリックして、「他の VIP が接続リクエストを送信する」に切り替えます。

3.プライベート ネットワーク: 高速性が必要な RAC ハートビート検出とキャッシュ フュージョン ロックにはプライベート IP を使用します。

4. ストレージ ネットワーク: ストレージ デバイス、HBA カード、FC ネットワークで構成されます。

Oracle Clusterware

単一マシンでは、OS のみが上位層のリクエストを処理できますが、複数のマシンがある場合、クラスタ管理ソフトウェア Oracle Clusterware は、マシンが実行される前に他のノードへのリクエストをインターセプトします。 OS カーネル、その他 ノードのクラスタウェア通信によりリクエストが完了します。

アプリケーション層: RDBMS

アプリケーション層は複数の CRS リソースで構成され、各リソースは複数のプロセスで構成される完全なサービスです。 LMON(ロックモニター)はCRSリソースを監視し、異常発生時に再起動・切り替えを行うことでOracle RACサービスの高可用性を確保します。

キャッシュ フュージョン

キャッシュ フュージョンは文字通り理解できます。実際、キャッシュ フュージョンは各ノードのキャッシュを均一に管理し、読み取りのたびにディスクを操作する必要を回避し、高速化することです。 IOパフォーマンス。プライベート ネットワークは非常に高速であるため、ディスクの読み取りよりも高速です。さまざまな場所からデータ ブロックを読み取る時間:

  • ローカル キャッシュ: 0.01 ミリ秒
  • 他のノードへのネットワーク アクセス キャッシュ: 2.5 ミリ秒
  • ディスク: 14 ミリ秒。しかし現在、ストレージ側に SSD またはオールフラッシュ アレイが搭載されているため、レイテンシは約 1 ミリ秒です。したがって、オールフラッシュ アレイでは、Cache Fusion はおそらく無意味です。

Cache Fusion は GCS (グローバル キャッシュ サービス) を通じて管理され、キャッシュを 1 つの大きなキャッシュとして扱います。

#読み取りキャッシュ プロセス

OracleクラシックスキルRACの詳細説明##書き込みキャッシュ プロセス

##書き込みディスク プロセスOracleクラシックスキルRACの詳細説明

#ロード バランシング

OracleクラシックスキルRACの詳細説明ユーザーが RAC に対してさまざまなリクエストを開始すると、ロード バランシングはタスクをさまざまなマシンに割り当てます。

ユーザーによる割り当て

複数のマシンからランダムに選択されたものですか?いいえ! RAC は各マシンのステータスに基づいてタスクを動的に割り当てます。データベースの実行中に、PMON バックグラウンド プロセス ノードの負荷情報がリスナーに登録され、1 ~ 10 分ごとに更新されます。各ノードのリスナーは、すべてのノードの負荷ステータスを認識し、最もビジーなノードにクライアント要求を送信します。

サービスによる割り当て

ユーザーによる割り当てには、Cache Fusion が忙しくなる可能性があるという欠点があります。 RAC ノードのデータは共有されるため、全員が Cache Fusion を介してデータを同期します。RAC のパフォーマンスは Cache Fusion のパフォーマンスによって大きく制限されます。高価な InfiniBand を使用するなどプライベート ネットワークをより強力にするか、もう 1 つはキャッシュ フュージョンのトラフィックを削減し、実際にノード インスタンス間の依存関係を減らすことです。ユーザーに応じた割り当てのメカニズムは、その後の解決策に役立ちません。

つまり、RAC はサービスに応じたノードの割り当てをサポートしています。たとえば、生産と販売に異なるノードが使用されます。独自のデータは独自のキャッシュにあるため、他のノードにアクセスする必要はありません。パフォーマンスが向上します。

3 種類のクラスター

負荷分散クラスター: 特定のアルゴリズムに従ってリクエストをさまざまなメンバーに割り当てます;

ハイ パフォーマンス クラスター (HPC、ハイ パフォーマンス クラスター) : Tianhe Computer など、強力なコンピューティング性能と非常に高価な、ベクトル プロセッサなどの特殊なソフトウェアとハ​​ードウェアで構成される素晴らしいマシンを採用;
  • 高信頼性クラスター (HAC: High Availability Cluster、Failover Cluster): 非常に高い信頼性が高く、ハードウェアとソフトウェアの耐障害性が非常に高く、日常的に使用されるデータベース クラスターはこのカテゴリに分類されます。
  • 高信頼性クラスター
デュアルマシン ホット スタンバイ

通常、そのうちの 1 台がアイドル状態でスタンバイ状態になっています。動作中の 1 台に障害が発生した場合、 、彼に交代交代をさせます。

デュアルマシンの相互バックアップ
OracleクラシックスキルRACの詳細説明
通常、両方のマシンが独自の作業を行いますが、一方のマシンがハングアップすると、もう一方のマシンも停止してしまうため、一部のリソースを予約する必要があります。失敗するのは二人の仕事です。

2台二重化
OracleクラシックスキルRACの詳細説明
例: 社長と次兄が一緒にお店をオープンしており、通常は社長が主に販売を行っています。肉まん、二代目親分が肉まんを販売 二代目は主に豆乳を販売 長兄が困ったら二代目が肉まんと豆乳を販売 二代目が失敗したら長兄が肉まんを販売再びパンと豆乳。

Baozi Soy Milk is data. お互いをケアすることをハートビート検出と呼び、お互いの作業を引き継ぐことをフェイルオーバーと呼びます。 2人の兄弟が突然目が見えなくなり、耳が聞こえなくなり、もう一方が今仕事をしているかどうか分からず、お互いがもう一方の仕事を引き継がなければならないと考える場合、これをスプリットブレインと呼び、その後、父親などの第三者が介入します。問題を解決するには、が必要です。これは投票と呼ばれます。または、2 人の妻に来て、そのうちの 1 人を連れ去るように依頼します。これは IO 分離と呼ばれます。 Oracle RAC はこのカテゴリに属し、最高のパフォーマンスと最も複雑なシステムを備えています。

推奨チュートリアル: 「

Oracle 学習チュートリアル OracleクラシックスキルRACの詳細説明

以上がOracleクラシックスキルRACの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はCSDNで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
oracle怎么查询所有索引oracle怎么查询所有索引May 13, 2022 pm 05:23 PM

方法:1、利用“select*from user_indexes where table_name=表名”语句查询表中索引;2、利用“select*from all_indexes where table_name=表名”语句查询所有索引。

什么是oracle asm什么是oracle asmApr 18, 2022 pm 04:16 PM

oracle asm指的是“自动存储管理”,是一种卷管理器,可自动管理磁盘组并提供有效的数据冗余功能;它是做为单独的Oracle实例实施和部署。asm的优势:1、配置简单、可最大化推动数据库合并的存储资源利用;2、支持BIGFILE文件等。

Oracle怎么查询端口号Oracle怎么查询端口号May 13, 2022 am 10:10 AM

在Oracle中,可利用lsnrctl命令查询端口号,该命令是Oracle的监听命令;在启动、关闭或重启oracle监听器之前可使用该命令检查oracle监听器的状态,语法为“lsnrctl status”,结果PORT后的内容就是端口号。

oracle全角怎么转半角oracle全角怎么转半角May 13, 2022 pm 03:21 PM

在oracle中,可以利用“TO_SINGLE_BYTE(String)”将全角转换为半角;“TO_SINGLE_BYTE”函数可以将参数中所有多字节字符都替换为等价的单字节字符,只有当数据库字符集同时包含多字节和单字节字符的时候有效。

oracle查询怎么不区分大小写oracle查询怎么不区分大小写May 10, 2022 pm 05:45 PM

方法:1、利用“LOWER(字段值)”将字段转为小写,或者利用“UPPER(字段值)”将字段转为大写;2、利用“REGEXP_LIKE(字符串,正则表达式,'i')”,当参数设置为“i”时,说明进行匹配不区分大小写。

oracle怎么删除sequenceoracle怎么删除sequenceMay 13, 2022 pm 03:35 PM

在oracle中,可以利用“drop sequence sequence名”来删除sequence;sequence是自动增加数字序列的意思,也就是序列号,序列号自动增加不能重置,因此需要利用drop sequence语句来删除序列。

oracle怎么查询数据类型oracle怎么查询数据类型May 13, 2022 pm 04:19 PM

在oracle中,可以利用“select ... From all_tab_columns where table_name=upper('表名') AND owner=upper('数据库登录用户名');”语句查询数据库表的数据类型。

Oracle怎么修改sessionOracle怎么修改sessionMay 13, 2022 pm 05:06 PM

方法:1、利用“alter system set sessions=修改后的数值 scope=spfile”语句修改session参数;2、修改参数之后利用“shutdown immediate – startup”语句重启服务器即可生效。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません