西班牙
斯潘4
我试着按照《红地学》的建议把它分解。
现在运行工作区2。它将读取第一个gml文件的名称并将其发送到工作区1进行处理。它将被处理并添加到geodatabase中。然后工作区2将发送第二个数据集、第三个、第四个等的名称。
此外,WorkspaceRunner允许您同时运行多达7个进程。当写入相同的输出时,我会犹豫是否建议这样做,但是geodatabase应该是可以的(即如果一个进程在写入geodatabase时锁定了它,其他进程应该等待锁被释放,然后再写入)。
无论如何,使用一个目录,比如说,20个gml文件,尝试上面的方法。一旦你知道这是可行的,你就可以估计总共15000人需要多长时间。随着时间的推移,速度可能会减慢,但我想不会太快。
顺便问一下,您使用的是哪个fme版本和哪个geodatabase writer(arcobjects或api)?使用mark的计划(我认为这是一个成功的计划),您需要a)修改“worker”工作区(工作区1)以检查每个功能是否还没有写出。怎么用?好吧,我建议您作为第二个作者在工作台中创建一个sqlite数据库。该数据库将有一个单独的表,其中只包含您编写的功能的id(我假设mastermap有这些)。不知何故,您必须先将其设置为空,然后将writer设置为append。请确保此列也已编入索引,以便快速扫描它。然后在工作区的主要流程中,使用databasejoiner将每个mastermap特性连接到sqlite db——如果有匹配项,请不要将该特性写入geodb文件。如果不匹配,请将该功能写入geodb文件和ids的sqlite表。这是一个高层次的描述,但我希望它能让你去。您不必使用sqlite,但它似乎是一个很好的潜在选择。
哦,是的,并且b)确保你在workspace runner中一次只运行一个从工作区(同步运行),这样所看到的id的数据库保持健康并且能够被一致地查询-如果你有多个写入程序撞击到filegeodb中,那么你所写的内容的数据库将永远不正确。
我时不时地处理荷兰语top10nl gml集(90多个gml文件,总共解压了大约40ish-gb),只需将它们写入postgis数据库就需要大约2.5小时(我所做的唯一处理是删除一些属性,并将2个特征类型过滤为区域/行的单独表)
?2019安全亚搏在线软件公司|法律