Teradata を初めて使用します。Teradata でテーブルを作成する際に AMP がどのように役立つか教えてください。シナリオを用意しましょう。4 つの AMP を持つ Teradata データベースがあります。データをテーブルに挿入するときに AMP が役立つことを学びました。インデックスに応じて、尊敬される AMP の助けを借りてデータを分散します。ただし、テーブルの作成中は、AMP のみを介してコマンドを実行する必要があります。では、その時にどのAMPが使われるのか知りたいです??
1703 次
1 に答える
1
データ ディクショナリでのテーブルの実際の作成は、レコードを DBC.TVM に格納する単一の AMP を含む RowHash レベルの操作です。EXPLAIN にリストされている他のアクションに基づいて、他の AMP も関与している可能性がありますが、単一のオール AMP 操作はありません。(これは、AMP 間でのデータのロードとその分散を考慮していません。)
説明のサンプル:
1) First, we lock FUBAR.ABC for exclusive use.
2) Next, we lock a distinct DBC."pseudo table" for write on a RowHash
for deadlock prevention, we lock a distinct DBC."pseudo table" for
write on a RowHash for deadlock prevention, we lock a distinct
DBC."pseudo table" for read on a RowHash for deadlock prevention,
and we lock a distinct DBC."pseudo table" for write on a RowHash
for deadlock prevention.
3) We lock DBC.DBase for read on a RowHash, we lock DBC.Indexes for
write on a RowHash, we lock DBC.TVFields for write on a RowHash,
we lock DBC.TVM for write on a RowHash, and we lock
DBC.AccessRights for write on a RowHash.
4) We execute the following steps in parallel.
1) We do a single-AMP ABORT test from DBC.DBase by way of the
unique primary index.
2) We do a single-AMP ABORT test from DBC.TVM by way of the
unique primary index.
3) We do an INSERT into DBC.Indexes (no lock required).
4) We do an INSERT into DBC.TVFields (no lock required).
5) We do an INSERT into DBC.TVM (no lock required).
6) We INSERT default rights to DBC.AccessRights for FUBAR.ABC.
5) We create the table header.
6) Finally, we send out an END TRANSACTION step to all AMPs involved
in processing the request.
-> No rows are returned to the user as the result of statement 1.
于 2011-06-06T21:50:38.693 に答える