how to get started
See get started
how to create a synapse workspace
See create a synapse workspace
how to analyze using serverless sql pool
See analyze using serverless sql pool
how to analyze using a data explorer pool
See analyze using a data explorer pool
how to analyze using a serverless spark pool
See analyze using a serverless spark pool
how to analyze using a dedicated sql pool
See analyze using a dedicated sql pool
how to analyze data in a storage account
See analyze data in a storage account
how to integrate with pipelines
See integrate with pipelines
how to visualize with power bi
See visualize with power bi
how to monitor
See monitor
how to explore the knowledge center
See explore the knowledge center
how to add an administrator
See add an administrator
how to create workspace using azure portal
See azure portal
how to create workspace using azure cli
See azure cli
how to create workspace using azure powershell
See azure powershell
how to create workspace using arm template
See arm template
how to use serverless sql pool to analyze data
See use serverless sql pool to analyze data
how to create logical data warehouse with serverless sql pool
See create logical data warehouse with serverless sql pool
how to power bi desktop
See power bi desktop
how to query csv files
See query csv files
how to query parquet files
See query parquet files
how to query json files
See query json files
how to query nested types
See query nested types
how to query delta lake
See query delta lake
how to query folders and multiple files
See query folders and multiple files
how to query partitioned files using file metadata
See query partitioned files using file metadata
how to create and use views
See create and use views
how to create and use external tables
See create and use external tables
how to store query results to storage
See store query results to storage
how to configure synapse link
See configure synapse link
how to connect to azure synapse link for cosmos db
See connect to azure synapse link for cosmos db
how to use power bi and serverless sql pool to analyze azure cosmos db
See use power bi and serverless sql pool to analyze azure cosmos db
how to query azure cosmos db analytical store with apache spark
See query azure cosmos db analytical store with apache spark
how to query azure cosmos db analytical store with apache spark
See query azure cosmos db analytical store with apache spark
how to copy data from synapse link into a dedicated sql pool using apache spark
See copy data from synapse link into a dedicated sql pool using apache spark
how to query azure cosmos db analytical store with serverless sql pool
See query azure cosmos db analytical store with serverless sql pool
Tables available supported Serverless
No, the in-database tables are not supported. Serverless SQL pool can query only
external tables that reference data placed on
Azure Storage For more information, see
here.
Views available supported Serverless
Schemas available supported Serverless
Yes, schemas are supported. For more information, see
here.
Temporary tables available supported Serverless
No, temporary tables might be used just to store some information from system views. For more information, see
here.
User defined procedures available supported Serverless
Yes, stored procedures can be placed in any user databases (not
master
database). For more information, see
here.
User defined functions available supported Serverless
Yes, only inline table-valued functions. Scalar user-defined functions are not supported. For more information, see
here.
Triggers available supported Serverless
No, serverless SQL pools do not allow changing data, so the triggers cannot react on data changes. For more information, see
here.
External tables available supported Serverless
Caching queries available supported Serverless
No. Only file statistics are cached. For more information, see
here.
Table variables available supported Serverless
No, table variables are not supported. For more information, see
here.
Table distribution available supported Serverless
Table indexes available supported Serverless
Table partitioning available supported Serverless
External tables do not support partitioning. You can partition files using Hive-partition folder structure and create partitioned tables in Spark. The Spark partitioning will be
synchronized with the serverless pool. If you are not using Spark, you can partition your files in folder structure and can create
partitioned views on folder partition structure, but external tables cannot be created on partitioned folders. For more information, see
here.
Statistics available supported Serverless
Workload management, resource classes, and concurrency control available supported Serverless
No, serverless SQL pool automatically manages the resources. For more information, see
here.
Cost control available supported Serverless
SELECT statement available supported Serverless
Yes, but some Transact-SQL query clauses like
FOR XML,
MATCH,
PREDICT, GROUPNG SETS, and query hints are not supported. For more information, see
here.
INSERT statement available supported Serverless
No, upload new data to Data lake using Spark or other tools. Use Cosmos DB with the analytical storage for highly transactional workloads. For more information, see
here.
UPDATE statement available supported Serverless
No, but Parquet/CSV data updated using Spark is automatically available in serverless pool. Use Cosmos DB with the analytical storage for highly transactional workloads. For more information, see
here.
DELETE statement available supported Serverless
No, but Parquet/CSV data deleted using Spark is automatically available in serverless pool. Use Cosmos DB with the analytical storage for highly transactional workloads. For more information, see
here.
MERGE statement available supported Serverless
No, but Parquet/CSV data merged using Spark is automatically available in serverless pool. For more information, see
here.
Transactions available supported Serverless
Yes, applicable only on the meta-data objects. See
Transactions For more information, see
here.
Labels available supported Serverless
Data load available supported Serverless
No, you can initially load data into an external table using CETAS statement. For more information, see
here.
Data export available supported Serverless
Yes. Using
CETAS. For more information, see
here.
Types available supported Serverless
Yes, all Transact-SQL types except
cursor,
hierarchyid,
ntext, text, and image,
rowversion,
Spatial Types,
sql_variant,
xml, and Table type. See how to
map Parquet column types to SQL types here. For more information, see
here.
Cross-database queries available supported Serverless
Yes, 3-part-name references are supported including
USE statement. The queries can reference the serverless SQL databases or the Lake databases in the same workspace. For more information, see
here.
Built-in/system functions (analysis) available supported Serverless
Built-in/system functions (string) available supported Serverless
Yes. All Transact-SQL
String,
JSON, and Collation functions. See
Built-in/system functions (string) For more information, see
here.
Built-in/system functions (Cryptographic) available supported Serverless
HASHBYTES
is the only supported cryptographic function in serverless SQL pools. See
Built-in/system functions (Cryptographic) For more information, see
here.
Built-in/system table-value functions available supported Serverless
Built-in/system aggregates available supported Serverless
All Transact-SQL built-in
aggregates are supported. For more information, see
here.
Operators available supported Serverless
Control of flow available supported Serverless
DDL statements (CREATE, ALTER, DROP) available supported Serverless
Yes. All Transact-SQL DDL statement applicable to the supported object types For more information, see
here.
Logins available supported Serverless
Yes server-level Azure AD and SQL logins are supported. For more information, see
here.
Users available supported Serverless
Yes For more information, see
here.
Contained users available supported Serverless
SQL username/password authentication available supported Serverless
Yes, users can access serverless SQL pool using their usernames and passwords. For more information, see
here.
Azure Active Directory (Azure AD) authentication available supported Serverless
Yes, Azure AD logins and users can access serverless SQL pools using their Azure AD identities. For more information, see
here.
Storage Azure Active Directory (Azure AD) passthrough authentication available supported Serverless
Yes, applicable to Azure AD logins. The identity of the Azure AD user is passed to the storage if a credential is not specified. Azure AD passthrough authentication is not available for the SQL users. For more information, see
here.
Storage SAS token authentication available supported Serverless
Storage Access Key authentication available supported Serverless
No For more information, see
here.
Storage Managed Identity authentication available supported Serverless
Storage Application identity/Service principal (SPN) authentication available supported Serverless
Server-level roles available supported Serverless
Yes, sysadmin, public, and other server-roles are supported. For more information, see
here.
SERVER SCOPED CREDENTIAL available supported Serverless
Yes, the server scoped credentials are used by the
OPENROWSET
function that do not uses explicit data source. For more information, see
here.
Permissions - Server-level available supported Serverless
Yes, for example,
CONNECT ANY DATABASE
and
SELECT ALL USER SECURABLES
enable a user to read data from any databases. See
Permissions - Server-level For more information, see
here.
Database-scoped roles available supported Serverless
Yes, you can use
db_owner
,
db_datareader
and
db_ddladmin
roles. For more information, see
here.
DATABASE SCOPED CREDENTIAL available supported Serverless
Yes, used in external data sources. For more information, see
here.
Permissions - Database-level available supported Serverless
Permissions - Schema-level available supported Serverless
Yes, including ability to GRANT, DENY, and REVOKE permissions to users/logins on the schema For more information, see
here.
Permissions - Object-level available supported Serverless
Yes, including ability to GRANT, DENY, and REVOKE permissions to users/logins on the system objects that are supported For more information, see
here.
Permissions - Column-level security available supported Serverless
Built-in/system security & identity functions available supported Serverless
Some Transact-SQL security functions and operators:
CURRENT_USER
,
HAS_DBACCESS
,
HAS_PERMS_BY_NAME
,
IS_MEMBER', 'IS_ROLEMEMBER
,
IS_SRVROLEMEMBER
,
SESSION_USER
,
SESSION_CONTEXT
,
SUSER_NAME
,
SUSER_SNAME
,
SYSTEM_USER
,
USER
,
USER_NAME
,
EXECUTE AS
, and
REVERT
. Security functions cannot be used to query external data (store the result in variable that can be used in the query). For more information, see
here.
Row-level security available supported Serverless
No built-in support. Use custom views as a
workaround. For more information, see
here.
Transparent Data Encryption (TDE) available supported Serverless
No For more information, see
here.
Data Discovery & Classification available supported Serverless
No For more information, see
here.
Vulnerability Assessment available supported Serverless
No For more information, see
here.
Auditing available supported Serverless
Yes For more information, see
here.
Firewall rules available supported Serverless
Yes, the firewall rules can be set on serverless SQL endpoint. See
Firewall rules For more information, see
here.
Private endpoint available supported Serverless
Yes, the private endpoint can be set on serverless SQL pool. See
Private endpoint For more information, see
here.
Synapse Studio available supported Serverless
Yes, SQL scripts. Use SSMS or ADS instead of Synapse Studio if you are returning a large amount of data as a result. For more information, see
here.
Power BI available supported Serverless
Yes For more information, see
here.
Azure Analysis Service available supported Serverless
Yes For more information, see
here.
Azure Data Studio available supported Serverless
Yes, version 1.18.0 or higher. SQL scripts and SQL Notebooks are supported. For more information, see
here.
SQL Server Management Studio available supported Serverless
Yes, version 18.5 or higher For more information, see
here.
Internal storage available supported Serverless
No, data is placed in Azure Data Lake or Cosmos DB analytical storage. For more information, see
here.
Azure Data Lake v2 available supported Serverless
Yes, you can use external tables and the
OPENROWSET
function to read data from ADLS. For more information, see
here.
Azure Blob Storage available supported Serverless
Yes, you can use external tables and the
OPENROWSET
function to read data from Azure Blob Storage. For more information, see
here.
Azure SQL/SQL Server (remote) available supported Serverless
No, serverless SQL pool cannot reference Azure SQL database. You can reference serverless SQL pools from Azure SQL using
elastic queries or
linked servers. For more information, see
here.
Dataverse available supported Serverless
Azure CosmosDB transactional storage available supported Serverless
No, use Spark pools to update the Cosmos DB transactional storage. For more information, see
here.
Azure CosmosDB analytical storage available supported Serverless
Apache Spark tables (in workspace) available supported Serverless
Apache Spark tables (remote) available supported Serverless
No For more information, see
here.
Databricks tables (remote) available supported Serverless
No For more information, see
here.
Delimited available supported Serverless
Yes For more information, see
here.
CSV available supported Serverless
Yes For more information, see
here.
Parquet available supported Serverless
Hive ORC available supported Serverless
No For more information, see
here.
Hive RC available supported Serverless
No For more information, see
here.
JSON available supported Serverless
Yes For more information, see
here.
Avro available supported Serverless
No For more information, see
here.
Delta Lake available supported Serverless
CDM available supported Serverless
No See
CDM For more information, see
here.
OPENROWSET(BULK) without datasource how to Required permissions
ADMINISTER BULK OPERATIONS
,
ADMINISTER DATABASE BULK OPERATIONS
, or SQL login must have REFERENCES CREDENTIAL::<URL> for SAS-protected storage For more information, see
here.
OPENROWSET(BULK) with datasource without credential how to Required permissions
ADMINISTER BULK OPERATIONS
or
ADMINISTER DATABASE BULK OPERATIONS
, For more information, see
here.
OPENROWSET(BULK) with datasource with credential how to Required permissions
REFERENCES DATABASE SCOPED CREDENTIAL
and one of
ADMINISTER BULK OPERATIONS
or
ADMINISTER DATABASE BULK OPERATIONS
For more information, see
here.
CREATE EXTERNAL DATA SOURCE how to Required permissions
ALTER ANY EXTERNAL DATA SOURCE
and
REFERENCES DATABASE SCOPED CREDENTIAL
For more information, see
here.
CREATE EXTERNAL TABLE how to Required permissions
CREATE TABLE
,
ALTER ANY SCHEMA
,
ALTER ANY EXTERNAL FILE FORMAT
, and
ALTER ANY EXTERNAL DATA SOURCE
For more information, see
here.
SELECT FROM EXTERNAL TABLE how to Required permissions
SELECT TABLE
and
REFERENCES DATABASE SCOPED CREDENTIAL
For more information, see
here.
CETAS how to Required permissions
To create table -
CREATE TABLE
,
ALTER ANY SCHEMA
,
ALTER ANY DATA SOURCE
, and
ALTER ANY EXTERNAL FILE FORMAT
. To read data:
ADMINISTER BULK OPERATIONS
or
REFERENCES CREDENTIAL
or
SELECT TABLE
per each table/view/function in query + R/W permission on storage For more information, see
here.
Syntax errors: - Incorrect syntax near Openrowset - ... is not a recognized BULK OPENROWSET provider option. - Incorrect syntax near ... what is Root cause
Possible root causes:
- Not using CosmosDB as the first parameter.
- Using a string literal instead of an identifier in the third parameter.
- Not specifying the third parameter (container name). For more information, see
here.
There was an error in the CosmosDB connection string. what is Root cause
- The account, database, or key isn't specified.
- There's some option in a connection string that isn't recognized.
- A semicolon (
;
) is placed at the end of a connection string. For more information, see
here.
Resolving CosmosDB path has failed with the error "Incorrect account name" or "Incorrect database name." what is Root cause
The specified account name, database name, or container can't be found, or analytical storage hasn't been enabled to the specified collection. For more information, see
here.
Resolving CosmosDB path has failed with the error "Incorrect secret value" or "Secret is null or empty." what is Root cause
The account key isn't valid or is missing. For more information, see
here.
Max number of Synapse workspaces per subscription what is Limitation
20 For more information, see
here.
Max number of databases per serverless pool what is Limitation
20 (not including databases synchronized from Apache Spark pool) For more information, see
here.
Max number of databases synchronized from Apache Spark pool what is Limitation
Not limited For more information, see
here.
Max number of databases objects per database what is Limitation
Max identifier length (in characters) what is Limitation
Max query duration what is Limitation
30 min For more information, see
here.
Max size of the result set what is Limitation
up to 200 GB (shared between concurrent queries) For more information, see
here.
Max concurrency what is Limitation
Not limited and depends on the query complexity and amount of data scanned. One serverless SQL pool can concurrently handle 1000 active sessions that are executing lightweight queries, but the numbers will drop if the queries are more complex or scan a larger amount of data. For more information, see
here.