UpdateオペレータとStreamオペレータの比較 - Parallel Transporter

Teradata Parallel Transporter ユーザー ガイド

Product
Parallel Transporter
Release Number
16.20
Published
2018年4月
Language
日本語
Last Update
2018-09-07
dita:mapPath
ja-JP/eho1512702793064.ditamap
dita:ditavalPath
ja-JP/eho1512702793064.ditaval
dita:id
B035-2445
Product Category
Teradata Tools and Utilities

UpdateオペレータとStream オペレータの両方ともTeradata Database内のデータ更新に使用できますが、以下の点に注意してください。

  • Updateオペレータは、対話型のデータの読み取りと書き込みが同時に実行ロックしますように、更新中のターゲット テーブルをされない
  • Stream オペレータは、対話型のデータの読み取りと書き込みが同時に実行できるように、更新中のターゲット テーブルをロックしません

    Streamオペレータのこの機能により、他のユーザーからのテーブルへのアクセスが多い場合でも更新操作を実行できます。 他のTeradata PTオペレータと同様に、Streamオペレータは複数のセッション、および複数のオペレータ インスタンスを使用して複数のデータ ソースから同時にデータを処理できます。

    LoadオペレータやUpdateオペレータとは異なり、StreamオペレータはTeradataへのアクセスに独自のプロトコルを使用しません。 代わりに、Teradata SQLプロトコルを使用します。

UpdateオペレータとStreamオペレータの比較
パラメータ Updateオペレータ Streamオペレータ
ボリューム 多数の行に対して大量の更新を実行する。 低ボリュームのリアルタイム更新に向く。
パフォーマンス 更新するボリュームが多い場合のパフォーマンスが高い。 複文リクエストでのパフォーマンスが高い。
ロックの粒度 ブロック レベルでのバルク更新。 すべてのテーブルをロックする必要があるため、完了までアクセスできない。

ロード ジョブが完了するまで行にアクセスできない。

更新中、ターゲット テーブルは一部のみがロックされる。 更新が行なわれる行は、標準SQLロック プロトコルを使用して個別にロックされるため、同時に他のユーザーによる読み込みや書き込みが可能。

トランザクションが完了すると、それらの行は即座にアクセスできるようになる。

テーブルの数 最高で5個。 最高で127個。
タイミング 多数のトランザクションをバッチ処理してまとめて実行するため、通常はリアルタイムよりもかなり遅い。 ロードはほぼリアルタイムで変更される。
同時操作 APPLY-SELECT文で指定されたExportオペレータ、Teradata Database loadオペレータまたはUpdateオペレータごとに接続しているデータベースに対しロード スロットが必要。 Teradata Databaseロード スロットは不要。
インスタンス 複数の並列インスタンスによって高いパフォーマンスの更新が可能。 複数の並列インスタンスを使用することにより、場合によってはパフォーマンスの向上が可能。
順序 データは必ず順番に処理される(ただし、リアルタイムではない)。 順序付けが必要な場合は、ROBUSTモードを使用する必要がある。
DML文 実際のDML文を使用する。 実際のDMLコマンドではなく、テーブルを変更するマクロを使用する。
作業テーブル ターゲット テーブルごとに作業テーブルが1つずつ必要。 作業テーブルは不要。