当前位置: 首页 > 科技观察

哪些开源数据库适合物联网环境?

时间:2023-03-14 19:49:19 科技观察

根据Gartner的一份报告,预计未来五年物联网设备的数量将达到万亿。物联网提出了非常新的挑战,尤其是对于数据库管理系统,例如如何实时集成大量数据以及处理数据安全性。例如,应用于智慧城市的基于物联网的交通传感器会实时产生大量的交通数据。数据库在充分处理物联网数据方面发挥着非常重要的作用。因此,除了合适的平台,合适的数据库也同样重要。由于物联网在全球多样化的环境中运行,选择合适的数据库变得非常具有挑战性。另一个例子是安装在智慧城市中的基于物联网的环境温度传感器,它可以在几分钟内生成大量关于活跃大气温度和湿度的数据。可见物联网的一个重要特征是以数据为中心:1.海量性假设有一个传感器网络,有100个传感器,每个传感器节点每分钟只发回1Kb的数据,那么每天的数据量为高达1.4Gb。如果是一些大型的敏感传感器网络,每天的数据量可达1TB以上。至于未来物联网的物联网时代,产生的数据量是非常大的。因此,物联网数据是海量的。2、多态性物联网的应用是无所不包的,产生的数据自然是多种多样的。有温度、湿度等环境数据;视频、音频等多媒体数据;以及与用户交换信息的结构化数据等。数据的多态性必然会增加数据的复杂性。不同网络产生的数据格式可能不同。即使是同一种数据,单位和精度也会有差异。测量量也在不同时间发生变化。所以物联网数据是多态的。3.关系和语义物联网数据不会相互独立。描述同一实体的数据在时间上是相关的;描述不同实体的数据在空间上是相关的;描述实体的不同维度也是相关的。不同的关联组合会产生丰富的语义,通过数据在时间或空间或维度上的关联可以推断出实体的变化。总之,在很多物联网系统中,需要对大量联网设备进行监控,并将监控采样到的数据持久化。undefinedInfluxDB是一个时间序列数据库,用于优化和处理时间序列数据。kdb在2000年就发布了时间序列数据,但是随着物联网的兴起,InfluxDB开始流行,因为它推动了NoSQL、NewSQL以及大量不断增长的数据。使用InfluxDB处理IoT数据的优势包括:允许索引它具有类似SQL的查询语言它还提供内置的缺失数据线性插值它支持自动数据下采样支持连续查询以计算聚合2.CrateDB开源URL:https://github.com/crate/crateCrateDB是一个分布式SQL数据库管理系统。作为开源软件并用Java编写,它包括来自FacebookPresto、ApacheLucene、Elasticsearch和Netty的组件,因此它被设计为具有高度可扩展性。CrateDB的开发是为了让物联网数据发挥作用。从工业互联网和联网汽车到可穿戴设备,CrateDB是新物联网解决方案创新者的首选数据库。将CrateDB用于物联网数据的优势包括:每秒数百万个数据点:快速、线性可扩展的数据摄取实时查询:列索引和字段缓存提供内存中SQL性能用于物联网分析的传感器数据结构:快速、强大的时间-系列、人工智能、地理空间、文本搜索、连接、聚合永远在线:内置数据复制和集群重新平衡确保不间断的性能ANSISQL:无需锁定,易于任何开发人们使用内置MQTT代理并与之集成:直接从设备到数据库,整合物联网生态:让Kafka、Grafana、NodeRED等流行的物联网栈软件随处运行,在边缘或云端高效处理3.RethinkDB开源网站:https://github.com/rethinkdb/rethinkdb在开源数据库列表中,RethinkDB位居榜首。它是用于实时Web的可扩展JSON数据库,是从头开始构建的。RethinkDB通过转换传统数据库架构引入了令人兴奋的新访问模式。当开发人员向它发送命令时,它可以不断地将更新的查询结果推送到应用程序。这是开发人员称为交换卡的功能。RethinkDB充当系统状态数据库、实时存储库和消息代理,允许流程中的更改。其实时推送架构大大减少了构建可扩展实时应用程序所需的时间和精力。将RethinkDB用于IoT传感器数据的优势包括:RethinkDB具有用于检查API的查询语言,非常易于设置和学习。如果任何主服务器出现故障,命令将自动传输到新服务器。实时即插即用的节点功能,即使是一秒钟也不会停机,这有助于轻松添加节点。通过Ruby和Tornado中的Eventmachine为异步查询提供异步API。它仅提供SSL访问以通过公共互联网安全访问RethinkDB。Floor、Ceil和Round是RethinkDB提供的各种数学运算符。4.ApacheCassandra开源网站:http://cassandra.apache.org/,https://github.com/apache/cassandraApacheCassandra是一个免费的开源分布式NoSQL数据库管理系统,最初于2008年发布。它是旨在处理许多商品服务器上的大量数据,提供高可用性且无单点故障。在物联网中,由于连接的设备数量众多,在各种网络上生成、跟踪和共享数据的规模是巨大的。Cassandra非常擅长利用直接来自不同地理位置的设备、用户、传感器和类似机制的大量时间序列数据。使用ApacheCassandra处理物联网数据的优势包括:容错演示高性能去中心化:集群中的每个节点都是相同的读取和写入都是实时执行的,因此任何应用程序都不会停机专业支持:它加强了合同和服务由第三方提供。