您当前的位置:首页 > 互联网百科 > 物联网

在物联网应用使用关系数据库还是NoSQL?

时间:2020-11-27 10:20:22  来源:  作者:
「物联网架构」在物联网应用使用关系数据库还是NoSQL?

 

物联网数据很复杂,需要多个用户访问,所以不要犯创建数据孤岛的错误。

几乎在每个行业,都有一个由物联网数据驱动的数字化转型正在进行中。重要的是要认识到物联网不是关于事物的;而是那些东西创造和收集的数据。组织依靠这些数据提供更好的用户体验,做出更明智的业务决策,并最终推动其增长。

然而,如果没有一个可靠的数据库来处理物联网设备产生的大量数据,这一切都是不可能的。关系数据库以灵活、易于使用和成熟而闻名。它们并不特别出名的是规模,这促使了NoSQL数据库的创建。你可能知道也可能不知道,有一些方法可以克服这个缺点。

另一件需要注意的事情是,物联网数据本质上是时间序列。通过使用像TimescaleDB这样的时间序列数据库,组织可以利用隐藏在机器生成数据中的洞察力来构建新特性、自动化流程和提高效率(稍后将对此进行更多介绍)。通常,工程团队最终会将数据存储在多个数据库中:元数据存储在关系数据库中,时间序列数据存储在NoSQL存储中。不要这样做。

下面,我们将概述您希望在NoSQL之上使用关系数据库的主要原因,并解释TimescaleDB + PostgreSQL可以为物联网提供的优势。

利用SQL及其生态系统

物联网数据需要多样化的、可定制的摄食管道,这需要一个具有广泛生态系统的数据库。要满足这些需求,开发人员只需查看SQL即可。

关系数据库和SQL密不可分,许多跨组织的人员(例如内部数据分析师、应用程序开发人员或希望实时访问数据的外部用户)通常已经了解SQL。例如,在制造业中,有些团队可能想要监视设备维护和预测故障,有些团队可能想要跟踪生产率和运输物流数据,等等。SQL使其变得容易。

此外,还有一些非常酷的功能,如:

  • 连接:基于两个或多个表之间的相关列,将这些行组合在一起
  • 聚合:将多个行的值分组在一起,形成一个汇总值(即最小、最大、AVG)
  • 窗口函数:对一组行进行操作,并从底层查询中为每一行返回一个值(即PARTITION BY、ORDER BY)。
  • 公共表表达式(CTEs):简化复杂的连接和子查询(即使用)
  • ROLLUPS: GROUP BY子句的扩展,允许您使用单个查询生成多个分组集

此外,开发人员通常希望在现有的物联网基础设施上构建应用程序。SQL兼容许多管理工具,流管道(如Kafka或RabbitMQ)、消息传递协议(如MQTT)、可视化工具(如Seeq)、工业自动化平台(如Ignition),以及用于处理地理空间和其他数据类型的扩展。

模式(大纲)是一件好事

对于关系数据库,您可以使用模式来帮助进行数据建模。虽然“无模式”数据库看起来似乎更容易入门,但它们最终会导致重大的技术债务。用户通常必须预先就如何存储他们的数据做出设计决策,而这些决策在未来很难更改。这意味着,如果新的查询模式需要不同的设置来提高性能,那么它们将得不到很好的支持。

另一方面,使用SQL预先构建模式实际上支持复杂的查询。用户还可以使用一组DDL(数据定义语言)命令来调整和更新模式。但是,正确地建模数据以提高性能是很重要的。为给定的工作负载创建适当的索引和表模式可以显著提高性能。相反,设计错误的模式会导致显著的性能下降。

本质上,你需要的是一种灵活的模式,特别是在存储半结构化数据时(例如,存储来自收集不同测量值的物联网传感器的读数)。您还需要一个能够灵活地管理和访问数据的数据库。特别是在物联网中,您收集数据的设备并不总是在线的,从而导致批量上传的数据次序混乱。您还可能需要更新不正确的传感器测量值。关系模型很好地支持所有这些函数。

消除数据孤岛

我们已经提到了这样一个事实,即组织中很多人都知道SQL,它允许多个用户访问数据。我们经常从客户那里听到,他们希望将时间序列数据库与完整的关系系统结合在一起,并且希望能够连接这些数据。

