自动化联邦航空局系统广信息管理数据接收分析

下载滑动

系统广信息管理程序是一个全国家空间系统信息系统,支持下一代航空运输系统目标SWIM促进Negen数据分享需求,提供Negen数字数据分享主干SWIM云分配服务系联邦航空局云基服务,通过SolaceJMS通信向FAA认证客户提供FAASWIM公开内容将展示USGOT-BTS自动化所需基础设施、配置、摄取和分析下列公共SWIM数据集的工作

  • SWIM终端数据分发系统
  • 流量管理
  • 时基流管理

SWIM提供大量信息,通过适当的验证和分析,你可发现趣味洞见,如:

  • 航班数
  • 延迟航班数
  • 受延迟影响的乘客数

还可以扩展以分析和预测与航班、机场和客运行为有关的多重场景AzureDatabricks、Apache Kafka和Spark-XML等工具初始解决方案,但这是一个灵活环境,可扩展分析更多SWIM或类似流数据源,并因为我们使用基础设施作为代码配置管理工具,可部署和/或扩展任何地方

更多spark+AI会议

免费试数据键

视频轨迹

- 大家好,我叫Mehdi哈希姆普尔,我是美国交通部数据科学家

正在交通统计局牵头项目 准备搭建内部商业航空数据库系统BTS实现此目标的一项努力就是用微软Azure和Databricks证明概念实现FASWIM数据数据接收分析自动化

之后Marcelo和Sheila将分别讨论基础设施、架构和数据处理部分

目标与福利

建立商业航班数据库系统帮助BTS测量并报告航空系统性能其中一些潜在好处是能及时估计编程和实时性能,支持专业航空研究,为航空仪表板和其他统计产品提供数据源,并最后成为运输中断和灾难系统航空组件

系统广信息管理

大部分目标可以通过使用FAASWIM服务实现,作为商业飞行数据库系统的一个主要组件先理解SWIM服务SWIM表示全系统信息管理,即多数据服务组合,包括机场、航班、航空和天气数据

bob体育客户端下载SWIM数字数据传输平台将原国家航空航天系统或NAS数据转换成对航空利害相关方有意义的信息消费者可以通过源FAA电信系统连接单连接系统,并实时检索生产者提供的数据开发系统证明概念, 我们使用SWIM服务之一 即TFMS数据TFMS或交通流管理服务 也称空交通管理TFMS服务提供飞机状况显示数据并包括飞机调度、路由选择和定位信息终端数据分发系统SDS, 即SWIM服务转换机场塔和终端雷达控制设施收集的遗留终端数据为易取信息sdssSWIM用户访问二百多机场数据SWIM数据从近400个单系统流入SWIM中,并配有XML格式数据数据量通过开通SWIM流是巨大的, 举例说,一周TFMS数据课中, 我们收集了超过1500万XML消息, 带取空间兆字节摄取和处理这些消息具有挑战性,需要快速可靠的数据处理工作流程SWIM服务架构由多项服务与数据组成, 由各类制作者获取流水流, 从FAA自身到外部出版者数据主类包括天气、飞行和流转以及许多其他航空相关数据组件使用SWIM数据 更具体地说TFMS数据 帮助BTS解答问题 如机场航空性能 机场延时 实时性能估计

潜在的BTS使用案例SWIM数据

航空货运 航班延迟经济影响

转移和取消,如飞行延迟和飞行路径分析的财务影响,飞行延迟和取消业务和客运影响,如飞行模式中断和延迟抵达飞行模式最终客运延迟 转移和取消

BTS概念SWIM架构

初始概念架构设计环境 包括连接FAASWIM服务 通过虚拟机方法或HD侧方法 使用Apache Kafka流出相似消息实施系统架构马塞洛将更多讨论开发阶段系统组件及其在DOT微软Azure环境部署-多谢Mehdi,让我们谈谈基础设施

初始目标从基础点看 自项目启动以来一直清晰帮助Mehdi和Sheila等数据科学家访问SWIM和内部预数据源不用担心建设所需基础设施 所有提供后配置任务 随之而来,像系统配置 数据库资源等确保安全内部安全标准并自然能根据需求或工作类型量度简言之,我们必须尽可能实现自动化

快速并准备使用工作环境 基于概念架构目标 由Mehdi显示

基础设施架构

需要注意的几件事情是,我们正在使用卡夫卡索拉特源连接器以取取数据solace提供源和汇连接器,可轻易安装并安装到数据集群中并用微小配置设置 基本取取想要的极端数据源bob下载地址最优为开源bob下载地址第二,我们使用开源阿帕契卡夫卡需要时可以很容易地部署到别处

自动化环境

