使用 Amazon Web 服务创建 GIS 部署时要求您将部分或全部 GIS 数据通过 Internet 传输到云中的位置。本主题列出了有关数据在云中的存储位置和数据的传输方式的若干选项。其中还讨论了会对数据传输时间造成影响的一些因素。
存储数据的位置
创建运行 ArcGIS Server 的 EC2 实例之后,您需要准备将数据传输到云中。数据的存储位置可以有多个。所有下列选项都需要向 Amazon 缴纳一定的费用,但具体的费用值会有所不同,因此在选择之前应进行一些研究。
EBS 卷 - Amazon 弹性块存储 (EBS) 卷是虚拟的磁盘驱动器,可附加到 EC2 实例以添加更多的存储空间。实际上,作为 ArcGIS Server Amazon 机器映像 (AMI) 的一部分,总是会附加卷。在 ArcGIS Server Cloud Builder on Amazon Web Services 中构建站点时,可以配置该附加卷的大小。ArcGIS 服务器目录配置在此驱动器上,因此当您使用用于将数据复制到该服务器的选项发布服务时,数据将保存在该 EBS 卷中。您也可以通过在该卷上创建其他目录来保存数据。
Amazon S3 - Amazon 简单存储服务 (S3) 是一项专为在云中存储数据而设计的 Amazon 服务。此存储选项可将出现数据故障或丢失的概率降至最低。可使用 S3 作为数据备份的位置,或作为一个用于在本地部署和 EBS 卷之间传输数据的中间地带。另外,您所创建的 EBS 卷的所有快照都将存储在 S3 中。
- EC2 实例 - 可将数据直接传输到 EC2 实例;但如果该实例被终止,那么您在 Windodws 的 C: 驱动器或 Linux 的根驱动器上的数据将立即丢失。ArcGIS Server AMI 在 C: 驱动器上分配了相对较小的空间(在 Windows 上为 60 GB),以限制在此驱动器中存储数据。相反,该实例终止时附加的 EBS 卷(如 D: 驱动器)将保留,因此这可作为存储数据的更加安全的选择。
警告:
请不要将 GIS 数据或地图缓存存储在 C: 盘或生产部署 EC2 实例的根驱动器中。
用于将数据传输到云中的选项
将数据从本地部署传输到云中需要耗费一定的时间,在某些情况下还需要与 IT 安全人员进行协调。与本地网络中的常见数据传输相比,将数据导出到 Internet(即云)中的位置在速度和安全性方面通常都较为逊色。
将数据传输到云中的方法很多,但如果要传输的是敏感数据,您应与 IT 工作人员进行协调以确保传输方法的安全性,并需要获得组织的批准。下面介绍了若干选项:
将 ArcGIS 配置为在发布服务时复制数据 - 可将 ArcGIS 配置为在发布服务时将该服务的数据复制到服务器上。这些数据将被打包到服务定义文件 (.sd) 中,而后传输至 ArcGIS 服务器上传目录,最后解包到 ArcGIS 服务器输入目录,或者,您发布要素服务时已将数据放入 GIS 服务器的托管数据库。请注意,如果您不对地图或其他资源中所使用的空间范围以及数据集进行限制,可能需要花费大量时间并导致大量的数据传输。
此选项不支持在服务之间共享数据,或者在云和本地部署之间进行数据同步。
远程桌面连接复制和粘贴 - Windows 远程桌面连接支持文件系统的重定向,其中可将本地驱动器映射至远程计算机。通过远程桌面登录至 Windows 的 EC2 实例时,您可打开 Windows 资源管理器并将数据从本地驱动器复制到 EBS 卷。
要启用文件系统重定向,请在远程桌面连接窗口中单击本地资源选项卡,并选中该复选框使驱动器可用。根据所使用的 Windows 版本,其文字内容也会有所不同。
如果您选择使用远程桌面连接来传输敏感数据,则应确保部署了额外的安全层。对于较早版本的远程桌面连接,我们发现其中存在一些安全漏洞,可导致伪装成服务器的计算机能够访问您的数据(即所谓的中间人攻击)。
注:
通过复制粘贴来传输数据往往需要花费一定的时间。粘贴过程完成之前,不要复制其他任何文件或数据。否则,粘贴将终止,导致您需要重新操作。
S3 客户端实用程序 - Amazon S3 可用作将数据从本地部署移动到 EBS 卷的中间区域。要将数据传输到 S3,可使用 AWS 管理控制台或任意一种用于在 S3 和您自己的计算机之间轻松移动文件的多种专用第三方应用程序。将数据传输到 S3 中之后,您可使用 EC2 实例上的同一实用程序将数据从 S3 中传输到该实例上。
您自己的 Web 服务器 - 通过您的 EC2 实例,可使用 HTTP 访问 Web 中可用的任何数据。如果组织中具有一个面向 Web 的服务器,您可将数据放置在该服务器上,然后从您的 EC2 实例进行下载。这种方法的优势在于您可以在 Web 服务器上配置安全性,从而限制可下载数据的用户以及通过 SSL 对事务进行加密。
FTP - 通过启用文件传输协议 (FTP),可将文件直接上传到 EC2 实例中。注意,标准的 FTP 不会对信息进行加密,而且密码也以明文的方式发送。要安全地使用 FTP,您需要采取一些额外的安全措施,例如使用 SSL 加密 FTP 会话、限制可通过 FTP 将数据传输到实例的用户,以及在初始数据传输后禁用 FTP。一些第三方产品旨在帮助您设置安全的 FTP 连接
AWS 导入/导出 - 如果您需要将大量数据传输到 Amazon,请使用便携式存储设备将数据送至 Amazon 并付费,由 Amazon 将数据直接加载到 S3 中,这样可能会使传输过程更加快捷,或者更具有成本效益。Amazon 提供的这项服务称为 AWS 导入/导出。
如果您考虑使用 AWS 导入/导出,还需要根据组织信息的敏感度来决定这种方式是否合适。无论何时,如果选择邮寄设备,您都会面临不同程度的物理损坏或数据被窃取的风险。可通过备份和加密数据来降低这些风险。如果您仍不确定 AWS 导入/导出方式对您的数据是否合适,请直接与 Amazon 取得联系。
Amazon 与许多提供数据传输、存储和安全性解决方案的解决方案供应商都有合作。请参阅查找 AWS 解决方案供应商,了解这些企业中能否有一家可帮助您解决云策略的问题。Esri 本身就是其中一家提供商,可提供在 Amazon 云中部署 GIS 的不同工程和实施服务。
影响数据传输时间的因素
根据与 Amazon 云的物理接近情况、时间段以及 Internet 连接质量,上述数据传输选项的性能会有所不同。
GIS 数据集,尤其是影像与地图缓存会占用大量的空间,因此在传输之前可能需要进行压缩以降低文件大小或总文件数量,从而提高传输效率(尤其对于地图缓存)。某些 S3 客户端实用程序会限制可传输的单个文件的大小或可存储的单独文件的数量。另外,某些压缩程序还会限制可压缩的数据量。选择数据传输选项时,应将压缩时间与工作量考虑在内。
最后,如果使用 S3,请注意可创建的存储段的数量限制以及关于 S3 存储段的其他限制。Amazon 在存储段限制和局限性中介绍了这些内容。
维护数据路径的完整性
无论何时,要将数据移至一个新的位置时,均应注意对引用该数据的相应路径进行更新。这里需要特别注意的是地图文档,地图文档往往可能会引用数十个位于不同路径中的数据图层。
将 Amazon EC2 数据位置注册到 ArcGIS 服务器有助于减少在发布后修复损坏的数据路径的工作量。请参阅使用 ArcMap 将数据注册到 ArcGIS Server。
另一个选项是登录实例并使用 ArcMap 修复过期路径。ArcGIS for Desktop 包含在 ArcGIS Server AMI 中,因此您可以轻松地进行修复。
减少修复数据连接需求的另一种方式为,在地图文档中使用相对路径并将地图和数据存储在一个通用文件夹中。