幸运的是,关系数据库支持连接并消除了在多个位置存储数据的需要。通过这样做,组织还可以节省操作多个系统的开销成本。此外,它们还可以避免与维护独立数据库相关的完整性问题,这就引出了我们的下一点。

依赖关系数据库获得可靠性

许多存储敏感数据的组织依靠关系数据库来保证信息的安全。毕竟,关系数据库早在70年代就出现了,并且在保证财富500强公司数据安全方面有着良好的记录。

物联网应用程序通常必须处理大量复杂的查询和事务。使用关系数据库,您可以确保这些事务将是进程的可靠性,这要归功于ACID(原子性、一致性、隔离性、持久性)。如果您不熟悉,那么可以告诉您,ACID是修改数据库时使用的一组属性。它们保证即使在遇到错误、断电、崩溃等情况下,事务也是有效的。

物联网选择PostgreSQL + TimescaleDB

如果您正在寻找用于物联网的关系数据库,我们建议您选择PostgreSQL。虽然我们似乎有些偏颇,但PostgreSQL的受欢迎程度依然坚定,并且连续第二次被db引擎评为年度最佳DBMS:

PostgreSQL首次发布于1989年,今年已经30岁了,它的人气达到了顶峰,没有任何老化的迹象,拥有一个非常活跃的社区。由于其稳定性和特性集,PostgreSQL已经成为众多开发人员首选的数据存储。”

虽然还有其他的关系数据库管理系统,但PostgreSQL和TimescaleDB为物联网开发人员提供了显著的优势。

总结:

「物联网架构」在物联网应用使用关系数据库还是NoSQL?

 

本文:http://jiagoushi.pro/node/1333



