斯潘8
斯潘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服务器将数据从数据库实时推送到应用程序中。在本文中,我们将向您展示如何设置PostgreSQL和FME服务器来响应单个功能数据库的编辑。
注:创建此示例是为了演示FME服务器和PostgreSQL/PostGIS之间的不同交互可能性。本文包含几个必须为特定环境定制的代码段。
本教程通过FME桌面和FME服务器2017.0进行了测试。PostgreSQL 9.6,和Python 2.7。
在这个例子中,我们使用一个简单的Web界面,调用FME服务器在PostgreSQL数据库中上载数据和日志更新。用户从Web界面运行演示时的事件顺序如下:
此示例演示如何设置PostgreSQL触发器,该触发器可以使用HTTP请求调用FME服务器工作区。只有当不希望同时修改多行时,才应使用此方法;对于大量并发修改,大容量插入触发器将更合适。我们建议您仔细阅读这些脚本,以确保您已根据数据库环境对它们进行了完全的定制。
为了从PostgreSQL中的数据库函数发出HTTP请求,您需要在系统上安装python,并在PostgreSQL安装中启用pl/python。
在Windows环境中,
要在特定的数据库中安装pl/python,使用创建扩展名plpythonu,或者从shell命令行使用createlang plpythonu库名
您的环境可能有不同的要求。请看PostgreSQL文档有关pl/python和postgresql的更多信息。
包含的SQL脚本,Postgis_single.sql,执行以下步骤:
此脚本可以通过pgadmin或类似工具运行。请仔细检查,以确保系统正确配置了它。需要指定您的FME服务器URL,以及将要向其发布工作区的存储库。
本文包括两个工作区:postgis_single_loader.fmwt和Postgis_single_logger.fmw.第一个直接从示例网页调用——它将数据加载到数据库中。每次插入时都会触发数据库触发器,更新或删除,运行记录器工作区,它将对象ID和几何图形记录到Google Fusion表中。
打开postgis_single_loader.fmwt工作区。
编辑PostGIS编写器数据库参数以匹配您自己的数据库凭据。
将工作区发布到记录器存储库。确保将示例数据集与加载器工作区一起发布。
下一步,打开Postgis_single_logger.fmw工作区。
打开Google Fusion表编写器。
单击省略号(…)作为“刷新令牌”参数。
您将被要求登录您的gmail帐户,并允许FME管理您的Fusion表。单击“允许”以创建融合表OAuth刷新键。
使用Creator_2 Transformer运行工作区一次,以创建Google Fusion表。然后禁用Creator_2并启用Creator Transformer。
将工作区发布到记录器存储库。
最后,确保工作区可以匿名运行。这意味着fmeguest角色必须具有运行工作区的权限,并在Web应用程序中设置为默认用户。(这是默认配置)。确保fmeguest角色具有记录器存储库的读取和运行权限。
在附加的“web”目录中,index.html必须配置服务器URL和存储库。此外,您需要输入Google Fusion表的URL(要查看该表,登录提供的gmail帐户,该表应显示在“驱动器”选项卡下)。
在Web浏览器中打开index.html,并完成介绍的步骤。当你查看Google Fusion表时,您应该看到一个事务列表,以及相关的几何图形。
?2019安全亚搏在线软件公司|合法的