Hoppa till innehåll

Modellera data för mening

Finns även på 28 språk

English · Español · 日本語 · Português (Brasil) · Français · Deutsch · Italiano · 한국어 · 简体中文 · Português (Portugal) · 繁體中文 · Bahasa Indonesia · Türkçe · Polski · Tiếng Việt · ไทย · Nederlands · العربية · עברית · Українська · हिन्दी · Русский · Dansk · Norsk bokmål · Suomi · Español (México) · Français (Canada) · Deutsch (Schweiz)

An open sketchbook on a drafting table at dawn, a building sketched on one page and a data model on the other, with a pencil, an eraser, a cup and a lamp.
Bilden är skapad med AI

Studieguide för kapitel 2 i kursen Data Architect. Läs de sex modulerna först; den här sidan hjälper dig att kontrollera vad som har fastnat.

Om den här studieguiden. Den bygger enbart på kursens eget innehåll och på listan över mål i provguiden som Salesforce publicerar. Den bygger aldrig på verkliga provfrågor, och den gör inga anspråk på att veta vad som kommer på provet. Om du har skrivit provet: skicka inte frågor från det till mig. Certifieringsavtalet förbjuder att de delas, och att memorera svar är ändå fel sätt att bli arkitekt.

Det här kapitlet är grunden för provets avsnitt Data Modeling and Database Design, som är en fjärdedel av provet. Det täcker tänkandet; nästa kapitel, Dataarkitektur i Salesforce, täcker hur plattformen bygger det. Så det mesta som testas om objekt, fält och relationer kräver båda kapitlen.

De punkter från det här kapitlet som mest sannolikt spelar roll på provet. Var och en är knuten till sitt provmål och länkar till där den lärs ut. Bocka av dem allteftersom.

DM-1: att jämföra tekniker för att designa en datamodell i Salesforce

Provet är golvet, inte taket. Det här är vanorna från kapitlet som en arkitekt behöver, oavsett om någon fråga någonsin handlar om dem.

  • Glöm Salesforce en stund. Modellera verksamheten innan du mappar den till konto och kontakt.
  • Lyssna efter ordet som döljer två saker. Hos Steve Trucking var ”kund” både en detaljhandelspartner och en mottagare.
  • Modellen är en del av samtalet. Din första modell är inte tänkt att vara rätt; den är tänkt att visa dig var du har fel.
  • Namnge linjerna. Två modeller med samma rutor kan betyda olika saker.
  • Fråga ”nu, eller över tid?” om varje relation.
  • Unikt, oföränderligt, betydelselöst, aldrig personuppgifter.
  • Lägg ett faktum där det hör hemma, backa sedan medvetet, och skriv ner varför.
  • Denormalisering tar inte bort komplexitet; den flyttar den. Vet vem som äger sanningen.
  • En sanningskälla, många former: skärmbilder, rapporter, datalagret och AI.
  • Designa inte från Setup. Rita modellen innan du klickar på New Custom Object.
  • Spåra varje fysiskt beslut bakåt till något som verksamheten behöver.
TermPå en rad
EntitetEn sak som verksamheten bryr sig om och sparar data om
KandidatentitetEtt substantiv som kan bli en entitet, när du väl har frågat om det
AttributEtt faktum som beskriver en entitet
RelationHur två entiteter hänger ihop, namngiven på verksamhetens språk
KardinalitetHur många av den ena som hör ihop med hur många av den andra
Valfrihet (optionality)Om relationen är obligatorisk, eller kan vara noll
Kråkfot (crow’s foot)Markeringen för ”många” i änden av en linje
Kopplingsobjekt (junction object)Sättet i Salesforce att bygga en många-till-många-relation: ett barn till båda föräldrarna
Konceptuell modellVad som finns i verksamheten och hur det hänger ihop; ingen Salesforce
Logisk modellData: attribut, unika ID:n och relationer, fortfarande inte bundna till en plattform
Fysisk modellHur plattformen ska bygga det: objekt, fält och relationstyper
Naturlig nyckelEtt ID som redan finns i verksamheten, som en lastbils VIN
SurrogatnyckelEtt ID som skapas enbart för att identifiera posten
Externt IDEtt annat systems ID för samma post, som behålls och mappas
Normalisering (1NF, 2NF, 3NF)Att lägga varje faktum där det hör hemma: ett värde per fält, fakta om hela nyckeln, inga fakta om andra fakta
DenormaliseringAtt medvetet kopiera eller platta till data, av ett skäl du kan namnge
UppdateringsanomaliSamma faktum lagrat på många ställen, så att en ändring lämnar vissa kopior fel

