2016-05-05 9 views
0

Das mag eine seltsame Frage sein, aber können wir aus einem Attribut eine Dimensionstabelle machen, wenn es mehrere Werte hat? zum Beispiel "Ethnizität", sollte Ethnizität immer ein Attribut eines Kunden (zum Beispiel) sein, oder kann es in jedem Fall oder Szenario eine eigene Dimensionstabelle sein.Kann ein beliebiges Attribut mit mehreren Werten eine Dimension sein?

Vielen Dank im Voraus für jede Hilfe

Antwort

3

Wenn das Attribut mehrere Werte aufweist, ist es keine gute Idee, alle Werte in einer Spalte zu haben. Sie werden es in späteren Phasen schwierig finden, wenn Sie eine Anforderung erhalten, etwas basierend auf diesem Wert zu suchen. Ein guter Ansatz wäre, eine weitere Unterdimensionstabelle mit dem Hauptdimensionsurrogatschlüssel als Fremdschlüssel zu erstellen und die Mehrfachwerte zeilenweise zu platzieren. Damit erhalten Sie eine Ergebnismenge mit einem Datensatz in der Hauptdimension und vielen Datensätzen für diesen Hauptdatensatz in der Unterdimensionstabelle. Ich denke, das wäre ein besserer Ansatz für die Behandlung von Szenarien mit mehreren Werten.

Ich musste ein ähnliches Szenario behandeln, wo ein Kunde viele Telefonnummern hat und alle Telefonnummern in einer Spalte in der Quelldatenbank gespeichert sind. Ich habe die Kundendaten ohne die Telefonnummer erstellt und eine separate Dimensionstabelle mit dem Kundentabellenschlüssel als Fremdschlüssel erstellt und alle Mehrfachwerte als Zeilen in die Dimensionstabelle aufgenommen, die mir bei anderen Aufgaben sehr hilfreich sind Adresse später. ETL-Prozesse können diese Werte in Zeilen aufteilen.

Ich hoffe, Sie bekommen die Idee.

+0

Vielen Dank! gut erklärt :) – Eternity

Verwandte Themen