如何使用Power BI从Azure Cosmos DB报告数据

684 阅读4分钟

在这篇文章中,我们将学习如何使用Power BI从Azure Cosmos DB中报告数据,Power BI是业内最流行的报告工具之一。

绪论

数据可以以各种格式和存储库来托管。数据也被各种应用以各种方式消费。消费数据的最基本方式之一是通过报告的方式。报告关系型数据是一个非常著名和频繁的做法,但相对来说,即使是可能托管在无SQL味道的数据存储库中的非关系型数据也可能需要报告,以用于数据采样、数据探索和其他各种目的。Azure云平台提供了各种数据存储库来托管数据。Cosmos DB是数据存储库之一,支持以各种格式托管数据,包括以键值格式存储数据。

报告Azure Cosmos DB的数据

由于我们要用Power BI报告Cosmos DB的数据,我们需要的两个项目是一个Cosmos DB实例和Power BI的安装。假设已经创建了Cosmos DB - SQL API的实例,并有一些样本数据。我们还假设本地机器上已经安装了最新版本的Power BI Desktop。人们可以使用Cosmos DB实例中的内置脚本创建一些样本数据。人们可以使用Cosmos DB实例的仪表盘上的数据浏览器来探索数据,如下图所示。

Data Explorer

假设Cosmos DB实例已经设置好,打开Power BI桌面,主页会如下图所示。为了使用Power BI报告数据,我们需要将其连接到数据源,在我们的例子中,数据源是Azure Cosmos DB实例。

Report Layout

点击获取数据菜单,我们就可以看到最常用的数据连接器。点击菜单选项可以看到更多的数据连接器,输入Azure Cosmos DB来找到它的连接器,并选择它,如下图所示。

Get Data

选择之后,会弹出一个向导,如下图所示。我们需要提供URL,即Azure Cosmos DB实例的端点。我们可以选择性地提供数据库名称以及集合名称。提供所需的细节,然后点击 "OK "按钮。

Connection String

在下一步,我们将被要求提供实例的密钥。这个密钥可以从数据库实例的仪表板上获取。在提供密钥后,如果验证成功,我们将能够看到集合中的项目列表,如下所示。

Navigator

选择所需的集合,我们将能够看到如下所示的数据。由于数据不是来自关系型存储,每条记录都会如下图所示。每条记录包含多个键和值,其中每个键是一个字段,而键的值是实际的数据。

Records

如果我们转换数据并调查任何一条记录,它将如下图所示。这里我们可以看到每条记录中的不同字段及其数值。

Key Value Data

点击 转换数据按钮,我们会看到一个记录的列表。点击列头,我们会看到每个记录中嵌入的关键名称。我们可以根据需要选择或取消选择字段,然后点击确定按钮。

Select Fields

一旦选择完成,数据将以表格的方式显示,如下图所示。在每个项目中以键值集合的形式嵌入的数据被转为扁平化的表格结构,如下图所示。

Tabular Data

一旦我们确认数据和模式都符合要求,点击应用和关闭按钮。这将把Azure Cosmos DB实例的数据和模式导入Power BI桌面工具,如下图所示。

Imported Data

从字段窗格中选择字段,我们就可以在报告布局中看到数据,如下图所示。

Reporting Data

这样,我们就可以使用Power BI Desktop中的Cosmos DB连接器从Cosmos DB实例中报告数据,如下图所示。

总结

在这篇文章中,我们首先用样本数据创建了一个新的Azure Cosmos DB实例,并安装了Power BI桌面。我们使用Power BI Desktop中的Cosmos DB连接器连接到Cosmos DB实例,并从其中获取数据源。在Power BI Desktop中填充数据之前,我们对模式进行了转换,将其转换为表格结构,并在工具中导入数据,最后在报表布局中报告。