开始 通过我们的介绍内容让您自己加快速度。

事物,数据库系统和数据分布互联网,第一部分

由维基百科定义,物联网是“物理设备,车辆和其他项目的网络,嵌入电子,软件,传感器,执行器和网络连接,使这些对象能够收集和交换数据。”我们可能会采取此定义的充分性问题,但这是讨论的足够出发点。定义不解决的是什么为什么而且,出于本文的目的,如何对象应收集和交换数据。

IoT的原因,但我认为他们可以蒸馏到一些高层目标:

  1. 收集和货币化信息
  2. 推动更高的效率
  3. 提高我们生活的质量

在互联网上搜索“物联网用例”,我认为您会发现每个搜索结果都适合其中一个或多个这些目标。

如果您要收集数据,您需要收集它某处。这就是数据库系统进来的地方。如果您要交换数据,则需要一种手段,可以在数据生成器和数据消费者之间分发它。这就是数据分发进入的地方。

数据可以在IoT的许多地方收集。有可能收集在边缘设备上像汽车,机车,风力涡轮机或智能家居恒温器。它也可以收集网关设备,这是连接到多个边缘设备的系统,并且可以执行包括数据过滤,聚合,分析或其他处理,安全性等的多数功能。最后,可以在规模的分析中在私有或公共云服务器中收集数据。见图1。

物联网数据集合

用于在边缘设备上部署的数据库系统具有完全不同的要求。对于一件事,边缘设备通常是资源受限的,例如,使用相对慢的CPU,有限的存储器和/或没有持久存储。这意味着这种目标的数据库系统应该是瘦的,并且当目标缺乏持久存储时,数据库需要完全运行在内存中。瘦是重要的:有一个长的执行路径是慢CPU的Anathema。当目标具有有限的内存和无持久介质时,它会在小型代码大小和高效使用存储空间时提出溢价。

由于边缘设备通常具有资源约束,因此必须记住技术堆栈的每个组件。数据库系统的另一个考虑因素是操作系统的选择。有一个丰富嵌入式/即时的操作系统这对于资源受限的边缘设备更适合Linux和Windows,它主宰网关和服务器市场。对于边缘设备的创建者来说,它仍然是相对普遍的(太常见的,我将在滚动你自己的“方法并写出一个简单的循环调度程序。可以在嵌入式/实时和本土操作系统中运行的数据库系统不能对可用服务进行假设,例如内存管理和进程间通信。

在频谱的另一端,a云中的数据库系统(再次,我没有区别公共和私有云)的要求非常不同。虽然边缘设备中的数据库系统需要适合设备的约束,但它通常不需要处理大量数据或复杂的分析。然而,在云中,数据量既可以大而快速。换句话说,服务器数据库系统正在从该IOT系统中的所有边缘设备接收数据,即直接或更有可能通过网关接收数据。根据物联网系统的性质,边缘设备和网关可以短时间内产生高量数据。因此,必须设计云数据库系统以及整体系统架构以快速摄取数据。然而,进一步迈出一步,即将到空数据库中摄取数据很容易。将数据快速摄取到数据库中,该数据库为10或100 Tberabytes是完全不同的。云数据库系统必须能够在缩放时维持性能。

缩放有两个方面:垂直和水平。垂直缩放是数据库系统处理单个物理数据库越来越大的能力。水平缩放是数据库系统在多个物理数据库中传播(分发)单个逻辑数据库的能力。弹性可扩展性是增加物理数据库数量的能力(通常被称为碎片)在逻辑数据库中。逻辑和物理数据库的分离是至关重要的:逻辑数据库的概念将客户端应用程序与物理拓扑隔离隔离。换句话说,客户端应用程序不应涉及逻辑数据库是否物理地实现为1,10或20个碎片,以及明天是否为数据库已经缩放了30个碎片。总之,云数据库系统应该能够垂直缩放(处理单个数据库或碎片的大小的增长)和水平(将分片添加到逻辑数据库以维持尺度的性能)。

所有IOT议程网络贡献者负责其帖子的内容和准确性。意见是作者,不一定能够传达物联盟议程的思想。

搜索CIO.

搜索安全

搜索联网

搜索数据中心

搜索数据管理

关闭