約30列のTeradataでテーブルを設計しています。これらの列には、Daily、Monthly、Weeklyなどのいくつかの時間間隔スタイルの値を格納する必要があります。実際の文字列値をテーブルに格納することは、データのひどい繰り返しになるため、不適切な設計です。代わりに、私がやりたいのは、プリミティブルックアップテーブルを作成することです。このテーブルは、Daily、Monthly、Weeklyを保持し、TeradataのID列を使用して主キーを取得します。この主キーは、外部キーとして作成しているテーブルに保存されます。
Webフォームのドロップダウンリストにデータを入力するときに知る必要があるのはプリミティブキーの値だけなので、これは私のアプリケーションでは問題なく機能します。ただし、使用する他のアプリケーションでは、レポートを実行するか、フィードを介してこのデータを受信する必要があります。したがって、このテーブルをプリミティブテーブルに結合するビューを作成して、実際に日次、月次、および週次を返すことができるようにする必要があります。
私の懸念はパフォーマンスです。これほど大量の外部キーフィールドを含むテーブルを作成したことはなく、Teradataはかなり新しいものです。これをすべて理解するという長い道のりを進む前に、目標を達成するための最善の方法についてアドバイスを求めたいと思います。
編集:このルックアップテーブルは無関係なプリミティブのミッシュマッシュになることを追加する必要があると思います。これには、前述のように時間間隔に関連する値のグループだけでなく、24x7や8x5などの時間枠も含まれます。テーブルは次のように設計されます。
IDタイプ値 --- ------------ ------------ 毎日1インターバル 毎月2インターバル 毎週3インターバル 4 TimeFrame 24x7 5 TimeFrame 8x5
パート2の編集:この質問への露出を増やすために新しいタグを追加しました。