17.00 - 17.05 - スプール領域の問題のトラブルシューティング - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - データベースの管理

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Release Date
2020年6月
Content Type
管理
Publication ID
B035-1093-170K-JPN
Language
日本語 (日本)

問合わせを実行する場合、システムは一時作業テーブルとして使用するスプール ファイルを自動的に作成し、削除します。スプール ファイルでは、以下の2つの潜在的な問題のうちいずれかが生じる場合があります。

  • 残余スプール – 残余スプールは、クエリーの実行完了後にシステムがスプール ファイルを適切に削除できなかった場合に生じます。問合わせが使用したスプールは、セッションがなく停止しているように見えます。これにより、結果的にトランザクションをアボートするエラー2667が発生する場合があります。エラー2667が発生した場合、システムは問合わせを終了しますが、これは問合わせに問題があるからではなく、残余スプール問題が原因であることに注意してください。
  • Phantomスプール – ファントム スプールは、DBC.DatabaseSpaceテーブルが現在の実際の領域使用状況を反映するように正しく更新されていない場合に起こります。

どちらのタイプのスプールの問題が生じているかをチェックするためには、システムが最も静止している時、およびログオンしているユーザー数が最も少ない時に以下の問合わせを実行します。

SELECT  DATABASENAME, VPROC, CURRENTSPOOL
FROM    DBC.DISKSPACE
WHERE   DATABASENAME NOT IN (SEL USERNAME FROM DBC.SESSIONINFO)
AND     CURRENTSPOOL > 0
ORDER   BY 1,2
WITH    SUM(currentspool);
意図せずスプール領域の問題を生じた問合わせを実行したユーザーがこの問合わせの実行時にログオンした場合には、問合わせはユーザーを検出しません。これは、問合わせがスプール領域を所有しているがログオンしていないユーザーに対してスプールの使用状況を確認するためです。
リクエストで行が返される場合、次のいずれかを実行します。
  • Update Spaceユーティリティを実行して、各データベースのDBC.DatabaseSpaceでスプール領域のアカウンティングを更新します。
  • FixCurrentSpaceプロシージャを実行します。このプロシージャはUpdateSpaceユーティリティと同じ機能を実行します。詳細については、FixCurrentSpaceプロシージャを参照してください。

スプール領域の問題に関するサポートについては、Teradataカスタマー サポートに連絡してください。