首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

10分钟了解Apache Nifi在物联网的使用

微信公众号:深广大数据Club

关注可了解更多大数据相关的资讯。问题或建议,请公众号留言;

如果你觉得深广大数据Club对你有帮助,欢迎转发朋友圈

多年来,物联网(IoT)一直存在于技术领域。有许多有趣的技术正被投射为“物联网的解决方案”。在本文中,将讨论IoT和NiFi实验。

什么是物联网?

根据维基百科的定义 -

物联网(Internet of Things,缩写IoT)

物联网(英语:Internet of Things,缩写IoT)是互联网、传统电信网等信息承载体,让所有能行使独立功能的普通物体实现互联互通的网络。

物联网一般为无线网,而由于每个人周围的设备可以达到一千至五千个,所以物联网可能要包含500兆至一千兆个物体。在物联网上,每个人都可以应用电子标签将真实的物体上网联结,在物联网上都可以查出它们的具体位置。通过物联网可以用中心计算机对机器、设备、人员进行集中管理、控制,也可以对家庭设备、汽车进行遥控,以及搜索位置、防止物品被盗等,类似自动化操控系统,同时透过收集这些小事的数据,最后可以聚集成大数据,包含重新设计道路以减少车祸、都市更新、灾害预测与犯罪防治、流行病控制等等社会的重大改变,实现物和物相联。

物联网将现实世界数字化,应用范围十分广泛。物联网拉近分散的信息,统整物与物的数字信息,物联网的应用领域主要包括以下方面:运输和物流领域、工业制造[2]、健康医疗领域范围、智能环境(家庭、办公、工厂)领域、个人和社会领域等,[3]具有十分广阔的市场和应用前景。

由于最终端连接的‘物’有千百种,因此极难制定一种统一性的规格适合所有的应用,这是所有物联网系统面对的难题.目前无论是 MQTT、CoAP 还是 AMQP 这类物联网标准都尝试着将终端应用抽象化,集成进一个固定的通信格式之内.

什么是MQTT?

它是一种非常简单,轻量级的基于发布 - 订阅消息的协议。引用维基百科  -  它专为连接远程位置而设计,其中需要“小代码占用”或网络带宽有限。

好了,说的够多了,我们开始行动吧。

我们在本教程中尝试做什么?

我们将使用来自https://www.hivemq.com/的服务,该服务将充当MQTT代理,模拟温度传感器之类的数据生成器。它是一个免费使用的服务.

先决条件

要执行本教程,我们需要以下内容

Windows/Mac/Linux机器与Java

Apache Nifi -可以从https://nifi.apache.org/download.html下载

服务联网。

什么是NiFi?

NiFi是一种易于使用,功能强大且可靠的系统,用于处理和分发数据。它基于之前由NSA(What?)开发的“ NiagaraFiles ”软件,并作为2014年技术转让计划的一部分开源。

启动NiFi

下载完成后,我们需要在文件conf/nifi.properties中进行一些快速配置。设置突出显示的属性并保存文件。你们都准备好了。在Windows上只需转到bin文件夹并运行-nifi.bat,在非Windows上运行nifi.sh.

如果一切顺利,您应该能够在http://localhost:8585/nifi上看到NiFi UI

准备传感器模拟器

使用传感器非常容易 - MQTT Broker模拟器。以下是步骤。

1.访问http://www.hivemq.com/demos/websocket-client/

2.使用默认设置,然后按“连接”按钮。

3.如下图所示,你的borker就准备好了

4.接下来,设置您选择的Topic名称,您就可以将消息发送给任何通过MQTT监听的消费者。

创建NiFi数据流

转到NiFi并创建数据流。我们需要以下处理器

ConsumeMQTT

这有助于从传感器流中收集数据。此处理器的配置如下所示

PUTFILE

这有助于我们将收集的数据存储到本地计算机上的文件中。相同的配置如下所示

一旦配置完成,只需启动流程,您应该看到在指定文件夹中收集的数据。

对于更高级别的实验,您可以考虑使用Hadoop而不是本地计算机。

数据可用后,您可以按照自己的方式进行处理。

注 - 如果您使用NiFi 1.7.1,您可能还需要执行以下附加活动 -

为Consume MMQT设置Max Queue Size属性

为PutFile定义自动终止关系设置

关注公众号

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181225G0IQU400?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券