すべてのプロダクト
Search
ドキュメントセンター

Data Management:ロックフリーのデータ変更を実行する

最終更新日:Aug 13, 2024

大量のデータが保存されている場合は、実稼働データをアーカイブデータから分離するか、定期的にテーブルからデータを削除する必要があります。 テーブル内のデータを変更する場合、データ管理 (DMS) はテーブルをロックすることなくデータを変更する機能を提供します。 プライマリキー、またはテーブル内のnull値を受け入れない一意のキーに基づいて、データをバッチで変更できます。 この機能により、高い実行効率が保証され、データベースのパフォーマンスとストレージへの影響が最小限に抑えられます。

使用上の注意

ロックフリーデータ変更機能を使用して、SELECT、UPDATE、DELETEなどの単純なSQL文を実行することで、単一のテーブル内のデータのみを変更できます。 この機能を使用して、JOIN操作を含むDELETEステートメントなどの複雑なSQLステートメントを実行して、複数のテーブルのデータを変更することはできません。

手順

次の手順では、big_tableテーブルのlong_text_b列のすべてのデータをランダムな長いテキストに変更する方法について説明します。

  1. 通常のユーザーとしてチケットを起票します。

    1. 最初に 通常のユーザーとしてDMSコンソールV5.0にログインします。

    2. 上部のナビゲーションバーで、[データベース開発] > [データ変更] > [ロックレス変更] を選択します。

      説明

      DMSコンソールをシンプルモードで使用する場合は、コンソールの左上隅にある2023-01-28_15-57-17.pngアイコンの上にポインターを移動し、[すべての機能] > [データベース開発] > [データ変更] > [ロックフリー変更] を選択します。

    3. パラメーターを設定し、[送信] をクリックします。

      次の表に、いくつかのパラメーターを示します。

      パラメーター

      必須

      説明

      データベース

      必須

      データを変更するデータベース。 この例では、poc_devデータベースが選択されています。

      実行方法

      必須

      チケットの実行方法。 有効な値:

      • 監査が承認された後、注文提出者が実行

      • 監査が承認された後、自動実行

      • 最後の監査人の実行

      説明

      DMS管理者の場合、O&Mモジュールの [設定の管理] ページで実行方法を変更できます。 詳細については、「構成管理」をご参照ください。

      変更のSQLステートメント

      必須

      次のUPDATEステートメントを入力します。 このステートメントは、long_text_b列のすべてのデータをbig_tableテーブルのランダムな長いテキストに変更するために使用されます。

      UPDATE `big_table` SET `long_text_b` = 'random long text' WHERE id < 1000000;

      SQLテキスト

      任意

      このパラメーターは、変更パラメーターのSQLステートメントをテキストに設定した場合にのみ使用できます。 SQLエディターで実行するSQL文を入力します。

      説明
      • 複数のSQL文はセミコロン (;) で区切ります。

      • DMSは、チケットの送信時にSQL文の構文が有効かどうかを確認します。 構文が無効な場合、チケットを起票することはできません。

      添付ファイル

      任意

      このパラメーターは、変更パラメーターのSQLステートメントを [添付] に設定した場合にのみ使用できます。 データ変更のために実行されたSQL文を含む添付ファイルをアップロードします。

      説明

      アップロードするファイルは、TXT、ZIP、またはSQLファイルです。 ファイルのサイズは15 MBを超えることはできません。

      ロールバックのSQLステートメント

      任意

      データ変更をロールバックするために実行できるSQL文。

      SQLテキスト

      任意

      このパラメーターは、ロールバック用SQLステートメントパラメーターをテキストに設定した場合にのみ使用できます。 ロールバック用のSQL文を入力します。 このパラメーターに指定するSQL文は、データ変更をロールバックするために使用されます。

      添付ファイル

      任意

      このパラメーターは、ロールバック用SQLステートメントパラメーターを [添付ファイル] に設定した場合にのみ使用できます。 [ファイルのアップロード] をクリックして、ロールバック用に実行されたSQL文を含む添付ファイルをアップロードします。

      説明

      アップロードするファイルは、TXT、ZIP、またはSQLファイルです。 ファイルのサイズは15 MBを超えることはできません。

      利害関係者の変更

      任意

      データ変更に関与する利害関係者。 指定されたすべての利害関係者は、チケットの詳細を表示し、承認プロセスに参加できます。 DMS管理者とデータベース管理者 (DBA) 以外の無関係なユーザーは、チケットの詳細にアクセスできません。

    4. チケットの詳細ページで、[チャンクオプション] をクリックします。 表示されるダイアログボックスで、次のパラメーターを設定し、[変更の送信] をクリックします。

      分批执行配置

    5. チケットの詳細を確認します。

      説明

      チケットの詳細は、[チケットの詳細] ページで確認できます。 DMSは、実行するSQL文を事前にチェックします。 事前チェック項目には、SQL文の構文、SQL文のタイプがセキュリティルールで設定したタイプと一致するかどうか、チケットを送信したユーザーの権限、スキャンする行の推定数が含まれます。

    6. チケットの詳細が確認され、事前チェックが完了したら、[承認の申請] をクリックします。 表示されるメッセージで、[OK] をクリックします。

      重要

      チケットの詳細は、承認のためにチケットを提出する前にのみ変更できます。

  1. DMS管理者としてチケットを承認して実行します。

    1. 最初に DMS管理者としてDMSコンソールV5.0 にログインします。

    2. DMSコンソールのホームページで、[マイチケット] セクションの [保留中のチケット] をクリックします。

    3. [マイチケット] ページで、処理するチケットを見つけ、[チケット番号] 列のチケット番号をクリックします。

    4. [チケットの詳細] パネルで、チケットのデータ変更情報を確認し、[承認] をクリックします。

    5. [承認] ダイアログボックスでコメントを入力し、[送信] をクリックします。

    6. [実行] ステップで、[変更の実行] をクリックします。 表示されるダイアログボックスで、[実行戦略] パラメーターを [実行中] に設定し、[実行の確認] をクリックします。

    7. [実行の確認] をクリックすると、DMSはタスクの実行を開始します。

      説明
      • Execution Strategyパラメーターのデフォルト値はRunning immediallyです。 [実行戦略] パラメーターを [スケジュール] に設定して、チケットの実行時間を選択することもできます。

      • [終了時間の指定] をオンにすると、DMSは指定した終了時間にSQL文の実行を停止します。 これにより、ピーク時にSQL文がビジネスに影響を与えるのを防ぎます。

    8. [実行] ステップで、[詳細] をクリックします。 表示されるダイアログボックスで、[実行の進行状況] をクリックして進行状況を表示します。

  2. データが管理者として更新されていることを確認します。

    1. 最初に DMS管理者としてのDMSコンソールV5.0

    2. 左側のインスタンスリストで、POC_devインスタンスをクリックし、poc_devデータベースをダブルクリックしてSQLConsoleタブに移動します。

    3. [SQLConsole] タブで、SQLエディターに次のSQL文を入力し、SQLエディターの上部にある [実行] をクリックします。 long_text_b列のすべてのデータが更新されます。

      SELECT * FROM 'big_table';

      无锁数据变更验证