データベースシャーディングとテーブルパーティショニングを含むシナリオでのデータのクエリとメンテナンスは、複雑になる場合があります。Data Management Service (DMS) は、その論理データベースと論理テーブル機能によってこのプロセスを簡素化します。この機能を使用すると、1 つ以上の物理データベースを単一の論理データベースにグループ化し、分散データに対するクエリと管理のための統一されたビューを提供できます。
背景情報
データベースシャーディングとテーブルパーティショニングを使用するアーキテクチャでは、ビジネスデータはルーティングアルゴリズムに基づいて複数の物理データベース内の多数のテーブルに分散されます。このアーキテクチャでは、多くの場合、次の課題が生じます。
必要な情報を見つけるためにすべてのテーブルをスキャンする必要があることが多いため、データのクエリと分析が困難です。
変更をすべてのテーブルパーティションに適用する必要があるため、フィールドの追加または削除には多大な労力が必要です。
DMS の論理データベース機能は、これらの課題に対処します。同じ構造と共通の名前プレフィックスを共有する物理テーブルから論理テーブルを作成できます。その後、この論理テーブルを単一のテーブルであるかのように管理できます。
前提条件
物理データベースは、サポートされているタイプである必要があります。
リレーショナルデータベース:
MySQL: ApsaraDB RDS for MySQL、PolarDB for MySQL、ApsaraDB MyBase for MySQL、AnalyticDB for MySQL V3.0、および他のソースからの MySQL データベース
SQL Server: ApsaraDB RDS for SQL Server、ApsaraDB MyBase for SQL Server、および他のソースからの SQL Server データベース
PostgreSQL: ApsaraDB RDS for PostgreSQL、PolarDB for PostgreSQL、ApsaraDB MyBase for PostgreSQL、AnalyticDB for PostgreSQL、および他のソースからの PostgreSQL データベース
OceanBase: ApsaraDB for OceanBase in MySQL mode、ApsaraDB for OceanBase in Oracle mode、および自己管理型の OceanBase データベース
PolarDB for PostgreSQL (Compatible with Oracle)
Oracle
Db2
データウェアハウス: Data Lake Analytics (DLA)、ApsaraDB for ClickHouse、および Hologres
物理データベースをホストするインスタンスは、セキュリティコラボレーションモードで管理する必要があります。詳細については、「コントロールモードの表示」をご参照ください。
管理者、DBA、または物理データベースのデータ所有者である必要があります。詳細については、「システムロールの表示」および「リソースロールの表示」をご参照ください。
論理データベースの構成
DMS 5.0 にログインします。
DMS コンソールの左上隅にある
アイコンにポインターを合わせ、 を選択します。説明DMS コンソールを通常モードで使用する場合は、上部のナビゲーションバーで を選択します。
検索ボックスに物理データベースの名前を入力し、
アイコンをクリックします。対象の物理データベースの [操作] 列で、 を選択します。この物理データベースは、論理データベース内の最初のデータベースシャードになります。
オプション: [論理データベース構成の作成] ダイアログボックスで、さらに物理データベースシャードを追加します。
追加する物理データベースシャードは、次の要件を満たす必要があります:
同じデータベースタイプである必要があります。たとえば、すべてが MySQL データベースである必要があります。
開発 (dev) 環境など、同じ環境タイプに属している必要があります。詳細については、「インスタンス環境」をご参照ください。
1 つの物理データベースは、1 つの論理データベースにのみ構成できます。物理データベースがすでに論理データベース A の一部である場合、論理データベース B に追加する前に、まず A から削除する必要があります。
物理データベースシャードを追加するには:
対象の物理データベースを検索して選択します。
アイコンをクリックして、選択した物理データベースを右側のリストに追加します。説明右側のリストにある物理データベースの順序によって、論理データベース内のシャーディング順序が決まります。論理テーブルのクエリが正しく機能するためには、この順序が実際のシャーディング順序と一致している必要があります。
論理データベースのエイリアスを設定します。
論理データベース名は、論理データベース名 [エイリアス] の形式で表示されます。
データ所有者を設定します。
管理者または DBA の場合、データ所有者の一括編集 をクリックして、1 人以上のユーザーをすべての物理データベースシャードのデータ所有者として割り当てることができます。これらのユーザーは、論理データベースのデータ所有者になります。
説明「論理データベース内の各データベースのデータ所有者は統一されておらず、推奨できません。」というメッセージが表示された場合、物理データベースシャードのデータ所有者が異なることを意味します。すべてのシャードに対して統一されたデータ所有者を割り当てる必要があります。手順については、「権限の管理」をご参照ください。
設定の保存 をクリックします。
次のステップ
論理データベースを構成した後、その中のデータをクエリする前に論理テーブルを作成する必要があります。詳細については、「論理テーブル」をご参照ください。