56 シャード・データベースのデプロイ
シャード・データベースのデプロイでは、必要なソフトウェア・コンポーネントのインストール、カタログ、ロール、シャード・データベースの作成、高可用性のためのレプリケーションの構成、およびシャード・データベースのスキーマの作成のための前提条件と手順について説明します。
次の各項で、シャード・データベースのデプロイに必要な概念とタスクについて説明します。
- SDBのデプロイの概要
Oracle Shardingには、シャード・データベース(SDB)を自動的にデプロイする機能があり、これにはシャードとレプリカの両方が含まれます。 - Oracle Shardingの前提条件
ソフトウェアをインストールする前に、Oracle Shardingのハードウェア、ネットワークおよびオペレーティング・システムの要件を確認してください。 - Oracle Databaseソフトウェアのインストール
シャード・カタログまたはデータベース・シャードをホストする各システムにOracle Databaseをインストールします。 - シャード・ディレクタ・ソフトウェアのインストール
シャード・ディレクタをホストする各システムにグローバル・サービス・マネージャ・ソフトウェアをインストールします。 - シャード・カタログ・データベースの作成
シャード・カタログをホストする非CDBのOracle DatabaseデータベースをDBCAを使用して作成します。 - Oracle Shardingの管理およびルーティング層のセットアップ
シャード・カタログ、シャード・ディレクタおよびシャードを相互に通信するように構成する必要があります。 - システム管理のSDBの作成
- コンポジットSDBのデプロイ
コンポジットSDBをデプロイするには、必要なOracle Shardingソフトウェア・コンポーネントをインストールし、コンポジットSDBにオブジェクトを構成して、スキーマを作成する必要があります。
親トピック: シャード・データベースの管理
56.1 SDBのデプロイの概要
Oracle Shardingには、シャード・データベース(SDB)を自動的にデプロイする機能があり、これにはシャードとレプリカの両方が含まれます。
SDB管理者は、トポロジ(リージョン、シャード・ホスト、レプリケーション・テクノロジ)を定義し、GDSCTLコマンドライン・インタフェースを使用して宣言的を指定することでDEPLOYコマンドを起動します。
大まかなデプロイメント・ステップは次のとおりです。
-
コンポーネントを設定します。
注意:
Oracle Database 12cリリース1 (12.2.0.1)では、シャードおよびシャード・カタログはすべて非CDBデータベースにする必要があります。-
シャード・カタログをホストする非CDBデータベースを作成します。
-
シャード・ノードにOracle Databaseソフトウェアをインストールします。
-
シャード・ディレクタ・ノードにシャード・ディレクタ(GSM)ソフトウェアをインストールします。
注意:
本番のデプロイメントでは、シャード・カタログ・データベース用にData Guardを構成することをお薦めします。 -
-
次のコマンドを使用してトポロジ・レイアウトを指定します。
-
CREATE SHARDCATALOG
-
ADD GSM
-
START GSM
-
ADD CREDENTIAL
(CREATE SHARD
を使用する場合) -
ADD SHARDGROUP
-
ADD INVITEDNODE
-
シャードごとに
CREATE SHARD
(またはADD SHARD
)
-
-
DEPLOY
を実行し、SDB内のシャードにアクセスするためのグローバル・サービスを追加します。-
DEPLOY
-
ADD SERVICE
-
Oracle Database 12cリリース1 (12.2.0.1)では、2つのレプリケーション・スキーマがサポートされています。SDB管理者は、トポロジを指定する際にData GuardまたはActive Data Guardのいずれかを選択できます。
デプロイメント方法: CREATE SHARD
Oracle Shardingでは、2つのデプロイメント方法がサポートされています。1つ目はCREATE SHARD
コマンドを使用する方法で、Oracle Shardingの管理層によってシャードとレプリケーション構成の作成が自動的に実行されます。
DEPLOY
コマンドは、シャードを作成します。これは、DBMS_SCHEDULER
パッケージ(シャード・カタログで実行)を使用して実行され、このパッケージはリモート・シャード・ホストのスケジューラ・エージェントと通信します。
すると、エージェントがDBCAおよびNETCAを起動してシャードおよびローカル・リスナーを作成します。プライマリ・シャードが作成されると、対応するスタンバイ・シャードがRMAN DUPLICATE
コマンドを使用して作成されます。プライマリ・シャードおよびスタンバイ・シャードが作成されると、DEPLOY
コマンドはファスト・スタート・フェイルオーバー(FSFO)を有効にしてData Guard Brokerを構成します。FSFOオブザーバがリージョナル・シャード・ディレクタで自動的に起動されます。
注意:
すべてのシャードについて、アーカイブ・ログおよびフラッシュバックは有効になります。これは、フェイルオーバー時にFSFOオブザーバがスタンバイの自動再インスタンス化を実行するために必要です。デプロイメント方法: ADD SHARD
2つ目はADD SHARD
コマンドを使用するデプロイメント方法です。データベース作成の標準で、事前に作成した独自のデータベースを使用してSDBをデプロイする必要がある場合、ADD SHARD
デプロイメント方法は、事前に作成したデータベース・シャードを追加するだけでこの要件に対応します。
ADD SHARD
コマンドをデプロイメントに使用する場合、DEPLOY
コマンドは、Data Guard、ブローカおよびファスト・スタート・フェイルオーバーの構成を処理します。また、追加されるシャード用にData Guardを事前に構成したシナリオにも対処します。
親トピック: シャード・データベースのデプロイ
56.2 Oracle Shardingの前提条件
ソフトウェアをインストールする前に、Oracle Shardingのハードウェア、ネットワークおよびオペレーティング・システムの要件を確認してください。
-
シャードのハードウェアおよびオペレーティング・システムの要件は、Oracle Database 12cリリース2がサポートされる要件と同じです。これらの要件の詳細は、Oracle Databaseのインストール・ドキュメントを参照してください。
-
シャード・カタログおよびシャード・ディレクタのハードウェア、ソフトウェアおよびオペレーティング・システムの要件は、グローバル・データ・サービス・カタログおよびグローバル・サービス・マネージャの要件と同じです。これらの要件の詳細は、Oracle Database Global Data Services概要および管理ガイドを参照してください。
-
ネットワーク要件は低遅延GigEです。
親トピック: シャード・データベースのデプロイ
56.3 Oracle Databaseソフトウェアのインストール
シャード・カタログまたはデータベース・シャードをホストする各システムにOracle Databaseをインストールします。
Oracle Databaseをインストールする前に、シャード・データベース、シャード・カタログおよびシャード・ディレクタをホストするすべてのシステムでオペレーティング・システムのユーザーを作成し、それらをDBAグループに割り当てます。ユーザーがsu
を実行することを許可し、後の手順で使用できるように資格証明をメモします。
オペレーティング・システム・ユーザーの構成の詳細は、Oracle Databaseインストレーション・ガイドfor Linuxまたは使用しているプラットフォームのインストール・ガイドを参照してください。
- シャード・カタログまたはデータベース・シャードをホストするすべてのシステムにOracle Databaseインストーラをダウンロードします。
- シャード・カタログまたはシャード・データベースをホストするすべてのシステムにOracle Databaseをインストールします。
関連項目:
Oracle Databaseのサイレント・インストールのレスポンス・ファイルの使用方法の詳細は、Oracle Databaseインストレーション・ガイドfor Linuxを参照してください
親トピック: シャード・データベースのデプロイ
56.4 シャード・ディレクタ・ソフトウェアのインストール
シャード・ディレクタをホストする各システムにグローバル・サービス・マネージャ・ソフトウェアをインストールします。
親トピック: シャード・データベースのデプロイ
56.5 シャード・カタログ・データベースの作成
シャード・カタログをホストする非CDBのOracle DatabaseデータベースをDBCAを使用して作成します。
親トピック: シャード・データベースのデプロイ
56.6 Oracle Shardingの管理およびルーティング層のセットアップ
シャード・カタログ、シャード・ディレクタおよびシャードが相互に通信するように構成する必要があります。
親トピック: シャード・データベースのデプロイ
56.7 システム管理のSDBの作成
次の各トピックでは、システム管理のSDBを作成するタスクを説明します。
- システム管理のSDBのデプロイ
システム管理のSDBをデプロイするには、シャードグループおよびシャードを作成し、シャードとして使用するデータベースを作成および構成し、DEPLOY
コマンドを実行してロールベースのグローバル・サービスを作成します。 - システム管理のSDBのスキーマの作成
SDBのスキーマ・ユーザー、表領域セット、シャード表および重複表を作成します。DDLがすべてのシャードに伝播されたことを確認し、シャードに接続されている状態で、ファスト・スタート・フェイルオーバーを使用した自動Data Guard Broker構成を検証します。 - システム管理のSDBのデモ・アプリケーション
システム管理のシャード・データベース(SDB)のデモ・アプリケーションは、オンライン小売業者のワークロードをシミュレートしています。システム管理(自動シャーディング)のSDB構成のセットアップを検証するために使用してください。また、デモ・アプリケーションは、データベース・シャーディングを初めて使用する管理者および開発者にシャーディングの概念の実例を示します。
親トピック: シャード・データベースのデプロイ
56.7.1 システム管理のSDBのデプロイ
システム管理のSDBをデプロイするには、シャードグループおよびシャードを作成し、シャードとして使用するデータベースを作成および構成し、DEPLOY
コマンドを実行してロールベースのグローバル・サービスを作成します。
システム管理のシャーディングでは、ユーザーがデータをシャードにマップする必要はありません。コンシステント・ハッシュによるパーティション化を使用して、データが自動的にシャード間に分散されます。パーティション化アルゴリズムにより、データがシャード間に均一およびランダムに分散されます。システム管理のSDBの概念に関する詳細は、システム管理のシャーディングを参照してください。
関連項目:
GDSCTLコマンドの使用方法については、Oracle Database Global Data Services概念および管理ガイドを参照してください
親トピック: システム管理のSDBの作成
56.7.2 システム管理のSDBのスキーマ作成
SDBのスキーマ・ユーザー、表領域セット、シャード表および重複表を作成します。DDLがすべてのシャードに伝播されたことを確認し、シャードに接続されている状態で、ファスト・スタート・フェイルオーバーを使用した自動Data Guard Broker構成を検証します。
関連項目:
GDSCTLコマンドの使用方法については、Oracle Database Global Data Services概念および管理ガイドを参照してください
親トピック: システム管理のSDBの作成
56.7.3 システム管理のSDBのデモ・アプリケーション
システム管理のシャード・データベース(SDB)のデモ・アプリケーションは、オンライン小売業者のワークロードをシミュレートしています。システム管理(自動シャーディング)のSDB構成のセットアップを検証するために使用してください。また、デモ・アプリケーションは、データベース・シャーディングを初めて使用する管理者および開発者にシャーディングの概念の実例を示します。
デモ・アプリケーションでは、システム管理のSDB環境およびCUSTOMER表ファミリがすでに作成されていることを想定しています。この環境では、任意の数のチャンクおよびシャード(データベース・ノード)を持つことができます。実行すると、アプリケーションは最初にProductsにデータを移入してから、管理者がいつでも一時休止できる1時間のワークロードを開始します。このワークロードには、4つのタイプのトランザクション(顧客オーダーの作成、オーダーのリストの検索、新しい製品の作成、およびレポートの生成でのマルチシャード問合せ)が含まれています。シャード・データベース構成のすべての特徴が示されます。
デモ・アプリケーション、および実行方法および監視方法について説明しているREADMEファイルは、My Oracle Supportドキュメント2184500.1からダウンロードできます。
親トピック: システム管理のSDBの作成
56.8 コンポジットSDBのデプロイ
コンポジットSDBをデプロイするには、必要なOracle Shardingソフトウェア・コンポーネントをインストールし、コンポジットSDBにオブジェクトを構成して、スキーマを作成する必要があります。
コンポジット・シャーディング方法では、コンシステント・ハッシュによりパーティション化された表のデータの異なるサブセットについて、複数のシャード領域を作成できます。シャード領域はシャードのセットで、キーの値の範囲またはリストに対応するデータが格納されます。
次の項は、コンポジットSDBをデプロイするためのタスクについて説明しています。
- コンポジットSDBのデプロイ
コンポジットSDBをデプロイするには、シャードグループとシャードを作成し、DEPLOY
コマンドを実行して、ロールベースのグローバル・サービスを作成します。 - コンポジットSDBのスキーマの作成
SDBのスキーマ・ユーザー、表領域セット、シャード表および重複表を作成します。DDLがすべてのシャードに伝播されたことを確認し、シャードに接続されている状態で、ファスト・スタート・フェイルオーバーを使用した自動Data Guard Broker構成を検証します。
親トピック: シャード・データベースのデプロイ
56.8.1 コンポジットSDBのデプロイ
コンポジットSDBをデプロイするには、シャードグループとシャードを作成し、DEPLOY
コマンドを実行して、ロールベースのグローバル・サービスを作成します。
56.8.2 コンポジットSDBのスキーマ作成
SDBのスキーマ・ユーザー、表領域セット、シャード表および重複表を作成します。DDLがすべてのシャードに伝播されたことを確認し、シャードに接続されている状態で、ファスト・スタート・フェイルオーバーを使用した自動Data Guard Broker構成を検証します。
親トピック: コンポジットSDBのデプロイ