Edge2AI自动驾驶汽车教程2:将汽车边缘数据收集到云中

痞子三分冷 提交于 2020-11-23 06:12:39




介绍

我们在前面介绍过Edge2AI自动驾驶汽车的解决方案,参见《Edge2AI自动驾驶汽车:在小型智能汽车上收集数据并准备数据管道》,《Edge2AI自动驾驶汽车:构建Edge到AI数据管道》,《Edge2AI自动驾驶汽车:训练模型并将其部署到边缘,《Edge2AI自动驾驶汽车教程》,《Edge2AI自动驾驶汽车教程1:在边缘提取汽车传感器数据。在这里我们从实操教程的角度来看如何一步一步的构建Edge2AI自动驾驶汽车的应用。在上一教程中,我们从安装在智能车辆上的传感器收集了数据,并建立了一条管道来对数据进行建模,以用于训练机器学习(ML)模型。本节我们将展示从边缘到CDF的数据流。数据采用图像和与CSDV收集的每个图像相关联的元数据的形式(例如,IMU信息,转向角和位置),我们将把数据流引向CDH集群,在该集群中将存储和管理数据使用它来训练模型的目的。


先决条件  


在Cloudera DataFlow集群上部署的CEM

完成了本教程系列的第一部分


概念  


我们将使用Cloudera Edge Manager(CEM)在aws ec2实例上的云中运行的交互式UI中构建NiFi数据流。该数据流将用于从MiNiFi代理提取数据,转换数据以将CSV和图像数据路由到在另一个ec2实例上运行的HDFS。

Cloudera Flow Manager在8080/nifi/端口上运行

<cem-ec2-public-dns>:8080/nifi/


配置目标的HDFS


通过SSH进入运行NiFi的EC2实例:

ssh -i /path/to/pem_file <os-name>@<public-dns-ipv4># download hdfs core-site.xmlmkdir -p /tmp/service/hdfs/cd /tmp/service/hdfs/wget https://raw.githubusercontent.com/hortonworks/data-tutorials/dev/tutorials/cdf/edge2ai-autonomous-car/assets/services/hadoop_hdfs/core-site.xml

在core-site.xml的以下字段中输入您的CDH公用主机名:

 <property>    <name>fs.defaultFS</name>    <value>hdfs://{CDP Public DNS}:8020</value>  </property>

保存core-site.xml


构建 NiFi 流以将数据加载到 HDFS 中



从 MiNiFi Agent 添加 CSV 数据输入的输入端口

 


我们将在上一节中创建的输入端口用作进入NiFi的流程的入口点:

注意:请注意端口详细信息下的输入端口ID,因为CEM UI需要使用它来将MiNiFi处理器连接到NiFi RPG。


保存 CSV 输入端口 ID 以用于 MiNiFi CEM Flow

 


注意:如果您尚未在minifi流中添加csv数据的进口端口ID,请将该ID用作minifi流。


连接 CSV 并将其加载到 HDFS 


在画布上添加PutHDFS处理器以存储行驶日志数据。将处理器名称更新为PutCsvHDFS

更新以下处理器属性:

表5:更新PutCsvHDFS属性

属性

Hadoop Configuration Resources

/tmp/service/hdfs/core-site.xml

Directory

/tmp/data/input/racetrack/image/

AWS_MiNiFi_CSV输入端口连接到PutCsvHDFS处理器:


添加用于从 MiNiFi Agent 提取图像数据的输入端口 


如果尚未添加输入端口以从MiNiFi提取图像数据:

请注意端口详细信息下的输入端口ID,因为CEM UI需要它。



保存 MiNiFi CEM Flow 的图像输入端口 ID

 


注意:如果您尚未在minifi流中添加图像数据的输入端口ID,请将该ID用作minifi流。


连接图像并将其加载到 HDFS

 


在画布上添加PutHDFS处理器以存储行驶日志数据。将处理器名称更新为PutImgHDFS

表6:更新以下处理器属性:

属性

Hadoop Configuration Resources

/tmp/service/hdfs/core-site.xml

Directory

/tmp/data/input/racetrack/image/logitech

AWS_MiNiFi_IMG输入端口连接到PutImgHDFS处理器:


启动 NiFi Flow


使用ctrl+A或突出显示NiFi画布上的所有组件cmd+A,然后在操作面板中按开始按钮:

您应该看到如上所述从NiFi到HDFS的数据流。

注意:如果看不到数据流,请返回CEM UI,确保已将流连接到该NiFi远程实例。还要确保MiNiFi代理正在运行。您可能会看到的潜在错误无法忽略,这很可能意味着您使用了错误的core-site.xml。您应该确保是否需要在CDH上搜索来自客户端(例如cdsw-client)的core-site.xml,并且对于PutHDFS,以下错误应该消失了:


总结


本教程更详细地解释了什么是Cloudera DataFlow及其组成部分,它们是构建从边缘到AI的桥梁时必不可少的工具。在本教程的部分中,我们将回顾Cloudera Data Science Workbench的好处,并使用它来构建模型,该模型将使用CDF和我们今天学到的概念重新部署到我们的汽车中。

来源:https://www.cloudera.com/tutorials/edge2ai-autonomous-car/2.html



本文分享自微信公众号 - 大数据杂货铺(bigdataGrocery)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!