Insight Database Testing 3

マニュアル

2022年3月31日(第4版)

1. 商標/免責事項

1.1. 免責事項

本マニュアルに記載された情報は、予告なしに変更される場合があります。株式会社インサイトテクノロジーは、本マニュアルに関していかなる種類の保証(商用性および特定の目的への適合性の黙示の保証を含みますが、これに限定されません)もいたしません。
株式会社インサイトテクノロジーは、本マニュアルに含まれた誤謬に関しての責任や、本マニュアルの提供、履行および使用に関して偶発的または間接的に起こる損害に対して、責任を負わないものとします。

1.2. 著作権と商標

本マニュアルのいかなる部分も、株式会社インサイトテクノロジーからの文書による事前の許可なしには、形態または手段を問わず決して複製・配布してはなりません。
Insight Database Testing、PISOは株式会社インサイトテクノロジーの登録商標です。

他社商標
  • Amazon Aurora、Amazon EC2、Amazon RDS、Amazon S3、Amazon VPC、AWS、AWS Marketplaceは、米国および/またはその他の諸国における、Amazon.com, Inc.またはその関連会社の商標です。

  • Apacheは、Apache Software Foundationの米国およびその他の国における登録商標または商標です。

  • Azure、SQL Server、Microsoft Edgeは、米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。

  • EDB Postgresは、EnterpriseDB Corporationの商標です。

  • Firefoxは、米国Mozilla Foundationの米国およびその他の国における商標です。

  • Google Chromeは、Google LLCの商標です。

  • Linuxは、Linus Torvalds氏の米国およびその他の国における登録商標または商標です。

  • MariaDBは、MariaDB Corporation Abおよびその子会社、関連会社のフィンランド、米国およびその他の国における登録商標です。

  • MySQL、Oracleは、Oracle Corporationおよびその子会社、関連会社の米国およびその他の国における登録商標です。

  • 本製品には、OpenSSL Project(http://www.openssl.org)が開発したソフトウェアが含まれています(OpenSSL Toolkit で使用)。

  • PostgreSQLは、カナダのPostgreSQLコミュニティ協会の登録商標です。

  • UNIXは、The Open Group Ltd.が独占的にライセンスしている米国ならびに他の国における登録商標です。

  • VMware、VMware ESXiは、米国およびその他の地域におけるVMware, Inc.の登録商標または商標です。

その他の社名および製品名は、一般に各社の商標または登録商標です。なお、本文中には™、®マークは明記しておりません。

2. 本マニュアルの読み方

表記について

本マニュアルでは、以下の表記方法を使用します。

  • 注意事項は、以下のように示します。

    本手順はSQLの評価までの基本的な手順のみを記載しています
  • 参照先は、以下のように示します。

    詳細については、インストールマニュアルを参照してください。
  • コマンドボックスは、コマンドライン上の入力または表示内容を示します。
    ex

    istctl upistcmon
    istctl startall
  • インラインブロックはInsight Database TestingやLinuxのコマンドを示します。
    ex istctlに追加コマンドがあります。

  • 文中の 太字 はファイルやディレクトリを示します。
    ex IDT Managerの /mnt/piso-data/idt-data/sct 配下に出力されます。

  • < > は、使用する環境によって表記が異なることを示します。
    ex
    「 http://<インストールマシンのIPアドレス>:7777/idt/ 」の場合、インストールマシンのIPアドレスが「198.162.0.0」であるならば、「 http://198.162.0.0:7777/idt/ 」と読み替えてください。

画面について

製品バージョンによって、IDT Manager画面表示は本マニュアル内の表示と異なる場合があります。

3. はじめに

3.1. 製品の概要

Insight Database Testing(以下、Insight DTと表記)は、今までソースDB(移行元データベース)上で使用していたSQLを、ターゲットDB(移行先データベース)上で実際に使用できるかを検証します。
ソースDBでのSQLの取得は、株式会社インサイトテクノロジー独自のDMA機能を使うため、低負荷で網羅的に取得できます。取得したSQLは簡単にターゲットDBへ実行できます。
弊社製品PISOを使用しているお客様は、PISOで取得したSQLを使用できます。
ターゲットDBでのSQLの実行結果はビジュアライズされ、実行できないSQLの傾向や、性能が劣化したSQLが分かります。
また、Insight DT上でSQLを書き換えて検証・保存することもできます。

3.2. 製品の構成

Insight DTではソースDBで実行されているSQLを使用してアセスメントを実行します。SQLの取得と収集にはPISOを使用します。
すでに弊社製品PISOを導入しているお客様は、利用中のPISO TargetをSQLの取得に使用できます。
本製品は、ソースDBで実行するPISO Targetから取得したSQLを収集するPISO Manager部分と、ターゲットDBへSQLを実行するためのInsight Database Testingマネージャー(以下、IDT Managerと表記)部分とで構成されています。
ただし、ソースDBがAmazon Aurora(PostgreSQL互換エディション)、Amazon RDS for Oracleの場合はPISO Targetは不要です。ManagerがAmazon Aurora(PostgreSQL互換エディション)、Amazon RDS for Oracleのデータを取得して収集します。

ソースDBから収集したSQLを対象として、IDT ManagerからターゲットDBへ実行し、実行結果を取得・分析することができます。

構成図
1つのターゲットDBでのみ行うアセスメント

また、ソースDBと同様のテスト環境をテスト用ソースDBとして別途用意して、テスト用ソースDBとターゲットDBの2つのデータベースに同じSQLを実行してSQL実行結果や時間、実行性能を比較することができます。

2DB構成図
テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメント

AWSマイグレーションではデータベースのスナップショットからテスト用ソースDBとターゲットDBを作成して、2つのデータベースを指定したアセスメントを継続的に行うことができます。また、AWSマイグレーションではPISOを使用しません。

AWSマイグレーションの詳細は、「AWSマイグレーション」を参照してください。

3.3. Insight DTのシステム要件

3.3.1. オンプレミスの場合

ホストマシン
  • VMware ESXi 6.0 Update 2以降(Insight DT 3.1以前の場合)

  • VMware ESXi 6.5以降(Insight DT 3.2以降の場合)

インストールパッケージのファイル構成

弊社サポートサイト(Service Portal)にログインし、Insight DTのインストールパッケージ(ZIPファイル)を入手してください。
インストールパッケージ(ZIPファイル)を展開すると、以下のようなファイル構成になります。

  • IDT-ManagerXXXX.ovf

  • disk-0.vmdk

  • disk-1.vmdk

  • disk-2.vmdk

  • disk-3.vmdk

システム要件
ハードウェア 必要スペック

vCPU

4以上

メモリ

8GB以上

ディスク

94GB以上 ※1

※1 一般的に、監視対象データベース1インスタンス(1か月)あたり50GB程度のディスク容量を必要としますが、利用状況により大きく異なります。94GBは、データ領域に50GB、バックアップ領域に10GBを設定した場合の例です。

詳細はPISO Managerのインストールマニュアルを参照してください。(sdb:オンライン領域、sdc:バックアップ領域、sdd:PostgreSQLのWALログ領域)

3.3.2. EC2の場合

Amazon EC2(以下、EC2と表記)でInsight DTを使用することもできます。
AWS Marketplace: IDT-ManagerからAmazonマシンイメージ(AMI)を入手してください。

3.3.3. Azure VMの場合

Azure Virtual Machines(以下「Azure VM」と称します)でInsight DTを使用することもできます。
Azure Marketplace: Insight Database TestingからAzure VMを起動してください。

3.4. 性能要件

すべてのIDT Managerの基準値は以下の前提条件から算出されています。

ハードウェア基準値
項目 基準値

vCPU

4

メモリ

16GB

ディスク

130MB/secの転送性能

上記ハードウェア基準値をもとに以下のIDT Manager 1台ごとの稼働上限値を設けています。

IDT Manager稼働基準値
項目 基準値

SQLのサイズ

1KB/1SQL

1時間あたりの処理可能なアクセスログの件数

最大20.8万件

1日の合計件数

5000万件

3.5. 対応データベース

ソースDB
  • Oracle Database 10g以上

  • PostgreSQL 9.3以上(互換製品を含む)※1

  • SQL Server 2005以上

  • MySQL 5.5以上

  • Amazon Aurora(PostgreSQL互換エディション)※2

  • Amazon Aurora(MySQL互換エディション)※2

  • Amazon RDS for Oracle

  • Amazon RDS for PostgreSQL※2

  • Amazon RDS for SQL Server

  • Amazon RDS for MySQL※2

ターゲットDB
  • Oracle Database 11gR2、12c、12cR2、18c、19c

  • PostgreSQL 9.4以上(互換製品を含む)※1

  • SQL Server 2017、2019(互換製品を含む)※3

  • MySQL 5.6、5.7、8.0(互換製品を含む)※4

  • Amazon Aurora(PostgreSQL互換エディション)※2

  • Amazon Aurora(MySQL互換エディション)※2

  • Amazon RDS for Oracle

  • Amazon RDS for PostgreSQL※2

  • Amazon RDS for SQL Server

  • Amazon RDS for MySQL※2

  • Amazon RDS for MariaDB

※1 PostgreSQLの互換製品には、Amazon Aurora(PostgreSQL互換エディション)、EDB Postgres Advanced Server、FUJITSU Software Enterprise Postgresを含みます。

※2 AWSマイグレーション機能を使用してアセスメントできます。

※3 SQL Serverの互換製品には、Azure SQL Database、Azure SQL Managed Instanceを含みます。

※4 MySQLの互換製品には、Amazon Aurora(MySQL互換エディション)、MariaDB10.1以上を含みます。

ソースDBではPISO Targetの動作がサポートされている必要があります。
各種データベースに対するPISO Targetの対応状況は、弊社サポートサイト(Service Portal)の[Support Desk]>[Insight Database Testing]>[対応情報]から検索・確認できます。
詳細は販売代理店または販売元にお問合せください。
各ソースDBにおけるInsight DTのログ取得と対応について
データベース PISO Manager経由でSQLログを取得 IDT ManagerでSQLログを取得 備考

オンプレミス上のデータベース

×

データベースにはPISO Targetをインストールする必要があります。

AWS

RDS for Oracle

×

RDS for SQL Server

×

PISO Target用のEC2インスタンスが必要です。

Amazon Aurora(PostgreSQL互換エディション)

RDS for PostgreSQL

Amazon Aurora(MySQL互換エディション)

PISO Manager経由の場合、一般ログ(general log)を使用していないため行コメントを解釈できません。

RDS for MySQL

PISO Manager経由の場合、一般ログ(general log)を使用していないため行コメントを解釈できません。

RDS for MariaDB

×

PISO Manager経由の場合、一般ログ(general log)を使用していないため行コメントを解釈できません。

AWS以外のマネージドデータベース

×

×

 評価SQLセット作成時にAmazon RDSからSQLを取得する、またはAWSマイグレーション機能を使用した場合を指します。

評価対象のSQLは、Insight DTのログ取得方法(評価SQLセット)によって異なります。詳細は、「評価対象のSQLについて」を参照してください。

3.6. 対応ブラウザ

ブラウザは、以下のものを使用してください。それ以外のブラウザでは、画面が正しく表示されない場合があります。

  • Google Chrome 91以降のバージョン

  • Microsoft Edge 92以降のバージョン

  • Mozilla Firefox 90.0以降のバージョン

3.7. 使用している用語について

用語 説明

IDT Manager

Insight Database Testing マネージャー。
SQLを蓄積、SQLを実行するマネージャーサーバーです。

評価SQLセット

ターゲットDBへ実行するフォーマットに変更したSQLのデータセットです。
PISO Managerのマイニングサーチで出力したCSVファイルをもとに作成したり、PISO Managerから直接作成できます。

アセスメント

評価SQLセットをターゲットDBへ実行すること。または実行結果のデータセットです。

修正SQLセット

評価SQLセットの一部のSQLに対し、修正を適用してアセスメントを実行するSQLのデータセットです。
アセスメントに対して[修正保存]したSQL、または評価SQLセットに対してツール連携で適用可能な、ZIPファイルまたはCSVファイルから作成できます。

PI Hash

SQLに付与する弊社独自のハッシュ値です。
SQLのリテラルやコメントを無視し、同じ構成のSQLに同じハッシュ値を付与します。
アセスメント時にSQLの重複を排除する際に使用します。

PISO

弊社が開発しているデータベースアクティビティモニタリングツールです。
アクセス情報を取得する機能があり、Insight DTではそれを流用しています。

PISO Manager

PISOにおいて、アクセス情報を蓄積・分析するためのマネージャーサーバーです。

PISO Target

PISOにおいて、アクセス情報を取得するために監視対象サーバーにインストールするモジュールです。

マイニングサーチ

PISOの蓄積データ抽出機能です。
蓄積したアクセス情報を検索しファイル出力する機能です。

3.8. 製品サポートについて

製品サポートについては、販売代理店または販売元にお問合せください。

また、その他のサポートの提供に関する詳細、製品バージョンごとのサポートレベルについては、製品サポートInsight Database Testing 製品サポートレベルを確認してください。

4. インストールと各種設定

IDT ManagerはPISO Managerを同梱した形態で提供しています。
IDT Managerをインストールすると、IDT Manager WebコンソールとPISO Manager Webコンソールが設定され、接続できます。

構築作業は、通常30分以内で終了します。

ソースDBからSQL取得するためにPISO Targetを使用する場合には、弊社サポートサイト(Service Portal)にログインの上、PISO Target各インストールマニュアルを参照してください。

4.1. IDT Managerの構築と設定(オンプレミスの場合)

4.1.1. 概要

IDT Managerのインストールパッケージは、VMwareのイメージとして提供されるソフトウェアアプライアンスです。
仮想マシンイメージをインポートすることでアプリケーションを使用できます。

4.1.2. PISO Managerインストールマニュアルとの差異

仮想マシンイメージの操作はPISO Managerのインストールマニュアルに従います。
以下はIDT Managerとしてマニュアルを読み替える箇所です。

  • 仮想マシンのホスト名は「idt」です。

  • 「OSのPISO用ユーザー」を「OSのInsight DT用ユーザー」に読み替えてください。

  • ライセンスパスワードはIDT Manager Webコンソールから設定します。
    IDT Managerおよび、同梱されているPISO Managerはあらかじめ自動起動設定されています。

  • istctlの一部コマンドは使用しません。

    • setlicense

    • id

    • showlicense

  • istctlに追加コマンドがあります。

    • upidt

    • downidt

4.1.3. インポート手順について

仮想マシンイメージのインポート(デプロイ)、ディスク設定およびネットワーク設定はPISO Managerのインストールマニュアルを参照してください。

4.1.4. Webコンソールへのアクセス

ブラウザからPISO ManagerとIDT ManagerのWebコンソールに接続します。

PISO Manager Webコンソール

PISO Manager Webコンソールでは、蓄積の設定・確認を行います。

以下のURLへアクセスし、既定のユーザーとパスワードを入力します。

  • http://<IDT ManagerのIPアドレス>:7777/piso/

  • ユーザー名:administrator

  • パスワード:insight

IDT Manager Webコンソール

IDT Manager Webコンソールでは、ターゲットDBへ接続しアセスメントを行います。

以下のURLへアクセスし、既定のユーザーとパスワードを入力します。
また、初回ログインの場合は、既定の管理者ユーザーでログインし、管理者画面から一般ユーザーを作成します。

  • http://<IDT ManagerのIPアドレス>:7777/idt/

  • ユーザー名:administrator

  • パスワード:insight

4.1.4.1. ポートの変更

PISO Managerのインストールマニュアルを参照してください。

4.1.4.2. 起動停止

IDT Manager Webコンソール単独の起動・停止は以下のコマンドで実施します。

  • 起動する場合

    istctl upidt
  • 停止する場合

    istctl downidt

4.1.5. アンインストール手順について

仮想マシンの削除を行います。

VMwareのドキュメントを参照してください。

4.2. IDT Managerの構築と設定(EC2の場合)

Insight DTをEC2上に構築した場合のシステム構成図を示します。以下の構成図は、移行元データベースをオンプレミス上に構築した場合を想定しています。
なお、移行元データベースをAWS上にも構築することができます。

EC2上で構築した場合の一般的な構成図

EC2上でInsight DTを使用するには、AWS Marketplaceの中から利用形態に応じて製品を選択し、[Continue to Subscribe]をクリックしてください。

IDT-Manager(BYOL)
IDT-Manager (BYOL)を選択した場合
「AWS上で利用時の留意事項」を参照してください。

4.2.1. AWS上で利用時のネットワーク要件

IDT ManagerをEC2に作成し、Amazon RDS/AuroraからSQLログを取得する場合は、IDT ManagerとAmazon RDS API間の接続経路を確保する必要があります。
IDT Managerがインターネットに接続できない閉ざされたサブネット(Private subnet)に所属している場合、RDSインスタンスが稼働しているサブネットへのネットワーク経路を確保しただけでは、ログの取得はできません。
IDT ManagerはAmazon RDS APIを通してログを取得しますので、インターフェースVPCエンドポイント(AWS PrivateLink)を使用してAmazon RDS APIへの専用経路を作成してください。
以下は、IDT ManagerのSQLログ取得の経路イメージです。

aws network

また、IDT Managerが開かれたサブネットに所属する場合(インターネットに接続可能)、通常はAmazon RDS APIに接続できるため問題ありません。

IDT Managerとデータベースが閉ざされたサブネットに所属している場合は、「エンドポイントの作成」を参照して作成してください。
セキュリティグループについて

エンドポイントへアクセスする場合、使用するAWSのサービスのインスタンスに対してセキュリティグループのアウトバウンドにHTTPS(443)を許可する必要があります。
許可が必要なAWSのサービスは、以下のとおりです。

SQLログ取得方法 サービス

PISO Manager経由でAmazon RDS/AuroraからSQLログを取得する※1

自AWSアカウントの場合

RDS

IAMロールを使用しアクセスを委任する場合(別AWSアカウント)

RDS、STS

Insight DTで直接Amazon RDS/Auroraのログを取得して評価SQLセットを作成する場合(自AWSアカウント)※2

RDS、STS

AWSマイグレーションを使用する(自AWSアカウントのみ)

テスト用ソースDBになるRDSインスタンス/AuroraクラスターをInsight DTから作る場合※3

RDS、EC2、STS

テスト用ソースDBになるRDSインスタンス/AuroraクラスターをInsight DTから作らない場合※4

RDS、STS

※1 詳細は、「PISO Managerを使用したSQL収集と出力」を参照してください。

※2 詳細は、「評価SQLセットのソース」項目を参照してください。

※4 詳細は、「登録してあるターゲットDBを使用する」を参照してください。

4.2.1.1. エンドポイントの作成
  1. AWSマネジメントコンソール画面でVPCサービスを選択し、[エンドポイント]>[エンドポイントを作成]をクリックします。

  2. 名前を設定し、サービスカテゴリに「AWSのサービス」を選択します。

  3. サービスから接続先のAWSサービスを選択します。例えば、「rds」と検索して該当するものを選択してください。

  4. VPCからエンドポイントを作成するVPCを選択します。

  5. プライベートDNSを有効にします。「追加設定」から「DNS名を有効化」をオンにします。

    プライベートDNSを有効にしないと、デフォルトのDNSホスト名を使用してプライベートリンクを実行することができません。
    「DNSホスト名」「DNS解決」を有効にすることで、プライベートDNSが有効化されます。
  6. サブネットからインターフェイスエンドポイントを使用するVPCのサブネットを選択します。

  7. セキュリティグループを選択します。アウトバウンドにHTTPS(443)が許可されたセキュリティグループを設定してください。

  8. ポリシーは「フルアクセス」を選択し、[エンドポイントを作成]をクリックしてください。

  • AWSマイグレーションでスナップショットからRDSインスタンス/Aurora DBクラスターを作成する場合は、手順3.で「sts」「ec2」で検索し、エンドポイントを追加で作成してください。
    登録済みのターゲットDBを使用する場合は手順3.で「sts」のみ追加で作成してください。

  • エンドポイント作成後、VPCの[詳細]タブから「DNSホスト名」「DNS解決」が有効であれば、プライベートDNSが有効になっていることを確認できます。

4.2.1.2. ネットワークの接続確認
  • ネットワーク接続については、以下のcurl -vコマンドを実行してRDSやSTSなどへの応答を確認してください。

    icon ex RDSのデフォルトのホスト名の場合(東京リージョン)

    $ curl -v https://rds.ap-northeast-1.amazonaws.com

    icon ex STSのデフォルトのホスト名の場合(東京リージョン)

    $ curl -v https://sts.ap-northeast-1.amazonaws.com

4.2.2. EC2上でのIDT Managerの起動

以下の手順に従い、EC2インスタンスを起動します。

  1. AWS MarketplaceからIDT ManagerのAmazonマシンイメージ(AMI)を選択して起動します。

    ec2start-step1
    ec2start-step1-subscribe
  2. インスタンスタイプは、vCPU 4以上、メモリ8GB以上(m5.xlarge推奨)を選択します。

    ec2start-step2
  3. ストレージ(データ領域)は、監視対象データベース1インスタンス(1か月)あたり50GB程度のストレージを必要としますが、利用状況により大きく異なります。
    ストレージで使用するEBSボリュームタイプはgp3を推奨します。
    データサイズについて不明な場合、EC2起動時にはデータ領域に50GB、バックアップ領域に10GBを程度を設定し、利用状況に応じてストレージサイズの変更をご検討ください。

    ec2start-step4
  4. セキュリティグループは、SSH(22)に加え、HTTP(7777)を許可します。
    PISO Targetは、PISO Managerのポート番号7777に対してデータを送信します(既定の動作)。また、ポート番号7777は、IDT Manager Webコンソールへのアクセスにも利用されます。

    • Apache HTTP Serverで使用するポート番号を1023番以下には設定できません。

      ec2start-step6
  5. 設定項目を確認したうえで、EC2を起動します。

    ec2start-step7
    PISO Managerのインストールマニュアルも必要に応じて参照してください。その際は「PISO Managerインストールマニュアルとの差異」も確認してください。

4.2.3. IDT Managerの設定(ストレージサイズの変更)

  • EC2起動時に指定したストレージサイズをOS側で認識させるには以下の手順で行います。
    EC2起動時に、既定の1GBからボリュームサイズを変更している場合、EC2インスタンス起動後、ec2-userユーザーにてSSHで接続し、以下のコマンドでディスクサイズを拡張します。

    sudo xfs_growfs -d /mnt/piso-data
    sudo xfs_growfs -d /mnt/piso-backup

4.2.4. Webコンソールへのアクセス

ブラウザからPISO ManagerとIDT ManagerのWebコンソールに接続します。

PISO Manager Webコンソール

PISO Manager Webコンソールでは、蓄積の設定・確認を行います。

以下のURLへアクセスし、既定のユーザーとパスワードを入力します。

  • http://<IDT ManagerのIPアドレス>:7777/piso/

  • ユーザー名:administrator

  • パスワード:起動したEC2のインスタンスID

IDT Manager Webコンソール

IDT Manager Webコンソールでは、ターゲットDBへ接続しアセスメントを行います。

以下のURLへアクセスし、既定のユーザーとパスワードを入力します。
初回ログインの場合には、既定の管理者ユーザーでログインし、管理者画面から一般ユーザーを作成します。

  • http://<IDT ManagerのIPアドレス>:7777/idt/

  • ユーザー名:administrator

  • パスワード:起動したEC2のインスタンスID

4.2.5. アンインストール手順について

IDT ManagerのEC2インスタンスを選択し、「インスタンスを終了」してください。

AWSのドキュメントを参照してください。

4.2.6. Amazon S3互換のオブジェクトストレージへの転送

S3互換のオブジェクトストレージへ接続することで一定時間経過したシステムとジョブ実行のログを転送します。
この設定の使用は任意です。

EC2環境でIAMロールを使う場合の手順
  1. 対象のS3バケットへのPutObject、GetObject、ListBucket、DeleteObjectをEC2にアタッチしたロールに付与します。

    {
        "Sid": "任意",
        "Effect": "Allow",
        "Action": [
            "s3:PutObject",
            "s3:GetObject",
            "s3:ListBucket",
            "s3:DeleteObject"
        ],
        "Resource": [
            "arn:aws:s3:::バケット名",
            "arn:aws:s3:::バケット名/*"
        ]
    }
  2. 設定後にIDT Managerを終了します。

    istctl downidt
  3. Insight DTの設定ファイル$IDT_HOME/config/config.ymlに接続設定を加えます。

    data:
      /* 既存設定に以下を追加 */
      IDT_STORAGE_BUCKET: バケット名
      IDT_STORAGE_REGION: バケットリージョン
  4. IDT Managerを開始します。

    istctl upidt
  5. Web接続のエラーが発生した場合は、idtctl logsを実行して、objectStorage.jsの接続エラーを示すerror objectStorage.jsの行を確認してください。

    2022-03-03T10:09:09.963Z info objectStorage.js test connection
    2022-03-03T10:09:10.087Z error objectStorage.js Bucket Not found. name=hoge

4.3. IDT Managerの構築と設定(Azure VMの場合)

Azure VM上でInsight DTを使用するには、 Azure Marketplaceから、[今すぐ入手する]をクリックしてください。

IDT-Manager
Insight Database Testingを選択した場合

4.3.1. Azure VM上でのIDT Managerの起動

以下の手順に従い、Azure VMインスタンスを起動します。

  1. Azure MarketplaceからInsight Database TestingのVMイメージを選択して起動します。

  2. インスタンスタイプは、vCPU 4以上、メモリ8GB以上(D4s_v3推奨)を選択します。

  3. ストレージは、監視対象データベース1インスタンス(1か月)あたり50GB程度のストレージを必要としますが、利用状況により大きく異なります。

    詳細はPISO Managerのインストールマニュアルを参照してください。(sdb:オンライン領域、sdc:バックアップ領域、sdd:PostgreSQLのWALログ領域)
  4. ネットワークセキュリティグループは、SSH(22)に加え、HTTP(7777)を許可します。

    • PISO Targetは、PISO Managerのポート番号7777に対してデータを送信します(既定の動作)。

    • ポート番号7777は、IDT Manager Webコンソールへのアクセスにも利用されます。

  5. Azure VMインスタンスが起動したら、起動時に指定したユーザーにてSSHで接続することができます。

4.3.2. IDT Managerの設定とインストール

Azure VMではインスタンス起動時にディスクサイズを変更することができないため、以下の手順に従います。

  1. インスタンス起動中の場合、Azure VMインスタンスを終了します。

  2. Azure PortalのAzure VMインスタンス画面にて、ディスクを選択し、対象のディスクのサイズを変更します。

  3. Azure VMインスタンスを起動します。

  4. 以下のコマンドを実行しディスクサイズを拡張します。

    sudo xfs_growfs -d /mnt/piso-data
    sudo xfs_growfs -d /mnt/piso-backup

4.3.3. Webコンソールへのアクセス

ブラウザからPISO ManagerとIDT ManagerのWebコンソールに接続します。

PISO Manager Webコンソール

PISO Manager Webコンソールでは、蓄積の設定・確認を行います。

以下のURLへアクセスし、既定のユーザーとパスワードを入力します。

  • http://<IDT ManagerのIPアドレス>:7777/piso/

  • ユーザー名:administrator

  • パスワード:起動したAzure VMの名前

IDT Manager Webコンソール

IDT Manager Webコンソールでは、ターゲットDBへ接続しアセスメントを行います。

以下のURLへアクセスし、既定のユーザーとパスワードを入力します。
初回ログインの場合には、既定の管理者ユーザーでログインし、管理者画面から一般ユーザーを作成します。

  • http://<IDT ManagerのIPアドレス>:7777/idt/

  • ユーザー名:administrator

  • パスワード:起動したAzure VMの名前

4.3.4. アンインストール手順について

IDT ManagerのAzure VMを選択し、削除してください(通常、残しておく必要のあるリソースが他にない場合は、リソースグループごと削除します)。

Azureのドキュメントを参照してください。

4.4. アップグレード

Insight DT 3.1以前の場合

Insight DT 3.1以前のバージョンでは、モジュールの更新によるバージョンアップには対応していません。
新規バージョンを利用するには、以下の手順に従い実施してください。

  1. 現行バージョンで、「評価SQLセット」に使用したCSVファイルを、PISO Manager Webコンソールのマイニングサーチの画面からダウンロードします。

  2. 現行バージョンでの設定内容を記録して別途保存します。
    (作成済みユーザー情報、アセスメント設定、評価SQLセット設定、ターゲットDBの情報など)

  3. 現行バージョンを停止し、新規バージョンを起動します。

  4. 現行バージョンでダウンロードしたCSVファイルは、新規バージョンで評価SQLセット作成時にも引き続き使用可能です。

  5. 現行バージョンでの設定内容を新規バージョンに設定し、評価SQLセットの作成やアセスメントの実行を行います。

    ターゲットDBの状態が変わっている場合は、同じ結果が再現されない場合もあります。
Insight DT 3.2以降の場合

Insight DT 3.2以降のバージョンでは、利用中の環境を最新バージョンへアップグレードできます。
アップグレードを実行する前に、実行中のアセスメントや作成処理中の評価SQLセットなどがないことを確認の上、仮想マシンのバックアップを事前に取得することを推奨します。

  1. アップグレード用のファイルを製品サポートから入手します。製品サポートについては、「製品サポートについて」を参照してください。

  2. upgrade.shファイルとidt_${バージョン名など}.tar.gzファイルをVMのinsightユーザーのホームに配置します。

  3. 各仮想マシンのコンソールにログインします。

    • オンプレミスの場合

      1. OSのInsight DT用ユーザー(通常、insight)でログインします。

    • EC2の場合

      1. ec2-userユーザーでログインします。

      2. upgrade.shファイルとidt_${バージョン名など}.tar.gzファイルの所有者をinsightユーザーに変更します。

      3. OSのInsight DT用ユーザー(通常、insight)へ変更します。

    • Azure VMの場合(Linux環境のみ)

      1. VM起動時に指定したユーザーでSSH接続でログインします。

      2. upgrade.shファイルとidt_${バージョン名など}.tar.gzファイルの所有者をinsightユーザーに変更します。

      3. OSのInsight DT用ユーザー(通常、insight)へ変更します。

  4. upgrade.shファイルに実行権限を付与します。

    chmod +x upgrade.sh
  5. upgrade.shファイルを、一緒にアップロードしたidt_${バージョン名など}.tar.gzファイルを指定して実行します。

    ./upgrade.sh idt_${バージョン名など}.tar.gz

5. 操作の流れ

Insight DTにおけるSQLの収集と評価は、以下の一連の流れに従い実施します。

5.1. SQL収集と出力(PISO Manager Webコンソール)

PISO Managerを使用して、ソースDBに蓄積したSQLを収集し、出力を行います。

5.1.1. 蓄積の設定

  • PISO Managerから、SQL収集元のデータベースインスタンスに対して蓄積設定を行います。
    蓄積設定は、PISO Manager Webコンソール(http://<IDT ManagerのIPアドレス>:7777/piso/)から実行します。

    詳細は、PISO Manager設定マニュアルを参照してください。
  • PISO TargetがインストールされたデータベースでのSQL実行が蓄積されます。

5.1.2. 蓄積したSQLの出力

PISO ManagerとIDT Managerを接続して蓄積したSQLを転送します。

PISO Managerで蓄積したSQLをCSVファイルに出力することもできます。詳細は、「PISO Managerで蓄積したSQLをCSVファイルに出力して受け渡す(方法1)」を参照してください。
  1. [設定管理]>[PISO Manager設定]>[外部サーバー接続]>[新規作成]をクリックします。

  2. 外部サーバー接続設定画面から以下のように設定して、接続情報を設定します。

    PISO-MGR_外部サーバー接続
    設定項目 設定内容

    外部サーバー接続識別子

    任意の文字列を入力します。

    接続タイプ

    [IDT連携]を選択します。

    IPアドレスとポート番号

    IDT Managerとの同梱環境では「127.0.0.1、7778」を設定します。

    ユーザー名とパスワード

    IDT Managerの一般ユーザーアカウントを入力します。

  3. [保存]をクリックします。

  4. [データ検索]>[マイニングサーチ]>[ジョブ実行条件指定]タブから、マイニングサーチのジョブ実行条件を設定します。

    PISO-MGR_MSジョブ実行
    設定項目 設定内容

    出力形式

    [外部サーバー接続]を選択します。

    外部サーバー接続識別子

    外部サーバー接続設定画面で任意で設定した外部サーバー接続識別子を選択します。

    外部サーバー転送先ディレクトリ名

    /」を入力します。

  5. [SUBMIT]をクリックします。

  6. ジョブ実行が成功すると、IDT Manager Webコンソールの評価SQLセットに「<マイニングサーチ名>_<UNIX時刻秒>」の名前で評価SQLセットが作成されます。

    評価SQLセット_結果
  7. 評価SQLセット名とデータベースは評価SQLセット画面から必要に応じて修正します。

  • PISO Manager Webコンソール上ではジョブが終了していてもIDT Manager Webコンソール上では処理中の場合があります。

  • マイニングサーチ結果のCSVファイルは、PISO Manager Webコンソールからダウンロードしてバックアップできます。

5.2. SQLの評価(IDT Manager Webコンソール)

以下の手順は、IDT Manager Webコンソール(http://<IDT ManagerのIPアドレス>:7777/idt/)から実行します。
本手順はSQLの評価までの基本的な手順を記載しています。

5.2.1. 評価SQLセットの作成

  1. グローバルナビゲーションバーから[評価SQLセット]をクリックします。
    「蓄積したSQLの出力」により、評価SQLセットに「<マイニングサーチ名>_<UNIX時刻秒>」の名前で評価SQLセットが自動作成されていることを確認します。

5.2.2. ターゲットDBの設定

  1. グローバルナビゲーションバーから[ターゲットDB]をクリックします。

  2. ターゲットDBの一覧画面から[新規作成]をクリックします。

  3. 以下の必要項目を設定後、[新規作成]をクリックします。

    ターゲッドDB_新規作成画面
    設定項目 設定内容

    ターゲットDB名

    任意のターゲットDBの名前を入力します。

    データベース

    対象のデータベースの種類を選択します。

    バージョン

    データベースのバージョン情報を入力します。

    接続識別子

    事前に指定した接続識別子を入力します(Oracleを選択した場合)。

    DSN(データソース名)

    DSNのIPアドレスを入力します(SQL Serverを選択した場合)。

    ホスト名

    IPアドレスを入力します(PostgreSQL、MySQLを選択した場合)。

    ポート

    ポート番号を入力します(PostgreSQL、MySQLを選択した場合)。

    データベース名

    データベース名を入力します(PostgreSQL、MySQLを選択した場合)。

    テスト接続

    データベースのユーザー名とパスワードを設定して接続を確認します。

    ターゲットDBの種類によっては、事前に接続設定等が必要です。詳細は「事前準備」を参照してください。

5.2.3. アセスメントの実行(SQLの評価)

  1. グローバルナビゲーションバーから[アセスメント]をクリックします。

  2. アセスメントの一覧画面から[新規作成]をクリックします。

  3. 以下の必要項目を設定後、[新規作成]をクリックします。

    アセスメント_新規作成_画面
    設定項目 設定内容

    アセスメント名

    評価結果として保存される任意の名前を入力します。

    評価SQLセット名

    作成した「評価SQLセット」を選択します。

    ターゲットDB名

    作成した「ターゲットDB」を選択します。

    実行タイプ

    [実行]または[パース]を選択します。

    テスト接続

    指定したDBユーザー/パスワードでターゲットDBに接続できるかテストする場合にクリックします。

    高度な実行設定

    ターゲットDBのデータへの反映設定、タイムアウト設定や同時に処理するセッション数を指定します。

    高度な比較設定

    「0秒の仮定値」に0.2などの数値を設定します。

    バインド変数補完
    期間(セッション)

    必要に応じて設定します。

  • アセスメント時に、SQL取得元環境に対するテスト環境を別途用意し、2つのデータベースに対してSQLを実行して比較するアセスメントを行うことができます。詳細は、「アセスメント」を参照してください。

  • Amazon RDSやAmazon Auroraを対象とした継続アセスメントを実行する場合には、「AWSマイグレーション」を参照してください。

5.2.4. 結果の確認

  1. グローバルナビゲーションバーから[アセスメント]をクリックします。

  2. 実行結果の「アセスメント名」を選択すると結果の詳細を確認できます。

    実行結果
  3. 実行結果の下の[失敗した全てのSQLを見る]をクリックすると、ターゲットDB上で実行できなかったSQLの一覧を表示します。

    SQL一覧
  4. 画面左の連番(#)を選択して、SQLの詳細などを確認します。

    ope detail

6. 基本操作方法

6.1. 事前準備

6.1.1. ターゲットDB設定・接続設定

ソースDBから取得したSQLをターゲットDBへ実行する前に、ターゲットDBのデータベースの種類に応じて、以下の設定を行います。

SQLの取得については「PISO Managerを使用したSQL収集と出力」を参照してください。
6.1.1.1. Oracle
接続識別子の指定

ターゲットDBがOracleの場合、IDT Managerへ接続識別子の設定が必要になります。
接続識別子の指定方法は、2つの方法があります。

IDT Manager Webコンソールから指定する方法

IDT Manager WebコンソールからOracleへ接続する際の接続識別子に、以下のいずれかの文字列を入力します。
事前にtnsnames.oraを編集する作業を省くことができます。

  • 簡易接続ネーミング・メソッド

    ホスト:ポート/サービス名

    icon ex db-host:1521/ORCL

  • Oracle Net Serviceのキーワード値ペア

    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp) (HOST=ホスト) (PORT=ポート))(CONNECT_DATA=(SERVICE_NAME=サービス名)))

    icon ex

    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp) (HOST=db-host) (PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)))

