1 cardinality simple link - result? | Community
Skip to main content
New Participant
Jan 21, 2020 2:41 PM UTC
Solved

1 cardinality simple link - result?

So in the office we have a discussion about what the specific result of a 1 cardinality simple link is. It would be awesome to have someone elses take on this.  

 

The ACS documentation (https://docs.adobe.com/content/help/en/campaign-standard/using/developing/adding-or-extending-a-resource/configuring-the-resource-s-data-structure.html) states that there are 3 different link-types: 

"

  • 1 cardinality simple link : one occurrence of the source table can have at most one corresponding occurrence of the target table.
  • N cardinality collection link : one occurrence of the source table can have several corresponding occurrences of the target table, but one occurrence of the target table can have at most one corresponding occurrence of the source table.
  • 0 or 1 cardinality simple link : one occurrence of the source table can have at most one corresponding occurrence of the target table or none. Note that this kind of Link type can cause performance issue."

So, since there is a difference between the 1 cardinality simple link and the 0 or 1 cardinality simple link, this must mean that when defining a 1 cardinality simple link to a target table, the target table cannot have a null/empty reference to the source table. Or what? 

 

Example: 

Lead table is the source table. 

Profiles (nms:recipient) is the target table. 

 

If we define a 1 cardinality link from source (Lead table) to the target (Profiles). And we then insert a new row in the lead table - will ACS also insert the new row in profiles or will it ignore it? See visualization for reference. 

  

 

Kind regards, 

J.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
DavidKangni
DavidKangniAccepted solution
New Participant
Jan 27, 2020 10:03 PM UTC

Hi J,

 

It will not insert a new row in the profiles table. The difference between 1 cardinality and 0 or 1 cardinality links is the data retrieved when doin a query. Basically 1 cardinality is a full join and 0 or 1 cardinality is a left join

Let's say you have 60 leads and 100 profiles

with a 1 cardinality, your query using both tables will return exact matches

with 0 or 1 cardinality, it will return the max number but the fields from the other table will be empty.

 

Thanks

David

 

David Kangni

4 replies

DavidKangni
DavidKangniAccepted solution
New Participant
Jan 27, 2020 10:03 PM UTC

Hi J,

 

It will not insert a new row in the profiles table. The difference between 1 cardinality and 0 or 1 cardinality links is the data retrieved when doin a query. Basically 1 cardinality is a full join and 0 or 1 cardinality is a left join

Let's say you have 60 leads and 100 profiles

with a 1 cardinality, your query using both tables will return exact matches

with 0 or 1 cardinality, it will return the max number but the fields from the other table will be empty.

 

Thanks

David

 

Translate
David Kangni
JBGJAuthor
New Participant
Jan 28, 2020 8:05 AM UTC
That's awesome input to fairly ill-defined documentation. Thank you very much! Have a great day.
Translate
JBGJAuthor
New Participant
Jan 27, 2020 11:05 AM UTC

Maybe @florentlb can help?

 

Translate
JBGJAuthor
New Participant
Jan 22, 2020 3:53 PM UTC

@adhiyan  or @vraghav - could you help here?

Translate