教程:将无服务器 SQL 池与 Power BI Desktop 配合使用并创建报表

本教程介绍以下操作:

  • 创建演示数据库
  • 创建用于报表的视图
  • 将 Power BI Desktop 连接到无服务器 SQL 池
  • 基于视图创建报表

先决条件

若要完成本教程,需要具备以下先决条件:

可选:

以下参数的值:

参数 DESCRIPTION
无服务器 SQL 池服务终结点地址 用作服务器名称
无服务器 SQL 池服务终结点区域 用于计算样本中所使用的存储容量
用来访问终结点的用户名和密码 用于访问终结点
用于创建视图的数据库 用作示例起点的数据库

1 - 创建数据库

对于演示环境,请创建自己的演示数据库。 使用此数据库查看元数据,而不是存储实际数据。

通过运行以下 Transact-SQL(T-SQL)脚本创建演示数据库(并在必要时删除现有数据库):

-- Drop database if it exists
DROP DATABASE IF EXISTS Demo
GO

-- Create new database
CREATE DATABASE [Demo];
GO

2 - 创建数据源

无服务器 SQL 池服务需要数据源才能访问存储中的文件。 为位于终结点所在的同一区域中的存储帐户创建数据源。 尽管无服务器 SQL 池可以访问不同区域的存储帐户,但在同一区域中具有存储和终结点可提供更好的性能。

通过运行以下 Transact-SQL(T-SQL)脚本创建数据源:

-- There is no credential in data source. We are using public storage account which doesn't need a secret.
CREATE EXTERNAL DATA SOURCE AzureOpenData
WITH ( LOCATION = 'https://azureopendatastorage.blob.core.windows.net/')

3 - 准备视图

通过运行以下 Transact-SQL(T-SQL)脚本,基于 Power BI 使用的外部演示数据创建视图:

在数据库Demo中使用以下查询创建视图usPopulationView

DROP VIEW IF EXISTS usPopulationView;
GO

CREATE VIEW usPopulationView AS
SELECT
    *
FROM
    OPENROWSET(
        BULK 'censusdatacontainer/release/us_population_county/year=20*/*.parquet',
        DATA_SOURCE = 'AzureOpenData',
        FORMAT='PARQUET'
    ) AS uspv;

演示数据包含以下数据集:

美国每个县按性别和种族划分的人口,数据来源于 2000 年和 2010 年十年一次的人口普查,采用 Parquet 格式。

文件夹路径 DESCRIPTION
/release/ 演示存储帐户中的数据的父文件夹
/release/us_population_county/ 采用 Parquet 格式的美国人口数据文件,使用 Hive/Hadoop 分区方案按年份进行分区。

4 - 创建 Power BI 报表

使用以下步骤为 Power BI Desktop 创建报表:

  1. 打开 Power BI Desktop 应用程序并选择“ 获取数据”。

    打开 Power BI Desktop 应用程序并选择“获取数据”。

  2. 选择 Azure>Azure SQL 数据库

    选择数据源。

  3. 键入数据库位于 “服务器” 字段中的服务器的名称,然后键入 Demo 数据库名称。 选择“ 导入 ”选项,然后选择“ 确定”。

    选择终结点上的数据库。

  4. 选择首选身份验证方法:

    • AAD 示例

      单击“登录”。

    • SQL 登录名示例 - 键入用户名和密码。

      使用 SQL 登录。

  5. 选择视图 usPopulationView,然后选择“ 加载”。

    选择所选数据库上的视图。

  6. 等待操作完成,然后将会弹出一个窗口,显示 There are pending changes in your queries that haven't been applied。 选择应用更改

    单击“应用更改”。

  7. 等待 “应用查询更改 ”对话框消失,这可能需要几分钟时间。

    等待查询完成。

  8. 加载完成后,按照以下顺序选择列以创建报表:

    • countyName
    • 人口
    • 州名

    选择感兴趣的列以生成地图报表。

清理资源

使用此报表后,请按照以下步骤删除资源:

  1. 删除存储帐户的凭据

    DROP EXTERNAL DATA SOURCE AzureOpenData
    
  2. 删除视图

    DROP VIEW usPopulationView;
    
  3. 删除数据库

    DROP DATABASE Demo;
    

后续步骤

转到 查询存储文件 ,了解如何使用 Synapse SQL 查询存储文件。