0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何选择合适的IoT数据库体系结构?

我快闭嘴 来源:千家网 作者:蒙光伟 2020-07-07 11:00 次阅读

在设计IoT数据库时,企业可以有很多选择,但是技术人员必须通过评估不同的IoT数据库体系结构(例如static vs. streaming and SQL vs. NoSQL)来确定最合适的方案。

正确的物联网数据库取决于每个物联网项目的需求。因此,选择数据库的第一步是在数据库架构中进行选择时考虑到物联网项目应用的关键特性。物联网技术人员必须确定要存储和管理的数据类型、数据流、分析、管理和安全的功能要求、以及性能和业务要求。

在确定组织对数据库的需求之后,IT管理员必须评估IoT数据库体系结构以及它们如何促进或抑制IoT数据需求。

了解静态和流式IoT数据库架构

首先,了解静态数据库与流式数据库之间的根本区别。

静态数据库,也称为批处理数据库,用于管理静态数据。用户需要访问的数据作为由数据库管理系统(DBMS)管理的存储数据驻留。用户进行查询并从DBMS接收响应,该DBMS通常但并非总是使用SQL。

流式数据库处理运动中的数据。数据不断地流经数据库,并具有一系列连续的查询,通常以特定于流式数据库的语言进行。流式数据库的输出最终可以存储在其他地方,例如云中,并可以通过标准查询机制进行访问。

流式数据库通常是分布式的,以处理大量数据的规模和负载要求。当前,有一系列商用、专有和开源流数据库,包括Google Cloud Dataflow、Microsoft StreamInsight、Azure Stream Analytics、IBM InfoSphere Streams和Amazon Kinesis。

开源系统主要基于Apache,包括Databricks提供的Apache Spark Streaming,Data Artisans提供的Apache Flink,Confluent提供的Apache Kafka和Twitter所拥有的Apache Storm。组织主要使用流数据库进行实时决策并满足几乎即时的延迟要求。

但是,组织仍然可以从标准查询技术和模式中受益,这就是为什么许多流式数据库还包括静态数据库组件的原因。这些统一数据库结合了流式数据库和静态数据库的优点,因为它们既支持流式数据库的实时功能,又支持静态数据库的查询过程和架构的灵活性。

对于大多数物联网应用来说,最好的数据库是结合了流式和静态功能的统一数据库。也正是由于这个原因,大多数最受欢迎的供应商的数据库都包括两种类型的数据库。

静态与流式数据库

探索更多细微差别的数据库架构

时间序列数据库在很多方面都基于与流式数据库相同的技术,但是两者的开发重点稍有不同。时间序列数据库更具战术性。它们通常涉及在NoSQL数据库上植入特定的索引技术,以实现高性能事件处理。流式数据库更加全面,可实现更广泛的数据分析组合,例如机器学习或窗口化。

SQL vs NoSQL?

SQL数据库是关系和功能静态模式,描述了信息的组织方式。这使它们易于管理。但是,它们会遇到有效扩展的问题。 NoSQL数据库是非关系型的,没有架构,并且通常被提倡为高度可扩展且性能优于SQL数据库。

一些技术专业人员可能会认为NoSQL数据库将是显而易见的选择,因为可伸缩性对于许多物联网应用至关重要。但是可伸缩性和性能只是技术人员选择数据库时需要考虑的两个因素。

在许多情况下,关键因素是易于集成到现有系统中,而在现有系统中SQL更有效。许多物联网工具和系统都采用SQL。在基于较旧消息协议或工业自动化平台的工业环境中尤其如此。

具有创建和管理模式的能力也是一个加分项。尽管技术人员可能会发现模式开发受到限制,必须组织信息。预先投入精力来开发模式可以节省大量的工作,以后可以在非架构环境中组织数据。

当在SQL和NoSQL之间进行选择时,企业可能还会发现将静态数据库与流式数据库结合起来会遇到挑战。从理论上讲,静态数据库或流式数据库可以是SQL或NoSQL。实际上,数据库专门设置为任何一个。对特定统一数据库感兴趣的IoT技术人员可能会发现,数据库设计决定了他们的SQL vs. NoSQL决策。

企业最终是选择SQL还是NoSQL数据库取决于更广泛的功能和技术要求,尤其是可伸缩性、性能以及集成到旧系统中的需求。
责任编辑:tzh

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 物联网
    +关注

    关注

    2868

    文章

    41622

    浏览量

    358341
  • 数据库
    +关注

    关注

    7

    文章

    3591

    浏览量

    63366
  • 开源系统
    +关注

    关注

    0

    文章

    22

    浏览量

    13608
