从 ArcGIS 连接到 Google BigQuery

要连接到 Google BigQuery,您必须安装和配置客户端文件以实现 ArcGIS 与 BigQuery 之间的通信,并从 ArcGIS Pro 创建数据库连接文件。 要发布 web 图层,必须将数据库连接文件注册到 ArcGIS Enterprise 门户的托管服务器站点。 为了实现最佳性能,请将 ArcGIS 客户端部署在 Google Cloud 中。

通常,IT 专业人员会安装连接数据仓库所需的 ArcGIS 软件和驱动程序。 他们还会配置允许在 ArcGIS 和云数据仓库之间进行通信所需的网络、防火墙和其他通信通道。

接下来,云数据仓库管理员会创建帐户并授予这些帐户访问云数据仓库中特定表的权限。 管理员可以创建从 ArcGIS Pro 到云数据仓库的连接,并与发布者共享连接文件,或者管理员可以为发布者提供必需的凭据,以允许他们自行创建连接文件。

要发布引用云数据仓库中的数据的 ArcGIS Server web 服务,发布者必需将数据库连接文件注册到充当 ArcGIS Enterprise 门户托管服务器的 ArcGIS GIS Server 站点。

安装和配置驱动程序

要从 ArcGIS Pro 连接到 BigQuery,您必须在 ArcGIS Pro 计算机上安装最新的 Magnitude Simba 开放式数据库连通性 (ODBC) 驱动程序。 要发布包含来自 BigQuery 的数据的地图图像图层,您必须在 ArcGIS Enterprise 门户的托管服务器站点中安装驱动程序并配置计算机以连接到 BigQuery

有关详细信息以及用于下载和安装 64 位 ODBC 驱动程序的链接,请参阅 Google BigQuery 文档

注:

您无需配置数据源名称 (DSN) 即可从 ArcGIS 连接到 Google BigQuery

Microsoft Windows 计算机

在每台 ArcGIS Pro 计算机上以及使用 Windows 操作系统的托管服务器中的每台计算机上安装 Magnitude Simba ODBC 驱动程序。

确认 Windows PATH 系统环境变量中存在 Magnitude Simba ODBC 驱动程序的路径。 如果不存在,则添加该路径。

Linux 计算机

如果门户的托管服务器在 Linux 计算机上运行,则必须在 GIS Server 站点中的每台计算机上安装 Magnitude Simba ODBC 驱动程序。

当您编辑 Magnitude Simba /etc/odbcinst.ini 文件以引用 Simba ODBC 驱动程序的位置时,必须将章节标题更改为 Simba ODBC Driver for Google BigQuery。 文本必须与之完全一致。 例如,如果该标题为 Simba ODBC Driver for Google BigQuery 64bit 或其他任何内容,ArcGIS 连接将失败。

在配置 /etc/odbcinst.ini 文件后,请配置 ArcGIS Server init_user_param.sh 文件以访问驱动程序。

更改 init_user_param.sh 脚本

将随 ArcGIS Server 一起安装的 init_user_param.sh 脚本更改为引用驱动程序。 可通过浏览至 <ArcGIS Server installation directory>/arcgis/server/usr 目录访问该脚本。

  1. 请确保 ArcGIS Server 每台计算机的安装程序所有者至少具有在数据仓库客户端库中读取和执行的权限。
  2. 在文本编辑器中打开 init_user_param.sh 脚本。
  3. 移除以 export 为开头的行中的注释标记 (#),并将驱动程序位置替换为您计算机上的路径。

    # -----------------------------------------------------------------------
    # Modify this section to configure an ODBC connection to Google BigQuery Data 
    # Warehouse.
    #
    # To make a connection, copy GoogleBigQueryODBC.did to the lib folder under the 
    # extracted directory for Google BigQuery ODBC driver. Edit 
    # simba.googlebigqueryodbc.ini and set DriverManagerEncoding=UTF-16. Configure and 
    # store the odbcinst.ini in the /etc folder. 
    #
    # -----------------------------------------------------------------------
    export LIB_ODBC_DRIVER_MANAGER=<Location_to_ODBC_driver_manager_libraries>/libodbc.so.2
    export SIMBAGOOGLEBIGQUERYODBCINI=<Location_to_simba.googlebigqueryodbc.ini>/simba.googlebigqueryodbc.ini

  4. 保存并关闭脚本。
  5. 要使在 init_user_param.sh 文件中进行的更改生效,必须重新启动 ArcGIS Server。 为此,先后在 ArcGIS Server 站点的每台计算机上运行 stopserver.sh 脚本和 startserver.sh 脚本。

    ./stopserver.sh

    ./startserver.sh

创建数据库连接文件

ArcGIS Pro 中,使用新建数据库连接对话框来创建与 BigQuery 的连接。

  1. 打开 ArcGIS Pro 中的目录窗格。
  2. 右键单击数据库,然后单击新建数据库连接
  3. 数据库平台下拉列表中选择 BigQuery
  4. 身份验证类型下拉列表中,选择要创建的连接类型:
    • 用户身份验证
    • 服务身份验证

    请参阅有关身份验证的 Google BigQuery 文档以帮助您决定使用哪个类型。

  5. 如果您选择用户身份验证,则请键入工程 ID 以及与您要进行连接时的用户身份关联的默认数据集的名称。
  6. 如果您选择服务身份验证,请执行以下操作以完成连接信息:
    1. 浏览到包含连接到 BigQuery 所需凭据的密钥文件的位置,选择该文件,然后单击打开
    2. 键入要用于连接的工程 ID 和默认数据集名称。
  7. 单击确定创建连接文件。

    连接在目录窗格的数据库下列出。

可通过输入新名称并按 Enter 键对文件进行重命名。

注册到托管服务器

要允许 ArcGIS Server 站点访问数据,在 ArcGIS Pro添加注册的数据存储在门户中添加数据存储项目

接下来的步骤

在将 ArcGIS 客户端配置为连接和创建数据库连接文件后,您和其他组织成员可以执行以下操作: