Stitch only supports connecting to Azure SQL Data Warehouse instances
Stitch’s Azure SQL Data Warehouse destination only works with Microsoft’s Azure SQL Data Warehouse product.
Stitch doesn’t currently support using Azure SQL Server or Azure SQL Database as a destination.
Microsft Azure SQL Data Warehouse is a fast, fully-managed, petabyte-scale data warehouse. It’s ideal for batch-based data warehouse workloads, and designed with a decoupled storage and compute model that allows it to scale quickly and be maintained in a cost-effective way.
Pricing
Azure SQL Data Warehouse bases their pricing on your compute and storage usage. Compute usage is charged using an hourly rate, meaning you’ll only be billed for the hours your data warehouse is active. Compute usage is billed in one hour increments.
Storage charges include the size of your primary database and seven days of incremental snapshots. Microsoft Azure rounds charges to the nearest terabyte (TB). For example: If the data warehouse is 1.5 TB and you have 100 GB of snapshots, your bill will be for 2 TB of data.
Refer to Microsoft’s documentation for more info and examples.
Setup info
High-level details about Stitch’s implementation of Azure SQL Data Warehouse, such as supported connection methods, availability on Stitch plans, etc.
Release status |
Released |
Pricing tier |
All Stitch plans |
Supported versions |
Not applicable Currently, Stitch supports all versions of Azure SQL Data Warehouse. |
SSH connections |
Supported Stitch supports using SSH tunnels to connect to Azure SQL Data Warehouse destinations. Refer to these instructions to set up an SSH tunnel for Azure SQL Data Warehouse. |
SSL connections |
Supported |
VPN connections |
Unsupported |
Setup documentation |
|
Replication
Details about Stitch and replication for Azure SQL Data Warehouse destinations.
Incremental Replication - Upserts |
Supported Using a table’s Primary Keys, Stitch will perform an update operation on existing rows to overwrite the data. |
Primary Keys |
Unsupported Azure SQL Data Warehouse destinations do not have native support for Primary Keys. To ensure existing rows can be updated in incrementally-replicated tables, Stitch will create an Note: De-duplicating doesn’t apply to tables that are replicated in full. Refer to our Azure Primary Key handling documentation for more info. |
Multipe data types |
Unsupported Azure SQL Data Warehouse destinations do not support multiple data types in a single column. To accommodate this scenario, Stitch will create additional columns for each data type:
|
Nested data structure support |
Unsupported Azure SQL Data Warehouse destinations do not have native support for nested data structures. To ensure nested data can be loaded, Stitch will flatten objects and arrays into columns and subtables, respectively. For more info and examples, refer to the Handling nested data structures guide. |
Incompatible sources |
No reported incompatibilities No integration compatibility issues have been reported for Azure SQL Data Warehouse. |
Loading process overview
After the data is extracted from your integrations, Stitch will perform the following steps to prepare and load that data into your Azure SQL Data Warehouse destination.
Step 1: Load data into Azure Blob Storage
The first step in the loading process for Azure SQL Data Warehouse destinations is to load the extracted data into Azure Blob Storage.
Blob storage is intended for storing massive amounts of unstructured data. In the next step, Stitch will use Polybase to retrieve the data from Blob Storage and prepare it for loading into Azure SQL Data Warehouse.
Step 2: Prep data using Polybase
Polybase is a Microsoft offering that integrates Microsoft SQL products with Hadoop. Polybase is needed to query data from Azure Blob Storage.
In this step, Stitch will perform the following:
- Create an external data source. This creates an external data source for the Polybase queries Stitch will run.
- Create an external file format. This creates an object that defines the external (extracted) data Stitch will load. This is used in the next step to create an external table.
- Create an external table. Using the external file format, this will create an external table. The external table is used to stage the data from Azure blob storage and load it into your Azure SQL Data Warehouse data warehouse.
Step 3: Insert data into the data warehouse
Lastly, Stitch will insert the data from the external table in Polybase into your Azure SQL Data Warehouse data warehouse.
Limitations
In this section:
-
Object name limits - Details about object naming rules imposed by Azure SQL Data Warehouse destinations.
-
Table limits - Details about table rules imposed by Azure SQL Data Warehouse destinations.
-
Data limits - Details about data limitations imposed by Azure SQL Data Warehouse destinations.
-
Column naming - Details about transformations performed by Stitch to ensure source column names adhere to the object naming rules imposed by Azure SQL Data Warehouse destinations.
Object name limits
Details about object naming rules imposed by Azure SQL Data Warehouse destinations.
Case sensitivity |
Insensitive This means that Azure SQL Data Warehouse destinations treat upper- and lowercase characters as the same. For example: When column names are loaded into Azure SQL Data Warehouse, any uppercase characters will be forced into lowercase. This means that |
Table name length |
112 characters Tables with names that exceed this limit will be rejected. Rejected tables are logged in the |
Column name length |
128 characters Columns with names that exceed this limit will be rejected. Rejected columns are logged in the |
Table limits
Details about table rules imposed by Azure SQL Data Warehouse destinations.
Max # of columns per table |
1,024 columns |
Max table size |
60 TB compressed on disk |
Max # of tables per database |
10,000 tables |
Data limits
Details about data limitations imposed by Azure SQL Data Warehouse destinations.
Max record size |
1 MB This limit is imposed by PolyBase, which is required to load data into Azure SQL Data Warehouse destinations. |
Boolean values |
1, 0, NULL Azure SQL Data Warehouse will store data typed as For example: If a |
Timezone support |
Unsupported Azure SQL Data Warehouse will store the value in UTC with the specified offset. These columns are type as More info about timestamp data types can be found in Microsoft’s documentation. |
Date ranges |
January 1, 0001 AD, through December 31, 9999 AD Date values outside of this range will be rejected and logged in the More info about Azure SQL Data Warehouse date data types can be found in Microsoft’s documentation. |
Timestamp ranges |
00:00:00 through 23:59:59.997 Timestamp values outside of this range will be rejected and logged in the More info about Azure SQL Data Warehouse time data types can be found in Microsoft’s documentation. |
Decimal precision |
Must be between 1 and 38 (38 is the default) Decimal values outside of this range will be rejected and logged in the |
Decimal scale |
Must be between 0 and the precision value Decimal values outside of this range will be rejected and logged in the |
VARCHAR max width |
4,000 bytes String values outside of this range will be truncated to the maximum allowed width. |
Column naming
Details about transformations performed by Stitch to ensure source column names adhere to the object naming rules imposed by Azure SQL Data Warehouse destinations.
Compare destinations
Not sure if Azure SQL Data Warehouse is the data warehouse for you? Check out the Choosing a Stitch Destination guide to compare each of Stitch’s destination offerings.
Related | Troubleshooting |
Questions? Feedback?
Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.