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

:テストデータの生成

最終更新日:Aug 16, 2024

データ管理 (DMS) は、強力なアルゴリズムエンジンでサポートされるテストデータ生成機能を提供します。 この機能を使用して、ランダム値、リージョン名、仮想IPアドレスなど、さまざまなテストデータを一度に生成できます。 これにより、テストデータを簡単に準備できます。 このトピックでは、テストデータの生成機能と、テストデータの生成方法について説明します。

前提条件

データベースのタイプは次のいずれかです。

  • MySQL: ApsaraDB RDS for MySQLPolarDB for MySQLApsaraDB MyBase for MySQLPolarDB-XAnalyticDB for MySQL、およびサードパーティのMySQLデータベース

  • SQL Server: ApsaraDB RDS for SQL ServerApsaraDB MyBase for SQL Server、およびサードパーティのSQL Serverデータベース

  • PostgreSQL: ApsaraDB RDS for PostgreSQLPolarDB for PostgreSQLApsaraDB MyBase for PostgreSQLAnalyticDB for PostgreSQL、およびサードパーティのPostgreSQLデータベース

  • MariaDB: ApsaraDB RDS for MariaDBおよびサードパーティのMariaDBデータベース

  • ApsaraDB for OceanBaseのMySQLモード

  • PolarDB for PostgreSQL (Oracleと互換)

背景情報

ほとんどの場合、機能テストまたはパフォーマンステストにはテストデータが必要です。 次の方法を使用して、テストデータを生成できます。

  • テストデータを書き込みます。 この方法は非効率的であり、大量のテストデータが必要なシナリオには適用されません。

  • 既存のスクリプトを維持する。 この方法は高価である。 テストごとにスクリプトを変更する必要があります。 さらに、この方法を使用して生成されたデータは、離散性要件を満たすことができません。

  • オンライン環境からデータをエクスポートし、オフライン環境にデータを書き込みます。 この方法は安全ではなく、データリークを引き起こす可能性があります。

上記の方法は、テストデータが頻繁に必要とされる実際の開発プロセスの要件を満たすには不十分です。 このプロセスには、高いデータセキュリティと制御可能なデータ離散性が必要です。 また、より建設的な作業の時間を節約するために高い効率が必要です。 このため、DMSにはテストデータの生成機能が用意されており、テストデータを簡単に生成できます。

使用上の注意

  • この機能を使用して、一度に1つのテーブルのテストデータを生成できます。 複数のテーブルのテストデータを生成するには、この機能を複数回使用します。

  • 一度に最大百万行のデータを生成することができる。

  • 次のパフォーマンスメトリックに基づいてテストデータを生成できます。 大量のデータが短時間で生成されることによるデータベースの過負荷を防ぐために、トラフィックスロットリングが有効になります。

    • 約60秒で4つのフィールドに対して百万行のデータを生成することができる。

    • 約120〜180秒で40フィールドに対して百万行のデータを生成することができる。

手順

  1. DMSコンソールV5.0 にログインします。

  2. 上部のナビゲーションバーで、データベース开発 > 環境建設 > テストデータ生成を選択します。

    説明

    DMSコンソールをシンプルモードで使用する場合は、コンソールの左上隅にある2023-01-28_15-57-17.pngアイコンの上にポインターを移動し、[すべての機能] > [データベース開発] > [環境構築] > [テストデータ生成] を選択します。

  3. Test Data GenerationTicketsページをクリックします。テストデータ生成右上隅にあります。

    説明

    または、テストデータを生成するデータベースのSQLコンソールに移動し、テーブルリストのテーブルを右クリックして、[データプラン] > [テストデータの生成] を選択します。

  4. [チケット申請] ページで、必要に応じて申請ステップでパラメーターを設定し、[送信] をクリックします。 下表にパラメーターを示します。

    パラメーター

    説明

    タスク名

    タスクの名前。 将来の検索を容易にし、承認者がチケットの目的を理解するのに役立つ名前を入力します。

    データベース名

    指定されたデータベースインスタンス内の特定のデータベースの名前。 DMSでデータベースを管理する権限が必要です。 フィールドにデータベース名のプレフィックスを入力し、一致する結果からデータベースを選択します。

    テーブル名

    テストデータを生成するテーブル。 フィールドにテーブル名のプレフィックスを入力し、一致する結果からテーブルを選択します。 複数のテーブルを指定できます。

    アルゴリズムの設定

    テストデータの生成に使用するアルゴリズム。 このパラメーターは、[テーブル名] パラメーターを指定した後にのみ表示されます。 フィールドごとにテストデータの生成方法を設定できます。 詳細については、このトピックの「アルゴリズム」をご参照ください。

    生成された行数

    生成するテストデータの行数。

    競合処理

    DMSがデータ競合を処理する方法を指定します。 有効な値:

    • データ競合が発生した場合のスキップ: プライマリキーまたは固有キーのデータ書き込み中にデータ競合が発生した場合、DMSは競合するデータレコードをスキップし、他のデータレコードの書き込みを続行します。

    • データ競合が発生した場合の置換: 主キーまたは一意キーのデータ書き込み中にデータ競合が発生した場合、DMSは元のデータレコードを上書きし、他のデータレコードの書き込みを続行します。

    利害関係者の変更

    チケットに関与する利害関係者。 ビジネス要件に基づいて利害関係者を選択できます。 チケットの承認プロセスに参加しているユーザーを含め、チケットに関連するユーザーのみがチケットの詳細を表示できます。

  5. チケットを提出した後、チケットが承認されるのを待ちます。 チケットが承認されると、システムは自動的にテストデータを生成し、生成されたデータを宛先データベースに書き込みます。

    説明

    既定では、テストデータを生成するために送信されるチケットは、データベース管理者 (DBA) によって承認されます。 詳細については、「テストデータ生成」をご参照ください。

アルゴリズム

[ランダム][カスタマイズ][列挙] のいずれかのアルゴリズムを使用してテストデータを生成できます。

  • ランダム

    • フィールドがINTEGERタイプの場合、2つのビルドタイプが提供されます。 ビルド型パラメーターを自己増加シーケンスに設定した場合、[開始] 値[ステップ] パラメーターを設定する必要があります。 ビルド型パラメーターを [間隔数] に設定した場合、最小値と最大値のパラメーターを設定する必要があります。

    • フィールドがTEXTタイプの場合、2つのビルドタイプが提供されます。 ビルド型パラメーターを可変長文字列に設定した場合、最小長、最大長、および文字範囲パラメーターを設定する必要があります。 ビルド型パラメーターを [文字列を繰り返さない] に設定した場合は、[オプション] パラメーターを設定する必要があります。

    • フィールドがDATETIMEタイプの場合、指定された時間範囲に基づいてランダムな日付と時刻の値を生成できます。

  • カスタマイズ

    カスタマイズアルゴリズムを使用して、個人情報、地理的位置情報、および業界関連の標準データ情報などのTEXTタイプのテストデータのみを生成できます。

  • 列挙

    選択するDMSの値をいくつか追加する必要があります。

    説明

    列挙アルゴリズムを使用して、INTEGER、TEXT、およびDATETIMEタイプのフィールドのテストデータを生成できます。

次に何をすべきか

データベースのテストデータが生成されたら、次の操作を実行できます。