文档章节

老司机带你用MaxCompute和表格存储玩转车联网数据

大大梁
 大大梁
发布于 2017/06/02 14:36
字数 958
阅读 9
收藏 0

阅读全文

“自动驾驶汽车”在近两年频频出现于各大科技新闻头条,自2012年谷歌获得美国首个自动驾驶汽车许可证以来,国外各大知名汽车厂商如奔驰、沃尔沃、大众、通用、丰田、日产、特斯拉等也纷纷宣布自己的自动驾驶汽车验证开发计划。自动驾驶依托于人工智能技术的发展,而对于一个人工智能平台来说,重要的不光是算法和平台,更重要的是数据!今天我们暂且不聊自动驾驶,我们先聊聊最基础的车联网数据的存储与处理。

 

  初始方案

 

出于对两客一危监管的需要,车联网很早就开始起步,彼时大家的车联网方案都长这个样子:

 

1f8760e401bab1a6a76105eed086097ce17704fc

 

将车辆上传的数据进行编码解析,存储到对应的数据库中。由于车辆种类的不同,所上传的传感器数据也会有所区别。为了避免修改表结构对服务造成的影响,采用的是将传感器数据进行分类,分别存储到不同的数据库的方法,也就是图中的数据库层分为了轨迹库、温度库、油量库等。这样的好处是新增一批新类型的传感器时,不需要数据停库维护,不会影响在线应用,但是对数据采集解析程序需要升级更新,大大增加了维护的代价。

 

另外一方面,随着近几年私家车的爆发式增长,车联网也迎来了更多的机遇和挑战。百万在网车辆,几十万的在线车辆都让车联网系统时时刻刻在经受着挑战。

 

 

  存在问题

 

首先就是并发问题。SQLServer的单机并发是有限制的,我们只能在已经分库分表的基础上再对数据进行按时间或者车辆类型的二次分库分表,这大大增加了前后端系统开发和维护的复杂性。同时,为了应对早晚高峰高的不像话的在线率,我们又对像轨迹、油量等通用的基础数据做了数据库的主备读写分离,避免数据采集高峰影响其他的在线业务,这个时候,这个架构已经非常非常复杂了。

 

不仅仅是在线业务,由于多层次的分库分表,我们的报表分析程序中跨表跨库的Join查询让经验丰富的DBA也头疼痛不已。

 

而为了保持在这个行业的竞争力,降低成本是非常有效的一个法宝。我们采用的最直接的手段就是在夜深人静的时候小心翼翼的删除掉过期的数据。

 

  新的方案,刻不容缓!

 

 

我们开始寻找基于云计算的分布式数据解决方案,直到我们看到了下面的一张图。

 

f191ee80d1fa0c7b8f83e255b53a76e239e8a073

 

表格存储(OTS)是阿里云最近推出的一款自研分布式 NoSQL 数据库,其schema free的特性很适合属性列变化较为频繁的数据存储。车载设备更新和迭代的速度也在不断加快,车联网的业务模式也在不断在变化,表格存储这种弱结构的数据模式与当前车联网数据的需求非常契合。所有车辆的数据均可以存储在一张大表里,新的车载设备上线也不需要修改表结构了。

 

于是,我们将原来的方案替换成:

阅读全文

本文转载自:

大大梁
粉丝 0
博文 225
码字总数 0
作品 0
私信 提问
北京云栖大会 Tech Insight 爆场论坛-云数据·大计算:快速搭建互联网在线运营分析平台

阿里巴巴集团首席技术官王坚在《在线》一书中指出“大数据“的叫法应该叫‘在线数据’。‘在线’远比‘大’更能揭示本质。数据不在线,体量再大,价值也有限。数据在线,即数据实时更新、数据...

小二辛苑
2017/12/19
0
0
表格存储降价啦,来看看可以省多少钱!

作为一款完全自研的分布式NoSQL数据库服务,表格存储在性能、稳定性、功能等方便不断的迭代优化(性能白皮书了解一下),而单机性能的提高也意味着使用单价的降低,于是乎: 表格存储读写费用...

表格存储
2018/05/23
0
0
阿里巴巴大数据计算平台MaxCompute(原名ODPS)全套攻略(持续更新20171127)

概况介绍 大数据计算服务(MaxCompute,原名ODPS,产品地址:https://www.aliyun.com/product/odps)是一种快速、完全托管的TB/PB级数据仓库解决方案。MaxCompute向用户提供了完善的数据导入方...

隐林
2017/05/05
0
0
带你玩转Logview: MaxCompute Logview参数详解和问题排查

摘要:Logview是MaxCompute Job提交后查看和Debug任务的工具。通过Logview可看到一个Job的运行状态、运行结果以及运行细节和每个步骤的进度。当Job提交到MaxCompute后,会生成Logview的链接,...

阿里云云栖社区
2018/09/07
0
0
所见不凡,带你探秘独角兽背后的大数据力量 | MaxCompute杭州Meetup报名中

阿里云MaxCompute X 众安保险 X 亲宝宝 X 中金易云 X 蚂蚁金服 邀您共赴杭州大数据计算线下Meetup 现在报名>> 双11的热度还未退却,大数据力量强势来袭。 是什么拖住了大数据开发者的后腿?集...

晋恒
2018/11/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 早上儿子问我他是怎么来的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @凉小生 :#今日歌曲推荐# 少点戾气,愿你和这个世界温柔以待。中岛美嘉的单曲《僕が死のうと思ったのは (曾经我也想过一了百了)》 《僕が死の...

小小编辑
今天
1K
12
Excption与Error包结构,OOM 你遇到过哪些情况,SOF 你遇到过哪些情况

Throwable 是 Java 中所有错误与异常的超类,Throwable 包含两个子类,Error 与 Exception 。用于指示发生了异常情况。 Java 抛出的 Throwable 可以分成三种类型。 被检查异常(checked Exc...

Garphy
今天
16
0
计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
昨天
6
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
昨天
7
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部