FME服务器配置阅读器/写入器
许可选项对于这种格式,从FME专业版开始。
注意:要使用此格式,您必须连接到2013及以上版本的FME服务器。FME服务器配置阅读器/写入器还要求您使用一个FME服务器用户fmesuperuser的角色。
FME Server Configuration读取器和写入器为FME提供了将配置导入、导出或迁移到或从FME Server实例的功能。
概述
FME Server Configuration reader提供了动态请求FME Server支持的配置类别(例如,存储库、服务、安全……)的可能性,并从一个或多个类别导出数据作为特性。每个选择的类别在Workbench中都表示为一个单独的特性类型。
在读取操作期间,立即从服务器获取所选类别的配置组件(例如,服务、存储库、工作区、服务注册……),然后将其转换为特性。阅读器使用相同的固定模式表示所有配置组件,配置组件的实际数据包含在content属性中。FME Server Configuration数据集中的每个特性都由其URI属性唯一标识。
在写入操作期间,写入器希望接收与读取器提供的固定模式结构相同的特性。作者将等待收到所有的特性,然后将它们组装到配置包中。然后,该包将被导入到FME服务器。然后,FME服务器处理接收到的信息,并根据需要更新其配置。
FME Server Configuration格式是一种非空间格式,它产生并使用带有属性和空几何的特征,因此这种阅读器或写入器不太可能用于真正的GIS或CAD数据翻译。相反,它在管理FME Server实例的配置时最有用。当读写器和写入器一起使用时,它们可以用于将配置从一个服务器迁移到另一个服务器,也可以单独使用读写器进行备份。
有关特性模式和格式属性的描述,请参见特性表示一节。
配置类别和配置项
FME Server支持迁移以下配置类别:
- 存储库
- 服务
- 通知
- 安全
- 调度
- 共享资源
- 最喜欢的
配置类别代表了FME服务器的不同功能。下表显示了每个类别支持的项目类型。层次结构还表示项对其他项的所有权。例如,存储库拥有工作区、模板、自定义格式和自定义转换,而这些自定义转换又拥有服务注册项。
类别 |
项类型 |
||
---|---|---|---|
存储库 | 存储库 | 工作区 | item_service_registrations |
模板 | item_service_registrations | ||
custom_formats | item_service_registrations | ||
custom_transformers | item_service_registrations | ||
服务 | 服务 | ||
通知 | 主题 | ||
subscriber_protocols | 用户 | topic_registrations | |
publisher_protocols | 出版商 | topic_registrations | |
安全 | 角色 | ||
用户 | user_role_registrations | ||
user_tokens | |||
app_resource_categories | role_permissions | ||
app_resources | role_permissions | ||
调度 | task_categories | 任务 | |
共享资源 | shared_resources | shared_resource_file_infos | |
最喜欢的 | repository_items |
迁移行为
属性可以控制迁移导入行为作家模式参数.
在插入模式下,目标FME服务器上的数据不会被覆盖。仅导入配置包中可用、FME服务器中不可用的数据。在更新模式下,配置包中的所有数据将被导入到FME Server中。FME服务器和导入的配置包中存在的数据将被覆盖,并添加新的数据。
存储库
插入:添加服务器上缺失的存储库项;不更新现有项。
更新:添加服务器上缺失的存储库项;更新现有项。
服务
插入和更新:添加服务器上缺失的服务;不更新现有服务。这是为了防止破坏目标服务器上的服务定义。
通知
插入:添加服务器上缺少的主题、订阅者和发布者;已存在的不更新。
更新:添加服务器上缺少的主题、订阅者和发布者;对已有的进行更新。在目标服务器上已经存在的主题注册和从源服务器接收的主题注册之间执行联合。
安全
插入:添加服务器上缺失的用户、角色和令牌;已存在的不更新。在目标服务器上已经存在的权限和从源服务器接收到的权限之间执行联合。
更新:添加服务器上缺失的用户、角色和令牌;已存在的不更新。在目标系统上已经存在的用户角色注册和从源系统接收到的用户角色注册之间执行联合。源服务器和目标服务器上同时存在的角色的权限将被覆盖,仅在目标服务器上存在的角色的权限将保持不变。
调度
插入:添加服务器上缺少的任务;已存在的不更新。
更新:添加服务器上缺少的任务;对已有的进行更新。
资源
插入:添加丢失的文件或文件夹;已存在的不更新。
更新:添加丢失的文件或文件夹;对已有的进行更新。
最喜欢的
在这两个插入和更新模式下,如果相应的存储库项和用户存在,且存储库项还不是用户的收藏夹,则导入用户收藏夹。
限制
FME Server Configuration读取器对它可以处理的文件大小有限制。
平台 | 输出格式 | 文件大小限制 | 特性大小限制(文件+配置) |
---|---|---|---|
FME 32 |
FFS |
~ 1 GB |
~ 2 GB |
FME 32 |
FME服务器配置 |
~ 1 GB |
~ 2 GB |
FME 64 |
FFS |
~ 1.9 GB |
2 GB |
FME 64 |
FME服务器配置 |
~ 2 GB |
系统内存 |
Java虚拟机内存加载
这种格式的性能取决于分配给Java虚拟机(JVM)的内存量。下面的环境变量允许你指定Java插件可用的内存:
- FME_JVM_MIN_HEAP_SIZE:初始化JVM时的初始堆大小。默认值为1024K。
- FME_JVM_MAX_HEAP_SIZE:初始化JVM时的最大堆大小。默认值为16384K。
如果未设置,JVM将应用默认值。如果设置,值必须是1024K的倍数(例如4M和64M,或4096K和32768K)。
注意:要将FME使用的其他参数传递给Java虚拟机,请使用JAVA_TOOL_OPTIONS环境变量。
过滤
阅读器不允许细粒度选择低于类别级别的配置项,但可以使用FME变压器对特征进行过滤。为此,理解从FME Server读取的配置项有两种依赖关系是很重要的。
首先,配置项被组织在树状结构下,每个节点都隐含地依赖于它的父节点(例如,工作区依赖于包含它的存储库)。
其次,一个项可以依赖于其他项(例如,一个工作空间服务注册依赖于它所引用的服务,但它是工作空间的子服务)。在执行筛选时,依赖于筛选项的项也应该被筛选掉。这可以通过使用fmeconfig_uri(即父母的依赖)和fmeconfig_dependencies {} .uri(例如,项目依赖)属性。
注意:使用FME服务器配置读取器或写入器需要您有一台正在运行的FME服务器,您的机器可以通过网络访问该服务器。此外,读取器和写入器依赖FME Server REST Service来访问FME Server配置,因此要求您能够访问该服务。最后,因为读取器和写入器可以访问和修改并非每个FME Server用户(包括FME Server安全配置)都可以访问的数据,所以提供给读取器和写入器的凭据必须是FME Server用户的fmesuperuser的角色。
读者概述
FME认为FME服务器配置数据集是FME服务器的一个实例。
基本的读取过程包括打开到FME Server的连接、查询支持的配置类别和读取数据。
读取数据的方法是向服务器请求一个完整的配置包,并解析返回的结果并将其格式化为特性。
作家概述
FME认为FME服务器配置数据集是FME服务器的一个实例。
基本的写入过程包括打开与FME服务器的连接,接收并组装所有特征到配置包中,然后将数据发送到服务器。
根据发送的数据类型、写入器模式和服务器配置的初始状态,配置组件将被添加到服务器配置中,或者更新现有组件。
扇出
FME服务器配置写入器不支持数据集扇形输出或特性类型扇形输出。