tnsnames.oraを編集する方法

IDT Managerのファイル/home/insight/idt/etc/tnsnames.oraを編集して、接続識別子(net_service_name)を指定します。
IDT Manager WebコンソールからOracleへ接続する際の接続識別子に、ファイルtnsnames.oraで指定した接続識別子を指定してください。

基本的な書式
net_service_name=
    (DESCRIPTION=
        (ADDRESS=(protocol_address_information))
        (CONNECT_DATA=
            (SERVICE_NAME=service_name)
        )
    )
詳細はOracleのドキュメントを参照してください。
Oracleユーザー権限設定

以下の場合は、OracleデータベースのSQL実行ユーザーに権限を付与します。

実行計画取得時にDBMS_XPLAN.DISPLAY_CURSORファンクションを使用する場合
  1. 必要なビューへのSELECT権限を付与します。

    これは任意の設定であり、権限がない場合はexplain plan forを使用します。

    GRANT SELECT ON SYS.V_$SESSION TO ユーザー
    GRANT SELECT ON SYS.V_$SQL TO ユーザー
    GRANT SELECT ON SYS.V_$SQL_PLAN_STATISTICS_ALL TO ユーザー
アセスメントの中断処理で長時間応答の無いSQLの切断を可能にする場合
  1. V$SESSIONのSELECTとセッション切断に必要な権限を付与します。 これは任意の設定あり、アセスメントのタイムアウト設定によって対処できます。

    オンプレミス
    GRANT SELECT ON SYS.V_$SESSION TO ユーザー
    GRANT ALTER SYSTEM TO ユーザー
    Amazon RDS
    GRANT SELECT ON SYS.V_$SESSION TO ユーザー
    GRANT EXECUTE ON RDSADMIN.RDSADMIN_UTIL TO ユーザー
