開発者向けのライフハック:Informatica Power CenterでのSQ(ソース修飾子)の効果的な使用

すべてのHabroresidentsにこんにちは!



開発者向けのライフハックを含むRDTEX会社の最初のブログを開きます。 読者の一人がそれらを利用することを願っています。



ライフハックは、ロシア連邦の主要銀行の1つでレポートを作成するために、あるシステムから別のシステムにデータを転送するプロジェクトの作業中に発明されました。



使用される技術:



データソースシステム-Oracle RDBMS(バージョン11.2.0.4.0)

データ受信システム-RDBMS Oracle(バージョン11.2.0.4.0)

Integration Bus-Informatica(バージョン10.1.1)



主要な統合プロジェクトの実装中に、次の問題が発生しました。



1. Informatica Power CenterでのSQ [Source Qualifier]の非効率的な使用



Informatica Power CenterでSQ [ソース修飾子]を使用すると、入力文字数の制限が明らかになりました。 許可される最大文字数は32767です。ソース修飾子の非合理的な使用例を以下の図に示します。





図1 SQ Informatica Power Centerのスクリーンショット



このスクリーンショットは、スペースが文字スペースを消費し、その結果、複雑なSQLクエリが完全に適合しないことを示しています(つまり、ソース修飾子に挿入されたときに切り捨てられます)。



以下の図は、ソース修飾子の正しい使用方法を示しています(変更は赤で強調表示されています)。





図2クエリが変更されたSQ Informatica Power Centerのスクリーンショット



次の行に移動すると、配置にN番目の文字数がかかり、これを削除すると、すべてのSQLコードに適合できました。



2.無限に大きい数の誤った変換



無限に大きな数が次の形式でOracleデータベースにアップロードされました。



1267650600228230000000000000000



そして、次の形式でロードする必要があります。



1267650600228229401496703205376

つまり 値は特定の数字カテゴリから丸められました。



次のソリューションを提供します。



Informatica Power Centerでのマッピングの開発中、フィールド形式(たとえば、文字列)は、確実に大きくなる値の特定の段階ですぐに設定されますが、





ツールの使用を要約すると、次の利点が区別できます。



  1. このツールは、特に最小限の変換(ほぼ1対1)でデータを転送する必要がある場合、テラバイト単位で計算された大量のデータ(たとえば、25〜30テラバイト)を転送するのに便利です。
  2. 属性の自動「プル」(「属性の伝播」オプション)の可能性、およびマッピング内の「強調表示」(データの取得元と取得元)。
  3. ETLツールとELTツールの両方の動作モードを選択する機能(特定のITプロジェクトに依存)。


そして、写真の客観性のためのいくつかのマイナス:



  1. 「複雑な」データ変換ロジックの欠如。
  2. ツール自体のサポートと個々の変換の操作のロジックの理解の観点からは、一部の競合他社(Oracle Data Integratorなど)に劣っています。



All Articles