在PowerBI中导入JSON文件

某应用程序,用于管理其仓库中产品的发运和跟踪,该仓库将 NoSQL 数据库 CosmosDB 用作数据存储库。  此应用程序使用 Cosmos DB 存储 JSON 文档,这些文档采用公开的标准文件格式,主要用于在服务器和 Web 应用程序传输数据。 你需要将此数据导入到 Power BI 数据模型中,以生成报表。

连接到 NoSQL 数据库 (Azure Cosmos DB) 

使用 Power BI Desktop 中的“获取数据”功能。 选择“更多...”选项,以查找并连接到所使用的数据库类型。 在此示例中,你将依次选择“Azure”类别、“Azure Cosmos DB”和“连接”。 

“从 Azure Cosmos DB 获取数据”选项

在“预览连接器”窗口中,选择“继续”,然后输入数据库凭据。 在此示例中,可以在“Azure Cosmos DB”窗口中输入数据库详细信息。  可以指定要从中获取数据的 Azure Cosmos DB 帐户终结点 URL(可以从 Azure 门户的“密钥”边栏选项卡中获取此 URL)。  也可以输入数据库名称、集合名称,或使用导航器选择数据库和集合,来确定数据源。

在此示例中,你是第一次连接到终结点,在这种情况下,请务必输入帐户密钥。 可以从 Azure 门户的“只读密钥”边栏选项卡的“主密钥”框中找到此密钥。 

导入 JSON 文件 

必须先提取并规范化 JSON 类型记录,然后才能生成相关报告,因此需要先转换数据,然后再将其加载到 Power BI Desktop 中。 

连接到数据库帐户后,“导航器”窗口将会打开,并显示该帐户下的数据库列表。 选择要导入的表。 在此示例中,你将选择“产品”表。 预览窗格只显示“记录”项,因为文档中的所有记录都已表示为 Power BI 中的“记录”类型。 

包含可用记录列表的“导航器”窗口

选择“编辑”按钮以在 Power Query 中打开记录。 

在 Power Query 中,选择“Column1”标题右侧的“扩展器”按钮,它会显示包含字段列表的上下文菜单。   选择要加载到 Power BI Desktop 的字段,清除“使用原始列名作为前缀”选项卡,然后选择“确定”。  

展开记录功能

查看所选数据以确保你对其满意,然后选择“关闭并应用”,以将数据加载到 Power BI Desktop 中。  

Power Query 中的“关闭并应用”步骤

现在,数据类似于一个具有行和列的表。 Cosmos DB 中的数据现在可以与其他数据源中的数据相关联,并且最终可以用于 Power BI 报表。 

 

参见:

https://docs.microsoft.com/zh-cn/learn/modules/get-data/4-nosql-database

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要将JSON文件导入Oracle数据库,您可以按照以下步骤在IntelliJ IDEA操作: 1. 首先,确保您的项目已经添加了Oracle数据库的JDBC驱动程序。如果没有,请下载并将其添加到项目的依赖。 2. 在您的Java代码,使用Java的JSON库(如Jackson或Gson)读取JSON文件并将其转换为Java对象。您可以使用以下代码示例: ```java import com.fasterxml.jackson.databind.ObjectMapper; // 读取JSON文件 File file = new File("path/to/your/json/file.json"); ObjectMapper objectMapper = new ObjectMapper(); YourObject yourObject = objectMapper.readValue(file, YourObject.class); ``` 请确保您根据实际情况替换"YourObject"为您的Java对象类名,并将"path/to/your/json/file.json"替换为实际的JSON文件路径。 3. 接下来,连接到Oracle数据库。您可以使用JDBC连接字符串和凭据创建一个数据库连接。以下是一个示例代码片段: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; // 创建数据库连接 String jdbcUrl = "jdbc:oracle:thin:@localhost:1521:xe"; String username = "your_username"; String password = "your_password"; try { Connection connection = DriverManager.getConnection(jdbcUrl, username, password); // 在此执行导入操作 // ... connection.close(); } catch (SQLException e) { e.printStackTrace(); } ``` 请确保将"jdbc:oracle:thin:@localhost:1521:xe"替换为您的Oracle数据库连接字符串,并将"your_username"和"your_password"替换为您的数据库凭据。 4. 最后,在数据库连接下执行插入操作。您可以使用JDBC PreparedStatement或Statement来执行SQL插入语句,将转换后的Java对象插入到数据库表。以下是一个示例代码片段: ```java import java.sql.PreparedStatement; import java.sql.SQLException; // 执行插入操作 String sql = "INSERT INTO your_table (column1, column2, ...) VALUES (?, ?, ...)"; try { PreparedStatement statement = connection.prepareStatement(sql); // 设置参数 statement.setString(1, yourObject.getProperty1()); statement.setInt(2, yourObject.getProperty2()); // ... statement.executeUpdate(); statement.close(); } catch (SQLException e) { e.printStackTrace(); } ``` 请确保将"your_table"替换为要插入数据的实际表名,并根据实际情况设置参数。 这样,您就可以将JSON文件的数据导入到Oracle数据库了。请注意,您可能需要根据您的数据模型和表结构进行适当的调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值