集中实现三大类自动化 基础设施本身 包括所有初始网络 子网 安全集团 VMs 数据键工作空间 存储后端配置包括卡夫卡安装 配置与软件需求如Jaava所有符号都极需配置访问特定数据源,右组合文件位置正确隔离连接器摄取数据 并需要依赖和库databricks, 包括集群创建和配置所需库,如Spark-XML解析和分析数据,导入初始笔记本并搭建密密以适当安装数据湖访问

这一点上,我们知道我们需要建构什么 和我们想实现什么自动化

Terraform系统

现在我们必须想出正确的工具开始Terraform显然是有原因迄今最好的工具拥有多云环境代码, 特别是至少多端提供方和所有提供方通用语言, 支持所有我们想构建的资源, 允许我们使用模块回用代码, 定制它使用VM大小等变量, 举例说,这些变量可能基于环境变化和工作量类型变化, 生产可能需要硬机,而开发仅仅是小VM小测试也可以在应用前审查修改,这是件大事和Terraform云, 允许我们存储此基础设施状态, 这样我们可以有分布式团队, 而不是单人点击门户

配置管理Ansib/CEF

环境准备后 下一步是完成所有提供后配置为此,我们想提供选项创建厨师编程和隐式角色 都提供我们需要的功能 通过建构这些配置代码 并用文档记录这些服务配置万一我们想访问不同的SWIM数据源

因此,我们将能够规模化避免配置滴水,这是多环境时常见问题简言之,我们所有资源和环境都一致,这是一个巨大的胜利基本不再有雪花

Databricks专用配置工具使用DatabricksCLI系统,它仍然是实验性工具,但它提供所有我们需要的东西,如导入初始笔记本、使用Json模板创建集群、插入Spark-XML等库等等

数据键CLI

重现开发中,但强力高推荐I知道UI,它完全自动化

并使用Github动作编译它 完全合情合理

Github-Github动作

GitHub动作允许我们创建工作流自动化系统 供所有云中的任何OS语言使用连带预定义动作都可用为起始点重试高推荐

简言之,我们有这样的法则 所有事物从开发者推导代码GitHub开始

CI/CD架构

所以我们可以调用请求公关程序, 以便它们的修改可以评审并核准幕后GitHub动作工作流触发,结果改变基础设施Kafka或Databricks配置

终于,我们从中学习到一些事 初始搭建可能花点时间 工具像Terraform主机或GitHub需要某种服务账号,并有创建、修改或删除云资源的适当权限还有一些学习曲线, 特别是如果你不习惯将基础设施和配置编译为代码, GitHub法则有分支,提交公关审查代码多测试和故障起始, 主要是因为安全性, 因为所有流量都需内部输入, 有些端点不开放或需要开放这些东西也需要点时间归根结底一切都很好现在我们可以轻而易举地部署求解方法,如果需要或需要,可在多环境部署求解方法

bob下载地址最后,所有代码开源并在此查找免费扩展使用

sheila将展示出最酷结晶图解,-谢谢你 马塞洛我现在要向你们展示的是,我们处理TFMS数据的方式和处理方式

所见的是未来状态结构的构思即包含关系数据库Oracle和Sybase使用Spark和Databricks运行时将历史数据与流数据并进原始Delta青铜表从那里分批处理解析XML数据并编程校验嵌入式TFMS系统编程有一点值得注意 演示中我将要向你们展示, 即我们具体查看TFMS数据流未来状态包括来自SWIM数据的其他数据流另一点需要注意的是 环境我将要向你们展示 镜像BTS应用bob体育客户端下载你现在看到的是Databricks平台从我刚刚显示的幻灯片结构中, 我们用数列内三大笔记本集实现简单图解我们所见反射BTS环境 从Kafka连接SWIM数据从那里,我们将消息输入Databricks并立即流到青铜三角形表原 XML字符串从此分批处理模式中我们指定时段,从铜表带入XML消息并使用spark-XML包解析并写入银级三角形表从那里,我们可以选择时间段,从银级表带入数据,并同时加入和汇总不同消息类型,以便能够开始查找并用数据分析数据集中关注最后一行,从银到金但我想先指出一件事,然后跳进那里, 向你们展示铜级XML消息长什么样你会看到就在这里XML消息很难直视并理解下一步使用spark-XML打包解析如果我们滚动下来,我们可以看到那会是什么样, 消息本身数据架内很容易看到不同数据并理解TFMS消息有一点需要注意的是,有20种不同消息类型进入TFMS系统,我们正在全耗尽并写到银级表上取银级数据 并用参考数据丰富公有参考数据 处理机场代码 城市定位 航班信息 代码与航空公司对比现在,如果我们滚动下降,我们可以看到我们取, 我们将聚焦于启程到达, 以及飞行计划创建信息 并整合所有数据可以看到,我们约3万条启程消息和3万条抵达消息 约11万条飞行计划创建消息我们要做的就是查找所有信息, 以便开始理解延迟调度启程与实际启程对比

