从 ArcGIS 连接到 Amazon Redshift

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

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

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

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

安装和配置驱动程序

要从 ArcGIS Pro 连接到 Redshift,您必须在每台 ArcGIS Pro 计算机上安装最新的 Amazon Redshift 64 位 ODBC 驱动程序。 要发布包含来自 Redshift 的数据的地图图像图层,您必须在 ArcGIS Enterprise 门户的托管服务器站点中安装 Amazon Redshift 64 位 ODBC 驱动程序。

可以从 Amazon Web Services (AWS) 网站下载 Amazon Redshift ODBC 驱动程序,然后将其安装在所有将连接到 Redshift 的 ArcGIS 客户端计算机。 按照 AWS 提供的说明来安装并配置该驱动程序。

更改 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 目录访问该脚本。

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

    # -----------------------------------------------------------------------
    # Modify this section to configure Amazon Redshift ODBC connector
    # 
    # -----------------------------------------------------------------------
    export LIB_ODBC_DRIVER_MANAGER=<Location_to_ODBC_driver_manager_libraries>/libodbc.so.2
    export AMAZONREDSHIFTODBCINI=<Location_to_amazon.redshiftodbc.ini>/amazon.redshiftodbc.ini

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

    ./stopserver.sh

    ./startserver.sh

创建数据库连接文件

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

  1. 打开 ArcGIS Pro 中的目录窗格。
  2. 右键单击数据库,然后单击新建数据库连接
  3. 数据库平台下拉列表中选择 Redshift
  4. 服务器文本框中键入托管 Redshift 数据库的服务器的完全限定名称。

    名称的格式为 <cluster>.<server>.<region>.redshift.amazon.com。 例如,如果数据库集群的名称是 mycluster,服务器的名称是 myserver,并且它被部署在 Amazon 区域 us-east-2 上,则服务器名称将为 mycluster.myserver.us-east-2.redshift.amazon.com

    如果 Redshift 实例使用默认端口 (5439) 以外的端口进行通信,请在完全限定的服务器名称后添加端口号。 例如,如果您使用端口 5440 与上述实例通信,请在服务器文本框中键入 mycluster.myserver.us-east-2.redshift.amazon.com,5440

  5. 仅支持标准身份验证。
  6. 键入要用于身份验证的凭据的用户名和密码。
  7. 如果您将使用数据库连接文件来发布 web 图层或者在地理处理模型中使用,请选中保存用户/密码复选框。
  8. 数据库下拉列表中选择要连接的数据库。
  9. 单击确定创建连接文件。

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

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

注册到托管服务器

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

接下来的步骤

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