Tags:物联网   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
大家好,我是志明。上一期我们聊了物联网的发展。今天我想和大家聊一聊物联网(IOT)的落地应用:共享设备。 相信各位对这个词并不陌生,随着互联网技术的快速发展,以共享设备为代表的...【详细内容】
2021-12-24  Tags: 物联网  点击:(14)  评论:(0)  加入收藏
随着物联网设备数量的持续增加,这些设备之间的通信或连接已成为一个重要的思考课题。通信对物联网来说十分常用且关键,无论是近距离无线传输技术还是移动通信技术,都影响着物联...【详细内容】
2021-12-16  Tags: 物联网  点击:(16)  评论:(0)  加入收藏
安科瑞 于洋 周洁摘要:现代物联网技术高速发展,许多场所已经开始合理应用物联网照明系统,作为工厂生产的重要因素之一,工厂照明系统的智能化控制可以有效提高工厂对能源的利用率...【详细内容】
2021-12-14  Tags: 物联网  点击:(19)  评论:(0)  加入收藏
来源:内容由半导体行业观察(ID:icbank)来自Ctimes,谢谢。在数字化实体世界中,物联网技术的应用相当广泛,市场潜能与商机庞大。麦肯锡(MGI)《物联网:超越市场炒作价值(The Internet o...【详细内容】
2021-11-30  Tags: 物联网  点击:(20)  评论:(0)  加入收藏
SpringBoot开发的物联网通信平台系统项目功能模块 功能 说明 MQTT 1.SSL支持 2.集群化部署时暂不支持retain&will类型消 UDP ...【详细内容】
2021-11-05  Tags: 物联网  点击:(55)  评论:(0)  加入收藏
物联网(IoT)行业正蓬勃发展,成功的物联网项目需要大量工程,本文讨论了完整物联网项目所需的开发人员技能:包括嵌入式开发技术,应用程序编程,大数据分析等等。硬件设计师大多数物...【详细内容】
2021-11-03  Tags: 物联网  点击:(28)  评论:(0)  加入收藏
M2M我的一般的理解就是机器到机器(Machine to Machine),点对点的机器链接。从概念上也可以理解为人到人(Man to Man)、人到机器(Man to Machine)。即时通信工具就是人到人的交互,人...【详细内容】
2021-10-29  Tags: 物联网  点击:(71)  评论:(0)  加入收藏
在这篇文章中,大家将了解MQTT协议,以及为什么在许多物联网应用中使用它。 MQTT协议最初由IBM开发,并且是专有的。它的开发是为了解决石油和天然气行业的传感器通过卫星与远程服...【详细内容】
2021-10-21  Tags: 物联网  点击:(32)  评论:(0)  加入收藏
WiFi发展至今已有20多年的历史,WiFi模组就已经不是一个新兴概念。随着国内市场上智能硬件的成长,WiFi迎来了"爆发式"增长,这也意味着WiFi模组找到了春天。无线通信模块的价值主...【详细内容】
2021-07-20  Tags: 物联网  点击:(106)  评论:(0)  加入收藏
背景介绍在 IoT 物联网场景中,因为消费者分布全球各地,设备会被销售到多个国家或地区使用。 如果需要通过某个固定的服务器,远程管理多个国家或地区的设备,那么可能会出现如下情...【详细内容】
2021-07-16  Tags: 物联网  点击:(78)  评论:(0)  加入收藏
▌简易百科推荐
大家好,我是志明。上一期我们聊了物联网的发展。今天我想和大家聊一聊物联网(IOT)的落地应用:共享设备。 相信各位对这个词并不陌生,随着互联网技术的快速发展,以共享设备为代表的...【详细内容】
2021-12-24  物联网系统开发大观    Tags:物联网   点击:(14)  评论:(0)  加入收藏
随着物联网设备数量的持续增加,这些设备之间的通信或连接已成为一个重要的思考课题。通信对物联网来说十分常用且关键,无论是近距离无线传输技术还是移动通信技术,都影响着物联...【详细内容】
2021-12-16  pheenet菲尼特    Tags:物联网   点击:(16)  评论:(0)  加入收藏
安科瑞 于洋 周洁摘要:现代物联网技术高速发展,许多场所已经开始合理应用物联网照明系统,作为工厂生产的重要因素之一,工厂照明系统的智能化控制可以有效提高工厂对能源的利用率...【详细内容】
2021-12-14  安科瑞于洋    Tags:物联网   点击:(19)  评论:(0)  加入收藏
来源:内容由半导体行业观察(ID:icbank)来自Ctimes,谢谢。在数字化实体世界中,物联网技术的应用相当广泛,市场潜能与商机庞大。麦肯锡(MGI)《物联网:超越市场炒作价值(The Internet o...【详细内容】
2021-11-30  半导体行业观察    Tags:物联网   点击:(20)  评论:(0)  加入收藏
计讯物联无线数传终端DTU,对接充电桩与后端管理中心,多量分散充电桩统一集中管控,工业设计,无线部署、远程状态监测。  无线DTU充电桩联网  1、无线数据终端DTU建立充电桩...【详细内容】
2021-11-05  物联界的程序猿    Tags:充电桩   点击:(40)  评论:(0)  加入收藏
物联网(IoT)行业正蓬勃发展,成功的物联网项目需要大量工程,本文讨论了完整物联网项目所需的开发人员技能:包括嵌入式开发技术,应用程序编程,大数据分析等等。硬件设计师大多数物...【详细内容】
2021-11-03  粤嵌教育    Tags:物联网   点击:(28)  评论:(0)  加入收藏
M2M我的一般的理解就是机器到机器(Machine to Machine),点对点的机器链接。从概念上也可以理解为人到人(Man to Man)、人到机器(Man to Machine)。即时通信工具就是人到人的交互,人...【详细内容】
2021-10-29  喻喻嗒    Tags:物联网   点击:(71)  评论:(0)  加入收藏
在这篇文章中,大家将了解MQTT协议,以及为什么在许多物联网应用中使用它。 MQTT协议最初由IBM开发,并且是专有的。它的开发是为了解决石油和天然气行业的传感器通过卫星与远程服...【详细内容】
2021-10-21  亿佰特物联网实验室    Tags:MQTT   点击:(32)  评论:(0)  加入收藏
介绍IconPark是字节跳动团队开源的一个开源图标库,一共提供超过2000个高质量的图标,提供可视化界面配置来实现不同的方案,非常适合开发者和设计师来使用! GithubGitHub:https://...【详细内容】
2021-07-19  爱分享Coder    Tags:IconPark   点击:(189)  评论:(0)  加入收藏
背景介绍在 IoT 物联网场景中,因为消费者分布全球各地,设备会被销售到多个国家或地区使用。 如果需要通过某个固定的服务器,远程管理多个国家或地区的设备,那么可能会出现如下情...【详细内容】
2021-07-16  公田    Tags:物联网   点击:(78)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条