STL_DELETE - Amazon Redshift

STL_DELETE

削除を実行するステップをクエリについて分析します。

STL_DELETE はすべてのユーザーに表示されます。スーパーユーザーはすべての行を表示できますが、通常のユーザーは自分のデータのみを表示できます。詳細については、「システムテーブルとビューのデータの可視性」を参照してください。

注記

STL_DELETE には、メインクラスターで実行されるクエリのみが含まれます。同時実行スケーリングクラスターで実行されるクエリは含まれていません。メインクラスターおよび同時実行スケーリングクラスターの両方で実行されるクエリにアクセスするには、SYS モニタリングビュー SYS_QUERY_DETAIL を使用することをお勧めします。SYS モニタリングビューのデータは、使いやすく理解しやすいようにフォーマットされます。

テーブルの列

列名 データ型 説明
userid integer エントリを生成したユーザーの ID。
query integer クエリ ID。クエリ列は、他の各種システムテーブルおよびビューを結合するために使用できます。
slice integer クエリが実行されていたスライスを識別する番号。
segment integer クエリセグメントを識別する番号。
step integer 実行されたクエリステップ。
starttime timestamp UTC で表されたクエリの開始時間。合計時間にはキューイングと実行が含まれます。秒の小数部は 6 桁の精度で表されます。例: 2009-06-12 11:29:19.131358
endtime timestamp クエリの実行が完了した時刻 (UTC)。合計時間にはキューイングと実行が含まれます。秒の小数部は 6 桁の精度で表されます。例: 2009-06-12 11:29:19.131358
tasknum integer ステップ実行に割り当てられたクエリタスク処理の数。
rows bigint 処理された合計行数。
tbl integer テーブル ID。

サンプルクエリ

STL_DELETE に行を作成するために、次の例では EVENT テーブルに行を挿入してから、その行を削除しています。

最初に、EVENT テーブルに行を 1 つ挿入し、挿入されたことを確認します。

insert into event(eventid,venueid,catid,dateid,eventname) values ((select max(eventid)+1 from event),95,9,1857,'Lollapalooza');
select * from event where eventname='Lollapalooza' order by eventid;
eventid | venueid | catid | dateid | eventname | starttime ---------+---------+-------+--------+--------------+--------------------- 4274 | 102 | 9 | 1965 | Lollapalooza | 2008-05-01 19:00:00 4684 | 114 | 9 | 2105 | Lollapalooza | 2008-10-06 14:00:00 5673 | 128 | 9 | 1973 | Lollapalooza | 2008-05-01 15:00:00 5740 | 51 | 9 | 1933 | Lollapalooza | 2008-04-17 15:00:00 5856 | 119 | 9 | 1831 | Lollapalooza | 2008-01-05 14:00:00 6040 | 126 | 9 | 2145 | Lollapalooza | 2008-11-15 15:00:00 7972 | 92 | 9 | 2026 | Lollapalooza | 2008-07-19 19:30:00 8046 | 65 | 9 | 1840 | Lollapalooza | 2008-01-14 15:00:00 8518 | 48 | 9 | 1904 | Lollapalooza | 2008-03-19 15:00:00 8799 | 95 | 9 | 1857 | Lollapalooza | (10 rows)

次に、EVENT テーブルに追加した行を削除し、削除されたことを確認します。

delete from event where eventname='Lollapalooza' and eventid=(select max(eventid) from event);
select * from event where eventname='Lollapalooza' order by eventid;
eventid | venueid | catid | dateid | eventname | starttime ---------+---------+-------+--------+--------------+--------------------- 4274 | 102 | 9 | 1965 | Lollapalooza | 2008-05-01 19:00:00 4684 | 114 | 9 | 2105 | Lollapalooza | 2008-10-06 14:00:00 5673 | 128 | 9 | 1973 | Lollapalooza | 2008-05-01 15:00:00 5740 | 51 | 9 | 1933 | Lollapalooza | 2008-04-17 15:00:00 5856 | 119 | 9 | 1831 | Lollapalooza | 2008-01-05 14:00:00 6040 | 126 | 9 | 2145 | Lollapalooza | 2008-11-15 15:00:00 7972 | 92 | 9 | 2026 | Lollapalooza | 2008-07-19 19:30:00 8046 | 65 | 9 | 1840 | Lollapalooza | 2008-01-14 15:00:00 8518 | 48 | 9 | 1904 | Lollapalooza | 2008-03-19 15:00:00 (9 rows)

その後、stl_delete をクエリして、削除を実行するステップを確認します。この例ではクエリによって 300 行以上が返されるため、以下に示す出力は表示の都合上、一部を省略しています。

select query, slice, segment, step, tasknum, rows, tbl from stl_delete order by query;
query | slice | segment | step | tasknum | rows | tbl -------+-------+---------+------+---------+------+-------- 7 | 0 | 0 | 1 | 0 | 0 | 100000 7 | 1 | 0 | 1 | 0 | 0 | 100000 8 | 0 | 0 | 1 | 2 | 0 | 100001 8 | 1 | 0 | 1 | 2 | 0 | 100001 9 | 0 | 0 | 1 | 4 | 0 | 100002 9 | 1 | 0 | 1 | 4 | 0 | 100002 10 | 0 | 0 | 1 | 6 | 0 | 100003 10 | 1 | 0 | 1 | 6 | 0 | 100003 11 | 0 | 0 | 1 | 8 | 0 | 100253 11 | 1 | 0 | 1 | 8 | 0 | 100253 12 | 0 | 0 | 1 | 0 | 0 | 100255 12 | 1 | 0 | 1 | 0 | 0 | 100255 13 | 0 | 0 | 1 | 2 | 0 | 100257 13 | 1 | 0 | 1 | 2 | 0 | 100257 14 | 0 | 0 | 1 | 4 | 0 | 100259 14 | 1 | 0 | 1 | 4 | 0 | 100259 ...