故障诊断/常见问题

在尝试创建谷歌Fusion Tables Spatial工作区时,有时会出现问题。这几乎总是由于用户环境中的错误配置造成的。以下建议通常有助于发现和克服这些问题。

我的工作空间不再运行。为什么我不用登录呢?

这种格式的空间和非空间版本先前使用Google Fusion表SQL API使用Google帐户电子邮件和密码访问数据。但是,截至2013年1月,已弃用API,并且由于认证方案的变化,新API不兼容。

截至FME 2015年,reader和writer的两个版本都使用了使用OAuth 2.0认证的谷歌Fusion Tables v1.0。这意味着不再需要电子邮件地址和密码:要进行身份验证,您将需要通过命名连接范围。

要创建有效的命名连接:单击读取器或Writer参数对话框中刷新令牌字段旁边的“浏览”按钮。看看读者概述读者参数为更多的信息。

注意:您需要将阅读器或写入器重新添加到旧的工作区,以便它们能够正常运行。

为什么我的位置没有产生几何图形?

读者只会从内部创建几何地点类型字段。读取器当前处理的两种数据类型是:

  • 逗号/空间分离的经度/纬度对(例如,-123.1207375,49.2827291)
  • KML几何

如果我的位置列包含不同类型的数据,会发生什么?(例如,KML、lat/lon和地理编码地址)

读取器将从它支持的数据类型(KML和lat/lon对)中读取并创建几何图形,而忽略其他类型的数据。

我的表中的位置列包含不受支持的位置类型。我如何提取信息?

所有字段都将是Fusion表的特征类型的属性。用户可以使用FME的内置函数来转换这些数据。如果您的表没有任何受支持的位置类型,请考虑使用非空间版本。

为什么列名有时用整数附加?

谷歌融合表允许重复列名。在FME中,属性必须有唯一的名称。如果读取一个重复列,第一个列将保留原来的名称,而后面的所有重复列将附加一个从0开始的整数。

如何访问公共表?

在读取器参数框中,添加(空间分隔)表列表文本行中公开表的表ID。公共表的功能类型名称将是其表ID。为了写入,将Writer功能类型名称指定为Writer参数框中的表ID。

注意,由于容量的原因,API无法提供公共表列表,因此需要显式id。数字ID也不再支持,所以请使用加密的ID。当在谷歌融合表web界面中查看表时,可以从文件>关于菜单中获得显式id和加密id。

Google Fusion表(空间)和Google Fusion表(非空间)格式之间有什么区别?

非空间版本将只读取属性数据,由用户来转换数据。空间阅读器执行非空间版本所做的一切,但也将从位于单个位置列下的KML几何或纬度/经度对创建几何。对于在表中包含此类信息的某些用户来说,这可能很方便。

我收到错误无法创建到谷歌融合表服务器的连接。检查您的登录信息、表名和表id。这是FME的问题还是服务坏了?

如果在检查登录、表信息、网络连接后仍然出现这个错误,那么这可能是服务的问题。

我得到一个错误的几何列没有正确的坐标系统。我该如何解决这个问题?

谷歌Fusion Tables在LL84投影中以KML的形式写入几何,并要求输入特征具有有效的坐标系统(理想情况下是LL84)才能正确地写入或重新投影。使用诸如CoordinateSystemSetter之类的转换器可以通过识别已知输入特征的坐标系统来帮助解决这个问题。

我怎么写空白或未命名的列?

谷歌融合表写入器需要一个唯一的列名才能正确地写入。为现有表的列提供名称可以通过编辑>修改列下的谷歌融合表web界面执行。注意,目前不支持带空格的列名。

如何将单个几何列写入包含多个位置列的表?

谷歌Fusion Tables识别输入特征上存在多个几何图形或表中存在多个位置列,并尝试将几何名称与列名匹配以正确映射它们。如果没有名称,则不知道要写入哪一列。一种解决方案是使用GeometryPropertySetter变压器在单个输入几何图形上设置名称,该名称将与表中预期的目标列名匹配。

请注意,当在输入功能和表列上的单个几何中处理单个几何时,无论名称如何,都不会发生匹配和写入。