加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Uber永世定位体系及时数据说明进程实践!

发布时间:2018-08-26 04:47:32 所属栏目:教程 来源:赵钰莹
导读:按照Gartner所言,到2020年,每个伶俐都市将行使约13.9亿辆联网汽车,这些汽车配备物联网传感器和其他装备。都市中的车辆定位和举动模式说明将有助于优化流量,更好的筹划决定和举办更智能的告白投放。譬喻,对GPS汽车数据说明可以应承都市基于及时交通讯

在下面的代码中,我们行使parseUber函数注册一个用户自界说函数(UDF)来反序列化动静值字符串。我们在带有df1列值的String Cast的select表达式中行使UDF,该值返回Uber工具的DataFrame。

Uber永世定位体系及时数据说明进程实践!
行使集群中心ID和位置富厚的Uber工具数据集

VectorAssembler用于转换并返回一个新的DataFrame,个中包括向量列中的纬度和经度要素列。

Uber永世定位体系及时数据说明进程实践!
Uber永世定位体系及时数据说明进程实践!

k-means模子用于通过模子转换要领从特性中获取聚类,该要领返回具有聚类ID(标志为猜测)的DataFrame。天生的数据集与先前建设的集群中心数据集(ccdf)毗连,以建设UberC工具的数据集,个中包括与集群中心ID和位置相团结的行程信息。

Uber永世定位体系及时数据说明进程实践!
Uber永世定位体系及时数据说明进程实践!

最后的数据集转换是将独一ID添加到工具以存储在MapR-DB JSON中。createUberwId函数建设一个独一的ID,包括集群ID和反向时刻戳。因为MapR-DB按id对行举办分区和排序,因此行将按簇的ID新旧时刻举办排序。 此函数与map一路行使以建设UberwId工具的数据集。

Uber永世定位体系及时数据说明进程实践!
写入内存吸取器

接下来,为了举办调试,我们可以开始吸取数据并将数据作为内存表存储在内存中,然后举办查询。

Uber永世定位体系及时数据说明进程实践!

以下是来自 %sqlselect * from uber limit 10 的示例输出:

Uber永世定位体系及时数据说明进程实践!

此刻我们可以查询流数据,扣问哪段时刻和集群内的搭乘次数最多?(输出表现在Zeppelin notebook中)

  1. %sql 

SELECT hour(uber.dt) as hr,cid, count(cid) as ct FROM uber group By hour(uber.dt), cid

Uber永世定位体系及时数据说明进程实践!

Spark Streaming写入MapR-DB

Uber永世定位体系及时数据说明进程实践!

用于Apache Spark的MapR-DB毗连器行使户可以将MapR-DB用作Spark布局化流或Spark Streaming的吸取器。

Uber永世定位体系及时数据说明进程实践!

当你处理赏罚大量流数据时,个中一个挑衅是存储位置。对付此应用措施,可以选择MapR-DB JSON(一种高机能NoSQL数据库),由于它具有JSON的可伸缩性和机动易用性。

JSON模式的机动性

MapR-DB支持JSON文档作为本机数据存储。MapR-DB行使JSON文档轻松存储,查询和构建应用措施。Spark毗连器可以轻松地在JSON数据和MapR-DB之间构建及时或批处理赏罚管道,并在管道中操作Spark。

Uber永世定位体系及时数据说明进程实践!

行使MapR-DB,表按集群的键范畴自动分区,提供可扩展行和快速读写手段。在此用例中,行键_id由集群ID和反向时刻戳构成,因此表将自动分区,并按最新的集群ID举办排序。

Uber永世定位体系及时数据说明进程实践!

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读