6.1.1.2. MySQL
performance_schemaの有効化

ターゲットDBがMySQLおよびその互換製品の場合、データベース本体のperformance_schemaを有効にする必要があります。
performance_schemaとIDT Managerで使用するイベントが有効であるかを確認します。
それぞれの項目で不足がある場合は有効化手順に従って設定を行います。

有効化確認
  1. performance_schemaの確認
    以下のクエリの結果がValue=Onならばperformance_schemaが有効です。

    > SHOW VARIABLES LIKE 'performance_schema';
    +--------------------+-------+
    | Variable_name      | Value |
    +--------------------+-------+
    | performance_schema | ON    |
    +--------------------+-------+
  2. setup_instrumentsの確認
    以下の操作でstatement/com/Prepareとstatement/com/ExecuteのENABLEDとTIMED両方が「YES」であることを確認します。

    > use performance_schema;
    > select * from setup_instruments where name IN ('statement/com/Prepare', 'statement/com/Execute');
    +-----------------------+---------+-------+
    | NAME                  | ENABLED | TIMED |
    +-----------------------+---------+-------+
    | statement/com/Prepare | YES     | YES   |
    | statement/com/Execute | YES     | YES   |
    +-----------------------+---------+-------+
  3. setup_consumersの確認
    以下の操作でevents_statements_currentとevents_statements_historyのENABLEDが「YES」であることを確認します。

    > use performance_schema;
    > select * from setup_consumers where name IN ('events_statements_current', 'events_statements_history');
    +---------------------------+---------+
    | NAME                      | ENABLED |
    +---------------------------+---------+
    | events_statements_current | YES     |
    | events_statements_history | YES     |
    +---------------------------+---------+
  4. setup_actorsの確認
    評価対象のHOST、USER、ROLEに対してsetup_actorsのENABLEDとHISTORYの両方が「YES」であることを確認します。

    「%」はすべてが対象であることを示しています。

    > use performance_schema;
    > select * from setup_actors;
    +------+------+------+---------+---------+
    | HOST | USER | ROLE | ENABLED | HISTORY |
    +------+------+------+---------+---------+
    | %    | %    | %    | YES     | YES     |
    +------+------+------+---------+---------+
  5. 接続ユーザーの権限の確認

    Insight DTから接続するユーザーにperformance_schemaへのSELECT権限が付与されているかを確認します。

    下記の「権限が適切に付与されている場合」のような結果であれば問題ありません。

    Insight DTから使用するDBアカウントで操作

    > use performance_schema;

    ex 権限が適切に付与されている場合

    > select count(*) from setup_instruments;
    +----------+
    | count(*) |
    +----------+
    |     1210 |
    +----------+

    ex 権限が不足している場合

    > select count(*) from setup_instruments;
    ERROR 1142 (42000): SELECT command denied to user 'ユーザー名'@'localhost' for table 'setup_instruments'
有効化手順
  1. performance_schemaとsetup_instruments、setup_consumersの有効化

    オンプレミスの場合

    my.cnf またはデータベースから読み込まれる設定ファイルのmysqldセクションに以下を追加してデータベースを再起動します。

    [mysqld]
    performance_schema=ON
    performance-schema-instrument='statement/com/Prepare=ON'
    performance-schema-instrument='statement/com/Execute=ON'
    performance-schema-consumer-events_statements_current=ON
    performance-schema-consumer-events_statements_history=ON

    クラウドサービスの場合

    各サービスのドキュメントを参照してください。

  2. setup_actorsの設定
    setup_actorsに計測対象を加えます。

    > use performance_schema;

    すべてを計測対象にする場合

    > insert into setup_actors values ('%','%','%','YES');

    特定のユーザーのみを対象にする場合

    > insert into setup_actors values ('%','対象にするユーザー','%','YES');
  3. 接続ユーザー権限の設定
    以下のクエリで接続ユーザーへperformance_schemaへのSELECT権限を与えます。
    必要ユーザーすべてに対して実行してください。

    > GRANT SELECT ON 'performance_schema'.* TO 'ユーザー名'@'%';
6.1.1.3. SQL Server
データソース名の指定

ターゲットDBがSQL Serverおよびその互換製品の場合、IDT ManagerへODBCデータソース名の設定が必要になります。設定方法は、2つの方法があります。

IDT Manager Webコンソールから指定する方法

IDT Manager WebコンソールからSQL Serverへ接続する際のDSN(データソース名)に、以下の文字列を入力します。
事前にodbc.iniを編集する作業を省くことができます。

  • ODBCデータソース文字列(Driver、UID、PWDは除く)

    Server=ホスト,ポート;Database=データベース;

    icon ex Server=db-host,1433;Database=master;

    ※ AutoTranslate=yes;も追加することを推奨します。

odbc.iniを編集する方法

IDT Managerのファイル/home/insight/idt/etc/odbc.iniを編集して、データソース名を指定します。
IDT Manager WebコンソールからSQL Serverへ接続する際のDSNに、odbc.iniファイルで指定したデータソース名を指定してください。
Driverは「Driver=ODBC Driver 17 for SQL Server」を指定します。

基本的な書式
[SQL Server]
Driver=ODBC Driver 17 for SQL Server
Server=host,1433
Database=master
詳細はMicrosoftのドキュメントを参照してください。

6.1.2. Amazon RDS/Aurora上でのログファイル出力設定

Amazon RDS/AuroraをソースDBとして、ログ情報を取得して評価SQLセットを作成するためには、RDSインスタンスまたはAurora DBクラスターにてログファイル出力の設定が必要です。

Insight DTで直接Amazon RDS/Auroraのログを取得して評価SQLセットを作成する場合、AWSマイグレーション機能を使用する場合に設定してください。

PISO Manager経由でAmazon RDS/Auroraからログを取得する場合には、PISO Managerのインストールマニュアルを参照してください。
6.1.2.1. RDS for PostgreSQL、Amazon Aurora(PostgreSQL互換エディション)

対象のデータベースが RDS for PostgreSQL、Amazon Aurora(PostgreSQL互換エディション)の場合、監査ログ(pgaudit)の出力を有効にします。

  1. DBパラメータグループ(Aurora DBクラスターではDBクラスターパラメータグループ)で以下を設定します。

    • pgaudit.logをALLに設定します。

    • pgaudit.log_parameterをonに設定します。

    • pgaudit.roleをrds_pgauditに設定します。

    • log_rotation_ageを10に設定します。

    • log_connectionsをonに設定します。

    • log_disconnectionsをonに設定します。

    • shared_preload_libraries = pgauditを追加(元の設定値は削除しないでください。)

    • log_filename = postgresql.log.%Y-%m-%d-%H%M(通常は分単位(%M)を指定してください。)

  2. インスタンスを再起動します。

  3. 初めてインスタンスを起動する場合は、データベースにログインし、以下のSQLを実行します。

    [PostgreSQL]
    CREATE ROLE rds_pgaudit';
    CREATE EXTENSION pgaudit;
6.1.2.2. RDS for MySQL、Amazon Aurora(MySQL互換エディション)

対象のデータベースが RDS for MySQL、Amazon Aurora(MySQL互換エディション)の場合、以下の手順で一般ログの出力とファイル出力を有効にします。

  1. DBパラメータグループ(Aurora DBクラスターではDBクラスターパラメータグループ)で以下を設定します。

    • general_logを1にします。

    • log_outputをFILEにします。

  2. インスタンスを再起動します。

6.1.3. 必要なIAM設定について

EC2に構築したIDT Managerで以下の機能を利用する際には、EC2へのIAMロールの設定もしくは必要なIAMロールが付与されたアクセスキーが必要となります。

  • PISO ManagerによるAmazon RDS/AuroraからのSQLログの取得

  • Amazon RDSからログを取得しての評価SQLセット作成

  • AWSマイグレーション機能の利用

以下のIAMポリシーを作成し、IDT ManagerのEC2インスタンスへロールを付与します。

  • AWSマイグレーション機能を利用する場合は、「SQL実行先データベース設定」で設定するデータベースのパターンにより必要なIAM設定が異なります。

  • xxxxxxxxxxxxはAWSアカウントID、ap-northeast-1はリージョンに置き換えてください。

AWSマイグレーション機能でスナップショットからRDSインスタンス/Aurora DBクラスターを作成する場合

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "rds:DescribeDBEngineVersions",
                "rds:DescribeOrderableDBInstanceOptions",
                "ec2:DescribeSecurityGroups"
            ],
            "Resource": "*"
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": [
                "rds:DownloadDBLogFilePortion",
                "rds:DescribeDBInstances",
                "rds:DownloadCompleteDBLogFile",
                "rds:DescribeDBLogFiles",
                "rds:DescribeDBClusters"
            ],
            "Resource": [
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:cluster:*",
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:db:*"
            ]
        },
        {
            "Sid": "VisualEditor2",
            "Effect": "Allow",m
            "Action": [
                "rds:StartDBCluster",
                "rds:StopDBCluster",
                "rds:StartDBInstance",
                "rds:StopDBInstance",
                "rds:CreateDBCluster",
                "rds:CreateDBInstance",
                "rds:ModifyDBInstance",
                "rds:ModifyDBCluster",
                "rds:AddTagsToResource",
                "rds:RestoreDBClusterFromSnapshot",
                "rds:RestoreDBInstanceFromDBSnapshot",
                "rds:DescribeDBClusterParameterGroups",
                "rds:DescribeDBParameterGroups",
                "rds:DescribeOptionGroups",
                "rds:DescribeDBSnapshots",
                "rds:DescribeDBClusterSnapshots",
                "rds:DescribeDBInstances",
                "rds:DescribeDBClusters",
                "rds:DeleteDBCluster",
                "rds:DeleteDBInstance"
            ],
            "Resource": [
                "arn:aws:rds::xxxxxxxxxxxx:global-cluster:*",
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:db:idt-*",
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:cluster:idt-*",
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:pg:*",
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:cluster-pg:*",
                "arn:aws:rds:*:*:snapshot:*",
                "arn:aws:rds:*:*:cluster-snapshot:*",
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:subgrp:*",
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:secgrp:*",
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:og:*"
            ]
        }
    ]
}

PISO Manager経由でAmazon RDSからログを取得する場合/
Amazon RDSからログを取得しての評価SQLセットの作成を行う場合/
AWSマイグレーション機能でスナップショットからRDSインスタンス/Aurora DBクラスターを作成せずに登録済みのターゲットDBを使用する場合

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": [
                "rds:DownloadDBLogFilePortion",
                "rds:DescribeDBInstances",
                "rds:DownloadCompleteDBLogFile",
                "rds:DescribeDBLogFiles",
                "rds:DescribeDBClusters"
            ],
            "Resource": [
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:cluster:*",
                "arn:aws:rds:ap-northeast-1:xxxxxxxxxxxx:db:*"
            ]
        }
    ]
}

IDT ManagerをEC2インスタンスで構成していない場合は、上記IAMポリシーを付与したIAMユーザーを作成し、アクセスキーとシークレットアクセスキーを用意します。IDT ManagerへSSHでアクセスの上、アクセスキーとシークレットアクセスキーを、/home/insight/.aws/credentialsファイルに以下の書式で記載します。また、PISOでRDSからログを取得する場合は、蓄積設定でアクセスキー情報を設定します。

