怎样为物联网构建数据流、人工智能和机器学习平台

如今的物联网用例越来越依赖于分析大量设备生成的数据或实时更新机器学习算法。如果病人、自动驾驶汽车或预测性维护应用程序的数据没有得到实时采集、处理和处理,病人将会受伤,车辆将会发生碰撞或系统出现故障。

那么,企业如何构建一个可靠的平台,以经济高效的方式接收和响应大量数据呢?企业可以通过使用基于开源软件栈的流媒体平台和数据存储系统来做到这一点。

如今,许多开源解决方案在成千上万的生产部署中被证明是可靠的。很多产品可以从商业企业获得企业级的支持和咨询服务,也可能提供企业级的解决方案。这些受支持的解决方案使企业能够通过实施物联网解决方案实现其数字转型目标,而无需支付大量前期成本,同时也为其公司提供可靠的面向未来的基础设施。

以下是开源解决方案的示例,这些解决方案是当今许多最成功的数字转型企业的基础。

流数据

Apache  Kafka或Apache  Flink等开源流媒体解决方案用于构建实时数据管道,在物联网部署中在系统和应用之间移动数据。例如,在患者监测的情况下,流式解决方案将连接到患者的物联网传感器收集的数据传输到平台,在平台上可以对数据进行总结、分析和存储。

Box、LinkedIn、网飞、甲骨文、推特都用卡夫卡。弗林克被用于阿里巴巴, AWS、资本一号、易趣和Lyft的运营。然而,为了大规模支持实时业务流程,流解决方案必须与其他技术集成,包括分布式内存计算平台、容器管理解决方案以及分析和机器学习功能。

记忆计算

Apache  Ignite是部署在商用服务器集群上的分布式内存计算平台。它可以用作插入现有应用程序和基于磁盘的数据库之间的内存数据网格,或者作为新应用程序的独立内存数据库。Ignite汇集集群的可用CPU和RAM,并将数据和计算分配给每个节点。它可以部署在本地、公共或私有云或混合环境中。Ignite支持ANSI-99 SQL和ACID事务。

Ignite可以实时捕获大量数据。Ignite使用MapReduce在整个分布式集群上执行大规模并行处理(MPP),所有数据都保存在内存中。使用内存数据缓存和MPP,与使用基于磁盘的数据库的应用程序相比,Ignite可以将应用程序性能提高1000倍。Ignite用户还可以利用原生卡夫卡集成,轻松将物联网设备中的流数据提取到内存计算集群中。Ignite可以用来构建一个数字集成中心(DIH),以聚合和处理来自多个本地数据存储、基于云的数据源和流式数据源的数据。作为DIH,Ignite提供了一个高性能的数据访问层,使聚合数据能够实时用于多个业务应用。阿帕奇Ignite已经在美国航空、IBM、ING和24小时健身的生产中使用。

集群管理

Kubernetes可以自动部署和管理已经在Docker或其他容器解决方案中容器化的应用程序。容器解决方案创建包含应用程序和虚拟化操作系统的软件包,以便应用程序可以在同一硬件上或跨虚拟化硬件(例如,在云服务上)运行多个完全独立的应用程序版本。Kubernetes使管理Docker容器变得更加容易,并确保跨服务器集群的一致性,这些集群可以部署在任何地方,如本地、公共或私有云或混合环境。

该API使Kubernetes能够管理Apache  Ignite和流媒体平台资源,并基于物联网内存计算自动扩展集群。更高的管理简单性可以大大降低复杂性和错误,并减少开发时间。Kubernetes用于Booking.com、首都一号、Box、IBM和Sling的运营。

分析和机器学习

流媒体平台的最后一部分困难是对数据采取行动的能力。对于分析案例,Apache  Spark是一个分布式计算引擎,用于处理和分析大量数据。Spark可以使用Apache  Ignite内存计算平台快速分析通过流媒体管道提取的大量数据。Spark还可以将Ignite用作在线数据存储,这样Spark用户就可以将数据附加到他们现有的数据框或RDD,并重新运行Spark作业。Spark还使得在分布式计算环境中为非结构化数据编写简单查询变得容易。Spark已经在亚马逊,信业Karma,eBay,NTT  Data,雅虎使用!等等。

对于机器学习用例,Apache  Ignite包括集成的、完全分布式的机器学习和深度学习库,这些库已经针对大规模并行处理进行了优化。这种集成使企业能够创建连续学习应用程序,其中机器学习或深度学习算法将为内存计算集群的每个节点上的内存数据在本地运行。在本地运行算法允许模型在模型上不断更新,因为新数据已经部署在节点上,甚至达到了PB级别。

个人建站、企业建站,域名注册、小程序、云服务器、物理主机等业务,咨询蓝队云客服微信:landui507

未经允许不得转载:云技术 » 怎样为物联网构建数据流、人工智能和机器学习平台

赞 (0)