etl testing data warehouse testing tutorial
ETLテスト/データウェアハウスのプロセスと課題:
今日は、少し時間を取って、テスターの友人に求められているスキルの1つ、つまりETLテスト(抽出、変換、読み込み)について、テストの友愛について説明します。
このチュートリアルでは、ETLテストと、ETLプロセスをテストするために行うことについての完全なアイデアを紹介します。
このシリーズの完全なリストチュートリアル:
- チュートリアル#1 : ETLテストデータウェアハウステスト紹介ガイド
- チュートリアル#2 : InformaticaPowerCenterツールを使用したETLテスト
- チュートリアル#3 : ETLとDBのテスト
- チュートリアル#4 : ビジネスインテリジェンス(BI)テスト:ビジネスデータをテストする方法
- チュートリアル#5 : トップ10のETLテストツール
独立した検証と妥当性確認は大きな市場の可能性を獲得していることが観察されており、多くの企業はこれを将来のビジネス上の利益と見なしています。
顧客には、サービスの提供に関してさまざまな製品が提供され、テクノロジー、プロセス、およびソリューションに基づいて多くの分野で配布されています。 ETLまたはデータウェアハウスは、急速かつ成功裏に開発されている製品の1つです。
ETLプロセスを通じて、データはソースシステムからフェッチされ、ビジネスルールに従って変換され、最終的にターゲットシステム(データウェアハウス)にロードされます。データウェアハウスは、ビジネスの意思決定プロセスを支援する統合データを含む企業全体のストアです。これはビジネスインテリジェンスの一部です。
学習内容:
- 組織がデータウェアハウスを必要とするのはなぜですか?
- ETLプロセス
- ETLテスト手法
- ETL /データウェアハウスのテストプロセス
- データベーステストとデータウェアハウステストの違い
- ETLテストの課題
- 推奨読書
組織がデータウェアハウスを必要とするのはなぜですか?
組織化されたITプラクティスを持つ組織は、次のレベルのテクノロジー変革を生み出すことを楽しみにしています。彼らは現在、相互運用が容易なデータを使用して、より運用性を高めようとしています。
データはどの組織にとっても最も重要な部分であると言っても、それは日常のデータでも履歴データでもかまいません。データはレポートのバックボーンであり、レポートはすべての重要な管理上の決定が行われるベースラインです。
ほとんどの企業は、履歴データだけでなくリアルタイムデータを保存および監視するためのデータウェアハウスの構築に一歩前進しています。 効率的なデータウェアハウスの作成は簡単な作業ではありません。 多くの組織は、分散テクノロジーで実行されるさまざまなアプリケーションを備えた分散部門を持っています。
ETLツールは、さまざまな部門のさまざまなデータソース間で完璧な統合を行うために採用されています。 ETLツールはインテグレーターとして機能し、さまざまなソースからデータを抽出します。ビジネストランスフォーメーションルールに基づいて優先フォーマットに変換し、既知のまとまりのあるDBにロードするのがデータウェアハウスです。
適切に計画され、明確に定義された効果的なテスト範囲により、スムーズな変換が保証されます プロジェクトの生産への。データウェアハウスが具体的で堅牢であることを確認するために、ETLプロセスが独立した専門家グループによって検証および妥当性確認されると、ビジネスは真の浮力を獲得します。
ETLまたはデータウェアハウスのテストは、4つの異なるエンゲージメントに分類されます 使用するテクノロジーやETLツールに関係なく:
- 新しいデータウェアハウステスト –新しいDWはゼロから構築され、検証されます。データ入力は顧客の要件とさまざまなデータソースから取得され、ETLツールを使用して新しいデータウェアハウスが構築および検証されます。
- 移行テスト –このタイプのプロジェクトでは、顧客は既存のDWとETLで作業を実行しますが、効率を向上させるために新しいツールをバッグに入れようとしています。
- 変更要求 –このタイプのプロジェクトでは、さまざまなソースから既存のDWに新しいデータが追加されます。また、お客様が既存のビジネスルールを変更したり、新しいルールを統合したりする必要がある場合もあります。
- レポートテスト –レポートは、データウェアハウスの最終結果であり、DWが構築する基本的な提案です。レポートは、レイアウト、レポート内のデータ、および計算を検証してテストする必要があります。
ETLプロセス
(( 注意 :画像をクリックすると拡大表示されます)
ETLテスト手法
1)データ変換テスト :さまざまなビジネス要件とルールに従ってデータが正しく変換されていることを確認します。
2)ソースからターゲットへのカウントテスト :ターゲットにロードされたレコードの数が予想される数と一致していることを確認してください。
3)ソースからターゲットへのデータテスト :すべての投影データが、データの損失や切り捨てなしにデータウェアハウスにロードされていることを確認してください。
4)データ品質テスト :ETLアプリケーションが適切に拒否し、デフォルト値に置き換え、無効なデータを報告することを確認してください。
5)パフォーマンステスト :パフォーマンスとスケーラビリティの向上を確認するために、データが所定の予想時間枠内にデータウェアハウスにロードされていることを確認してください。
アンドロイドのためのトップ5mp3ダウンローダー
6)生産検証テスト: 本番システムのデータを検証し、ソースデータと比較します。
7)データ統合テスト :さまざまなソースからのデータがターゲットシステムに正しくロードされ、すべてのしきい値がチェックされていることを確認してください。
8)アプリケーション移行テスト :このテストでは、ETLアプリケーションが新しいボックスまたはプラットフォームへの移動で正常に機能していることを確認します。
9)データと制約のチェック :この場合、データ型、長さ、インデックス、制約などがテストされます。
10)重複データチェック :ターゲットシステムに重複データが存在するかどうかをテストします。データが重複していると、誤った分析レポートが作成される可能性があります。
上記のETLテスト方法とは別に、システム統合テスト、ユーザー受け入れテスト、増分テスト、回帰テスト、再テスト、ナビゲーションテストなどの他のテスト方法も実行され、すべてがスムーズで信頼できることを確認します。
ETL / データウェアハウス テストプロセス
独立した検証と妥当性確認の下にある他のテストと同様に、ETLも同じフェーズを通過します。
- 要件の理解
- 検証中
- テスト推定 テーブルの数、ルールの複雑さ、データ量、ジョブのパフォーマンスに基づいています。
- テスト計画 テスト見積もりとビジネス要件からの入力に基づいています。ここで、範囲内にあるものと範囲外にあるものを特定する必要があります。また、このフェーズでは、依存関係、リスク、および軽減計画にも注目します。
- テストケースの設計 利用可能なすべての入力からシナリオをテストします。また、マッピングドキュメントとSQLスクリプトを設計する必要があります。
- すべてのテストケースの準備ができて承認されると、テストチームは実行前チェックを実行し、 テストデータの準備 検査用の
- 最後に、終了基準が満たされるまで実行が実行されます。したがって、実行フェーズには、ETLジョブの実行、ジョブ実行の監視、SQLスクリプトの実行、欠陥ログ、欠陥の再テスト、および回帰テストが含まれます。
- 正常に完了すると、要約レポートが作成され、終了プロセスが実行されます。このフェーズでは、ジョブまたはコードを次のフェーズに昇格させるためにサインオフが行われます。
最初の2つのフェーズ、つまり要件の理解と検証は、ETLテストプロセスの前段階と見なすことができます。
したがって、メインプロセスは次のように表すことができます。
実際のテストを開始する前に、利害関係者が相互に受け入れる必要のあるテスト戦略を定義する必要があります。明確に定義されたテスト戦略は、テストの願望を満たすために正しいアプローチに従っていることを確認します。
ETL /データウェアハウスのテストでは、テストチームがSQLステートメントを広範囲に記述したり、開発チームが提供するSQLを調整したりする必要がある場合があります。いずれの場合も、テストチームは、これらのSQLステートメントを使用して取得しようとしている結果を認識している必要があります。
データベーステストとデータウェアハウステストの違い
データベースのテストと データウェアハウス どちらもテストの方向性が異なるという事実はありますが、類似しています。
- データベーステストは、通常、OLTP(オンライントランザクション処理)タイプのデータベースを使用して小規模なデータを使用して実行されますが、データウェアハウステストは、OLAP(オンライン分析処理)データベースを含むデータを使用して大量に実行されます。
- データベーステストでは、通常、データは一貫して均一なソースから注入されますが、データウェアハウステストでは、ほとんどのデータは、順次一貫性のないさまざまな種類のデータソースから取得されます。
- 通常、データベーステストではCRUD(作成、読み取り、更新、削除)操作のみを実行しますが、データウェアハウステストでは読み取り専用(選択)操作を使用します。
- 正規化されたデータベースはDBテストで使用され、士気喪失されたDBはデータウェアハウステストで使用されます。
あらゆる種類のデータウェアハウステストのために実行する必要のある普遍的な検証がいくつかあります。
以下は、このテストで検証に不可欠なものとして扱われるオブジェクトのリストです。
- ソースから宛先へのデータ変換が期待どおりに機能することを確認します
- 期待されるデータがターゲットシステムに追加されていることを確認します
- すべてのDBフィールドとフィールドデータが切り捨てなしでロードされていることを確認します
- レコード数の一致についてデータチェックサムを確認する
- 拒否されたデータについて、すべての詳細を含む適切なエラーログが生成されることを確認します
- NULL値フィールドを確認する
- 重複データがロードされていないことを確認します
- データの整合性を検証する
=>知っている ETL /データウェアハウステストとデータベーステストの違い 。
ETLテストの課題
このテストは、従来のテストとはまったく異なります。データウェアハウスのテストを実行する際に直面した多くの課題があります。
私がプロジェクトで経験したいくつかの課題は次のとおりです。
- 互換性のない重複データ
- ETLプロセス中のデータの損失
- 包括的テストベッドが利用できない
- テスターには、ETLジョブを自分で実行する権限がありません
- データの量と複雑さは非常に巨大です
- ビジネスプロセスと手順の誤り
- テストデータの取得と構築の問題
- 不安定なテスト環境
- ビジネスフロー情報がありません
データは、企業が重要なビジネス上の意思決定を行うために重要です。 ETLテストは、ビジネス情報が正確で、一貫性があり、信頼できることを検証および保証する重要な役割を果たします。また、本番環境でのデータ損失の危険性を最小限に抑えます。
これらのヒントがETLプロセスの正確性を確保するのに役立ち、これによって構築されたデータウェアハウスがビジネスの競争上の優位性になることを願っています。
ETLテストチュートリアルの完全なリスト:
- チュートリアル#1 : ETLテストデータウェアハウステスト紹介ガイド
- チュートリアル#2 : InformaticaPowerCenterツールを使用したETLテスト
- チュートリアル#3 : ETLとDBのテスト
- チュートリアル#4 : ビジネスインテリジェンス(BI)テスト:ビジネスデータをテストする方法
- チュートリアル#5 : トップ10のETLテストツール
これは、MNCでテスト管理の役割を果たしているVishalChhaperiaによるゲスト投稿です。彼は、マルチテクノロジーQAプロジェクト、プロセス、およびチームの管理に豊富な経験を持っています。
ETLテストに取り組んだことがありますか? ETL / DWテストのヒントと課題を以下で共有してください。