[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

認証情報ファイルの詳細は 設定ファイルと認証情報ファイルの設定 を参照してください。

6.2. IDT Manager Webコンソールへログイン

  1. ブラウザからIDT ManagerのIDT Manager Webコンソールへ接続します。
    以下のURLへアクセスしてください。

    http://<IDT ManagerのIPアドレス>:7777/idt/

  2. 初回ログインの場合には、管理者ユーザーのユーザー名「administrator」と初期パスワードを入力し、[ログイン]をクリックします。
    管理者ユーザーの初期パスワードは、オンプレミスの場合は「insight」、EC2の場合は、EC2インスタンスID、Azure VMの場合はVM名です。
    すでに一般ユーザーを作成済みの場合は、一般ユーザーのユーザー名とパスワードを入力し、[ログイン]をクリックします。

    ログイン画面
  • ライセンスパスワードを設定しないと一般ユーザーでログインすることはできません(時間課金でAWS Marketplaceからサブスクライブした場合を除く)。ライセンスパスワード設定については、「ライセンス管理」を参照してください。

  • 一般ユーザーの作成方法については、「一般ユーザーの新規作成」を参照してください。

  • パスワード変更については、「アカウント管理」を参照してください。

6.3. ユーザーアカウント

IDT Manager Webコンソールにログインするユーザーアカウントには、「管理者ユーザー」と「一般ユーザー」があります。

管理者ユーザーではユーザー管理とライセンス管理のみを行い、一般ユーザーではIDT Managerの各設定と処理の実行および確認を行います。

管理者ユーザーでログインすると管理者画面が表示されます。
管理者画面では管理者ユーザーのパスワード変更と、一般ユーザーの作成、削除、パスワードのリセット、ライセンスパスワードの設定と確認を行うことができます。

一般ユーザーでログインするとIDT Managerの操作画面が表示されます。
IDT Managerの各設定(評価SQLセット、アセスメントetc)とユーザー自身のパスワード変更を行うことができます。

6.3.1. 管理者ユーザー

管理者ユーザーでログインすると、管理者画面の左メニューにユーザー管理とライセンス管理が表示されます。

6.3.1.1. ユーザー管理

一般ユーザーの新規作成、削除、パスワードのリセットを行います。

一般ユーザーの新規作成
  1. IDT Manager Webコンソールに管理者ユーザーでログインします。
    ユーザー名は「administrator」、初期パスワードは、オンプレミスの場合は「insight」、EC2の場合は、EC2インスタンスID、Azure VMの場合はVM名です。
    ユーザー一覧が表示されます。

    user list
    項目 説明

    ユーザー名

    管理者ユーザーと一般ユーザー名を表示します。

    ロール

    管理者ユーザーは「admin」、一般ユーザーは「normal」と表示します。

    操作

    icon pass resetをクリックすると、ユーザーの既存のパスワードをリセットし、ランダムな文字列でパスワードを自動生成します。
    icon binをクリックすると、該当するユーザーを削除します。

  2. [新規作成]をクリックします。

  3. ユーザー名とパスワードを設定して、[保存]をクリックします。

    ユーザー名は255文字以内、パスワードは6文字以上で設定してください。
    管理者_一般ユーザー作成
  4. ユーザー一覧に新規の一般ユーザーが追加されます。

一般ユーザーのパスワード変更については、「アカウント管理」を参照してください。
6.3.1.2. システムログダウンロード

IDT Managerのシステムのログをダウンロードできます。
IDT Managerの動作について弊社で調査が必要な場合に、ログファイルの送付をお願いする場合があります。
その場合にログファイルをダウンロードし、サポート担当まで共有してください。

  1. IDT Manager Webコンソールに管理者ユーザーでログインします。

  2. [ログ]の[ログをダウンロードする]をクリックします。

    ログ
  3. ダウンロードされたログファイル(zip)を指定された方法でサポート担当へ共有します。

  • この機能は、Insight DT 3.2以降から使用できます。

  • Insight DT 3.1以前の場合は、IDT Managerのログファイルは/home/insight/idt/logディレクトリに格納されています。
    ログファイルの送付をお願いする場合は、具体的に必要なファイル、ファイルの送付先などをご案内させていただきます。

6.3.1.3. ライセンス管理

IDT Managerを使用するにはライセンスパスワードの設定が必要です(時間課金でAWS Marketplaceからサブスクライブした場合を除く)。
ライセンスパスワードの入手方法については販売代理店または販売元にお問合せください。
また、一般ユーザーでのログインは、ライセンスパスワードを設定してからログインできます。

  1. IDT Manager Webコンソールに管理者ユーザーでログインします。

  2. [ライセンス管理]の[ライセンス更新]をクリックします。

    管理者_ライセンス管理
  3. 入手したライセンスパスワードを入力して[保存]をクリックします。

    管理者_ライセンス更新
  4. ライセンス認証が正しく行われると、ライセンスが設定された旨のメッセージが表示され、ログイン画面に戻ります。

  5. 管理者ユーザーでログインし、[ライセンス管理]を選択すると、設定したライセンスパスワード情報を確認できます。

    管理者_ライセンス確認
    項目 説明

    ライセンスパスワード

    登録されているライセンスパスワード(16文字)の下4文字を表示します。

    トライアル

    登録されているライセンスパスワードが、正式版の時は「No」、トライアルの時は「Yes」を表示します。

    ホスト

    ライセンスパスワードが発行されたホストIDです。 無指定の場合は「NONE」を表示します。トライアルの場合は存在しません。

    有効期限

    ライセンスの有効期限(終了日)です。無期限の場合は「NEVER」を表示します。

    プロダクト名

    ライセンスされているプロダクト名です。

    状態

    パスワードが使用可能であれば「Valid」を表示します。

トライアルのライセンスパスワードを2回続けて設定することはできません。
6.3.1.4. 管理者ユーザーのパスワードのリセット

何らかの理由で管理者ユーザーとしてログインできなくなってしまった場合、管理者ユーザー「administrator」のパスワードをリセットすることが可能です。

  1. OSのInsight DT用ユーザー(通常はinsight)で仮想マシンにログインします。

  2. XXXXXXに設定したいパスワードを指定して、以下のコマンドを実行します。

    idtctl reset-admin-password XXXXXX
この機能は、Insight DT 3.2以降から使用できます。

6.3.2. 一般ユーザー

一般ユーザーでログインすると、IDT Managerの操作画面が表示されます。

user top page

6.4. グローバルナビゲーションバー

管理者ユーザーまたは一般ユーザーでログインすると、グローバルナビゲーションバーに以下のメニューが表示されます。
一般ユーザーでログインした場合を例に説明します。

ナビゲーションバー
グローバルナビゲーションバー(①)とローカルナビゲーションバー(②)

6.4.1. 言語切り替え

IDT Manager Webコンソールのメニューなどを表示する言語は、日本語と英語(English)に対応しています。
[Language]から表示したい言語に切り替えることができます。
言語の選択状態はブラウザに保存されます。

言語切り替え

6.4.2. アカウント管理

IDT Manager Webコンソールに接続するにあたってログイン用のパスワードが必要です。
ログインしているユーザーアカウントのパスワードを変更できます。

ユーザーの初期パスワードは、変更することを推奨します。
  1. IDT Manager Webコンソールのログイン画面から、パスワードを変更する一般ユーザーでログインします。

  2. グローバルナビゲーションバーの[<一般ユーザー名>]のメニューから、[アカウント管理]をクリックします。

    アカウント管理
  3. 以下の項目を入力して、画面下部の[保存]をクリックします。

    アカウント管理_保存
    項目名 説明

    現在のパスワード

    現在のパスワードを入力します。

    パスワード

    新しく設定するパスワードを入力します(6文字以上)。

    パスワード(確認用)

    確認用パスワードです。
    上記パスワードと同じパスワードを入力します。

  4. パスワード変更が成功した場合には、自動でログアウトしてログイン画面に変ります。

以上でパスワードの変更が完了しました。
次回IDT Manager Webコンソールにログインする時から、今回設定したパスワードを使用します。

管理者ユーザーによるパスワードのリセットについては、ユーザー管理の「操作」項目を参照してください。

6.4.3. バージョン情報

使用しているIDT Managerのバージョンを確認できます。

  1. グローバルナビゲーションバーの[<一般ユーザー名>]のメニューから、[バージョン情報]をクリックします。

  2. バージョンの情報が表示されます。

    バージョン情報_表示

6.4.4. マニュアル

本マニュアルを表示します。

  1. グローバルナビゲーションバーの[<一般ユーザー名>]のメニューから、[マニュアル]をクリックします。

6.4.5. APIドキュメント

Insight DTでは、REST API(Representational State Transfer API)を用意しています。

  1. グローバルナビゲーションバーの[<一般ユーザー名>]のメニューから、[APIドキュメント]をクリックします。
    APIドキュメントが表示されます。

6.5. 評価SQLセット

評価SQLセットでは、取得したSQLをターゲットDBへ実行できるように専用の評価SQLセットを作成、または編集します。
評価SQLセットを作成する前に、ソースDBで蓄積したSQLを収集し出力させる必要があります。

6.5.1. PISO Managerを使用したSQL収集と出力

PISO Managerを使用して蓄積したSQLをIDT Managerに受け渡して評価SQLセットを作成できます。
以下のいずれかの方法で設定します。

  • PISO Managerで蓄積したSQLをCSVファイルに出力して受け渡す(方法1)

  • PISO ManagerとIDT Managerを接続して蓄積したSQLを転送する(方法2)

方法1は、SQLの収集と出力はPISO Managerから、評価SQLセットの作成はIDT Managerからと、別々のWebコンソールでそれぞれ設定します。
方法2は、SQLの収集から評価SQLセットの作成までの一連の操作をPISO Managerですべて設定することができます。

6.5.1.1. PISO Managerで蓄積したSQLをCSVファイルに出力して受け渡す(方法1)
  1. [データ検索]>[マイニングサーチ]をクリックします。

  2. [ジョブ実行条件指定]タブから以下のように設定して、蓄積したSQLをCSVファイルへ出力します。

    ja piso manager ms setting
    設定項目 設定内容

    ジョブ名

    マイニングサーチのジョブ名を入力します。

    最大実行時間

    マイニングサーチが実行可能な最大時間幅(分)を入力します。

    最大取得行数

    マイニングサーチで取得する行数を入力します。

    出力形式

    [標準(MSテーブル)][CSV形式][外部サーバー接続]のうち、[CSV形式]を選択します。
    [CSV形式]は、CSVファイルにマイニングサーチ結果を出力します。

    出力ディレクトリ

    マイニングサーチ結果を指定したディレクトリに転送します。
    /mnt/piso-data/idt-data/data/srcを指定します。

  3. [SQL監視]タブを選択した状態にします。

    条件オプションの詳細については、PISO Manager Webコンソール右上のヘルプセンターhelp btnを参照してください。
  4. [SUBMIT]をクリックします。

  5. マイニングサーチが実行され、[終了ジョブ一覧]にMS_JOB名.csvという名前でマイニングサーチ結果が作成されます。

    ja piso manager ms completed
  6. 出力したCSVファイルを使用して、IDT Manager Webコンソールから評価SQLセットを作成してください。

    詳細は、「評価SQLセットの作成」を参照してください。
6.5.1.2. PISO ManagerとIDT Managerを接続して蓄積したSQLを転送する(方法2)
  1. [設定管理]>[PISO Manager設定]>[外部サーバー接続]>[新規作成]をクリックします。

  2. 外部サーバー接続設定画面から以下のように設定して、接続情報を設定します。

    PISO-MGR_外部サーバー接続
    設定項目 設定内容

    外部サーバー接続識別子

    任意の文字列を入力します。

    接続タイプ

    接続する外部サーバーのタイプを選択します。
    ここでは、[IDT連携]を選択します。

    IPアドレス
    ポート番号

    外部サーバー(IDT Manager)が起動しているIPアドレスとポート番号を入力します。
    IDT Managerとの同梱環境では「127.0.0.1、7778」を設定します。

    ユーザー名
    パスワード

    外部サーバーに転送を行うOSユーザー名とパスワードを入力します。
    ここでは、IDT Managerの一般ユーザーアカウントとパスワードを入力します。

  3. [保存]をクリックします。

  4. [データ検索]>[マイニングサーチ]>[ジョブ実行条件指定]タブから、マイニングサーチのジョブ実行条件を設定します。

    PISO-MGR_MSジョブ実行
    設定項目 設定内容

    ジョブ名

    マイニングサーチのジョブ名を入力します。

    最大実行時間

    マイニングサーチが実行可能な最大時間幅(分)を入力します。

    最大取得行数

    マイニングサーチで取得する行数を入力します。

    出力形式

    [標準(MSテーブル)][CSV形式][外部サーバー接続]のうち、[外部サーバー接続]を選択します。
    [外部サーバー接続]は、事前に設定した外部サーバー接続識別子に対する外部サーバーに指定されたディレクトリにデータを転送します。 マイニングサーチ結果を外部サーバーに転送したい場合は、この形式を選択します。

    外部サーバー接続識別子

    外部サーバー接続設定画面で任意で設定した外部サーバー接続識別子を選択します。

    外部サーバー転送先ディレクトリ名

    /」を入力します。

  5. [SUBMIT]をクリックします。

  6. ジョブ実行が成功すると、IDT Manager Webコンソールの評価SQLセットに「<マイニングサーチ名>_<UNIX時刻秒>」の名前で評価SQLセットが作成されます。

    評価SQLセット_結果
  7. 評価SQLセット名とデータベースは評価SQLセット画面から必要に応じて修正します。

  • PISO Manager Webコンソール上ではジョブが終了していてもIDT Manager Webコンソール上では処理中の場合があります。

  • マイニングサーチ結果のCSVファイルは、PISO Manager Webコンソールからダウンロードしてバックアップできます。

6.5.2. 評価SQLセットの作成

評価するSQLの集まりである「評価SQLセット」を作成します。

  1. IDT Manager Webコンソールのグローバルナビゲーションバーから[評価SQLセット]をクリックします。

    評価SQLセット一覧画面が表示されます。

    評価SQLセット
  2. ローカルナビゲーションバーから[新規作成]をクリックします。

  3. 必要な値を入力した後、画面下部の[新規作成]をクリックします。

    評価SQLセット_新規作成_画面
    CSVファイルを選択する
    評価SQLセット_新規作成_画面2
    Amazon RDSからSQLを取得する
    項目名 説明

    評価SQLセット名

    評価SQLセットの名前を入力します。
    大文字、小文字を区別します。

    評価SQLセットのソース

    「CSVファイルを選択する」「Amazon RDSからSQLを取得する」のいずれかを選択します。

    「Amazon RDSからSQLを取得する」を使用するには、適切なIAMの設定が必要となります。詳細は「必要なIAM設定について」を参照してください。

    データ元ファイル

    変換するデータ(CSVファイル)のファイルパスを指定します。
    「CSVファイルをアップロードする」のトグルスイッチを「オン」にすると、CSVファイルをローカルPCからIDT Managerにアップロードして評価SQLセットを作成します。
    IDT Manager内のファイルを指定する場合は、「オフ」にします。
    /mnt/piso-data/idt-data/data/srcに配置したCSVファイルがリスト表示されますので選択してください。
    評価SQLセットのソースにCSVファイルを選択時に表示されます。

    データベース

    SQLを収集するソースDBの種類をOracle、PostgreSQL、SQL Server、MySQLの中から選択します。
    評価SQLセットのソースにCSVファイルを選択時に表示されます。

    インスタンスID

    SQL収集元データベースのインスタンスIDを指定します。
    対象がAurora DBクラスターの場合にはクラスターIDを指定します。
    評価SQLセットのソースにAmazon RDSを選択時に表示されます。

    データベース名

    SQL収集元データベースのデータベース名を指定します。
    インスタンス内で複数のデータベースを運用していて、それらをテスト対象としたい場合は、AWSマイグレーションは別々に設定する必要があります。
    評価SQLセットのソースにAmazon RDSを選択時に表示されます。

    リージョン

    SQL収集元データベースのデータベースインスタンスまたはクラスターがあるリージョンを指定します。
    評価SQLセットのソースにAmazon RDSを選択時に表示されます。

    高度な取得設定
    SQL取得開始日時/SQL取得終了日時

    SQL収集元データベースからSQLを収集する日時を指定します。
    すでに出力されているような古いSQL情報をテスト対象としたくない場合に指定します。
    指定しない場合は、取得できる最も古いデータまで遡ります。
    評価SQLセットのソースにAmazon RDSを選択時に表示されます。

    SQLの重複を排除する

    トグルスイッチを「オン」にすると、重複するSQLを排除し、ユニークなSQLのみの評価SQLセットを作成します。

    メモ

    評価SQLセットについてのメモを入力します。

     この機能は、Insight DT 3.2以降から使用できます。

評価SQLセットの作成が開始されると、評価SQLセットの行頭のアイコンで進行状況を確認できます。
ステータスが完了アイコン[完了アイコン]になると作成の完了です。
評価SQLセットの作成はデータ量に応じて数分から数十分かかります。

評価SQLセット_結果

6.5.3. 評価SQLセットのSQL詳細

評価SQLセットを作成した後、評価SQLセットの中のSQLの詳細を確認します。
評価SQLセットのSQLをターゲットDBへアセスメントする前に、作業量の確認等のために使用してください。

  1. 評価SQLセットの一覧画面から詳細情報を確認する評価SQLセット名を選択します。

    評価SQLセット_選択
  2. サマリー画面が表示されます。

    • SQL詳細情報の一覧作成に成功した場合には、作成オプション、サマリー、SQL情報を表示します。

      評価SQLセット_詳細_成功

      SQLテキストのicon arrowをクリックすると、SQL全文を確認することができます。

      評価SQLセット_詳細_成功
    • SQL詳細情報の一覧作成に失敗した場合には、作成オプション、エラーメッセージを表示します。

      評価SQLセット_詳細_失敗
項目の詳細については、「使用している項目名について」を参照してください。

6.5.4. 評価SQLセットの編集

  1. 評価SQLセットの一覧画面から編集する評価SQLセットにチェックを入れます。

  2. ローカルナビゲーションバーから[編集]をクリックします。

    評価SQLセット_チェック
  3. 必要な値を入力した後、画面下部にある[保存]をクリックします。

    評価SQLセット_編集_画面
    項目名 説明

    評価SQLセット名

    変更する評価SQLセット名を入力します。

    データベース

    変更するデータベースの種類を選択します。
    CSVファイルを選択して評価SQLセットを作成した場合は、「データベース」を変更できます。
    Amazon RDSからSQLを取得して評価SQLセットを作成した場合は「データベース」を変更できません。

    メモ

    評価SQLセットについてメモを入力します。

    この機能は、Insight DT 3.2以降から使用できます。

評価SQLセットの一覧の表示が変更になると、編集の完了です。

6.5.5. 評価SQLセットのコピー

  1. 評価SQLセットの一覧画面からコピーする評価SQLセットにチェックを入れます。

  2. ローカルナビゲーションバーから[コピー]をクリックします。

  3. 必要な値を入力した後、画面下部にある[保存]をクリックします。

    評価SQLセット_コピー_画面
    項目名 説明

    コピー元評価SQLセット名

    コピー元の評価SQLセットが表示されています。

    新規評価SQLセット名

    コピーして作成される評価SQLセットの名前を入力します。
    大文字、小文字を区別します。

    メモ

    コピーして作成される評価SQLセットについてメモを入力します。

    この機能は、Insight DT 3.2以降から使用できます。

一覧に評価SQLセットのコピーが追加になり、ステータスが完了アイコン[完了アイコン]になるとコピーの完了です。
評価SQLセットのコピーはデータ量に応じて数分から数十分かかります。

6.5.6. 評価SQLセットのユーザー変更

評価SQLセットに格納されているDBユーザー名を変更します。
ソースDBとターゲットDBでDBユーザー名が異なる際に使用してください。

  1. 評価SQLセットの一覧画面からユーザー名を変更する評価SQLセットにチェックを入れます。

  2. ローカルナビゲーションバーから[ユーザー変更]をクリックします。

  3. 既存ユーザー名が表示されます。
    変更するDBユーザーの項目に、新たなDBユーザー名を入力し、画面下部にある[適用]をクリックします。

    評価SQLセット_ユーザー変更_画面

一覧のステータスが完了アイコン[完了アイコン]になると変更の完了です。
評価SQLセットの変更はデータ量に応じて数分から数十分かかります。

6.5.7. 評価SQLセットの外部連携

評価SQLに対して、修正したSQLをアップロードして適用します。

  1. 評価SQLセットの一覧画面から適用する評価SQLセットにチェックを入れます。

  2. ローカルナビゲーションバーから[外部連携]をクリックします。

  3. 外部連携画面が表示されます。icon ope clipまたは入力欄をクリックし、ファイルを選択してください。
    画面下部にある[適用]をクリックします。

    評価SQLセット_外部連携

6.5.8. 評価SQLセットの削除

  1. 評価SQLセットの一覧画面から削除する評価SQLセットにチェックを入れます。

  2. ローカルナビゲーションバーから[削除]をクリックします。

  3. 確認用画面が表示されます。削除する評価SQLセットを確認してください。
    問題が無ければ、画面下部にある[削除]をクリックしてください。

    評価SQLセット_削除_確認

一覧から、該当の評価SQLセット名がなくなると削除の完了です。
評価SQLセットの削除はデータ量に応じて数分かかる場合があります。

6.5.9. ログの確認

ログのicon logをクリックすると、評価SQLセットを作成した際のログを確認することができます。
また、利用可能なログはダウンロードできます。

この機能は、Insight DT 3.2以降から使用できます。

6.6. ターゲットDB

評価SQLセットを実行するターゲットDBを登録、または編集します。

  1. IDT Manager Webコンソールのグローバルナビゲーションバーから[ターゲットDB]をクリックします。

    ターゲットDBの一覧画面が表示されます。

    ターゲットDB

6.6.1. ターゲットDBの追加

  1. ローカルナビゲーションバーから[新規作成]をクリックします。

  2. 必要な値を入力した後、画面下部の[新規作成]をクリックします。

    ターゲットDB_新規作成_画面
    項目名 説明

    ターゲットDB名

    任意のターゲットDBの名前を入力します。
    大文字、小文字を区別します。

    データベース

    ターゲットDBの種類を選択します。

    バージョン

    ターゲットDBのバージョンを入力します。

    接続識別子

    接続識別子に簡易接続ネーミング・メソッドを使用した文字列、またはOracle Net Servicesのキーワード値ペアを入力します。または、事前に指定した接続識別子を入力します。
    データベースにOracleを選択時に表示されます。

    接続識別子の指定方法については、「接続識別子の指定」を参照してください。

    DSN

    Driver、UID、PWDを除いたODBCデータソース文字列を入力します。または、事前に指定したDSN(データソース名)を入力します。
    データベースにSQL Serverを選択時に表示されます。

    DSNの指定方法については、「データソース名の指定」を参照してください。

    ホスト名

    ホスト名を入力します。
    データベースにPostgreSQL、MySQLを選択時に表示されます。

    ポート

    ポート番号を入力します。
    データベースにPostgreSQL、MySQLを選択時に表示されます。

    データベース名

    データベース名を入力します。
    データベースにPostgreSQL、MySQLを選択時に表示されます。

    メモ

    ターゲットDBについてメモを入力します。

    この機能は、Insight DT 3.2以降から使用できます。

    テスト接続

    ターゲットDBの接続を確認することができます。
    ユーザーとパスワードを入力し、[テスト接続]をクリックしてください。
    接続結果は画面右上に表示されます。

    • ユーザー:DBユーザー名を入力します。
      接続確認で使用する、ターゲットDBの中にすでに存在しているユーザー名を入力します。

    • パスワード:DBユーザーのパスワードを入力します。

ターゲットDBの一覧に情報が追加されると完了です。
ターゲットDBが追加されるまで時間がかかる場合があります。

6.6.2. ターゲットDBの情報の変更と接続確認

すでに追加したターゲットDBの情報を変更します。また、ターゲットDBと接続確認もできます。

  1. ターゲットDBの一覧画面から情報を変更するターゲットDBにチェックを入れます。

  2. ローカルナビゲーションバーから[編集]をクリックします。

  3. ターゲットDBの情報が表示されます。

    • ターゲットDBと接続確認をしたいときは、ユーザーとパスワードを入力し、[テスト接続]をクリックします。
      情報に変更が無ければ画面下部にある[キャンセル]をクリックしてください。

    • 適切な値に変更した場合は、画面下部にある[保存]をクリックします。

      ターゲットDB_編集_画面

ターゲットDBの一覧に表示されている情報が変更されると完了です。
ターゲットDBの変更が完了するまで時間がかかる場合があります。

項目の詳細については、「ターゲットDBの追加」を参照してください。

6.6.3. ターゲットDBの削除

ターゲットDBを削除します。
この操作はInsight DT内の情報のみを削除します。接続先のデータベースに影響はありません。

  1. ターゲットDBの一覧画面から削除するターゲットDBにチェックを入れます。

  2. ローカルナビゲーションバーから[削除]をクリックします。

  3. 確認用画面が表示されます。削除するターゲットDBを確認してください。
    問題が無ければ、画面下部にある[削除]をクリックしてください。

    ターゲットDB_削除_確認

一覧から、該当のターゲットDBがなくなると削除の完了です。
ターゲットDBの削除は数分かかる場合があります。 AWSマイグレーションから作成されたターゲットDB(Insight DTから作成されたRDSが紐づくターゲットDB)の場合、ターゲットDB削除時に削除可能なRDSインスタンス(Aurora DBクラスター)があれば同時に削除します。

6.7. アセスメント

評価SQLセットをターゲットDBへ実行します。

アセスメントには、1つのターゲットDBでのみ行うアセスメントと、テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントの2種類が存在します。

アセスメントの種類については、「製品の構成」を参照してください。
  • 事前に評価SQLセットを作成する必要があります。
    詳細は「評価SQLセット」を参照してください。

  • 事前にターゲットDBを登録する必要があります。
    詳細は「ターゲットDB」を参照してください。

  1. IDT Manager Webコンソールのグローバルナビゲーションバーから[アセスメント]をクリックします。

    アセスメントの一覧画面が表示されます。

    アセスメント

6.7.1. 新規作成

  1. ローカルナビゲーションバーから[新規作成]をクリックします。

  2. 必要な値を入力した後、画面下部にある[新規作成]をクリックします。

    アセスメント_新規作成_画面1db
    アセスメント設定
    項目名 説明

    アセスメント名

    アセスメントの名前を入力します。
    大文字、小文字を区別します。

    評価SQLセット名

    ターゲットDBへ実行する評価SQLセットを選択します。
    事前に評価SQLセットを作成する必要があります。
    icon moveをクリックすると、評価SQLセットの一覧画面に遷移します。

    詳細は「評価SQLセット」を参照してください。

    テスト用ソースDBにもSQLを実行します

    テスト用ソースDBとターゲットDBの2つのデータベースを指定したアセスメントを実行します。 トグルをオンにすると、「テスト用ソースDB」が表示されます。

    テスト用ソースDB

    評価SQLセットを実行するデータベース(テスト用ソースDB)を選択します。
    テスト用ソースDBとターゲットDBの2つのデータベースを指定したアセスメントを実行する場合に指定します。
    事前にターゲットDBを登録する必要があります。
    icon moveをクリックすると、ターゲットDBの一覧画面に遷移します。

    詳細は「ターゲットDB」を参照してください。

    「テスト用ソースDBにもSQLを実行します」を選択時に表示されます。

    ターゲットDB

    評価SQLセットを実行するデータベース(ターゲットDB)を選択します。
    事前にターゲットDBを登録する必要があります。
    icon moveをクリックすると、ターゲットDBの一覧画面に遷移します。

    詳細は「ターゲットDB」を参照してください。

    メモ

    アセスメントについてメモを入力します。

    この機能は、Insight DT 3.2以降から使用できます。

    実行タイプ

    実行する方法を選択します。

    • 実行:評価SQLセットをターゲットDBに対して実行します。

    • パース:パース実行を行います。実行時間は取得できないため、速度が遅くなったSQL等の判定ができません。バインド変数の値がなくてもテーブルの有無や構文のチェックができます。

    名前付きバインド変数書式を変換します

    SQLに含まれる名前付きバインド変数をターゲットDBで実行可能な書式に変換してSQLを実行します。
    移行先が名前付き引数に対応していないDBMSでもデータベース接続ドライバーまたはデータベース接続プログラムによって対応される場合を再現して、アセスメント実行時にSQLを自動変換して実行します。

    修正したSQLを適用します

    評価SQLセットに修正したSQLを適用してアセスメントを実行します。
    修正SQLセットは、テスト用ソースDBに対する実行、およびターゲットDBに対する実行のそれぞれに対して指定することができます。※1

    テスト用ソースDBに使用する修正SQLセット

    テスト用ソースDBに使用する修正SQLセットを実行します。
    テスト用ソースDBをアセスメントで使用し、かつ修正SQLセットを用いる場合に設定します。[指定なし]を選択することで、修正SQLを使用しないこともできます。

    「修正したSQLを適用します」を選択時に表示されます。

    ターゲットDBに使用する修正SQLセット

    ターゲットDBに使用する修正SQLセットを実行します。
    修正SQLセットを用いる場合に設定します。[指定なし]を選択することで、修正SQLを使用しないこともできます。

    「修正したSQLを適用します」を選択時に表示されます。

    ※1 テスト用ソースDBは元のSQL、ターゲットDBには修正SQLを適用する、等ができます。

    修正SQL適用
    テスト接続
    項目名 説明

    ユーザー名/パスワード

    実行するDBユーザーをフィルタリングできます。
    チェックされているDBユーザーのSQLのみ実行されます。
    実行するDBユーザーの対応するパスワードを入力してください。
    チェックされていないDBユーザーのSQLは実行されません。

    表示されるDBユーザー名は、評価SQLセットに格納されています。フィルターするDBユーザー名を変更する場合には、「評価SQLセットのユーザー変更」を参照してください。

    テスト接続:テスト用ソースDB

    テスト用ソースDBに対するテスト接続を行います。
    誤ったパスワードを指定するとログインエラーになりアセスメントを正しく行うことができません。
    パスワードを入力したら、画面右下の[テスト接続]をクリックし、接続できるか確認してください。接続結果は、画面右上に以下のようなインフォメーションが表示されます。

    アセスメント_接続表示

    テスト接続:ターゲットDB

    ターゲットDBに対するテスト接続を行います。
    誤ったパスワードを指定するとログインエラーになりアセスメントを正しく行うことができません。
    パスワードを入力したら、画面右下の[テスト接続]をクリックし、接続できるか確認してください。接続結果は、画面右上に以下のようなインフォメーションが表示されます。

    アセスメント_接続表示

    高度な実行設定
    高度な実行設定
    項目名 説明

    DBへのデータ反映

    ターゲットDBへのデータ反映の設定を選択します。
    ソースDBで実行された1セッションを1トランザクションとし、トランザクションをどの設定で実行するか選択できます。

    • 反映させる:実行したSQLをコミットします。INSERT文やDELETE文などはターゲットDBに実行結果が反映されます。SQLが失敗すると、そのトランザクション内のSQLはすべてロールバックされます。

    • 反映させない:実行したSQLをセッション単位でロールバックします。ターゲットDBには何も反映されません。評価対象のSQLにトランザクション制御文が含まれている場合、ロールバックが正しく行われない場合があります。また、データベース種類に応じた暗黙的なコミットについてはロールバックできません。

    • 指定なし:指定しません。ターゲットDBの設定に依存します。

    実行タイプに「実行」を選択時に表示されます。

    タイムアウト設定

    SQL実行時のタイムアウトを設定します。

    • (指定しない):タイムアウトを明示的には指定しません。データベースの設定でタイムアウト設定がされていればそれに従います。

    • 0:タイムアウトしません。データベースのタイムアウトの設定に関わらず、タイムアウトを無効にします。

    • 1~:指定した時間(分)でタイムアウトします。SQLの実行時間が指定した時間を超えた場合、SQLの実行を強制終了し、失敗したSQLと判定します。

    この機能は、Insight DT 3.1以降から使用できます。

    同時セッション処理数

    評価SQLセットをターゲットDBで実行する際に同時に処理するセッション数を指定します(最大16)。
    ターゲットDBとManagerのリソースに余裕がある場合に、アセスメント実行の速度向上が見込めます。
    ターゲットDBのリソース制限や接続設定によって、実行がタイムアウトエラーとなる場合があります。

    高度な比較設定_1DB
    「テスト用ソースDBにもSQLを実行します」を選択しない場合
    高度な比較設定_2DB
    「テスト用ソースDBにもSQLを実行します」を選択した場合
    高度な比較設定

    実行タイプに「実行」を選択時に表示されます。

    項目名 説明

    0秒の仮定値

    ソースDBでのSQL実行時間が0秒だった場合に、実行時間の仮定値として設定される値を入力します。
    ターゲットDBのみを指定したアセスメントを実行する場合に指定します。
    PISOのデフォルトのサンプリング間隔に基づき、デフォルトは0.2秒です。

    詳細は「0秒時の対応」を参照してください。

    カラム名の比較をしない

    クエリ実行結果を比較する場合に、テーブルのヘッダーを比較対象とするかを指定します。
    テスト用ソースDBとターゲットDBの2つのデータベースを指定したアセスメントを実行する場合に指定します。
    「テスト用ソースDBにもSQLを実行します」を選択時に表示されます。

    時間しきい値 [秒]

    テスト用ソースDBでのSQL実行時間と、ターゲットDBでのSQL実行時間との差が指定秒数よりも大きい場合に性能が劣化したSQLとみなします。
    未指定の場合は0 [秒]を指定したものと同じです。
    「テスト用ソースDBにもSQLを実行します」を選択時に表示されます。

    この機能は、Insight DT 3.2以降から使用できます。

    割合しきい値 [%]

    テスト用ソースDBでのSQL実行時間と、ターゲットDBでのSQL実行時間との比が指定パーセントよりも大きい場合に性能が劣化したSQLとみなします。
    未指定の場合は100 [%]を指定したものと同じです。時間しきい値と割合しきい値の双方の条件で性能が劣化したSQLとみなされた場合に、対象SQLは性能が劣化したSQLとマークされます。
    「テスト用ソースDBにもSQLを実行します」を選択時に表示されます。

    この機能は、Insight DT 3.2以降から使用できます。
    データ設定
    項目名 説明

    バインド変数補完

    「バインド変数補完」を参照してください。

    期間(セッション)

    セッションの期間でフィルタリングして実行することができます。
    選択されていない期間のセッションのSQLは実行されません。
    [期間(セッション)]をクリックし、適切な期間を設定してください。

    アセスメント_期間

6.7.1.1. バインド変数補完

評価SQLセットに取得されていないバインド変数をアセスメント実行時に補完します。
データ型ごとに補完する値を設定します。

  • バインド変数に求められる型情報を移行先データベースから取得できなかった場合は、「デフォルト」で指定した値を使用します。

  • 値にNULLを指定するときは、NULLにチェックを入れてください。

アセスメント_バインド変数補完

6.7.2. アセスメントの編集

アセスメントの名前とメモを編集します。

  1. アセスメントの一覧画面から編集するアセスメントにチェックを入れます。

  2. ローカルナビゲーションバーから[編集]をクリックします。

  3. アセスメント名やメモを変更し、[保存]をクリックします。

    アセスメント_編集_確認

一覧から、該当のアセスメント名が編集されていたら編集の完了です。

6.7.3. アセスメントの中断

処理中のアセスメントを中断します。

  1. アセスメントの一覧画面から中断するアセスメントにチェックを入れます。

  2. ローカルナビゲーションバーから[中断]をクリックします。

  3. 確認用画面が表示されます。中断するアセスメントを確認してください。
    問題が無ければ、画面下部にある[中断]をクリックしてください。

    アセスメント_中断‗確認

一覧で、処理中のアセスメントが終了状態になると中断の完了です。
終了したアセスメントとして、アセスメントサマリーなどを確認することができます。

この機能は、Insight DT 3.2以降から使用できます。

6.7.4. アセスメントの削除

アセスメントを削除します。

  1. アセスメントの一覧画面から削除するアセスメントにチェックを入れます。

  2. ローカルナビゲーションバーから[削除]をクリックします。

  3. 確認用画面が表示されます。削除するアセスメントを確認してください。
    問題が無ければ、画面下部にある[削除]をクリックしてください。

    アセスメント_削除_確認

一覧から、該当のアセスメント名がなくなると削除の完了です。
アセスメントの削除はデータ量に応じて数分かかる場合があります。

6.7.5. ログの確認

ログのicon logをクリックすると、アセスメントを実行した際のログを確認することができます。
また、利用可能なログはダウンロードできます。

この機能は、Insight DT 3.2以降から使用できます。

6.7.6. アセスメント結果の確認

サマリーの画面から実行したSQLの実行結果を確認します。

  1. アセスメントの一覧画面から確認するアセスメント名をクリックします。

    アセスメント_選択
  2. サマリー画面が表示されます。

    サマリー画面の詳細については、「サマリー」を参照してください。

6.7.7. サマリー

アセスメントの一覧からアセスメント名を選択することで、サマリーの画面へ遷移し、アセスメントのサマリーを閲覧します。
1つのターゲットDBでのみ行うアセスメントと、テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントとでサマリー画面の表示形式が異なります。

  • 1つのターゲットDBでのみ行うアセスメントでのサマリー画面

    1つのターゲットDBでのみ行うアセスメント
    • ソースDBでSQLを取得した際のSQL実行時間情報を対象に、ターゲットDBでのSQL実行時間との比較を行います。

  • テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでのサマリー画面

    テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメント
    • テスト用ソースDBでSQLを実行した際のSQL実行時間情報を対象に、ターゲットDBでのSQL実行時間、SQL実行結果との比較を行います。

      ステータス テスト用ソースDB ターゲットDB 備考

      失敗したSQL

      成功

      失敗

      -

      両DBで失敗したSQL

      失敗

      失敗

      -

      結果が異なるSQL

      成功

      成功

      SELECT結果の比較/DMLの実行結果行数の比較で結果が異なる場合

      性能が劣化したSQL

      成功

      成功

      結果は同じだが、ターゲットDBでの処理が遅かった場合

      問題がなかったSQL

      成功

      成功

      ターゲットDBでの処理時間がテスト用ソースDB以下の場合

      テストができなかったSQL

      失敗

      成功

      テスト用ソースDBでの処理が失敗した場合

サマリー画面では、アセスメント実行時の設定情報を右側のバーを開くことで確認することができます。項目の詳細については、「アセスメント」を確認してください。

6.7.7.1. 失敗したSQL/ターゲットDBにて失敗したSQL

実行できなかったSQL(左側)と実行できたSQL(右側)の割合が表示されます。
それぞれの件数と、すべてのSQLに対しての割合が表示されます。
評価に含まれていたSQLをすべて実行していますが、実行する際にDBユーザー、セッション等でフィルタリングを行った場合は、SQLが絞り込まれています。
実行できなかったすべてのSQLを参照する場合は、エラープログラム項目の下の、[失敗した全てのSQLを見る]をクリックします。

テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでは、ターゲットDBでの実行が失敗したSQL(失敗したSQL、両DBで失敗したSQL)が表示対象となります。

実行できなかったSQLは3つの観点からグルーピングしています。

  • エラーメッセージ

  • エラーユーザー

  • エラープログラム

それぞれの件数を集計し、上位10件を表示します。
上位11件以降を参照する場合、それぞれのタイトルを選択します。
各項目のSQL情報を閲覧する場合は、対象の行を選択します。

6.7.7.2. 結果が異なるSQL

テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントで、左側に結果が異なったSQL、右側に同じ結果になったSQLの割合と件数が表示されます。
結果は「取得結果」で確認できます。

結果が異なるSQL

サマリー画面で「SQLテキスト」をクリックすると、詳細を並べて表示します。

結果が異なるSQL_2DB
6.7.7.3. 性能が劣化したSQL

左側に遅くなったSQL、右側に遅くならなかったSQLの割合と件数が表示されます。
割合の分母は成功したSQLの件数です。

1つのターゲットDBでのみ行うアセスメントでは、ソースDBで取得した実行時間とターゲットDBで取得した実行時間を比較し、100%以上になるものを遅くなったSQLとして算出、上位10件を表示します。
テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでは、アセスメント実行の際にテスト用ソースDBで取得した実行時間とターゲットDBで取得した実行時間を比較し、テスト用ソースDBでの実行時間に対してターゲットDBでの実行時間が100%以上になるものを遅くなったSQLとして算出、上位10件を表示します。
パースモードで実行した場合は、実行時間が取得できないため表示されません。
実行時間を取得する場合は、アセスメントの実行タイプを実行に指定してアセスメントしてください。

実行できたすべてのSQLを参照する場合は、項目の下の[成功した全てのSQLを見る]をクリックします。
SQL情報を閲覧する場合は、対象の行を選択します。

サマリー_遅くなったSQL

テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントのサマリー画面で「SQLテキスト」をクリックすると、詳細を並べて表示します。

サマリー_遅くなったSQL_2DB
  • 取得したSQLの「実行計画」を確認できます。

  • 1つのターゲットDBでのみ行うアセスメントでは、ソースDBのSQLの実行時間が0秒として取得されている場合があります。

詳細は「0秒時の対応」を参照してください。
6.7.7.4. テスト用ソースDBにて失敗したSQL

テスト用ソースDB、またはテスト用ソースDBとターゲットDBの両データベースでエラーになったSQLを、出現順序の早い順で表示します。
タイトルをクリックするとTOP10以降を確認できます。
SQLテキストをクリックすると該当SQLの詳細を表示します。

左側にテスト用ソースDBで失敗したSQLのパーセンテージと件数、右側にテスト用ソースDBで失敗しなかったSQLのパーセンテージと件数が表示されます。
パーセンテージの分母はエラーが出たSQLの件数です。

テスト用ソースDBにて失敗したSQL
6.7.7.5. 移行情報

バインド変数変換や構文でエラーになるものを集計し、表示します。

  • バインド変数書式変換がある場合に変換したもの

  • 取得できていないバインド変数に値を埋めたもの

  • バインド変数型の型変換で、エラーの可能性があるもの

  • 非互換構文について取得したもの(Oracle Databaseのみ)

サマリー_移行情報
6.7.7.6. ダウンロード

アセスメント結果をCSVファイル形式でダウンロードします。

  1. ローカルナビゲーションバーから[ダウンロード]をクリックします。

    サマリー_ダウンロード
  2. ダウンロードするSQLをフィルタリングする条件を設定した後、画面下部の[ダウンロード]をクリックします。
    ローカルファイルとしてCSVファイルのダウンロードが開始します。

    サマリー_ダウンロード_画面
    1つのターゲットDBでのみ行うアセスメントの場合
    2dbダウンロード
    テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントの場合
    項目 説明

    ステータス

    1つのターゲットDBでのみ行うアセスメントの場合、実行結果のうち成功したSQLのみダウンロードする場合は[成功]のみにチェックを入れます。
    失敗したSQLのみダウンロードする場合は[失敗]のみにチェックを入れます。
    結果に関係なくすべてのSQLの実行結果を取得する場合は[成功][失敗]両方にチェックを入れます。

    テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントの場合、実行結果のうち[失敗したSQL][両DBで失敗したSQL][結果が異なるSQL][性能が劣化したSQL][問題がなかったSQL][テストができなかったSQL]から選択します。

    テスト用ソースDB

    テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでテスト用ソースDBの情報も取得する場合には、トグルスイッチを「オン」にします。

    追加情報

    実行結果に加え、SQL毎の詳細データも取得する場合には、「SQL毎の詳細情報を取得します」をオンにします。

    実行結果CSVと詳細データCSVを1つのファイルにまとめたい場合には、「実行結果と詳細情報をマージして1つのCSVにします」をオンにします。

項目の詳細は「CSVファイルのカラムについて」を参照してください。
6.7.7.7. 修正を評価SQLセットに適用

修正したSQLを評価SQLセットにマージします。

  1. [修正を評価SQLセットに適用]をクリックします。

    サマリー_修正を評価SQLセットに適用
  2. 確認用の画面が表示されます。
    [評価SQLセット]を選択し、画面下部の[修正を評価SQLセットに適用]をクリックします。

    サマリー_修正を評価SQLセットに適用_適用

選択した評価SQLセットへマージされます。
修正したSQLは評価SQLセットへ上書きされますので、必要に応じて評価SQLセットのコピーを作成してください。

6.7.7.8. ツール連携

失敗したSQLの自動変換など、外部ツールと連携します。

SQLの抽出

アセスメントの結果からツールに連携するSQLを抽出します。

  1. [ツール連携]>[SQLの抽出]をクリックすると、ダウンロードの確認画面が表示されます。

    SQLの抽出
  2. どの実行ステータスのSQLをダウンロードするかを選択し、画面下部の[ダウンロード]をクリックします。
    ダウンロードが実行します。

    失敗したSQLの抽出
    1つのターゲットDBでのみ行うアセスメントの場合

    テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでは、[失敗したSQL][両DBで失敗したSQL][結果が異なるSQL][性能が劣化したSQL][問題がなかったSQL][テストができなかったSQL]から選択します。

    失敗したSQLの抽出
    テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントの場合
詳細は「失敗したSQLの抽出」の項目を参照してください。

6.7.8. SQL実行結果一覧・修正作業進捗

サマリーの画面からSQLを絞り込むとSQL実行結果一覧・修正作業進捗へ遷移します。

サマリーの画面からのSQL絞り込みは、各ステータスやランキングのリンクをクリックします。
クリックしたリンクにより、SQL実行結果一覧・修正作業進捗での初期のフィルタの状態が異なります。

SQL実行結果一覧・修正作業進捗では、一番左に表示されるSQL実行の番号(#)をクリックすると、そのSQLの詳細の画面へ遷移します。

6.7.8.1. 実行結果一覧

一覧の表示を選択した項目で切り替えます。

SQL実行結果(1つのターゲットDBでのみ行うアセスメントでのサマリー画面)
SQL一覧
項目名 説明

失敗したSQL

SQL実行が失敗したものを表示します。

問題がなかったSQL

SQL実行が成功したものを表示します。

SQL実行結果(テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでのサマリー画面)
SQL実行結果_2DB
項目名 説明

失敗したSQL

ターゲットDBでのみSQL実行が失敗したものを表示します。

両DBで失敗したSQL

テスト用ソースDBとターゲットDBの両データベース上でSQL実行が失敗したものを表示します。

結果が異なるSQL

テスト用ソースDBとターゲットDBの両データベース上でSQL実行が成功したが、SQL実行結果が異なったものを表示します。

性能が劣化したSQL

テスト用ソースDBとターゲットDBの両データベース上でSQL実行が成功し、SQL実行結果は同じであったが、ターゲットDBでの実行時間がテスト用ソースDBよりも遅かったものを表示します。

問題がなかったSQL

SQL実行が成功したものを表示します。

テストができなかったSQL

テスト用ソースDBでのみSQL実行が失敗したものを表示します。

修正状態
項目名 説明

修正済

SQL詳細画面で修正が完了したSQLを表示します。

未対処

SQL詳細画面で未修正のSQLを表示します。

グルーピング

グルーピングのチェックボックスにチェックを入れることで、SQLをグルーピングします。
グルーピングできる項目は条件によって異なります。グルーピングできる項目は以下のとおりです。

  • PI Hash

  • SQL ID

  • エラーコード

  • エラーメッセージ

  • ユーザー

  • プログラム

項目の詳細は「使用している項目名について」を参照してください。
フィルタリング

表示されている項目をクリックすることで、表示されているSQLをフィルタリングします。
フィルタリングできる項目は条件によって異なります。フィルタリングできる項目は以下のとおりです。

SQLのソート

カラムをクリックすることで、SQLをソートします。
ソートできる項目は条件によって異なります。ソートできる項目は以下のとおりです。

SQL一覧_ソート
  • 連番(#)

  • SQLテキスト

  • PI Hash

  • SQL ID

  • DBユーザー

  • SQL開始時刻

  • ソースDBプログラム

  • ソースDBログオン時刻

  • ターゲットDBエラーコード

  • ターゲットDBエラーメッセージ

  • ソースDB実行時間

  • ターゲットDB実行時間

  • 遅くなった割合

  • SQL件数

項目の詳細は「使用している項目名について」を参照してください。

画面上部の修正完了率(バーチャート)では、左側に未修正のSQL、右側に修正済のSQLの割合と件数が表示されます。
初期表示は未修正のSQLが100%、修正済のSQLが0%です。
SQLのステータスが失敗アイコン[失敗アイコン]の場合、SQLを修正、保存することで修正アイコン[修正アイコン]に変わります。
SQLの保存については、「SQLの保存」を参照してください。
保存していくことでSQLのステータスや画面上部の修正完了率が変更されていきます。

6.7.9. SQLの詳細と実行

サマリーの画面からドリルダウンし、SQL実行結果一覧・修正作業進捗の画面左の連番(#)をクリックすると、SQLの詳細画面に遷移します。

  • 1つのターゲットDBでのみ行うアセスメントと、テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントとで表示内容が異なります。

  • 修正SQLセットを適用して実行した場合は、適用されたSQLが表示されます。

SQL詳細
1つのターゲットDBでのみ行うアセスメント
SQL詳細_2db
テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメント
6.7.9.1. SQLの修正

[SQLの修正]タブでは、SQLを修正しての実行確認などを行うことができます。

ステータス

画面上部にはステータスが表示されます。
実行できなかったSQLの場合は、エラーコードとエラーメッセージが表示されます。
実行できたSQLの場合は、ターゲットDBでのSQL実行時間が表示されます。

テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでは、両データベースに対してSQLを実行して得られた情報が表示されます。

SQL詳細_ステータス
SQLの編集、実行計画取得、実行と保存

SQLを編集と実行計画取得、実行、保存します。

テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでは、両データベースに対してそれぞれSQLを修正して、実行計画取得、実行を行います。
保存はターゲットDBに対して行ったSQLのみ保存対象となります。

SQLの整形

[SQLの修正]タブを選択して、画面左の[整形する]をクリックすると、現在表示されているSQLを整形します。

テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでは、それぞれのSQLテキスト編集ペインで利用できます。

SQLの実行と実行先の設定

SQLの実行先を設定して、SQLを実行します。

  1. 画面左のSQLを、ターゲットDBへ実行させるSQLに書き換えます。

  2. 画面右の「設定」「バインド変数」にて、実行先のデータベースの設定を行います。

  3. 必要な値を入力します。

    SQL詳細_設定_保存
    項目名 説明

    ターゲットDB

    SQLの実行先のDBを選択します。

    DBユーザー

    DBユーザー名を入力します。
    ターゲットDBに存在するユーザーを入力します。

    パスワード

    DBユーザーのパスワードを入力します。
    入力すると、グレーアウトした[SQLの実行]が有効になります。

    実行タイプ

    実行する方法を選択します。
    実行:実際にSQLを実行します。
    パース:パース実行を行います。バインド変数の値がなくてもテーブルの有無や構文のチェックができます。

    SQL実行結果をコミットします。

    トグルスイッチをオンにすると、SQL実行をロールバックせずにコミットして、結果をターゲットDBに保持します。

    名前付きバインド変数形式を変換します。

    トグルスイッチをオンにすると、SQLに含まれる名前付きバインド変数(ex :name)をターゲットDBで実行可能な書式に変換してSQLを実行します。
    移行先が名前付き引数に対応していないDBMSでもデータベース接続ドライバー、またはデータベース接続プログラムによって対応される場合を再現してアセスメント実行時にSQLを自動変換します。

    バインド変数

    バインド変数とその値を入力します。
    icon plus]をクリックすると入力要素が表示されます。行の右にある[icon x]をクリックすると当該の入力要素が削除されます。

    • 変数名、値、データ型を入力します。

      • 値にNULLを指定するときは、NULLにチェックを入れてください。

      • データ型は「文字列」「任意精度数値」「整数」「小数」「時刻」「日付」「日付時刻」「真偽値」「バイナリ」から選択してください。

    • 変数名の頭に「:」や「$」は必要ありません。

    バインド変数については「ターゲットDB実行時の型指定と入力書式」を参照してください。
  4. 設定を戻す場合は画面右の[設定を戻す]をクリックします。

  5. 画面右の[SQL実行]をクリックすると、SQLが実行されます。

  6. 結果は、画面右上のインフォメーションに表示されます。

    SQL詳細_SQLの実行_結果
    • SQLがSELECTのときは取得結果を表示します(最大100行表示)。

    • DML(Update/Insert/Delete)のときは更新された行数の情報を表示します。

      取得結果

      テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでは、詳細を並べて表示します。

SQLの保存

SQLの修正をアセスメントに保存します。
ここで保存した修正は「修正を評価SQLセットに適用」または修正SQLセットを作成する際に使用できます。

テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでは、ターゲットDBに対して実行したペインでのみSQL保存ができます。

  1. SQLを修正した後、[SQLの保存]をクリックします。

    SQL詳細_保存
実行計画取得

[実行計画取得]をクリックすると、詳細画面で表示されているSQLに対して実行計画を取得します。

実行計画取得後の表示形式は、対象データベースにより異なります。
実行計画

テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでのサマリー画面では、詳細を並べて表示します。

6.7.9.2. 取得結果

[取得結果]タブでは、テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントで取得結果が異なったSQLに対して、アセスメント実行時に取得したSQLの実行結果を表示します。

  • SQLがSELECTのときに取得行数と取得結果を表示します。

取得結果_2DB
6.7.9.3. 性能

[性能]タブでは、テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントでアセスメント実行時の実行時間を並べて表示します。

6.7.9.4. 実行計画

[実行計画]タブでは、テスト用ソースDBとターゲットDBの2つのデータベースを指定して行うアセスメントで性能が劣化したSQLに対して、アセスメント実行時に取得した実行計画を表示します。

実行計画_2DB
6.7.9.5. ソースSQL

[ソースSQL]タブでは、ソースDBで実行されていたSQLを確認します。
[SQLの修正]タブでSQLを修正した場合でも、こちらのソースSQLから編集前のSQLを確認できます。

SQL詳細_ソースSQL
6.7.9.6. 詳細情報

[詳細情報]タブでは、SQLの詳細情報を確認します。

SQL詳細_詳細情報
項目の詳細は「使用している項目名について」を参照してください。

6.8. 修正SQLセット

修正SQLセットは、評価SQLセットの一部のSQLに対し、修正を適用してアセスメントを実行する機能です。

1回目のアセスメントで実行エラーとなったSQLを、外部ツールなどで更新して再度実行する場合に、修正した部分を追加適用してアセスメントを行います。

6.8.1. 修正SQLセットの作成

  1. グローバルナビゲーションバーから[修正SQLセット]をクリックします。

  2. 修正SQLセットの一覧画面から[新規作成]をクリックします。

    修正SQLセット
  3. 必要な値を入力した後、画面下部の[新規作成]をクリックします。

    修正SQLセットの新規作成
    項目名 説明

    修正SQLセット名

    任意の修正SQLセットの名前を入力します。
    大文字、小文字を区別します。

    アセスメント結果にて保存したSQLから作成
    外部ツールで変換したSQL情報から作成

    修正SQLセットは、以下のいずれかの手段から作成できます。

    • アセスメント結果にて保存したSQLから作成
      アセスメントに対して[SQLの修正]で修正保存したSQLを使用する場合に選択してください。

    • 外部ツールで変換したSQL情報から作成
      評価SQLセットに対してツール連携で適用可能な、ZIPファイルまたはCSVファイルをアップロードする場合に選択してください。

    アセスメント

    「アセスメント結果にて保存したSQLから作成」を選択時に表示されます。
    ▼をクリックし、使用するアセスメントを選択してください。

    データ元ファイル

    「外部ツールで変換したSQL情報から作成」を選択時に表示されます。
    icon ope clipまたは入力欄をクリックし、ファイルを選択してください。

    メモ

    修正SQLセットについてのメモを入力します。

修正SQLセットの一覧に情報が追加されると完了です。
修正SQLセットが追加されるまで時間がかかる場合があります。

6.8.2. 修正SQLセットのSQL詳細

修正SQLセットを作成した後、修正SQLセットの中のSQLの詳細を確認します。

  1. 修正SQLセットの一覧画面から詳細情報を確認する修正SQLセット名を選択します。

  2. SQLの一覧画面が表示されます。

    修正SQLセットのSQL詳細

6.8.3. 修正SQLセットの結合

複数の修正SQLセットを結合して1つの修正SQLセットを作成します。

  1. 修正SQLセットの一覧画面から編集する修正SQLセットにチェックを入れます。

  2. ローカルナビゲーションバーから[結合]をクリックします。

    修正SQLセットの結合
  3. 新たに生成する修正SQLセット名を入力し、生成の元になる複数の修正SQLセットを選択します。
    画面下部にある[新規作成]をクリックします。

    修正SQLセットのセット名
    項目名 説明

    修正SQLセット名

    新たに生成する修正SQLセットの名前を入力します。既存の修正SQLセット名と異なる名前にしてください。
    大文字、小文字を区別します。

    修正SQLセット

    ▼をクリックし、結合したい修正SQLセットにチェックします。
    2つ以上の修正SQLセットを選択してください。

    メモ

    修正SQLセットについてのメモを入力します。

修正SQLセットの一覧に情報が追加され、完了アイコン[完了アイコン]になると完了です。
修正SQLセットを作成中はアイコンが[作成アイコン]になります。完了まで時間がかかる場合があります。

6.8.4. 修正SQLセットの編集

修正SQLセットの名前やメモを編集します。

  1. 修正SQLセットの一覧画面から編集する修正SQLセットにチェックを入れます。

  2. ローカルナビゲーションバーから[編集]をクリックします。

  3. 必要な値を入力した後、画面下部にある[保存]をクリックします。

    評価SQLセット_編集_画面
    項目名 説明

    修正SQLセット名

    変更する修正SQLセット名を入力します。

    メモ

    修正SQLセットについてのメモを入力します。

修正SQLセットの一覧の表示が変更になると、編集の完了です。

6.8.5. 修正SQLセットの削除

  1. 修正SQLセットの一覧画面から削除する修正SQLセットにチェックを入れます。

  2. ローカルナビゲーションバーから[削除]をクリックします。

  3. 確認用画面が表示されます。削除する修正SQLセットを確認してください。
    問題が無ければ、画面下部にある[削除]をクリックしてください。

    修正SQLセット_削除_確認

一覧から、該当の修正SQLセット名がなくなると削除の完了です。
修正SQLセットの削除はデータ量に応じて数分かかる場合があります。

6.9. AWSマイグレーション

AWSマイグレーションは、あらかじめスケジュールを設定した期間中に、定期的に評価SQLセットの作成とアセスメントの実行を繰り返すことができる機能です。
データベースのスナップショットから、テスト用ソースDBとターゲットDBを作成して、2つのデータベースを指定したアセスメントを行います。

6.9.1. AWSマイグレーションの一覧

  1. グローバルメニューバーから[AWSマイグレーション]をクリックします。

  2. 設定されているAWSマイグレーションの一覧が表示されます。

    AWSマイグレーションの一覧

一覧では、それぞれのAWSマイグレーションの状態が表示されます。

項目 説明

ステータス

最新のアセスメント実行のステータスをアイコンで示します。

execution ico スケジュール状態

現在スケジュール実行が有効かどうかを示します。

マイグレーション名

設定したマイグレーションの名前を表示します。

メモ

設定したメモ情報を表示します。

マイグレーション

テスト用ソースDB、ターゲットDBの情報を表示します。

スケジュール

設定したスケジュール情報を表示します。

結果

実行済みのアセスメント結果のサマリーを表示します。

最終更新日

最後に更新された日付を表示します。

生成日時

マイグレーションプロジェクトを作成した日時を表示します。

6.9.2. AWSマイグレーションの新規作成

  1. AWSマイグレーションの一覧画面から[新規作成]をクリックします。

AWSマイグレーションの作成では以下の設定を行い、最後にバリデーションを実行してから新規作成します。

  • 概要の設定

  • SQLログ取得設定

  • SQL実行先データベース設定

  • アセスメント設定

  • スケジュール設定

バリデーションに成功した場合でも、AWSアカウントの状態などにより、処理を開始できない場合があります。

新規作成されたAWSマイグレーションは一覧へ追加され、テスト用ソースDBが作成されたのち、実行待ち状態(スケジュールが有効な状態)となります。
設定された処理タイミングになると、RDSからのログ取得、評価SQLセットの作成、アセスメントが実行されます。

6.9.2.1. 概要の設定

AWSマイグレーションの概要情報を設定します。
概要情報は後から変更することができます。

概要の設定
項目 説明

マイグレーション名

AWSマイグレーションの設定名を入力します。
大文字、小文字を区別します。半角英数字のみ使用できます。

メモ

マイグレーションの概要を入力します。

6.9.2.2. SQLログ取得設定

ソースDB(SQL収集元)になるRDSのデータベース情報を設定します。
本番データベースや開発用データベースなど、アプリケーションからSQLが実行され、そのSQL実行がログとして記録されているデータベースを指定します。

SQLログ取得設定
項目 説明

インスタンスID

SQL収集元データベースのインスタンスIDを指定します。
対象がAurora DBクラスターの場合にはクラスターIDを指定します。

データベース名

SQL収集元データベースのデータベース名を指定します。
インスタンス内で複数のデータベースを運用していて、それらをテスト対象としたい場合は、AWSマイグレーションは別々に設定する必要があります。

リージョン

SQL収集元データベースのデータベースインスタンスまたはクラスターがあるリージョンを指定します。

SQL収集開始日

SQL収集元データベースからSQLを収集する日時を指定します。
すでに出力されているような古いSQL情報をテスト対象としたくない場合に指定します。
指定しない場合は、取得できる最も古いデータまで遡ります。

6.9.2.3. SQL実行先データベース設定

テスト対象(SQL実行先)になるテスト用ソースDBとターゲットDBを設定します。
以下の2パターンで作成することができます。

スナップショットからRDSインスタンス/Aurora DBクラスタを作成する

あらかじめ手動で作成し用意したスナップショットからテスト用ソースDBやターゲットDBになるRDSインスタンスやAurora DBクラスターを作成するには、以下の設定を行います。
スナップショットからテスト用ソースDBやターゲットDBを作成する場合、AWSマイグレーションの作成直後に、最初にインスタンスの作成が実行されます。

スナップショットからRDSインスタンス/Aurora DBクラスタを作成する
項目 説明

スナップショットARN

テスト用ソースDB/ターゲットDBの作成の元となるスナップショットのARNを指定します。

インスタンスクラス

新規作成するテスト用ソースDB/ターゲットDBのインスタンスクラスを指定します。

リージョン

新規作成するテスト用ソースDB/ターゲットDBのリージョンを指定します。

セキュリティグループ

新規作成するテスト用ソースDB/ターゲットDBのセキュリティグループのセキュリティグループIDを指定します。
複数入力する場合は、「,」で区切ります。

オプショングループ

新規作成するテスト用ソースDB/ターゲットDBのオプショングループのオプショングループ名をそれぞれ指定します。
テスト用ソースDB/ターゲットDBの作成の元となるスナップショットにAurora DBクラスターを指定した場合は、指定できません。
指定しない場合はデフォルトのオプショングループが使用されます。

パラメータグループ

新規作成するテスト用ソースDB/ターゲットDBのパラメータグループのパラメータグループ名をそれぞれ指定します。
テスト対象がAurora DBクラスターの場合にはクラスターパラメータグループ名を指定します。
指定しない場合はデフォルトのパラメータグループまたはクラスターパラメータグループが使用されます。

アップグレード後のエンジンバージョン

アップグレードしたターゲットDBを作成する場合、アップグレード後のエンジンバージョンを指定します。
スナップショットのデータベースバージョンから、1回でアップグレード(変更)可能なバージョンを指定してください。

アセスメント完了後の自動停止

トグルスイッチをオンにすると、アセスメントが完了したタイミングで作成したデータベースを停止します。

  • AWSマイグレーションからアップグレードしたデータベースを作成する際、AWS側にスナップショットが自動で作成されます。
    作成されたスナップショットが不要な場合は削除してください。

  • 「アセスメント完了後の自動停止」を選択していても、次の処理開始までの時刻が30分以内の場合には停止はされません。

  • RDSインスタンス、およびAurora DBクラスターは、作成後AWS上で課金対象となり、停止していても7日間利用が無ければ再起動される仕様となっています。
    Insight DTでは、再起動した後のRDSインスタンス、またはAurora DBクラスターの再停止処理は行いません。
    RDSインスタンス、およびAurora DBクラスターの管理は、お客様側で行ってください。

登録してあるターゲットDBを使用する

Insight DTからテスト用ソースDBを作成せずに、既存のターゲットDBを使用してAWSマイグレーションを行います。

登録してあるターゲットDBを指定
項目 説明

テスト用ソースDB

テスト用ソースDBとして使用するデータベースを指定します。

ターゲットDB

ターゲットDBとして使用するデータベースを指定します。

6.9.2.4. アセスメント設定

アセスメントを実行する際の設定を行います。

アセスメント設定
項目の詳細については、「アセスメント」を確認してください。
6.9.2.5. スケジュール設定

SQL情報を取得してアセスメント実行を繰り返し行うためにスケジュール、終了時期の設定を行います。
また、スケジュール設定を行わずに、直後に1回のみ実行することもできます。

スケジュール設定
項目 説明

スケジュール設定

SQLの収集とアセスメント実行スケジュールを指定して定期的に実行する場合は、「スケジュールを設定する」を選択します。
今収集しているSQLのみをアセスメント実行する場合は、「直ちに実行する」を選択します。

マイグレーション実施期間

アセスメント実行の終了日を指定します。終了日の23:59までに開始される「スケジュール実行」が実行対象となります。

評価SQLセット/アセスメントの作成頻度

評価SQLセット作成とアセスメント実行の頻度を「時間ごと」※1または「日ごと」に指定します。

※1 「時間ごと」では実行開始タイミングにかかわらず0時を基準としたタイミングで実行します。
また、指定した時間で24時間を割り切れない場合、最後の間隔が指定した時間とは異なります。

  • 2時間おき:0,2,4,6, …​ , 22

  • 3時間おき:0,3,6,9, …​ , 21

  • 5時間おき:0,5,10, …​ , 20(最後の間隔は4時間になります)

6.9.2.6. 確認

設定内容を確認します。
[バリデーション]をクリックすると、入力した値が正しいかAWSに接続し確認します。
バリデーションに成功すると、[新規作成]がクリックできます。クリックすると続けてAWSマイグレーションを作成できます。

確認

6.9.3. AWSマイグレーションを複製して新規作成

既存のAWSマイグレーション設定をもとに、新たなマイグレーション作成を行います。
既存のものと同様の設定で一部のみを変更してAWSマイグレーションの設定を行いたい場合に便利です。

  1. AWSマイグレーションの一覧画面からもとにするAWSマイグレーションにチェックを入れます。

  2. ローカルナビゲーションバーから[複製して新規作成]をクリックします。

    複製して新規作成

6.9.4. AWSマイグレーションの編集

AWSマイグレーションの名前やメモを変更します。

  1. AWSマイグレーションの一覧画面から編集したいAWSマイグレーションにチェックを入れます。

  2. ローカルナビゲーションバーから[編集]をクリックします。

  3. 必要な値を入力した後、画面下部にある[保存]をクリックします。

    AWSマイグレーションの編集画面

6.9.5. AWSマイグレーションの中断

スケジュールが有効なAWSマイグレーションのスケジュール実行を無効化します。
中断したもののスケジュールを再度有効化することはできません。

  1. AWSマイグレーションの一覧画面から中断したいAWSマイグレーションにチェックを入れます。

  2. ローカルナビゲーションバーから[中断]をクリックします。

  3. 問題が無ければ、画面下部にある[中断]をクリックします。

    AWSマイグレーションの中断画面

6.9.6. AWSマイグレーションの削除

AWSマイグレーションの削除を行います。
対象のAWSマイグレーションから作成されたアセスメントや評価SQLセットを同時に削除しますが、ターゲットDBは削除されません。
「スナップショットからRDSインスタンス/AURORAクラスタを作成する」から作成した「ターゲットDBの削除」をする際、RDSインスタンスが削除可能な場合は削除します。

  1. AWSマイグレーションの一覧画面から削除したいAWSマイグレーションにチェックを入れます。

  2. ローカルナビゲーションバーから[削除]をクリックします。

  3. 問題が無ければ、画面下部にある[削除]をクリックします。

    AWSマイグレーションの削除画面

6.9.7. AWSマイグレーション結果の確認

  1. スケジュールが実行中、またはスケジュールが終了したAWSマイグレーションに対してマイグレーション名を選択します。

    AWSマイグレーションの結果確認
  2. マイグレーションの設定情報ならびに、実行済みのアセスメントの一覧が表示されます。

    AWSマイグレーションの結果確認
  3. さらにアセスメントを選択することで、アセスメントサマリーを表示することができます。

6.9.8. AWSマイグレーション実行時のログファイル出力設定について

AWSマイグレーションでログ情報を取得するためには、RDSインスタンスまたはAurora DBクラスターにてログ出力の設定が必要です。

設定方法は、「Amazon RDS/Aurora上でのログファイル出力設定」を参照してください。

6.9.9. AWSマイグレーション実行時に必要なIAM設定について

AWSマイグレーションを実施するためにはIAMロールの設定が必要です。

詳細は「必要なIAM設定について」を参照してください。

6.10. その他の操作

6.10.1. ツール連携

失敗したSQLをユニークな形でファイル抽出します。
SQLを自動変換するツールを使用する際などに使用してください。
抽出単位は1SQLにつき1ファイルです。

通常のSQL実行評価までの手順は、以下の5ステップになります。

  1. ソースDBからIDT Managerへ網羅的にSQLを蓄積

  2. IDT Managerから評価SQLセットを作成

  3. ターゲットDBへ評価SQLセットを実行

  4. 実行結果を取得

  5. 実行結果の参照

ツール連携の場合は、続けて次の処理を行います。

  1. [失敗したSQLの抽出]失敗したSQLをユニークにし、1SQLにつき1ファイルの単位で抽出する

  2. 抽出したものを別途ツールに読み込ませ、自動修正等処理を行う

  3. 修正したSQL1つにつき1つのファイルとして保存する

  4. [修正を評価SQLセットに適用]修正したSQLを3で使用した評価SQLセットへマージする

  5. 再度ターゲットDBへ評価SQLセットを実行

  6. 実行結果を取得

  7. 修正したSQLがどれくらい修正できたか確認する

この手順を踏むことで、手動で修正するSQLの数を減らすことができます。

ツール連携の利便性について

以下、ツール連携にあたりInsight DTに用意されている機能の詳細です。

6.10.1.1. 失敗したSQLの抽出

実行したSQLの結果から、失敗したSQLをユニークな形で抽出します。

  1. アセスメントのサマリー画面から、[ツール連携]>[SQLの抽出]をクリックします。

  2. 「失敗」のステータスのみを選択して、実行に失敗したSQLファイルをダウンロードします。

ダウンロードしたZIPファイル内には、1SQLにつき1ファイルの単位でSQLが保存されています。
SQL自動変換ツールや、手動で修正など、任意の方法でSQLを修正してください。

6.10.1.2. 修正を評価SQLセットに適用

失敗したSQLの抽出で抽出したSQLを任意の方法で修正した後、評価SQLセットに修正したSQLを適用することで、修正したSQLにて再度アセスメントを実行します。

  1. 再度アセスメントを実行する評価SQLセットにチェックを入れます。

  2. ローカルナビゲーションバーの[外部連携]をクリックします。

  3. 適用するファイルの[ファイルを選択]をクリックして、修正したSQLのCSVファイルを選択します。

  4. [適用]をクリックします。
    評価SQLセットの中身が更新されます。

6.10.2. 画面の更新

ローカルナビゲーションバーの[更新]をクリックすると、画面を最新の情報に更新します。

  1. [▼]をクリックして、画面の更新間隔を選択します。
    プルダウンメニューから任意の秒数を指定してください。
    画面を自動で更新させたくないときは[停止]を選択してください。

画面の更新

6.11. 補足

6.11.1. ソースDB、ターゲットDBの型対応

ソースDBから取得可能なデータは以下のとおりです。

ソースDB SQL バインド変数値 バインド変数型

Oracle Database

PostgreSQL

×

SQL Server

×

×

MySQL

×

×

  • Oracle Databaseからデータを取得するPISO Target for Oracleは、デフォルトではバインド変数を取得しません。
    バインド変数を取得するには PISO Target for Oracleのマニュアルを参照し設定してください。

  • Amazon RDS for Oracleのバインド変数の取得については『PISO Managerインストールマニュアル』を参照してください。

  • PISO Target for PostgreSQLは、デフォルトではバインド変数を取得しません。
    バインド変数を取得するにはPISO Target for PostgreSQLのマニュアルの「SQL実行時のパラメータの取得について」を参照し、設定してください。

  • バインド変数の取得には制限があります。「バインド変数について」を参照してください。

ターゲットDBへの実行時に使用可能なデータと機能は以下のとおりです。

ターゲットDB SQL実行 バインド変数型指定 バインド変数型変換エラー推定※1

Oracle Database

×

PostgreSQL

SQL Server

MySQL

×

※1 ターゲットDB実行時、SQL構文に問題が無い場合にバインド変数の暗黙の型変換でエラーになる箇所を推定する機能です。

6.11.2. ターゲットDB実行時の型指定と入力書式

ターゲットDBへのSQL実行時にInsight DTのバインド変数型指定に応じてDBMS固有の型を設定します。
IDT Manager Webコンソール上で設定した型の指定と値の入力は、アセスメント作成時のバインド変数補完、およびSQL詳細画面のSQL実行時に行います。

以下の表はターゲットDB実行時の型と入力書式の対応を示します。

型指定 Oracle Database PostgreSQL MySQL SQL Server 入力書式

デフォルト※1

VARCHAR2

UNKNOWN

LONGTEXT

VARCHAR

文字列

VARCHAR2

TEXT

LONGTEXT

VARCHAR

任意精度数値

NUMBER

NUMERIC

DECIMAL

DECIMAL

整数

NUMBER

BIGINT

BIGINT

BIGINT

小数

NUMBER

DOUBLE PRECISION

DOUBLE PRECISION

FLOAT

時刻

TIMESTAMP

TIME

TIME

TIME

YYYY/MM/DD HH24:MI:SS または YYYY/MM/DD HH24:MI:SS.FF の形式で、日付部分・時刻部分のみでも入力できます。

日付

TIMESTAMP

DATE

DATE

DATE

YYYY/MM/DD HH24:MI:SS または YYYY/MM/DD HH24:MI:SS.FF の形式で、日付部分・時刻部分のみでも入力できます。

日付時刻

TIMESTAMP

TIMESTAMP WITHOUT TIME ZONE

DATETIME

DATETIME2

YYYY/MM/DD HH24:MI:SS または YYYY/MM/DD HH24:MI:SS.FF の形式で、日付部分・時刻部分のみでも入力できます。

真偽値

VARCHAR2

BOOLEAN

BOOLEAN

BIT

TRUEの場合は「1」、FALSEの場合は「0」を入力します。

バイナリ

RAW

BYTEA

LONGBLOB

VARBINARY

バイトデータを接頭辞(0x、0X)無しの16進数の文字列で入力します。

※1 型指定が無い場合はデフォルトの型指定を使用します。画面によっては「未指定」と表記しています。

6.11.3. 0秒時の対応

ソースDBのSQLの実行時間は、ソースDBの使用しているメモリを参照して取得しています。
そのため、タイミングによっては実行時間が0秒になることがあります。
0秒の場合、ターゲットDBの実行時間と比較することができず、遅くなったSQLのカテゴライズを正しく行うことができません。

遅くなったSQLを適切に算出するため、実行時間が0秒のSQLには、アセスメントを実行する際に入力した「0秒の仮定値」を代入して計算しています。
PISOのデフォルトのサンプリング間隔が0.2秒のため、0秒の仮定値はデフォルトで0.2秒になっています。
サンプリング間隔を変更した場合は、それによって0秒の仮定値を任意の値に変更してください。

6.11.4. ユニークSQLについて

SQLを一意にするためのハッシュ値(SQL IDもしくはSQLHASH)と、弊社独自で付与しているPI Hashを掛け合わせたものでユニークとしています。

PI Hashの詳細は「PI Hashについて」を参照してください。

6.11.5. PI Hashについて

弊社独自のSQLのハッシュ値を指します。
SQLのリテラルを無視し、同じ構成のSQLに同じハッシュ値を付与します。

6.11.6. 使用している項目名について

SQL一覧画面やSQLの詳細画面で使用している項目名の詳細です。

項目名 説明

ステータス

SQLのステータス情報を表します。
SQLの実行結果を「成功」「失敗」「修正済み」で示します。「修正済み」は修正し保存した状態です。

PI Hash

SQLに付与する弊社独自のハッシュ値を表します。

詳細は「PI Hashについて」を参照してください。

SQL ID

SQLを識別するIDを表します。

エラーコード

データベースから出力されたエラーコードを表します。

エラーメッセージ

データベースから出力されたエラーメッセージを表します。

DBユーザー

SQLを実行したDBユーザーを表します。

プログラム

ソースDBで取得したSQLを発行したプログラム名を表します。

オブジェクト

SQLに含まれるオブジェクト名を表します。

SRCDB時間

ソースDBでのSQL実行時間を表します。
SQLのサンプリング間隔により、実行時間が0秒になることがあります。

TGTDB時間

ターゲットDBでのSQLの実行時間を表します。
ネットワークを経由した時間は含まれません。

TGTDBトータル時間

ターゲットDBでSQLを実行してから終了するまでの時間を表します。
ネットワークを経由した時間が含まれます。

遅くなった割合

ソースDBと比較してターゲットDBではSQLの実行時間が何%になったかの値を表します。
ソースDBでの実行時間が0秒の場合は計算することができません。

詳細は「0秒時の対応」を参照してください。

ログイン時間

ソースDBへ接続された日時を表します。

セッションID

ソースDBで取得したセッションIDを表します。

データベース

データベースの種類を表します。

データ元ファイル

PISO Managerのマイニングサーチから出力したCSVファイルを表します。

ユニークSQL

ユニークSQLの有無を表します。

日付

実行日を表します。

DBユーザー

DBユーザー名を表します。

セッション期間

ソースDBへ接続した期間を表します。

件数

ソースDBのSQLの件数を表します。

SQL実行時間

ソースDBでのSQL実行時間を表します。

SQLテキスト

ソースDBから収集したSQLを表します。

SQL開始時間

ソースDBで取得したSQLの開始時間を表します。

エラー時の件数

評価SQLセット作成時にエラーが発生した時点で処理済みのSQLの件数を表します。

バインド変数名

取得したSQL実行時に指定されたバインド変数の変数名を表します。

SQL開始時刻

ソースDBでSQLが実行された時刻を表します。

ログオン時刻

ソースDBでSQLが実行された際のセッションのログオン時刻を表します。

SQL件数

SQLの件数を表します。

6.11.7. CSVファイルのカラムについて

アセスメントの結果をCSVダウンロードした際に使用しているカラム名の詳細です。

実行結果CSVファイルのカラム
項目名 説明

id

SQL実行結果に割り当てられる連番のIDです。

result

ターゲットDBでSQL実行した結果を表します。
SQLが成功した場合:success
失敗した場合:failed

resultCode

アセスメントによるSQL実行結果に割り当てたコードで、テスト対象SQLの成功・失敗を表します。

詳細は「APIドキュメント」の[アセスメント]>[resultCodeについて]を参照してください。

patchCreated

SQLのステータス情報を以下の2種類で表します。
修正済みのSQL:1
未修正のSQL:0

patchSqlText

ユーザーが修正したSQLを表します。
未修正のSQLの場合は空です。

elapsedTimeOnProgram

ターゲットDBでSQLを実行してから終了するまでの時間を表します。
ネットワークを経由した時間が含まれます。

elapsedTimeOnDb

ターゲットDBでのSQLの実行時間を表します。
ネットワークを経由した時間は含まれません。

elapsedTimeRatio

ソースDBと比較してターゲットDBではSQLの実行時間が何%になったかの値を表します。
ソースDBでの実行時間(elapsedTime)が0秒の場合は、アセスメント実行時に指定した「0秒の仮定値」をもとに計算されます。

詳細は「0秒時の対応」を参照してください。

piHash

SQLに付与する弊社独自のハッシュ値を表します。

詳細は「PI Hashについて」を参照してください。

sqlId

SQLを識別するIDを表します。

user

ターゲットDBへSQLを実行したDBユーザーを表します。

program

ソースDBで取得したSQLを発行したプログラム名を表します。

object

SQLに含まれるオブジェクト名を表します。

sessionStartTime

ソースDBへ接続された日時を表します。

sessionIdentifier

ソースDBで取得したセッションIDを表します。

sqlStartTime

ソースDBで取得したSQLの開始時間を表します。

sqlStartTimeFraction

ソースDBで取得したSQL開始時間のマイクロ秒部分を表します。

elapsedTime

ソースDBでのSQL実行時間を表します。
SQLのサンプリング間隔により、実行時間が0秒になることがあります。

sqlText

ソースDBから収集したSQLです。

bind

バインド変数情報の配列データを以下のようにJSON文字列形式で出力します。

ex [{"name": "バインド変数名", "type": "バインド変数型", "value": "値"},,,]

modifiedSqlText

アセスメントのオプションによって書き換えられてターゲットDBへ実際に実行されたSQLです。

modifiedBind

アセスメントのオプションによって書き換えられてターゲットDBへ実際に適用されたバインド変数です。

errorCode

データベースから出力されたエラーコードを表します。

errorMessage

データベースから出力されたエラーメッセージを表します。

追加情報CSVファイルのカラム
項目名 説明

resultId

実行結果CSVの「id」に対応する値を表します。

rank

同一のresultIdのSQLに対して発見または適用された順番を表します。

applied

SQLに対して変更を加えたかどうかを示します。
変更を加えた場合は「1」、加えてない場合には「0」と表します。

type

分類を表します。

action

typeに対応する詳細説明です。

severity

深刻度を表します。

detail

type、actionに関連する詳細データのJSON文字列を表します。

6.11.8. 評価対象のSQLについて

評価対象となるSQLは評価SQLセットの作成経路などにより異なります。

評価対象のSQLについて
評価SQLセット作成手段 説明

PISOで蓄積したSQLに対してマイニングサーチを実行して評価SQLセットを作成する場合

  • SELECTとDML(Insert/Update/Delete)のみが評価対象となります。

  • RDS for MySQL、RDS for MariaDB、Amazon Aurora(MySQL互換エディション)に対して、PISOで蓄積したSQLを評価対象とする場合、行コメントのあるSQLを正しく評価することができません。

AWSマイグレーション機能、または評価SQLセット作成時に直接Amazon RDSからログを取得して評価SQLセットを作成する場合

  • Amazon RDSのログファイルに出力されたものを評価対象とします。

    • 結果の反映(トランザクション)オプションは、評価対象のSQLに「COMMIT」や「ROLLBACK」などのトランザクション制御文が含まれている場合に、アセスメント自体の「元に戻すオプション」は正しく動作しません。

    • RDS for PostgreSQL、Amazon Aurora(PostgreSQL互換エディション)ではpgauditでの出力を対象とします。

      • Create Functionなどの宣言やDDLなども評価対象となります。

      • PL/pgSQL内のSQL実行がpgauditログに出力されているものについては、評価対象とはしません。

    • RDS for MySQL、Amazon Aurora(MySQL互換エディション)では一般ログ(general log)での出力を対象とします。

7. 制限事項

7.1. バインド変数について

  • WHERE句とHAVING句で使用されるバインド変数のみ取得できます。

  • 取得可能なバインド変数の数や値は4000バイトまでです。

  • 同じSQLのバインド変数値が変化する場合、キャプチャリング直前のバインド変数値のみ取得できます(バインド変数値のキャプチャリングの間隔に起因しています)。

7.2. 1SQLのサイズ上限値

PISO Targetが取得する1SQLのデフォルトサイズは21674バイトです。
また、IDT Managerで処理可能な1SQLの最大サイズは10Mバイトです。

以下のパラメータでデフォルトサイズを変更できます。

  • PISO Target内の設定ファイル
    $IST_HOME/usr/${HOSTNAME}/${ORACLE_SID}/etc/sgamond.prm

  • パラメータ

     MAX_SQLTEXT_LENGTH=21674

サイズの変更後、PISO TargetのSQL Collectorを再起動してください。

SQLを表示している画面において、以下のような制限があります。

  • アセスメントサマリーおよびアセスメントのSQL一覧では、画面サイズに応じて内容を表示します。

  • 評価SQLセットおよび修正SQLセットのSQL一覧では、最大10000文字までのSQLを表示します。

  • SQL詳細画面では、利用環境の利用可能メモリ量などの状況により、表示できない場合があります。

7.3. AWSマイグレーション機能について

取得対象のソースDBに対するSQL実行のセッションがスケジュールの切り替わるタイミングをまたがっている場合、スケジュール切り替わり前から実行されていたセッションによるSQLを評価対象とすることができません。

7.4. Amazon RDS/Auroraのログ制限

  • PISO Managerを用いない場合に、UTF-8以外の収集元データベースと発行SQLは対応していません。

  • COPYコマンドの実行は対応していません。

  • ログ文中に複数のSQLが連結されている場合の実行は対応していません。

8. AWS上で利用時の留意事項

8.1. 導入作業について

製品の特性上、本製品の導入や利用時には、AWSの利用(IAM、VPC、EC2、EBS、RDSなど)に関する一般的な知識、Oracle Linux、データベース、SQLなどに関する一般的な知識があることを想定しています。
導入ではEC2インスタンスの起動を行います。AWS Marketplaceを通してAMIからEC2を起動可能な権限のあるユーザーで作業を実施してください。以下に導入ユーザーに必要となるIAMポリシー例を記載します。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "aws-marketplace:ViewSubscriptions",
                "aws-marketplace:Subscribe",
                "aws-marketplace:Unsubscribe"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:Describe*",
                "ec2:GetConsole*",
                "ec2:CreateTags"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "ec2:RunInstances",
            "Resource": [
                "arn:aws:ec2:*:*:subnet/*",
                "arn:aws:ec2:*:*:network-interface/*",
                "arn:aws:ec2:*:*:instance/*",
                "arn:aws:ec2:*:*:volume/*",
                "arn:aws:ec2:*::image/ami-*",
                "arn:aws:ec2:*:*:key-pair/*",
                "arn:aws:ec2:*:*:security-group/*"
            ]
        }
    ]
}

