トランザクション データが収集され、クライアント ディレクトリに格納されます。"アクティブ ディレクトリ スキャン"機能を使用し、DataConnectorオペレータを使用して、ディレクトリのスキャンに対するユーザー定義の時間間隔、およびスキャン ジョブ全体の開始時間と終了時間に基づいて、これらのディレクトリから継続的にデータを収集できます。
ユーザー指定のファイル名の基準(“ワイルドカード"の指定も含みます)を満たすソース ディレクトリに表示されているすべてのファイルは、DataConnectorオペレータによって処理されます。 定義されたスキャンの間隔が終了するたびに、DataConnectorオペレータはディレクトリをスキャンし、前回のスキャン以降にディレクトリに入力された新しいファイルを検索します。 次に、収集された各ファイルから行を読み取り、Consumerオペレータに送信します。これは、通常、継続的なロードのためのStreamオペレータです。 ディレクトリ スキャン中に新しいファイルが見つからなかった場合、DataConnectorオペレータは、定義された間隔が経過するまで待機してから、再度ディレクトリをスキャンします。
方策
- DataConnectorオペレータに必要な標準の属性である、FileName、Format、IndicatorMode(必要な場合)、およびTextDelimiter(形式が“delimited"の場合に必要)に対して、属性の名前と値を指定します。
これらの標準属性の使用の詳細については、<Teradata® Parallel Transporterリファレンス, B035-2436>でDataConnectorオペレータに関するセクションを参照してください。
- 次の戦略のいずれかに従って、FileName属性にワイルドカード文字( * )を使用します。
- DataConnectorオペレータがディレクトリ内のすべてのファイルのデータをスキャンおよび抽出するように指示するためには、"*"と指定します。
- DataConnectorオペレータが指定された文字列で開始するファイル名を持つディレクトリ内のすべてのファイルをスキャンするように指示するためには、"abc.*"と指定します。
- 次の形式で、DirectoryPath属性を使用してスキャンするディレクトリを指定します。
DirectoryPath=<PathName>
- アーカイブ ディレクトリのパスを指定するためには、ArchiveDirectoryPath属性を使用します。 ディレクトリ内のファイルがスキャンされてそのデータが抽出されると、この指定によって、それらのファイルが再度スキャンされないようにするために、DirectoryPath属性で識別されるディレクトリからArchiveDirectoryPath属性で指定されたディレクトリにファイルが移動されます。
- ディレクトリ スキャンに対する時間の制約を設定するには、次のように、DataConnectorのVigil属性を使用します。
属性 セットアップ要件 VigilStartTime 最初のディレクトリ スキャンの開始時間を指定する場合に必要です。 VigilStopTime スキャンが開始されなくなる時間を指定します。 終了時間の前に開始するスキャンは、最後まで実行されます。 この属性は、VigilElapsedTime属性と交換可能です。 これらの2つの属性のどちらかを使用する必要があります。
VigilWaitTime あるスキャンの開始と次のスキャンの開始の間の時間を秒単位で指定します。 VigilElapsedTime ジョブがVigilWaitTimeによって定義された間隔で新しいファイル用のディレクトリをスキャンする合計時間を分単位で指定します。 指定した経過時間の終了前に開始するスキャンは、最後まで実行されます。 すべてのDataConnector属性の必須構文および詳細な説明については、<Teradata® Parallel Transporterリファレンス, B035-2436>を参照してください。
アクティブ ディレクトリ スキャンのオプション
アクティブ ディレクトリ スキャンをさらにカスタマイズするために、次のオプションを使用できます。
- 複数のデータ ソースのモニターには、並列に動作しているいくつかのDataConnectorを使用します。
- 最適な周期でデータベース テーブルにデータをINSERTするには、Stream オペレータの複数のインスタンスを使用します。
- 重要な任意の属性:
- 最後に更新された時間に従ってファイルを整列するためには、VigilSortFile属性を指定し、それをTIMEに設定します。
- スキャン ファイルが新しいデータで更新されるときに通知がそのファイルに配置されるように、ファイル名を使用してVigilNoticeFileName属性を指定します。
- 1つのパスでスキャンできるファイルの最大数を定義するためには、VigilMaxFilesを指定します。
- 複数のスキーマ:
ソースからのデータの一部がUNION互換スキーマによって記述されていない場合は、APPLY文のSelect句で列選択や派生列を使用して、出力データ ストリームでUNION互換データを設定します。
Active Directoryスキャンの一般的なアプリケーションについては、ジョブ例9: アクティブ ディレクトリ スキャンを参照してください。
このジョブに対応するサンプル スクリプトについては、sample/userguideディレクトリの以下のスクリプトを参照してください。
PTS00015: アクティブ ディレクトリ スキャン