使用FME进行地理编码转换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用FME进行地理编码转换相关的知识,希望对你有一定的参考价值。
参考技术A 此次数据为上海杨浦区各街道社区受理服务中心地址信息。地图API接口可以任意选择,这里使用百度地图API接口。
将地址信息映射为地理坐标的过程称之为地理编码。
使用FME进行地理编码操作过程比较简单,首先构建访问的url,然后对返回的信息进行解析操作,对属性进行整理后输出即可。下面是FME操作的整体流程图:
需要注意的是,有时候excel中会有一行表头用于标注一些信息,例如下面这样:
这时,直接读取也会把第一行读进来,但是这不是我们需要的,可以通过点击 读模块 对话框中的 参数 按钮,在弹出的对话框中的 sheet to read 栏中的 Field Names Row(字段名称行) 中设置为2,也就是将第一行跳过。
该转换器用于构建请求的URL。
在 HTTPCaller Parameters 对话框中设置请求的url以及方法,并根据API文档设置相应参数,返回后的信息会储存在 _response_body 中。
该转换器用于从格式化文本中提取要素属性,此处为JSON格式。
在 JSONExtractor Parameters 对话框中设置要解析的文档以及提取查询语句。
该转换器用于对属性值进行整理。
在 AttributeManager Parameters 对话框中的属性动作栏中选择要删除的属性值。
将得到的数据保存为新的excel文件,运行得到结果。
需要注意的是,百度地图API返回的坐标值默认为bd09ll(百度经纬度坐标)。
将地理坐标转换为地址信息的过程称之为逆地理编码。
使用FME进行逆地理编码操作过程与地理编码类似,这里就不做详细介绍。下面是FME操作的整体流程图:
在构建url时需要注意的是,百度地图API逆地理编码要求输入的是一对坐标值(lat<纬度>,lng<经度>),并且要求纬度在前,经度在后。
所以此处设置参数的时候需要使用 文本编辑器 。
如何使用 FME 处理 Kafka JDBC Sink 连接器
【中文标题】如何使用 FME 处理 Kafka JDBC Sink 连接器【英文标题】:How to deal with Kafka JDBC Sink Connector with FME 【发布时间】:2021-05-05 23:56:16 【问题描述】:我已经设置了 Kafka JDBC Sink 连接器,它将使用来自 kafka 生产者 api 的数据,但是我想设置 FME 来处理数据端并将其接收到它将与 GIS 交互的数据库(地理信息系统),它将流式传输空间数据。我对 FME 了解不多,所以有任何信息/文档吗,或者有人知道并可以解释如何使用 Kafka JDBC Sink 连接器设置 FME 谢谢
【问题讨论】:
您能否编辑您的问题以建议您如何看待 FME 与 Kafka Connect 的合作?你想做什么? @RobinMoffatt 我在这里不熟悉 FME,但我相信我正在尝试检索从 FME 端到接收器连接器的数据并使用它 我需要接收器连接器中的哪些配置来支持它 【参考方案1】:FME 连接器似乎是生产者/消费者,与 Kafka Connect API 没有关联。 https://docs.safe.com/fme/2019.1/html/FME_Desktop_Documentation/FME_Transformers/Transformers/kafkaconnector.htm
您也不会“使用 JDBC 连接器进行设置”。接收器写入数据库,因此 FME 需要从那里读取,或者完全绕过 Kafka Connect,并使用 FME 支持的 Kafka 消费者进程
【讨论】:
以上是关于使用FME进行地理编码转换的主要内容,如果未能解决你的问题,请参考以下文章
如何使用谷歌地图 api 将邮政编码转换为地理位置(纬度和经度)?
地理编码地址到经纬度转换(APP FORCE CLOSES)