また、ディスクの拡張が必要な場合、SSHで接続可能な環境から作業を実施してください。

導入作業をAWSアカウントのルートユーザーで行うことは推奨されていません。導入作業はIAMユーザーで行ってください。
ルートユーザーについては AWSアカウントのルートユーザーを参照してください。
  • 権限の設定については、 IAMでのセキュリティのベストプラクティス を参照してください。

  • 導入手順については 「IDT Managerの構築と設定(EC2の場合)」を参照してください。

  • IDT ManagerはシングルAZ構成のみをサポートしています。マルチAZ構成/マルチリージョン構成はサポートしていません。

  • SSHを使用してインスタンスに接続する場合は、EC2起動時にキーペアを指定する必要があります。キーペアの指定については Amazon EC2キーペアとLinuxインスタンス を参照してください。

  • バックアップ時に生成されるEBSのスナップショットや、EBS暗号化においてKMSのカスタマー管理型のキーを使う場合など、利用するサービス・設定により、サービス利用にかかる費用が別途発生します。

8.2. EC2内に保存されるデータについて

EC2上に構築したIDT Managerは、EC2で使用するストレージ(EBS)上に蓄積されたデータベース内にSQL等のデータを保存しています。
EBSの暗号化については、ユーザーのセキュリティ要件に応じた暗号化などの対策を推奨します。

