西班牙
斯潘4
谷歌于2018年12月11日宣布, Google融合表和融合表API 将于2019年12月3日关闭。服务关闭后,将从FME中删除Fusion Tables支持。有关使用FME从Google Fusion表中迁移数据的方法,请参阅博客文章 7+谷歌融合表替代方案.
请注意,本文不会更新。要在Google Fusion表不再工作后使用这些工作区,请将readers/writer更改为Google Sheets或类似的产品。
注意:本教程要求谷歌帐户和Microsoft Excel。
使用标准目录监视配置,FME服务器将在每次修改监视的文件(或文件夹)时触发通知。这会在服务器上造成处理过载。本教程介绍了一种使用空闲时间延迟优化处理这些迁移的方法。
在下面的示例中,excel电子表格存储在关注的文件夹中。当电子表格被修改时,FME服务器和内容(即。文件名,时间戳)存储在数据库表中。该表由按计划运行的工作区进行检查,当每个修改的文件经过所需的时间时,数据将自动备份到云中的Google Fusion表中。
directory-watch-idle-delay.zip目录
导航到安装了FME服务器的计算机上的文件系统,或者导航到您自己的计算机,前提是FME服务器位于同一网络上。创建一个名为“Resource”的新文件夹,并将Project_Inventory.xlsx文件从附加的下载文件复制到新文件夹中。在资源文件夹中的任意位置单击鼠标右键,然后单击“属性”。在“共享”选项卡中,单击“高级共享”,然后启用“共享此文件夹”,确保将权限设置为“写入”,然后单击“确定”。复制UNC网络路径(例如。\\KC-LS-WINDOWS\Resource),我们将在下一步中需要它并关闭属性窗口。此外,根据您在计算机中的共享设置,您可能需要单击共享。。。单击“资源属性”对话框上的按钮,然后单击“共享”。
创建包含Project Inventory.xlsx的共享文件夹,确保权限设置为full
登录FME服务器,在侧菜单栏的“通知”下,选择“出版物”。单击“新建”,将出版物命名为“同步工具”,并添加要发布到名为“同步工具”的新主题。选择目录监视协议,对于要监视的目录,选择“指定位置”,然后粘贴上一步中复制的UNC网络路径。监视修改操作(删除、创建和删除)。最后,将轮询间隔设置为1分钟,您可以将其保留为默认值,但为了测试目的,较低的间隔将更快地调试。单击OK创建发布。
在FME服务器中创建名为sync_tool的新目录监视发布,将其设置为监视资源目录。
打开项目库存到地图.fmw(工作区#1)FME工作台。该工作区将Excel数据写入存储在云中的谷歌融合表。有关谷歌融合表的更多信息,请参阅用户文档.
在Navigator窗格的User Parameters中,在Published Parameters下,双击[SourceDataset_XLSXR],将路径设置为“\\YourUNCPath\Resource\Project Inventory”。请务必把报价包括在内。
双击SQLExecutor来修改参数。我们将需要登录到我们的个人谷歌帐户和授权FME。为此,在SQLExecutor的谷歌融合表空间参数对话框中选择参数,单击(…)。在OAuth身份验证窗口中,使用您自己的谷歌帐户凭据登录以管理融合表,然后单击Allow。您现在在谷歌融合表空间参数对话框中有了一个刷新令牌,复制这个令牌以避免在以后的步骤中重新验证。单击OK退出SQLExecuter参数
双击[GoogleToken]用户参数,粘贴融合表刷新令牌到你自己的账户。
project_inventory_to_map.fmw(workspace#1)工作流亚搏在线
发布到FME服务器,创建一个名为Project_Inventory的新存储库,然后向作业提交者服务注册。(注意:勾选了上传数据文件,这样Excel文件就不会上传到服务器)
在FME工作台上打开项目库存状态.fmw(工作区#2),当目录监视协议发送修改触发器时,此工作区将运行。来自通知消息的详细信息(即文件名、时间戳)存储在数据库中,在本例中为谷歌融合表。
这个工作空间使用一个名为GoogleToken的用户参数来设置,以加快SQLExecutor中的身份验证过程。单击GoogleToken发布参数并粘贴您的刷新令牌。
在Project_Inventory存储库中发布工作区FME服务器,并使用通知服务注册工作区。单击Edit并选择sync_tool订阅主题。(注意:您可能会收到一条警告消息—此工作区使用自定义格式,需要提供给FME服务器—单击yes接受。)
项目库存状态fmw(工作区2)工作流亚搏在线
为了让工作区在FME服务器上运行自定义转换器,我们需要上传自定义转换器。在FME服务器中,转到Resources并导航到Engine文件夹中的Formats文件夹。单击Upload并浏览到DIRECTORY_WATCH_READER。fds, which is located in the folder that was downloaded at the beginning of this tutorial.
将目录_WATCH_READER.fds上载到FME服务器中的Formats文件夹
回到FME工作台打开项目库存同步.fmw(工作区#3),此工作区用于检查数据库(谷歌融合表)中是否有修改后的文件,并在必要时将其发送给处理。
在用户参数中,双击[GoogleToken]并粘贴您的刷新令牌。在FMEServerJobSubmitter中连接到您的FME服务器。然后选择Project_Inventory存储库并选择project_inventory_to_map。fmw workspace, click the refresh icon in the lower left hand corner, to bring in the parameters from project_inventory_to_map.fmw.这将使项目库存到地图.fmw(工作区#1)运行一次项目库存同步.fmw(工作区#3)运行。
发布到同一存储库中的FME服务器,并向作业提交者注册。
project_inventory_sync.fmw(工作区#3)工作流亚搏在线
在FME工作台上打开数据库加载程序.fmw(工作区#4),此工作区在您的谷歌Fusion数据库中创建两个表。
在User Parameters下的Navigator窗格中,双击[SourceDataset_XLSXR],浏览到共享资源文件夹,并添加项目目录.xlsx文件
接下来,双击[SourceDataset_CSV]并浏览到文件下载附带的名为project_inventory_file_status.csv的CSV文件。
然后像以前一样更新[GoogleToken],然后运行工作区。在运行您的翻译之后,检查您的谷歌驱动器帐户以确保工作空间正确运行,您应该看到两个文件,Project Inventory和project_inventory_file_status。
数据库加载程序.fmw(工作区4)工作流。亚搏在线创建两个Google Fusion表
最后一步是设置一个时间表来检查我们的跟踪数据库。可以设置为每隔几分钟运行一次。这个时间表将运行项目库存同步.fmw(工作区#3),它检查跟踪数据库的最后修改时间。如果它大于工作区内设置的空闲时间,则迁移数据。
在FME服务器中,转到schedule页面并单击New以创建一个名为project_inventory_sync的新日程,并创建一个名为Project_Inventory的新类别。立即检查运行,然后将其设置为每2分钟重复一次,或者您希望它重复多少次都可以。
然后将存储库设置为Project_Inventory并选择项目库存同步.fmw(工作区#3)然后单击OK设置时间表。将显示已发布的参数部分,您可以调整等待的秒数(如果愿意),这是更新Excel文件并处于空闲状态后所需的等待时间。一旦满足此条件,数据将同步到Google fusion表。另外,请确保刷新令牌是正确的。单击“确定”开始计划。
在FME服务器中,单击通知,然后单击主题监视选项卡。对于要监视的主题,请添加同步工具。这将在每次修改文件时发送通知。确保此页保持打开状态,以便继续主题监视。
在这一点上,所有必要的步骤都准备就绪,以便为您的电子表格数据建立一个优化的备份系统。要对此进行测试,请尝试以下步骤:
打开Google Drive并打开您创建的两个Fusion表文件Project Inventory和Project_Inventory_file_status。为此,右键单击该文件,然后使用>Google Fusion Tables打开。
在Excel中打开Excel文档(project_inventory.xlsx)并输入新行:
100007检修孔更换49.2755567-123.0576200
保存excel文件,确保将其保存到共享资源文件夹中,并且文件扩展名为.xlsx。这将触发目录监视协议以发布对同步工具主题的修改。如果您在新的FME服务器窗口中打开作业,project_inventory_status.fmw工作区将运行,然后根据您的计划,project_inventory_sync.fmw将运行,这取决于计划与您的更新的排列方式,您可能需要等待计划运行两次才能更新Google Fusion表。根据计划的设置方式和设置的“等待的秒数”参数,请等待五分钟,以便运行此进程。在分配的时间过后,刷新两个Google Fusion表以查看更新。
在Excel中修改Project Inventory.xlsx文件时FME服务器中的主题监视
使用空闲时间延迟对于在更新文档时保留文档备份非常有用。工作区只在检测到本地文档中某个时间段之后的更改时运行,这将释放有价值的服务器引擎,只在需要时运行工作区,而不是按计划运行。创建单独的状态表对于确保本地文件的更新是预期的也很有用,特别是当文件在多个用户之间共享时。
教程概述:目录监视|上一个:目录监视发布服务器|当前:具有空闲时间延迟的目录监视发布服务器(高级)
?2019安全亚搏在线软件公司|合法的