要连接到 Snowflake 云数据仓库,请安装并配置客户端文件以实现 ArcGIS 与 Snowflake 之间的通信,并从 ArcGIS Pro 创建数据库连接文件。 要发布 web 图层,必须将数据库连接文件注册到 ArcGIS Enterprise 门户的托管服务器站点。 为了实现最佳性能,请将 ArcGIS 客户端和数据仓库部署在同一 Snowflake 云环境中。
通常,IT 专业人员会安装连接数据仓库所需的 ArcGIS 软件和驱动程序。 他们还会配置允许在 ArcGIS 和云数据仓库之间进行通信所需的网络、防火墙和其他通信通道。
接下来,云数据仓库管理员会创建帐户并授予这些帐户访问云数据仓库中特定表的权限。 管理员可以创建从 ArcGIS Pro 到云数据仓库的连接,并与发布者共享连接文件,或者管理员可以为发布者提供必需的凭据,以允许他们自行创建连接文件。
要发布引用云数据仓库中的数据的 ArcGIS Server web 服务,发布者必需将数据库连接文件注册到充当 ArcGIS Enterprise 门户托管服务器的 ArcGIS GIS Server 站点。
安装和配置驱动程序
要从 ArcGIS Pro 连接到 Snowflake,您必须在 ArcGIS Pro 计算机上为 Microsoft Windows 安装最新的 Snowflake 64 位 ODBC 驱动程序并配置该驱动程序。 要发布包含来自 Snowflake 的数据的地图图像图层,您必须在 ArcGIS Enterprise 门户的托管服务器站点中的每台计算机上安装并配置 Snowflake 64 位 ODBC 驱动程序。
可以从 Snowflake 网站下载 Snowflake ODBC 驱动程序,然后将其安装在所有将连接到 Snowflake 的 ArcGIS 客户端计算机。 按照 Snowflake 提供的说明来安装并配置该驱动程序。
更改 init_user_param.sh 脚本(仅针对 Linux)
如果门户的托管服务器在 Linux 计算机上运行,则必须在 GIS Server 站点中的每台计算机上安装该驱动程序,并在每台计算机上配置 init_user_param.sh 脚本以访问该驱动程序。
将随 ArcGIS Server 一起安装的 init_user_param.sh 脚本更改为引用驱动程序。 可通过浏览至 <ArcGIS Server installation directory>/arcgis/server/usr 目录访问该脚本。
- 请确保 ArcGIS Server 每台计算机的安装程序所有者至少具有在数据仓库客户端库中读取和执行的权限。
- 在文本编辑器中打开 init_user_param.sh 脚本。
- 移除以 export 开头的行中的注释标记 (#),然后将 <Location_to_ODBC_driver_manager_libraries> 替换为计算机上 ODBC 驱动程序管理器的位置。
# # Modify this section to configure a connection to Snowflake Data Warehouse # # ----------------------------------------------------------------------- export LIB_ODBC_DRIVER_MANAGER=<Location_to_ODBC_driver_manager_libraries>/libodbc.so.2
- 将以下行添加到文件中,并将 <Location_to_libSnowflake.so> 替换为 Snowflake ODBC 驱动程序的位置。
export LD_PRELOAD=$LD_PRELOAD:$LIB_ODBC_DRIVER_MANAGER:<Location_to_libSnowflake.so>/libSnowflake.so
- 保存并关闭脚本。
- 要使在 init_user_param.sh 文件中进行的更改生效,必须重新启动 ArcGIS Server。
为此,先后在 ArcGIS Server 站点的每台计算机上运行 stopserver.sh 脚本和 startserver.sh 脚本。
./stopserver.sh
./startserver.sh
创建数据库连接文件
在 ArcGIS Pro 中,使用新建数据库连接对话框来创建与 Snowflake 的连接。
- 打开 ArcGIS Pro 中的目录窗格。
- 右键单击数据库,然后单击新建数据库连接。
- 从数据库平台下拉列表中选择 Snowflake。
- 在服务器文本框中键入 Snowflake 帐户的名称。
以类似于 my_account.snowflakecomputing.com 的格式键入该名称。
- 键入要用于身份验证的凭据的用户名和密码。
注:
启用要素分箱化并创建物化视图将会在连接用户的默认方案中创建对象。 如果您打算使用此功能,请确保为连接用户分配默认方案,这些用户可以在其中创建对象,或者使用高级选项字段为连接指定不同的方案。
- 如果您将使用数据库连接文件来发布 web 图层或者在地理处理模型中使用,则必须选中保存用户/密码复选框。
- 在角色文本框中,指定用于连接的权限集。
- 从数据库下拉列表中选择要连接的数据库,或键入数据库的名称。
- 在仓库文本框中,提供用于连接的计算资源的名称。
- 除了先前步骤中所需的参数之外,如果您还需要连接参数,请在高级选项字段中提供其他参数。
可以使用分号 (;) 分隔选项。 有关附加和可选连接参数的信息,请参阅 Snowflake 文档。
例如,要使用连接的方案,而非连接用户的默认方案,并将连接配置为在连接到 Snowflake 服务时等待 90 秒以等待响应,然后返回登录失败错误,请在高级选项字段中键入 schema=gisdata;login_timeout=90。
- 单击确定创建连接文件。
可通过在目录窗格中输入新名称并按 Enter 键对文件进行重命名。
注册到托管服务器
要允许 ArcGIS Server 站点访问数据,使用您创建的数据库连接文件在 ArcGIS Pro 中添加注册的数据存储或在门户中添加数据存储项目。
接下来的步骤
在将 ArcGIS 客户端配置为连接和创建数据库连接文件后,您和其他组织成员可以执行以下操作:
- 分析者和发布者将在 ArcGIS Pro 的地图中创建查询图层。