Azure SQL

Supports:

  • ✅ Models
  • ✅ Model sync destination
  • ✅ Bulk sync source
  • ✅ Bulk sync destination

Connection

Configuration

NameTypeDescriptionRequired
access_keystringStorage account access key (destination only)false
account_namestringStorage account name (destination only)false
blobStorebooleanUse Azure blob storage for faster bulk loading (destination only)false
container_namestringStorage container name (destination only)false
databasestringDatabasetrue
hostnamestringServertrue
passwordstringPasswordtrue
portintegerPorttrue
sshbooleanConnect over SSH tunnelfalse
ssh_hoststringSSH hostfalse
ssh_portintegerSSH portfalse
ssh_private_keystringPrivate keyfalse
ssh_userstringSSH userfalse
sslbooleanUse SSLfalse
usernamestringUsernametrue

Example

1{
2 "name": "Azure SQL connection",
3 "type": "azuresql",
4 "configuration": {
5 "access_key": "abcdefghijklmnopqrstuvwxyz0123456789/+ABCDEabcdefghijklmnopqrstuvwxyz0123456789/+ABCDE==",
6 "account_name": "account",
7 "blobStore": false,
8 "container_name": "container",
9 "database": "sampledb",
10 "hostname": "example.database.windows.net",
11 "password": "secret",
12 "port": 1433,
13 "ssh": false,
14 "ssh_host": "bastion.example.com",
15 "ssh_port": 22,
16 "ssh_private_key": "",
17 "ssh_user": "",
18 "ssl": false,
19 "username": "user"
20 }
21}

Model Sync

Source

Configuration

NameTypeDescriptionRequired
querystringfalse
tablestringTablefalse
viewstringViewfalse

Example

1{
2 ...
3 "configuration": {
4 "query": "SELECT * from users",
5 "table": "users",
6 "view": "active_users"
7 }
8}

Target

Azure SQL connections may be used as the destination in a model sync.

All targets

Configuration
NameTypeDescriptionRequired
created_columnstring’Created at’ timestamp columnfalse
preserve_table_on_resyncbooleanPreserve destination table when resyncingfalse
updated_columnstring’Updated at’ timestamp columnfalse
write_null_valuesbooleanCopy null values

When enabled updates will set fields to NULL when the source value is null
false
write_record_timestampsbooleanWrite row timestamp metadatafalse
Example
1{
2 ...
3 "target": {
4 "configuration": {
5 "created_column": "",
6 "preserve_table_on_resync": false,
7 "updated_column": "",
8 "write_null_values": false,
9 "write_record_timestamps": false
10 }
11 }
12}

Bulk Sync

Destination

Configuration

NameTypeDescriptionRequired
advancedobjectfalse
mirror_schemasbooleanMirror schemasfalse
schemastringOutput schemafalse

Example

1{
2 ...
3 "destination_configuration": {
4 "advanced": {
5 "empty_strings_null": false,
6 "hard_deletes": false,
7 "initial_execution": "",
8 "table_prefix": "",
9 "truncate_existing": false
10 },
11 "mirror_schemas": false,
12 "schema": "schema"
13 }
14}

Type handling

Destination types

POLYTOMIC TYPEAZURE SQL TYPE
array<>NVARCHAR(MAX)
bigintBIGINT
booleanBIT
dateDATE
datetimeDATETIMEOFFSET
decimal(precision, scale)DECIMAL(precision,scale)
doubleFLOAT
intINT
jsonNVARCHAR(MAX)
jsonarrayNVARCHAR(MAX)
numberNUMERIC(38,10)
object{}NVARCHAR(MAX)
singleREAL
smallintSMALLINT
stringNVARCHAR(4000)
timeTIME

Source types

AZURE SQL TYPEPOLYTOMIC TYPE
BIGINTbigint
CHARstring
DATEdate
DATETIMEdatetime
DATETIME2datetime
DATETIMEOFFSETdatetime
DECIMALnumber
DECIMAL(precision, scale)decimal(precision, scale)
FLOATdouble
INTint
MONEYdecimal(precision, scale)
NCHARstring
NTEXTstring
NUMBER(precision, scale)decimal(precision, scale)
NUMERICnumber
NUMERIC(precision, scale)decimal(precision, scale)
NVARCHARstring
REALsingle
SMALLDATETIMEdatetime
SMALLINTsmallint
SMALLMONEYdecimal(precision, scale)
TEXTstring
TIMEtime
TINYINTsmallint
UNIQUEIDENTIFIERstring
VARCHARstring
XMLstring