Java/Spring:连接到多个 BigQuery 数据集

Posted

技术标签:

【中文标题】Java/Spring:连接到多个 BigQuery 数据集【英文标题】:Java/Spring: connect to severals BigQuery datasets 【发布时间】:2021-09-27 12:09:39 【问题描述】:

大部分内容都在标题中。 我有一个 API 已经连接到定期查询的 BigQuery 数据集。很快,我的流程将需要存储在另一个 BigQuery 数据集中的新数据。

所以,我开始检查是否可以将两个不同的 BQ 数据集连接到一个 Spring API。除非我错过了,否则我在 BQ 文档中没有找到有关此特定案例的任何信息。

由于 API 已经连接,spring.cloud.gcp.bigQuery.* 的属性值已经定义。因此,我无法使用这些属性来定义新连接。

那么是否可以将一个 API 连接到多个 BigQuery 数据集?如果是这样,我该如何处理属性文件?

【问题讨论】:

【参考方案1】:

在做了类似的事情之后你不能实现你现在的目标吗:

public BigQuery bigQuery1() 
 return BigQueryOptions.newBuilder()
    .setCredentials(
       ServiceAccountCredentials.fromStream(
         new FileInputStream("your_json_service_keyfile.json"))
    )
    .setProjectId("bigQuery1")
    .build().getService();



public BigQuery bigQuery2() 
 return BigQueryOptions.newBuilder()
    .setCredentials(
       ServiceAccountCredentials.fromStream(
         new FileInputStream("your_json_service_keyfile.json"))
    )
    .setProjectId("bigQuery2")
    .build().getService();

【讨论】:

以上是关于Java/Spring:连接到多个 BigQuery 数据集的主要内容,如果未能解决你的问题,请参考以下文章

从 Java(Spring Boot)或 Node.js 检查/连接到在 docker 中运行的 Redis

可怕的 Java Spring Boot 应用程序未使用 Docker-compose java.net.ConnectException 连接到 MySQL:连接被拒绝

使用 java 模拟多个用户连接到 Cassandra

使用不同的 jdbc 驱动程序连接到多个数据库

连接到同一视频对象中的多个网络流

将 tableviewcell 连接到多个视图控制器