Certain useful project options are exposed in JSON job as well.
Log filenames can be relative or absolute. If relative, they are placed into the default logs folder (logs/projects/{project-name}/runs/{timestamp}). Mapping rules can be separated via new lines or semicolons.
{"Oracle": {"ConnectionType":"Direct",// Direct|OracleClient"Server":"{{server ip, or empty if localhost}}","Port":11522,"Sid":"{{sid}}",// or "ServiceName": "{{service name}}","Username":"sys","Password":"{{password}}","Role":"SysDBA"// Default|SysDBA|SysOPER }}
Synapse Dedicated Pool
{"Synapse": {"Server":"{{yourserver}}.database.windows.net, "Database": "{{database name}}", "Username": "{{user}}", "Password": "{{password}}", "AuthenticationType": "sqlserver", "StorageType": "adlsv2", // Local|AzureBlob|ADLSv2 "StorageFormat": "parquet", // CSV|Parquet "StorageCompression": "snappy", // None|Snappy|GZip "ConnectionString": "{{conn string from storage explorer}}", "Container": "{{container}}", "ContainerDirectory": "{{directory name in the container}}" }}
{"Parquet": {"DataStorageType":"adlsv2",// Local|AzureBlob|ADLSv2"StorageFormat":"parquet",// CSV|Parquet"StorageCompression":"snappy",// None|Snappy|GZip"ConnectionString":"{{conn string from storage explorer}}","Container":"adv","ContainerDirectory":"console" }}
Slicing the tables
To improve the performance of data load, specify how many workers should divide the work on a single table. Only tables with a slicing key (usually a PK) can be sliced.
Tables with no indexes cannot be efficiently sliced as each read requires a full table scan regardless of SQL WHERE filters. Even if read requires a single worker one can still generate multiple target files for efficient ingestion into the data warehouse. FileTableRowLimit option specifies how many records should each target file have. Use it for CSV and Parquet targets. Please note that TableSlices must be set to at least 2 to enable the row limit option.