SQL provider execution strategies
There are two kinds of supported SQL strategies:
-
Staging Tables strategy - this strategy has limited Scalable Reads support. The Staging Table strategy is for batch support with
AlwaysEncrypted
. It is required to perform an intermediate write operation into the service staging table when getting contacts by identifiers.NoteIf you specify the explicit
ReadPreference.AllowStaleData
option, all the Get operations by identifiers throw an exception. -
Table Value Parameters (TVP) strategy (default) - this strategy does not use an intermediate write, so Scalable Reads is fully supported.
The following table describes the available Get operations of the two SQL provider execution strategies:
Get operations |
Staging Table strategy |
TVP strategy |
---|---|---|
Get contact IDs by identifiers |
No |
Yes |
Get contacts by identifiers |
No |
Yes |
Get contacts by IDs |
Yes |
Yes |
Get device profile by IDs |
Yes |
Yes |
Get interactions by contact IDs |
Yes |
Yes |
Get interactions by IDs |
Yes |
Yes |
Whenever you configure the Staging Table strategy, and the client tries to get contacts by identifiers, the SQL Provider throws an exception.