EBSの暗号化については Amazon EBS暗号化 を参照してください。

EBSの暗号化でKMS keyを使用する場合、 AWS KMS keys ローテーション の必要性も確認してください。

8.3. AWS Marketplaceでの提供形式について

IDT Managerはインスタンスごとに課金される時間課金(年間課金)、また、契約期間中の利用にインスタンス数の制限のない月間課金、別途契約の取り決めを行う(BYOL)の複数のパターンで提供されています。
利用形態に応じたパターンを選択し、サブスクライブしてください。
詳細は、以下のAWS Marketplace上の弊社の製品リストを参照してください。BYOLの価格、ライセンス形態についてはお問い合わせください。

8.4. アプリケーション稼働状況のモニタリングについて

起動したIDT ManagerのEC2インスタンスは、AWSで提供されているEC2のモニタリング機能を利用することで稼働状態のモニタリングが可能です。

Amazon EC2 のモニタリングについては、 Amazon EC2 のモニタリング を参照してください。

アプリケーションが稼働しているかについては、IDT Manager Webコンソールからログインを行いサービスにアクセス可能であることを確認してください。
IDT Manager Webコンソールにアクセスできない場合、ec2-userユーザーにてSSHで接続し、以下のコマンドでサービスが正常起動していることを確認します。