Korta scenarier i kursens stil. Bestäm ditt svar innan du öppnar det.

1. En verksamhet berättar att ett team kör en lastbil. Sex veckor senare frågar någon vilket team som hade lastbil 117 en viss dag. Vad borde modellen ha haft?

En teamtilldelning (Crew Assignment): relationen mellan team och lastbil som en egen post, med ett startdatum, ett slutdatum och rutten. Team och lastbilar är många-till-många över tid, och verksamheten bryr sig om historiken. Ett fält på lastbilen skulle ha skrivits över. Läs om Tiden ändrar relationer.

2. Ett team föreslår att varje mottagares telefonnummer ska användas som unikt ID, ”för att det är unikt”. Vad säger du?

Det klarar inte testerna: telefonnummer ändras och delas, så det är varken oföränderligt eller pålitligt unikt, och det är personuppgifter som skulle kopieras in i varje system som länkar till posten. Använd ett betydelselöst genererat ID och behåll telefonnumret som ett attribut. Läs om Sedan måste vi prata om unika ID:n.

3. En leverans har fälten Vara 1, Vara 2 och Vara 3. En leverans med fyra varor kommer in. Vad är det egentliga problemet, och vad är lösningen?

Modellen gömde en upprepad struktur i fält (ett problem med första normalformen). Lösningen är inte ett fält Vara 4; det är en entitet leveransrad (Delivery Item), ett barn till leveransen, så att varje vara är en post. Läs om Första normalformen.

4. Varje leverans lagrar namnet på distributionscentralens chef. Chefen byts ut. Vad gick fel?

Ett faktum om något annat (distributionscentralen) lagrades på leveransen: ett problem med tredje normalformen, och nu en uppdateringsanomali över hundratals poster. Chefen hör hemma hos distributionscentralen; leveransen pekar på distributionscentralen. Läs om Tredje normalformen.

5. Typen av stopp (bara leverans, med installation, med bortforsling) behöver en varaktighet, teamets färdigheter och en checklista. Plocklista eller objekt?

Ett objekt. Det har mer än en kolumn med information, det förvaltas av verksamheten och det ändras i sin egen takt. En leverans status, en kort, stabil lista med etiketter, förblir en plocklista. Läs om Lookup eller plocklista?.

6. Partnerna vill ha ett scorecard för leveranser i tid per region, och regionen bor på distributionscentralen. Du kopierar regionen till varje leverans. Vad måste du bestämma?

Vem som äger sanningen, hur kopian hålls synkad, och om gamla leveranser ska behålla den region som var sann när de skedde eller följa distributionscentralen om den flyttar. Denormaliseringen flyttade komplexiteten; den tog inte bort den. Läs om Ibland vinner rapporteringen.

7. Ett trick som Sitt kan kopplas till hundratusentals husdjur. Master-detail eller lookup från Husdjurstrick till Trick?

En lookup. Rekommendationen från Salesforce är högst 10 000 barn på en förälder, och ett populärt trick skulle gå över den. Master-detail passar från Husdjurstrick till Husdjur, eftersom ett husdjurs trick aldrig byter förälder och ett husdjur bara kan några få trick; det är också det som låter husdjuret sammanställa sin räknare Kända trick. Läs om Sitt, stanna, modellera.