Syntetiska nycklar
Qlik Sense skapar syntetiska nycklar när minst två datatabeller har minst två gemensamma fält. Dessa nycklar är anonyma fält som representerar alla förekommande kombinationer av den sammansatta nyckeln.
Om du får en varning om syntetiska nycklar när du laddar data bör du granska datastrukturen i datamodellvyn. Du bör kontrollera om datamodellen är korrekt eller inte. Ibland är den det, men för det mesta finns den syntetiska nyckeln där på grund av ett fel i skriptet.
Flera syntetiska nycklar är ofta tecken på en felaktig datamodell. Ett säkert tecken på en felaktig datamodell är om det finns syntetiska nycklar som baseras på andra syntetiska nycklar.
Hantera syntetiska nycklar
Om du måste undvika syntetiska nycklar finns det ett antal sätt att lösa detta i dataladdningsskriptet:
-
Kontrollera att endast de fält som är logiskt länkade till två tabeller används som nycklar.
- Fält för till exempel kommentarer, anmärkningar och beskrivningar kan finnas i flera tabeller utan att vara relaterade och ska därför inte användas som nycklar.
- Fält för datum, företag och namn kan finnas i flera tabeller och ha identiska värden, men ändå ha olika roller (t.ex. för orderdatum/fraktdatum, kundföretag/leverantörsföretag). I sådana fall ska de inte användas som nycklar.
-
Kontrollera att redundanta fält inte används – att endast relevanta fält kopplas. Om man exempelvis använder ett datum som nyckel ska man kontrollera att man inte läser in t.ex. år, månad eller dag_i_månaden från fler än en intern tabell.
-
Om så behövs ska du skapa några egna icke sammansatta nycklar, förslagsvis genom att använda strängkonkatenering i skriptfunktionen AutoNumber.