BI Webページのドロップダウン用の簡単なルックアップテーブルを作成しようとしています。テーブルには、キーと説明の2つの列があります。
このテーブルを設計するときのディメンションモデリングに関するベストプラクティスは何ですか?キー=>番号、説明=>文字(列=>データ型)で十分でしょうか、それともキーはSIDである必要がありますか?
「国」のようなWebページまたはWebフォームのドロップダウンを考えてください。
自然キーが1つの説明にしか関連付けることができず、ルックアップテーブルに静的参照データしか含まれていない場合、代理キーは不要です。
あなたが与えた例では、ドロップダウンリストには国が含まれます。私の観点からは、ディメンションモデルがスタースキーマに基づいている場合、国は独立したディメンションにはならず、別のディメンション(地理や顧客など)の属性になります。これは、仮に追加する場合でも代理キーを含める必要がないため、時間、労力、およびストレージの無駄になります。
ディメンションモデルがスノーフレークに基づいている場合、またはキーを複数の説明に関連付けることができる場合(たとえば、説明が時間とともに変化する可能性がある場合)、はい、代理キーを含めます。参照テーブルにはこれを入れませんが、代理キーはデータを所有するディメンションに属している必要があります。