[ec2-user@idt ~]$ sudo systemctl status piso-manager
[ec2-user@idt ~]$ sudo systemctl status idt-manager

定期的に稼働状況を確認する必要がある場合、IDT ManagerへAPI経由でアクセスして動作を確認することが可能です。

APIの使用方法については、IDT Manager WebコンソールからAPIマニュアルを参照してください。

8.5. AWSのサービスを利用したバックアップと復旧について

IDT ManagerはEC2とEBSで動作しており、EBSボリュームと Amazon EC2インスタンスをバックアップすることにより、障害等に備えることが可能です。
事前にバックアップ処理とリストア処理が正しく動作することを確認したうえで本番運用設定を行ってください。

8.5.1. 自動バックアップの設定について

以下の手順で自動バックアップを設定します。

  1. Amazon EC2コンソールから[Elastic Block Store]>[ライフサイクルマネージャー]>[ライフサイクルポリシーの作成]を選択します。

    lifecyclemanager
  2. 以下を設定して、ファイルサイクルポリシーを作成します。

    • ポリシータイプ:EBS-backed AMIポリシー

    • これらのタグを持つターゲット:Nameを選択し、EC2インスタンスの名前を選択します。
      Nameタグを付与していない場合は、IDT Managerのインスタンスへ名前を設定するなど、対象のインスタンスを識別しやすくすることを推奨します。

    • 使用するIAMロールを選択します。通常はデフォルトのロールで問題ありませんが、別のロールを選択することも可能です。

    • ポリシースケジュール(実行頻度、開始時刻、保持数等)を設定します。

      • バックアップ作成の頻度については任意の期間を設定可能ですが、1日に1回程度、バックアップを取得することを推奨します。

        • 頻度の設定により、何らかの障害が発生した際にどの程度最新の状態へ戻せるかが決まります。例えば、1日に1回バックアップを取得する場合は、最低でも1日前の状態まで戻すことが可能となります。

      • 設定例

        • 頻度:毎日

        • 毎:24時間

        • 開始時刻:18:00(UTC)

        • 保持タイプ:カウント

        • カウント数:3など

    • インスタンスの再起動:再起動しない設定の場合、バックアップ取得処理はオンライン(起動状態)のまま実行されますが、Insight DTが処理中などの状態がバックアップとして保存される場合があります。その場合、リストア後に一度再起動が必要となる場合があります。

    • その他のオプションを必要に応じて設定します。

      自動バックアップ処理の設定については、 スナップショットのライフサイクルの自動化を参照してください。
    • ポリシーの作成を実行すると、定期的なバックアップの作成が有効となります。