可见飞行计划表很容易看出我们拥有所有信息和飞行计划并发时 与实际进离时 计算延迟进离当我们开始研究并视觉化数据时, 我们能够开始理解哪里有较大的延迟和抵达以及我们在哪里提前登陆可见圣胡安和孟斐斯之间 平均延迟抵达时间较大 4天数据采集数据取自5月25日至5月28日,不包含24小时在BTS环境内,这些数据全天24小时运行,每周7天运行取千字节或百字节标度上所有数据 并用同本笔记本运行这些数据实际上正在消耗大尺度数据看在示范的份上,我展示了一小部分并开始研究与飞行计划对比的过期飞行时间开始获取测量数据 说明我们在哪里过度补偿飞行计划 以及我们在哪里没有给足够的时间 实现飞行并开始将之与 天气模式或风模式相联如果我们继续运行,我们可以分流并开始查找注销消息,因为在TFMS数据中,有20种不同消息类型指尖上有很多数据4天内有1 265次记录取消航班 和我们有数据时数 4天内有4天如果我们用那架航班丰富它 并用航空公司 航班 航班和机场信息, 我们可以获取点小信息, 开始跳入数据中 并理解 美国航空公司似乎废除了这四天中 大部分航班并观察哪些路线最易取消此案中 Albuques to Phoenix在四天内取消56次说不定我们开始研究天气模式 说不定那里有暴风雨开始跳入分析这些取消的原因并同时看美航, 我们可以开始做 排序分析 在哪里发生这些取消这些都是不同的机场 与美国航空公司航班不同从迈阿密可以看出 大部分航班被取消迈阿密是美航枢纽不一定太出人意料, 但这些航班去向何方取消?或从迈阿密出发的航班 可以看到飞往哈瓦那古巴的航班 4次或恕我直言 八次取消从此,我们可以看到 通过spark-XML取出这些XML消息并平分, 我们真的可以开始跳入 产生不同延迟和注销的根本原因 并带入不同的数据流可开始预测解析研究季节航班 并观察季节航班如何变化 从取消 美国不同地区,我的意思是 开始跳水更多,谢谢沿路学习了很多教程 实施数据处理 并查看XML消息首先是Spark-XML包非常强健并正在改善并实际执行BTS项目,我们得以实际改进Spark-XML包处理这些复杂嵌套式眼下我们仍在探索方法 来进一步改进持续进化包 日新月异使用下一步是编程验证, 我们实际碰到所有XML消息 即我们加载文件的不同程序取自存储器 打开后验证数据减少文件IO延时我们所做的其实是 取图并复制出来 教给集群内执行者允许我们做的是 内存缓存模式, 那样我们就可以很容易快速验证开始验证时间顺序 转而几秒内验证

上一件事我们学到的是,当XML消息传入时, 如果我们推断出那些消息流出时 复杂模式, 并不是所有消息都尽可能复杂或指一小组消息 复杂消息传入后 即会发生模式错配 并产生问题所发现的东西基于需求, 分批处理按时顺序计算 并能够解析这些XML消息体系内所有复杂问题

那么,我们从这里向何处发展第一件事,我们想做的是 取数据我们经过处理 并验证它 数据由航空公司提供

下一步步骤

当航空公司向BTS提供数据时,他们能看它,我们可以对照SWIM数据看它,看是否通过SWIM数据信息提供相同信息。深入深入先进分析 并观察预测建模 理解季节性问题 飞行延迟mehdi在此演示文稿前文提及的许多使用案例最后,我们想打开管道 并允许更多SWIM数据反馈并不只是TFMS 打开STDS和其他流最后,我想说,如果你想联系我们 并学习更多项目或 多与我们聊天, 我们联系信息在这里并可供你使用最后我要感谢美国交通局 以及交通统计局 特别是Mehdi允许我们协作

更多spark+AI会议

免费试数据键
返回
关于MarceloZambrana

微软

MarceloZambrana是微软云化解决架构师,多年以来他一直在帮助联邦、州和私有企业客户,包括银行和保健Marcelo专攻企业混合架构、云迁移、云服务模型(PaAS、IaAS和SaaS)、自动化、基础建设和守法编解码和配置管理简言之大DevOps趣味 细节上有点OCD问题

关于SheilaStewart

数据布列克

sheilaStewart是Databricks的解决方案架构师,关注联邦民间客户加利福尼亚理工学院物理学BS和密歇根大学核工程和辐射科学MS并拥有15年以上数据分析算法开发经验,供国防部客户使用

关于Mehdi哈希姆

U.S.DOT系统

赫迪哈希普尔大学数据科学家他有博士学位系统工程专攻George Washington大学人工智能mahdi有十多年经验建设机器学习、深学习、模拟建模和决策支持系统