【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

从“望车兴叹”到实时公交查询,是什么支撑起北京日均 800 万人次的公交系统?

  • 2021-02-03
  • 本文字数:3791 字

    阅读完需:约 12 分钟

从“望车兴叹”到实时公交查询,是什么支撑起北京日均800万人次的公交系统?
00:00 / 00:00
    1.0x
    • 2.0x
    • 1.5x
    • 1.25x
    • 1.0x
    • 0.75x
    • 0.5x
    网页全屏
    全屏
    00:00

    《超级探访·春节特辑》之“启迪公交”篇(上)

    00:00 / 00:00
      1.0x
      • 2.0x
      • 1.5x
      • 1.25x
      • 1.0x
      • 0.75x
      • 0.5x
      网页全屏
      全屏
      00:00

      《超级探访·春节特辑》之“启迪公交”篇(下)


      说起公共交通,在地铁还没有发达的时候,北漂的人们或多或少都经历过“公交车囧事”。有人因为公交卡没钱只能无奈下车;有人顶着严寒酷暑在公交车站“望车兴叹”——公交车一趟又一趟,就是没有自己要搭的那一路;还有人好不容易等到了车,结果发现公交车挤成了“沙丁鱼罐头”,使出浑身解数也挤不上去,只能继续原地等待下一辆或者选乘其他交通工具。

       

      近些年随着云计算、大数据、物联网等新兴技术的高速发展,这些影响着人们出行的问题也得到了极大改善。如果公交卡忘记充钱,可以使用公交车软件扫码先乘车后付款;在出门前,就可以通过手机 APP 实时了解公交车到站的具体时间和车辆拥挤程度,减少因等车浪费的时间;此前疫情横行的严峻形势下,为避免交叉感染,公交车严格控制乘车人数,人们还可以通过手机 APP 提前预定车次,既保证了有需求的人出行,也加强了防疫力度。

       

      潜移默化间新兴技术究竟是如何改变了公共交通?这款帮助大家便利出行的手机 APP 又是“何方神圣”?它又是凭借哪些技术手段,帮助人们实现实时车辆动态查询等出行需求的?带着这些问题,我们来到了这款手机 APP 诞生的地方——启迪公交,探寻以上问题的答案。

      数据高楼难建“地基”,启迪公交实行技术突围

       

      众所周知,北京有着国内规模最大、车辆最多、计费方式最复杂的城市公交系统。而作为这个公交巨无霸系统的运营者,北京公交集团也是业内公认的“全球最大公交集团”,其拥有两万多辆公共电汽车,1000 多条运营线路,日均客运量超过了 800 万人次。隶属于北京公交集团的启迪公交就是这个巨无霸背后的科技“智囊团”。

       

      “支撑北京公交庞大的系统运转,需要一个强大、高效、高性能、稳定性极强的系统支撑。2018 年,启迪公交成立之初,便决定搭建包括‘北京公交 App’在内的一整套数字公交软硬件系统,帮助北京公交近 2.5 万台公共汽车互联上云。 ”启迪公交产品研发总监周国礼面对镜头讲道。

       

      但事实上,这并不是一个一蹴而就的事情。庞大的高并发数据量增加了研发的难度,巨无霸公交系统需要支撑北京市 2 万多辆公交车、早晚高峰出行 1500 笔/秒刷卡并发访问,且随着北京市日均 800 万人次的公交出行乘坐量,每日产生的上下车刷卡数据就能高达 1600 万笔,预计未来两年将会产生百亿级的数据存储和访问需求,这种数据高楼构建高可靠性系统架构地基的难度可想而知。

       

      传统的 IT 架构显然很难支撑,它既缺少可靠的数据传输机制,同时也缺少有效的对硬件设备安全管控的机制,以及对设备远程监控和管理的能力,难以应对早晚高峰高达每秒上千的并发量级,无法解决传统公交管理上实时监控、实时调度、基于数据进行支撑决策的难题。

       

      新的市场需求催生着更为强大的技术手段的出现,启迪公交需要一个强大的技术伙伴合力开展研究。

       

      经过慎重抉择,最终启迪公交从市场上诸多数据库产品中选用了阿里云 PolarDB-X 分布式数据库,构建云上全部业务系统。据周国礼介绍,他们做出这一选择的主要原因是 PolarDB-X 技术经历过多年阿里巴巴双十一考验,能够有效地满足业务超高并发以及海量数据存储的需求,还可通过选用多可用区部署满足同城容灾诉求,以及使用在线变配能力解决业务高峰时段的弹性诉求。

       

      基于以上诉求,双方快速达成了合作。

      搭载 PolarDB-X 云原生分布式技术,启迪公交实现全业务系统上云

       

      在乘客看不到的角落,新系统的开发上线总是会面临着诸多困难,例如如何才能在不影响居民正常出行的情况下快速完成数万台刷卡机的替换。“2018 年的时候,启迪公交面临在不影响道路公交运营的情况下,为全市 2 万多辆公交车替换 6 万+机具的难题。”启迪公交研发总监王前说到。

       

      以当时的情况来看,这似乎是一个“伪命题”,就在众人一筹莫展之际,阿里云云原生分布式数据库成为攻克难题的关键钥匙。

       

      “如果采用在场站等候的方式,至少需要几个月的时间才能完成全部机具的更换,而基于 PolarDB-X 云原生分布式的快速部署能力,我们迅速开发和上线了机具辅助安装系统,通过安装人员 GPS 数据与车辆 GPS 相结合,实现了人找车快速部署机具,更换新机具的效率大幅提高,短短 1 个半月的时间,就完成原本要 1 年时间才能完成的机具更换工作。”

       

      除此之外,PolarDB-X 云原生分布式技术也成功支撑住了北京公交系统庞大的数据高楼,不仅保障了北京日均 800 万人次乘车,也支持了 6 万多台车载刷卡机的设备连接和管理,同时更顶住了大型节假日、重大赛事下公交出行客流峰值对底层核心系统带来的严峻挑战。

       

      “基于阿里云原生分布式数据库 PolarDB-X 产品,我们构建了包括支持扫码、刷卡、第三方支付、票务管理的核心业务系统,在帮助公交系统实时掌握道路运行情况的同时,也帮助乘客更便捷进行线路查询。 ”携手阿里云,启迪公交为北京市民交出了一份满意的答卷。

       

      当被问及数据化给企业带来的直观感受时,王前以票务管理工作台为例进行了说明。

       

      作为公交内部的核心业务系统,票务管理工作台不仅需要承担与票务相关的业务,还要能够通过累计的业务数据进行分析,实现科学合理的指挥公交的核心业务,在支持城市公交正常运作上有着举足轻重的作用。

       

      “以往公交集团获悉路上具体有多少辆公交汽车在运行,也没有办法知道这些公交车的一个状态,没有办法快速调度车辆。当我们采用了 PolarDB-X 构建票务管理工作台后,通过用户检录数据就可以实时同步到阿里云原生数据仓库 AnalyticDB,继而分析出实时客流,结合公交汽车机具上传的扫码信息进行实时统一分析,支持指挥车辆调度,助力场站调度人员更加快速地进行业务策略调整,实现更加合理的调度排班方案。”

       

      比如说在重大节假日时,以往公交系统排班和运力调配往往是根据经验来进行操作,在某些地点突发客流激增时会出现运力不足、道路拥堵的情况,搭载了 PolarDB-X 的公交系统可以实时了解客流分布情况、运力情况,以便及时对客流激增地区补排车辆。

       

      基于云原生分布式数据库 PolarDB-X 方案构建云上业务系统


      当下,启迪公交已逐步将各个业务系统部署到了阿里云平台上,包括北京公交 App 的后端业务服务处理,刷码刷卡检录数据的采集和上传、合单、支付结算、清算、票务等等。阿里云平台统一提供云资源的分配、调度和支撑,包括系统的性能调优、梳理业务和技术架构、优化软件代码、协调内外部资源进行统一的研发、测试等一系列工作。除此之外,系统的整体安全性也由阿里云来支持配合。

      TPS 数高达 1.4 亿?云原生分布式数据库 PolarDB-X 的技术特性

       

      作为承载了北京公交最为核心和基础部分的数据库,云原生分布式数据库 PolarDB-X 方案到底有哪些优势和特点?



      从三种当前常见的数据库架构中便可窥一二,如上图所示,从左至右依次是单机数据库、共享存储数据库和分布式数据库。

       

      单机数据库的计算资源和存储资源易受到单个节点的容量限制。共享存储数据库将开源数据库(如 MySQL)的底层存储替换成共享的分布式存储,容量的可扩展性得到了显著提升,可以做到完全兼容开源数据库,但由于其上层组件保留了单机数据库结构,仍然受到单个节点的性能限制。而以 PolarDB-X 为代表的云原生分布式数据库架构,所有节点之间互相不共享资源,节点间通过网络进行通讯,无论是存储还是计算资源,只要添加机器就可以了,具有良好的可扩展性。由此可见,作为一种分布式数据库架构,PolarDB-X 的优势从一诞生便非常显著。

       

      此外,PolarDB-X 一直在朝着一个伟大愿景发力,即把各种架构的优势结合到一起,包括 Sharding on MySQL 的简单轻量,NewSQL 的高扩容,Cloud Native DB 存储容量的弹性扩展。其具有 6 个显著特点:

       

      • 高可用。基于 Paxos 协议,数据强一致;少数派节点故障下数据不丢、不停服;RPO=0 RTO<30s。

      • 高兼容。MySQL 兼容,支持全局事务,二级索引;主流国产操作系统和芯片互认证;全局 binlog 日志,兼容数据库上下游生态。

      • 高扩展。水平扩展,按需在线扩缩容,不停服;PB 级海量存储能力,单实例突破 256 节点(真实业务);千万级并发,可抵御双 11 流量峰值。

      • HTAP。智能读写分离,保障 TP 流量的稳定性;MPP 并行查询,基于只读副本保障查询隔离;基于全局 TSO 时间戳,保证多副本的一致性读写。

      • 极致弹性。存储资源池化,自动按需伸缩,按需付费;扩容不迁移数据,突发流量支持快速升配。

      • 开放生态。拥抱 MySQL 开源社区,代码自主可控;闭环生态工具支持,DTS/DBS/DMS;产品架构简单开放,社会人才密度高。

       

      作为阿里云自主研发的云原生分布式数据库,PolarDB-X 可谓是身经百战。其采用分布式 SQL 引擎与存储引擎,专注解决海量数据存储、超高并发吞吐,历经各届天猫双十一及阿里云各行业客户业务的考验,在 2020 年双十一期间更是支撑了 58.3 万笔/秒创建订单的峰值,数据库处理 TPS 数高达 1.4 亿。

       

      基于以上分析,PolarDB-X 能够承载住北京公交系统如此庞大且繁杂的数据压力,也就并不足为奇了。

       

      在和启迪公交的合作中,PolarDB-X 将上述的 6 大特色运用到了极致,其以云原生一体化架构设计底层,采用多副本的高可用架构最大限度保证系统的可靠性,为北京公交 APP 端提供稳定的用户体验,同时也为公交票务管理实时大数据分析运行提供着重要的数据支撑。 

       

      “公共交通出行关乎整个城市的核心基础保障,阿里云原生分布式数据库 PolarDB-X 方案极大地提升了公交运营效率和服务水平,助力启迪公交打造北京公交智能化业务系统,为首都人民提供了更加绿色和便利的公交出行服务。新基建时代下,未来希望我们能够更加紧密地结合,助力城市公交系统的智能化发展百尺竿头更进一步。”

      2021-02-03 15:463594

      评论

      发布
      暂无评论
      发现更多内容

      精选案例|首创证券 NoETL 敏捷数据分析创新实践

      Aloudata

      数仓 ETL

      知识图谱之图数据库如何选型:知识图谱存储与图数据库总结、主流图数据库对比(JanusGraph、HugeGraph、Neo4j、Dgraph、NebulaGraph、Tugrapg)

      汀丶人工智能

      图数据库 知识图谱

      喜报|「云原生数据库PolarDB」、「阿里云瑶池一站式数据管理平台」揽获“2023技术卓越奖”

      阿里云瑶池数据库

      数据库 云计算 阿里云 云原生

      比特币 ETF 费用战蔓延至欧洲

      TechubNews

      Easysearch:语义搜索、知识图和向量数据库概述

      极限实验室

      向量数据库 语义搜索 easysearch 知识图 知识概述

      区块链数据分析:揭示加密经济投资的真相与机会

      Footprint Analytics

      区块链 加密货币

      京东广告算法架构体系建设--在线模型系统分布式异构计算演变 | 京东零售广告技术团队

      京东科技开发者

      计算机领域的 out of the box 特性是什么?

      伤感汤姆布利柏

      为什么美国CN2服务器是海外业务的首选?租用攻略详解

      一只扑棱蛾子

      美国服务器 CN2服务器

      微前端框架MicroApp 1.0正式发布

      京东零售技术

      开源 前端 微前端 提效

      软件测试学习笔记丨Linux命令 wc统计

      测试人

      软件测试

      软件测试|从零到一:我的测试开发工程师之路

      霍格沃兹测试开发学社

      程序启停分析与进程常用API的使用

      EquatorCoco

      redis API 项目开发 程序运行

      每日一道Java面试题:方法重载与方法重写,这把指定让你明明白白!

      EquatorCoco

      Java 程序员 面试 开发

      以赛促教以赛促学:和鲸赋能暨大经管落实赛训一体,培养应用型数据人才!

      ModelWhale

      人工智能 大数据 高等教育 暨南大学 以赛促教

      论如何在多模态大模型下实现“找片儿”的艺术

      不在线第一只蜗牛

      人工智能 视频 大模型

      三个方面浅析数据对大语言模型的影响

      快乐非自愿限量之名

      AI 数据 大语言模型

      华为云DTSE携手“灵康宜”构造一站式智慧健康检测云平台

      华为云开发者联盟

      云计算 后端 华为云 华为云开发者联盟 华为云DTSE

      湖仓新范式的造浪者 | StarRocks 2023 年度总结(文末福利)

      StarRocks

      数据库 StarRocks #数据分析

      纯血鸿蒙来了,企业开发者应该关注什么

      不在线第一只蜗牛

      华为 架构 企业开发 鸿蒙系统

      10 个值得分享给你前端低代码项目

      互联网工科生

      低代码

      听GPT 讲Rust源代码--compiler(32)

      fliter

      Python文件写入不稳定的处理方法

      麦兜

      人太多,挤不进去?教你搭建一个自己的幻兽帕鲁服务器

      华为云开发者联盟

      云计算 后端 华为云 华为云开发者联盟 服务器搭建

      DDD技术方案落地实践

      京东零售技术

      后端 DDD 系统架构 开发 提效

      测试管理| 从零到一:我的测试开发工程师之路

      测吧(北京)科技有限公司

      测试

      云手机哪一款好用?

      Ogcloud

      云手机 海外云手机 云手机海外版 国外云手机

      软件测试学习笔记丨Selenium常见控件定位方法(八大定位方式)

      测试人

      软件测试

      DAPP二二复制矩阵公排合约系统开发丨源码详情

      l8l259l3365

      分钟级实时数据分析的背后——实时湖仓产品解决方案

      袋鼠云数栈

      大数据 湖仓一体 实时湖仓

      精通 VS 调试技巧,学习与工作效率翻倍!

      快乐非自愿限量之名

      工作效率 企业开发 数字转型

      从“望车兴叹”到实时公交查询,是什么支撑起北京日均800万人次的公交系统?_数据库_马红伟_InfoQ精选文章