![]() 前へ |
![]() 次へ |
サロゲート識別子は、ディメンションのすべてのレベルにまたがって、各レベルのレコードを一意に識別します。この識別子は、単一の属性で構成する必要があります。サロゲート識別子を使用すると、ファクトを最下位ディメンション・レベルのみでなく、どのディメンション・レベルにもフックできます。
リレーショナル実装またはROLAP実装を使用しているディメンションの場合、サロゲート識別子のデータ型はNUMBERである必要があります。
ディメンションがタイプ2またはタイプ3のSCDの場合。この場合は、ビジネス・キー値ごとに複数のディメンション・レコードをロードできるため、これらのレコードの追跡に使用する追加の一意キーが必要になります。
ディメンションに複数のレベルが含まれ、ディメンションがスター・スキーマを使用して実装されている場合。このようなディメンションを参照するキューブは、複数のディメンション・レベルを参照することになります。
サロゲート・キーが定義されていない場合、ディメンション表にはリーフ・レベルのディメンション・レコードのみが保存され、親レベルの情報は、リーフ・レベル・レコードの追加の列に格納されます。ただし、この場合、上位レベルを参照する独自の方法はありません。
スターまたはスノーフレーク実装を使用し、リーフ・レベルのみがキューブから参照されるタイプ1のディメンションの場合、サロゲート・キーは必要ありません。複数の階層を持つディメンションであっても、キューブがリーフ・レベルのみを参照するかぎり、サロゲート・キーなしで機能できます。