从 ArcGIS 连接到 Google BigQuery
要连接到 Google BigQuery,您必须安装和配置客户端文件以实现 ArcGIS 与 BigQuery 之间的通信,并从 ArcGIS Pro 创建数据库连接文件。 为了实现最佳性能,请将 ArcGIS 客户端部署在 Google Cloud 中。
通常,IT 专业人员会安装连接数据仓库所需的 ArcGIS 软件和驱动程序。 他们还会配置允许在 ArcGIS 和云数据仓库之间进行通信所需的网络、防火墙和其他通信通道。
接下来,云数据仓库管理员会创建账户并授予这些账户访问云数据仓库中特定表的权限。 管理员可以创建从 ArcGIS 到云数据仓库的连接,并与发布者共享连接文件,或者管理员可以为发布者提供必需的凭据,以允许他们自行创建连接文件。
要发布引用云数据仓库中的数据的 ArcGIS Server web 服务,发布者必须将数据库连接文件注册到与 ArcGIS Enterprise 联合的 ArcGIS Server 站点之一。 要发布带快照的 web 服务,必须将数据库连接文件注册到托管服务器。
安装和配置驱动程序
要发布包含 BigQuery 数据的地图图像图层或要素图层,必须在将 Web 图层发布到的联合 ArcGIS Server 站点中的所有计算机上安装最新的 Magnitude Simba Open Database Connectivity (ODBC) 驱动程序。 还必须在 ArcGIS Server 站点上将计算机配置为连接到 BigQuery。
有关详细信息以及用于下载和安装 64 位 ODBC 驱动程序的链接,请参阅 Google BigQuery 文档。
确认 Windows PATH 系统环境变量中存在 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 目录访问该脚本。
请确保每台计算机的 ArcGIS Server 安装程序所有者至少具有在数据仓库客户端库中读取和执行的权限。
在文本编辑器中打开
init_user_param.sh脚本。移除以
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保存并关闭脚本。
要使在
init_user_param.sh文件中进行的更改生效,必须重新启动 ArcGIS Server。为此,先后在 ArcGIS Server 站点的每台计算机上运行
stopserver.sh脚本和startserver.sh脚本。./stopserver.sh./startserver.sh
创建数据库连接
您必须有数据库连接(.sde 文件),用于对数据库的连接进行身份验证。 要将数据库连接文件与 ArcGIS Server 配合使用,必须将用户信息与连接文件一起保存。
可以在需要连接数据库的 ArcGIS Server 站点中的某台计算机上调用 ArcPy CreateDatabaseConnection 函数。 有关运行此函数的信息,请参阅 ArcGIS Pro 帮助中的创建数据库连接。
注册连接文件
要允许 ArcGIS Server 站点访问数据,使用您创建的数据库连接文件在 ArcGIS Pro 中添加注册的数据存储或在门户中添加数据存储项目。
要在启用为查询图层创建快照配置参数的情况下进行发布,必须将数据库连接文件注册到托管服务器。 有关此参数的详细信息,请参阅 ArcGIS Pro 帮助中的“配置 Web 要素图层”的“配置参数”部分。