STL_S3CLIENT - Amazon Redshift

STL_S3CLIENT

転送時間などのパフォーマンスメトリクスを記録します。

STL_S3CLIENT テーブルは、Amazon S3 からデータを転送するときにかかった時間を調べるときに使用します。

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

テーブルの列

列名 データ型 説明
userid integer エントリを生成したユーザーの ID。
query integer クエリ ID。クエリ列は、他の各種システムテーブルおよびビューを結合するために使用できます。
slice integer クエリが実行されていたスライスを識別する番号。
recordtime timestamp レコードが記録された時刻。
pid integer プロセス ID。セッション内のすべてのクエリは同一プロセスで実行されるため、一連のクエリを同一セッションで実行した場合、この値は一定です。
http_method character(64) Amazon S3 リクエストに対応する HTTP メソッド名。
bucket character(64) S3 バケット名。
key character(256) Amazon S3 オブジェクトに対応するキー。
transfer_size bigint 転送バイト数。
data_size bigint データのバイト数。非圧縮データの場合、この値は transfer_size と同じです。圧縮が使用された場合、これは圧縮前のデータのサイズです。
start_time bigint 転送が開始された時刻 (マイクロ秒単位、2000 年 1 月 1 日から)。
end_time bigint 転送が終了した時刻 (マイクロ秒単位、2000 年 1 月 1 日から)。
transfer_time bigint 転送にかかった時間 (マイクロ秒単位)。
compression_time bigint 転送時間のうち、データの展開にかかった時間 (マイクロ秒単位)。
connect_time bigint 開始から、リモートサーバーへの接続が完了するまでの時間 (マイクロ秒単位)。
app_connect_time bigint 開始から、リモートホストとの SSL 接続/ハンドシェイクが完了するまでの時間 (マイクロ秒単位)。
retries bigint 転送が再試行された回数。
request_id char(32) Amazon S3 HTTP レスポンスヘッダー内のリクエスト ID
extended_request_id char(128) Amazon S3 HTTP ヘッダーのレスポンスから拡張されたリクエスト ID (x-amz-id-2)。
ip_address char(64) サーバーの IP アドレス (IPv4 または IPv6)。
is_partial integer COPY オペレーションの実行中に入力されたファイルが、いくつかの範囲で分割されていることを (true (1) で) 示す値。この値が false (0) の場合、入力ファイルは分割されていません。
start_offset bigint COPY オペレーション中に入力されたファイルが分割されていた場合、分割のオフセット値をバイト単位で示す値。ファイルが分割されていない場合、この値は 0 になります。

サンプルクエリ

次のクエリは、COPY コマンドを使用してファイルをロードするためにかかった時間を返します。

select slice, key, transfer_time from stl_s3client where query = pg_last_copy_id();

結果

slice | key | transfer_time ------+-----------------------------+--------------- 0 | listing10M0003_part_00 | 16626716 1 | listing10M0001_part_00 | 12894494 2 | listing10M0002_part_00 | 14320978 3 | listing10M0000_part_00 | 11293439 3371 | prefix=listing10M;marker= | 99395

次の例では、start_timeおよび end_time をタイムスタンプに変換します。

select userid,query,slice,pid,recordtime,start_time,end_time, '2000-01-01'::timestamp + (start_time/1000000.0)* interval '1 second' as start_ts, '2000-01-01'::timestamp + (end_time/1000000.0)* interval '1 second' as end_ts from stl_s3client where query> -1 limit 5;
userid | query | slice | pid | recordtime | start_time | end_time | start_ts | end_ts --------+-------+-------+-------+----------------------------+-----------------+-----------------+----------------------------+---------------------------- 0 | 0 | 0 | 23449 | 2019-07-14 16:27:17.207839 | 616436837154256 | 616436837207838 | 2019-07-14 16:27:17.154256 | 2019-07-14 16:27:17.207838 0 | 0 | 0 | 23449 | 2019-07-14 16:27:17.252521 | 616436837208208 | 616436837252520 | 2019-07-14 16:27:17.208208 | 2019-07-14 16:27:17.25252 0 | 0 | 0 | 23449 | 2019-07-14 16:27:17.284376 | 616436837208460 | 616436837284374 | 2019-07-14 16:27:17.20846 | 2019-07-14 16:27:17.284374 0 | 0 | 0 | 23449 | 2019-07-14 16:27:17.285307 | 616436837208980 | 616436837285306 | 2019-07-14 16:27:17.20898 | 2019-07-14 16:27:17.285306 0 | 0 | 0 | 23449 | 2019-07-14 16:27:17.353853 | 616436837302216 | 616436837353851 | 2019-07-14 16:27:17.302216 | 2019-07-14 16:27:17.353851