SQL provider execution strategies

Abstract

Overview of the Staging Tables and Table Value Parameters (TVP) SQL provider execution strategies supported by xConnect Scalable Reads.

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.

    Note

    If 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

Note

Whenever you configure the Staging Table strategy, and the client tries to get contacts by identifiers, the SQL Provider throws an exception.