バックアップは定期的な設定以外にも、手動で実行することも可能です。
大規模な変更などを行った場合には、手動でバックアップを行うことも検討してください。

8.5.2. バックアップからの復旧

ライフサイクルマネージャーでの設定により、EC2インスタンスはAMIとしてバックアップされます。
バックアップされたAMIには、インスタンスの起動に必要な情報と元のEC2インスタンスにアタッチされた各EBSボリュームのスナップショットが含まれています。
バックアップから復旧されるのに要する時間については、AMIからのEC2インスタンス起動の処理となるため、新規導入作業時に要する時間と同じです。

Amazonマシンイメージ(AMI)については、以下のAWSのドキュメントを確認してください。
Amazon マシンイメージ (AMI)
  1. Amazon EC2コンソールから[イメージ]>[AMI]を選択します。ライフサイクルマネージャーから作成されたAMIには、dlm:managed というタグが付与されています。

    dlm-ami
  2. インスタンスタイプを選択します。

    インスタンスタイプは、AWS Marketplaceから導入時に許可されているインスタンスタイプのみ選択することが可能です。許可されていないインスタンスタイプを選択するとエラーとなります。
  3. 以降のインスタンス起動の設定は、導入時のインスタンス起動手順と同じです。

  • バックアップ実行時の状態により、バックアップから復旧したEC2インスタンスでWebコンソールにアクセスできない場合があります。その場合、一度、EC2インスタンスを再起動し、再度アクセス可能か確認してください。

  • IDT Managerでのadministratorなどのユーザーのパスワードは、バックアップ元のEC2インスタンスの環境の情報が引き継がれます。
    既定のadministratorのパスワードは、EC2のインスタンスIDですが、このインスタンスIDは、バックアップ元の環境のインスタンスIDであることに注意してください。

8.6. AWSのサービスの障害からの復旧

8.6.1. AWSのサービスの障害時の影響について

IDT ManagerはEC2とEBSで動作しています。また、内部のサービスはインスタンス起動時に自動起動されます。
何らかの理由でIDT ManagerのEC2インスタンスが稼働していない場合、ソースDBから送られるSQL情報を収集・蓄積することができません。
一定期間ソースDB内で保持されていますが、あらかじめ設定された保持可能容量を超えた場合にはその間のログを収集することができなくなります。
IDT ManagerでのSQL蓄積実行中に、AWSのサービス障害等でIDT ManagerのEC2インスタンスが停止した場合には、以降の手順でIDT Managerを復旧してください。

8.6.2. EC2インスタンスまたはアプリケーションの障害時の復旧

何らかの原因で、EC2インスタンスが終了してしまっている、もしくはアプリケーションの障害によりログインできない、などの場合はEC2インスタンスを再起動することでアプリケーションを再起動できます。

  1. EC2インスタンスの一覧より対象のEC2インスタンスを選択し、右クリックで表示されるメニューから、[EC2インスタンスの開始] もしくは[EC2インスタンスの再起動]を選択してください。

  2. EC2インスタンスが起動後、IDT Manager Webコンソールへアクセスしてログイン可能であることを確認してください。

8.6.3. 現在のEC2をそのまま起動させることができない障害時の復旧

起動中のEC2が存在するAZに障害が発生するなど、現在のEC2インスタンスをそのまま起動させることができない障害が発生している場合、取得済みのバックアップから別AZでインスタンスを起動することでアプリケーションを稼働させることが可能です。
「バックアップからの復旧」 の手順に従い、正常なAZでバックアップ取得したAMIからEC2インスタンスを起動してください。