收藏 人收藏

    评论

    相关推荐

    嵌入式微处理器体系结构有几种

    嵌入式微处理器体系结构是指嵌入式系统中的微处理器采用的硬件结构和设计技术,以实现特定的功能和性能要求。在嵌入式系统中,微处理器被用于控制、通信、计算、数据处理等不同的任务。根据不同的功能要求,嵌入式
    的头像 发表于 04-21 16:29 687次阅读

    存储体系结构的现代化

    电子发烧友网站提供《存储体系结构的现代化.pdf》资料免费下载
    发表于 08-30 16:58 0次下载
    存储<b class='flag-5'>体系结构</b>的现代化

    DVS企业版参考体系结构

    电子发烧友网站提供《DVS企业版参考体系结构.pdf》资料免费下载
    发表于 08-28 10:32 0次下载
    DVS企业版参考<b class='flag-5'>体系结构</b>

    ARM通用中断控制器体系结构规范GIC体系结构版本3和版本4

    本手册中的体系结构描述使用了与Armv8体系结构相同的术语。有关该术语的更多信息,请参阅Armv8-A架构配置文件Armv8 Arm®架构参考手册A部分的介绍。此外,在适当的情况下使用AArch64
    发表于 08-11 07:45

    ARM体系结构参考手册

    ARM体系结构已经发展到支持跨多种性能点实施的程度。 超过20亿个部件的出货量,使其成为许多细分市场的主导架构。 ARM处理器的架构简单性传统上导致了非常小的实现,而小实现允许设备具有非常低的功耗。 实施规模、性能和非常低的功耗仍然是ARM架构开发的关键属性。
    发表于 08-11 07:10

    Arm Power Policy Unit 1.1版体系结构规范

    本规范描述了电源策略单元(PPU)体系结构。它定义了PPU体系结构的1.1版本。 PPU规范的1.1版增加了对操作模式的支持。由于功能或更高粒度的功率控制原因,这使得能够支持特定于组件的功率模式
    发表于 08-11 06:14

    ARM服务器基础系统体系结构7.1平台设计文档

    服务器基本系统体系结构(SBSA)指定了基于ARM 64位体系结构的硬件系统体系结构,服务器系统软件(例如操作系统、管理程序和固件)可以依赖该体系结构。SBSA扩展了ARM BSA[3
    发表于 08-09 07:49

    Arm CoreSight体系结构规范

    本文档描述了CoreSight体系结构,平台和系统使用。
    发表于 08-09 06:08

    Arm的DRTM体系结构规范

    本规范定义了基于Arm A配置文件体系结构的处理器的动态测量信任根(DRTM)体系结构。本规范基于TCG D-RTM体系结构[4]的概念,但作为一个独立的独立文档发挥作用。它使用了TCG体系结
    发表于 08-08 07:45

    ARM体系结构标准配置

    ARM体系结构包含大量功能,这些功能被描述为可选或定义的实施。来自平台操作系统供应商的反馈表明这种可变性对于系统代码的开发人员来说是一个实质性的问题,由于操作系统必须满足各种不同的系统配置,导致开发
    发表于 08-08 07:40

    Armv9-A体系结构参考手册

    本增补件是Armv9-A体系结构的Arm®体系结构参考手册增补件轮廓本书介绍了Armv9-A体系结构扩展,因此必须与Arm®体系结构参考手册一起阅读A型架构。
    发表于 08-08 07:07

    ARMv8-M体系结构及其程序员模型简介

    Armv8体系结构有几个不同的配置文件。这些配置文件是体系结构的变体针对不同的市场和用例。Armv8-M体系结构就是其中之一配置文件。 Arm定义了三个体系结构配置文件:应用程序(A)
    发表于 08-08 06:18

    ARM同步原件体系结构指南

    本文介绍了ARM中可用的硬件同步原语体系结构,并提供了系统级程序员如何使用它们的示例。
    发表于 08-02 10:59

    ARM系统监控框架体系结构规范

    包含一个简短的介绍,以帮助读者。与体系结构兼容的实现必须 遵守本规范中的所有规则。 一些体系结构规则伴随着解释为什么指定体系结构的基本原理陈述 事实就是这样。基本原理陈述用字母X表示。 有些部分
    发表于 08-02 10:55

    了解体系结构 - 介绍 Arm 体系结构

    。该体系结构为软件开发人员公开了一个通用的指令集和工作流程,也称为程序员模型。这有助于确保架构的不同实现之间的互操作性,以便软件可以在不同的 Arm 设备上运行。本指南为任何对此感兴趣的人介绍了 Arm
    发表于 08-01 14:35