分布式切片库

发送反馈


如果您希望将地图瓦片进行分布式存储,那么在创建预缓存任务之前,需要先创建分布式切片库。目前支持的分布式切片库的类型有 FastDFSMongoDBOTS

登录服务管理器(http://<server>:<port>/iserver/manager),点击进入“分布式切片库”即可看到已有的分布式切片库列表。在切片存储列表中展示了当前切图主节点中,所有已创建分布式切片库,点击存储 ID,可查看详细的存储配置信息以及生成的切片集列表。

点击“添加分布式切片库”按钮,可以看到添加新的分布式切片库时,需要创建一个“存储 ID”作为其唯一标识,需要选择切片库类型,如 FastDFS、MongoDB、OTS。不同的切片库创建时需要的参数是不同的,在创建前请确认分布式存储服务器可用。

添加 FastDFS 存储

FastDFS 是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。FastDFS 服务端有两个角色:跟踪器(Tracker)和存储节点(Storage)。FastDHT 是一个基于键值对(Key Value Pair)的高效的分布式 Hash 系统,用于保存切图结果文件名与存储文件名之间的映射关系。有关 FastDFS 的安装与配置,请参考: FastDFS 的安装与配置

如上所述,添加 FastDFS 存储时,需要设置存储服务器,即 FDFS Trackers 和 FDHT Groups 服务器的地址。

表1 FastDFS 分布式存储参数说明

参数名称

 说明

FDFS Trackers

跟踪器(Tracker)起负载均衡的作用,负责调度服务器,跟踪器由一台或多台服务器组成,所有服务器都是对等的,可以根据服务器的压力情况增加或减少,其服务器可以随时增加或下线而不会影响在线服务。
添加跟踪器中服务器的格式为:<server>:<port>,例如:192.168.110.10:22122。
具体的 IP 和端口请参见:配置 FastDFS,即 tracker.conf 中 bind_addr 和 port 的配置。
FDHT Groups FastDHT 由一个或多个组(Group)组成,每个组由一台或多台服务器组成,同组服务器上存储相同的数据,组内各个服务器对等,数据同步只在同组的服务器之间进行。
添加 Group 中服务器的格式为:<server>:<port>,例如:192.168.110.10:11411。
具体的端口请参见:配置 FastDHT,即 fdhtd.conf 中 bind_addr 和 port 的配置。

 

您也可以通过修改系统配置文件来添加 FastDFS 存储。具体操作时,在 iserver-system.xml 中添加如下配置信息:

<storages>
  <storage>
    <id>f12</id>
    <tileSourceInfo class="com.supermap.services.tilesource.FastDFSTileSourceInfo">
      <type>FastDFS</type>
      <fdfsTrackers>
        <string>192.168.112.12:22122</string>
      </fdfsTrackers>
      <fdhtGroups>
        <string-array>
          <string>192.168.112.12:11411</string>
        </string-array>
      </fdhtGroups>
    </tileSourceInfo>
  </storage>
</storages>

添加 MongoDB 存储

MongoDB 是一个基于分布式文件存储的数据库,旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。有关 MongoDB 的详细介绍和安装使用方式,请参考:MongoDB 的安装与配置

添加 MongoDB 服务时,您需要配置以下参数:

您也可以通过修改系统配置文件来添加 MongoDB 存储。具体操作时,在 iserver-system.xml 中添加如下配置信息:

<storage> 
      <id>m27</id>  
      <tileSourceInfo class="com.supermap.services.tilesource.MongoDBTilesourceInfo"> 
        <type>MongoDB</type>  
        <serverAdresses> 
          <string>localhost:27017</string> 
        </serverAdresses>  
        <database>smtiles</database>  
        <username>iserver</username>  
        <password>iserver</password> 
      </tileSourceInfo> 
    </storage> 
        

其中,<database>、<username>以及<password> 是可选参数。

添加OTS存储

OTS是构建在阿里云飞天分布式系统上的NoSQL存储服务,提供海量结构化数据的存储和实时访问。

添加OTS服务时,您需要配置以下参数:

您也可以通过修改系统配置文件来添加 OTS存储。具体操作时,在 iserver-system.xml 中添加如下配置信息:

    <storage> 
      <id>OTS1</id>  
      <tileSourceInfo class="com.supermap.services.tilesource.OTSTileSourceInfo"> 
        <type>OTS</type>  
        <instanceName>tileStore</instanceName>  
        <nodeName>cn-hangzhou</nodeName>  
        <fromPublic>true</fromPublic>  
        <accessKeyId>accessKeyId</accessKeyId>  
        <accessKeySecret>accessKeySecret</accessKeySecret> 
      </tileSourceInfo>
    </storage> 

  注:请在<accessKeyId>、<accessKeySecret>中填入您实际获取的AccessKey信息。