span8号
斯潘4
正如谷歌12月11日宣布的那样,2018年, Google Fusion Tables和Fusion Tables API 将于12月3日关闭,2019。一些用户可能在2019年8月开始看到错误。关闭服务后,融合表支持将从FME中删除。关于使用FME从Google Fusion表中迁移数据的方法,查看博客帖子 7+Google Fusion Tables备选方案.
FME服务器可以利用外部数据库触发器实时响应数据库事件。这允许您使用FME服务器将数据从数据库实时推送到应用程序中。在本文中,我们将向您展示如何设置Oracle和FME服务器以响应单个功能数据库的编辑。如果正在进行大量编辑,也可以将批量模式设置为通过一次调用推出大量数据,这在下面的文章中描述批量编辑Oracle:将数据从数据库实时推送到应用程序
注意:创建此示例是为了演示FME服务器和Oracle Spatial之间的不同交互可能性。本文包含几个必须为特定环境定制的代码段。
本教程通过FME桌面和FME服务器2017.0进行了测试。和Oracle 11g。
在这个例子中,我们使用一个简单的Web界面,它调用FME服务器来上传数据并在Oracle数据库中记录更新。用户从Web界面运行演示时的事件顺序如下:
此示例演示如何设置Oracle触发器,以便使用HTTP请求在FME服务器上调用工作区。只有当不希望同时修改多行时,才应使用此方法;对于大量并发修改,批量模式触发器示例将更合适。我们建议您仔细阅读这些脚本,以确保您已根据数据库环境对它们进行了完全的定制。
第一步是在Oracle数据库上配置utl_HTTP过程,并为将运行演示的Oracle用户分配适当的权限。这可以通过运行本文附带的zip文件中包含的configure utl http.sql文件来完成。该文件需要作为“sys”用户运行。此SQL在访问控制列表中创建一个条目,它允许数据库使用utl_HTTP连接到FME服务器,需要对脚本进行一些修改,如注释中所示,如下图所示。
我们需要在数据库中创建一个新表并为插入设置触发器,更新,并删除所有行。这可以通过运行create_table_and_triggers.sql来完成。需要对SQL脚本进行一些修改,如注释中所示,并显示在以下图像中。
此演示涉及两个工作区:甲骨文单装载机.fmwt和Oracle_single_logger.fmw,包含在上面附带的zip文件中。
打开模板甲骨文单装载机.fmwt.
将Oracle编写器数据库参数更改为Oracle数据库参数。
完成后,应将工作区发布到Oracle触发器中指定为JobSubmitter服务的FME服务器上,在名为“trigger”的新存储库中。
下一步,打开工作区Oracle_single_logger.fmw.
此工作区应进行编辑,以便Google Fusion表编写器具有有效的gmail用户名和密码。这样做,打开google fusion table writer的参数,单击refresh token参数旁边的省略号(..)。
系统将提示您登录您的Google帐户。单击“允许”让FME管理融合表。
此工作区还应作为“触发器”存储库中的作业提交者服务发布到FME服务器。
确保“fmeguest”角色对触发器存储库具有读取和运行权限。这可以通过以管理员用户身份登录到FME服务器并单击“管理员”下左侧边栏上的“安全性”来设置。单击角色,并选择fmeguest。在许可下,展开“存储库”部分,对于触发器存储库,选择“读取并运行”(如果尚未选择它们)。
运行Oracle_single_logger.fmw工作区从FME服务器或FME桌面创建一次Google Fusion表。
要查看表格,登录到指定的gmail帐户,该表应显示在“驱动器”选项卡下。用Google Fusion表打开表。为下一步记录表的URL。
将本文附带的zip文件中包含的“web”文件夹的全部内容复制到Web服务器。然后编辑index.html文件的内容,包括FME服务器的名称和Google Fusion表的URL。
完成后,在Web浏览器中打开index.html并运行其中一个选项。这应该修改Oracle数据库中的数据,从而触发要写入Google Fusion表的信息。您可以单击网页上的链接打开表并查看更改。
?2019安全亚搏在线软件公司|法律