教程:在 Synapse Analytics 中使用 SQL 语言查询 Azure Data Lake Storage
本教程介绍如何将 Azure Synapse 无服务器 SQL 池连接到启用了 Azure Data Lake Storage 的 Azure 存储帐户中存储的数据。 通过此连接,可以使用 SQL 语言在 Azure 存储中对数据运行 SQL 查询和分析。
在本教程中,将:
- 将数据引入到存储帐户
- 创建 Synapse Analytics 工作区(如果没有)。
- 对 Blob 存储中的数据运行分析
如果没有 Azure 订阅,可在开始前创建一个试用帐户。
创建一个存储帐户,该帐户必须有一个分层命名空间 (Azure Data Lake Storage)
请确保你的用户帐户分配有存储 Blob 数据参与者角色。
重要
请确保在存储帐户的范围内分配角色。 可以将角色分配给父资源组或订阅,但在这些角色分配传播到存储帐户之前,你将收到与权限相关的错误。
本教程使用美国运输统计局的航班数据。 必须下载该数据才能完成本教程。
下载 On_Time_Reporting_Carrier_On_Time_Performance_1987_present_2016_1.zip 文件。 该文件包含航班数据。
将压缩文件的内容解压缩,并记下文件名和文件路径。 在稍后的步骤中需要使用此信息。
导航到 Azure 门户中的新存储帐户。
选择“存储浏览器”->“Blob 容器”->“添加容器”,并创建名为 data 的新容器。
在存储浏览器中,将
On_Time_Reporting_Carrier_On_Time_Performance_1987_present_2016_1.csv
文件上传到“数据”文件夹。
在 Azure 门户中创建 Synapse 工作区。 创建工作区时,请使用以下值:
- 订阅:选择与 Azure 存储帐户关联的 Azure 订阅。
- 资源组:选择放置存储帐户的资源组。
- 区域:选择存储帐户的区域(例如
China North 3
)。 - 名称:输入 Synapse 工作区的名称。
- SQL 管理员登录:输入 SQL Server 的管理员用户名。
- SQL 管理员密码:输入 SQL Server 的管理员密码。
- 标记值:接受默认值。
使用无服务器 SQL 终结点名称服务器名称,可以连接可在 SQL Server 或 Azure SQL 数据库上运行 T-SQL 查询的任何工具(例如:SQL Server Management Studio、Azure Data Studio 或 Power BI)。
若要查找完全限定的服务器名称,请执行以下操作:
- 选择要连接到的工作区。
- 转到“概览”。
- 找到完整的服务器名称。
- 对于专用 SQL 池,请使用 SQL 终结点。
- 对于无服务器 SQL 池,请使用按需 SQL 终结点。
本教程使用 Synapse Studio 查询已上传到存储帐户的 CSV 文件中的数据。
打开 Synapse Studio。 请参阅打开 Synapse Studio
创建 SQL 脚本并运行此查询以查看文件内容:
SELECT TOP 100 * FROM OPENROWSET( BULK 'https://<storage-account-name>.dfs.core.chinacloudapi.cn/<container-name>/folder1/On_Time.csv', FORMAT='CSV', PARSER_VERSION='2.0' ) AS [result]
有关如何在 Synapse Studio 中创建 SQL 脚本的信息,请参阅 Azure Synapse Analytics 中的 Synapse Studio SQL 脚本
如果不再需要本文中创建的资源,可以删除资源组和所有相关资源。 为此,请选择存储帐户所在的资源组和工作区,然后选择“删除”。