物联网使用什么数据库

Maria Colgan是Oracle的首席产品经理。

传统观点认为,关系数据库的可伸缩性或健壮性不足以处理大量连接,海量吞吐量以及掌握IoT(物联网)应用程序所需的所有很酷的技巧。 但是我知道这是不对的,因为Oracle客户已经这样做了多年。 究竟如何完成?

首先,让我们确保我们同意物联网的含义。 官方定义是通过日常物品的Internet互连,使它们能够发送和接收数据。 物联网涉及各种设备,从手表,电视和电话到烤箱,冰箱和通过连接和共享数据而变得“智能”的煤气表。 在某个时候,需要收集此数据以进行挖掘。

[ TensorFlow机器学习入门 。 • TensorFlow评论:最好的深度学习库变得更好 。 •查看最新版本的TensorFlow中的新增功能 。 | 通过InfoWorld的App Dev Report新闻通讯了解编程方面的热门话题。 ]

从数据库的角度来看,组织需要捕获从IoT设备发送的海量数据,将其吸收,然后根据业务需求进行挖掘。 摄取和快速分析这些数据对于企业在当今24 / 7、100%正常运行时间的商业环境中保持竞争优势至关重要。 这可以采用许多不同的形式,其中大多数形式在优化的关系数据库和硬件上都可以正常工作。

要使用SQL还是NoSQL?

一个常见的误解(由市场营销活动延续)是IoT工作负载需要NoSQL数据库,因为所需的接收率超过了传统关系数据库的功能。 正如许多Oracle客户所证明的那样,事实并非如此。 我们发现,与某些完整的NoSQL环境相比,优化的关系数据库可以在Oracle RAC集群的单个节点中吸收更多的信息。 请注意,我说的是一个优化的关系数据库。

总体而言,物联网工作负载的特征包括大量的小型轻量级转换,通常包括诸如地理空间数据和非结构化数据(视频或音频记录)之类的复杂数据类型。 因此,例如,从腕带收集健身数据的公司使用地理空间数据(记录行走的路线)以及步数,心率等。

尽管最近进行了大肆宣传,但高负荷工作负载并不是一个新概念。 例如,我们的一位电信客户每秒处理数百万个呼叫详细记录,每天最多可增加18 TB的数据。

在关系数据库上运行的证券交易所每秒记录180,000条消息,每天总计多达15 TB的数据。

那么他们该怎么做呢? 关键要求是可伸缩性,灵活性以及提供实时分析的速度。 在筛选非结构化数据时使用优化的硬件也是成功的重要组成部分。

物联网关键1:数据库可扩展性

可伸缩性是系统提供与可用硬件资源成比例且仅受可用硬件资源限制的吞吐量的能力。 扩展Oracle数据库系统有两种不同的方法:Real Application Clusters和分片。

使用Real Application Clusters(RAC),任何打包或自定义应用程序都可以在连接到共享存储的服务器池中不变地运行。 如果池中的服务器发生故障,则数据库将继续在其余服务器上运行。 当需要更多处理能力时,您只需将另一台服务器添加到池中,而不会造成任何停机时间。

分片允许将大型数据库分区为较小的数据库或分片,每个数据库或分片可以存储在不同的硬件上。 想象一下一家全球零售公司,它拥有一个庞大的关系数据库,其中包含已分拆的所有可用商品; 数据库的每个分片将包含目录的一部分。

当查询询问特定的窗口小部件时,数据库服务器会知道这些窗口小部件类型存储在哪个分片上,并从那里直接检索数据。 这种全球经济的另一个好处是可以为每个国家/地区创建一个分片,并将本地法规应用于该特定的分片。 例如,德国要求将所有德国数据实际存储在该国境内。 使用碎片很容易做到这一点。

到目前为止,大多数大规模运行的数据库都提供分片,包括MongoDB,Microsoft SQL Server和PostgreSQL。 但这还不足以分片数据。 同样重要的是有效运行跨分片查询的能力,这大大减少了获得完整业务视图所需的时间。

物联网的一项关键要求是能够快速提取大量数据的能力。 因此,无论将数据分段到何处,到该存储的带宽将比数据库本身更能控制负载的速度。 毕竟,数据加载永远不会比读取数据快。 如果网络每秒读取的速度不能超过200兆字节,那么数据加载的速度不能超过每秒200兆字节。

可伸缩性的其他重要组成部分是使用数组插入(与单行插入相反),并行执行以及使用外部表。

物联网关键2:数据库灵活性

灵活性是快速,轻松地适应变化的能力。 物联网仍处于起步阶段,每台设备都有新的用例。 能够轻松适应数据格式的变化至关重要。 面对此要求时,开发人员通常会转向JSON。 JSON极大地简化了应用程序开发,因为它允许在应用程序和数据库中使用相同的无模式表示。

分区也是实现大规模灵活性的关键。 分区使大量数据更易于管理,提高了整体性能,并且对应用程序完全透明。 分区的另一个好处是能够将历史数据存储在单独的分区中,从而可以将数据压缩并移动到较低的存储层。 这样,数据可用于数据挖掘,但不会减慢实时查询的速度。

物联网关键3:实时分析

如果不及时分析数据以达到影响业务成果的目的,那么所有这些加快数据接收和数据存储的技巧都将毫无用处。 最终,企业必须利用数据,这意味着要取出数据。

对于一家全球零售组织而言,一个目标可能是汇总所有分片上出售的产品,以确定在任何时间点上全球最受欢迎的十大产品。

对于一家国际电信公司来说,相同的数据库体系结构可能会以几种不同的方式提供帮助。 他们的大多数查询来自客户,因此他们可以同时使用分片和分区来从查询执行中消除很大一部分数据存储,从而达到满足客户期望所需的速度。

在内部,业务经理希望减少客户流失并提高盈利能力,因此他们在分片和分区中挖掘数据,寻找允许他们确定哪些客户可能要取消其服务或哪些其他产品的模式(例如,国际数据计划) ),他们可以主动为客户提供服务。

例如,他们可能提取取消并对其进行分析的客户的计费历史记录。 他们离开之前发生了什么事? 有什么共同的模式吗? 在转换到另一个提供商之前,是否有相当大的百分比超支了数据并连续获得三笔大账单?

一旦确定了这些模式,就可以采取积极措施保持业务。 例如,在客户经历了超支数据分钟的两次高峰之后,代表可以联系他们,以提供更多数据的不同计划并避免取消。

要了解有关简化数据库和更新针对IoT工作负载优化的硬件的其他技巧的更多信息, 请查阅本白皮书 。

Maria Colgan是 Oracle的 首席产品经理 Maria的核心职责是编写有关Oracle数据库以及将其整合到您的环境中的最佳实践的材料和讲座。 她还负责将我们的客户和合作伙伴的反馈纳入产品的未来版本中。 在担任该职位之前,Maria是Oracle Database In-Memory和Oracle Database查询优化器的产品经理。 Maria是 SQLMaria博客 的主要作者, 也是 Oracle Optimizer博客 的特约作者

-

新技术论坛提供了一个以前所未有的深度和广度探索和讨论新兴企业技术的场所。 选择是主观的,是基于我们选择的技术,我们认为这些技术对InfoWorld读者来说是重要的,也是他们最感兴趣的。 InfoWorld不接受发布的营销担保,并保留编辑所有贡献内容的权利。 将所有查询发送到 newtechforum@infoworld.com

翻译自: https://www.infoworld.com/article/3301861/how-to-achieve-large-scale-iot-with-relational-databases.html

物联网使用什么数据库

物联网使用什么数据库_如何使用关系数据库实现大规模物联网相关推荐

  1. 物联网数据 时序数据库_有关防止物联网数据泄露的方法的最终清单

    物联网数据 时序数据库 物联网的力量 (The Power of the Internet of Things) A popular definition says that IoT is " ...

  2. 物联网平台 源码_国内首个智慧交通物联网平台发布

    "智慧锥桶"工作示意图. 在近日召开的2020世界交通运输大会上,国内首个智慧交通物联网平台发布.该平台通过全系列物联网硬件设施,包括智慧锥桶.事故车盒.执法一体化快速封路器等和智 ...

  3. 开源合同管理系统_「物联网架构」最适合物联网的开源数据库

    物联网产生大量的数据,包括流数据.时间序列数据.RFID数据.传感数据等.要有效地管理这些数据,就需要使用数据库.物联网数据的本质需要一种不同类型的数据库.以下是一些数据库,当与物联网一起使用时,会给 ...

  4. 云原生数据库_数据标签竞赛云原生地理空间冲刺

    云原生数据库 STAC specification is getting closer to the ver 1.0 milestone, and as such the first virtual ...

  5. 计算机网络物联网论文,物联网技术及其应用_计算机网络论文.doc

    物联网技术及其应用_计算机网络论文 物联网技术及其应用_计算机网络论文 论文关键字:EPC RFID Savant ONS 物联网技术 论文摘要:至上个世纪90年代物联网概念出现以来,越来越的人们对其 ...

  6. 开源物联网平台ThingsBoard数据库40张数据表设计一览

    开源物联网平台ThingsBoard数据库40张数据表设计一览 1 ThingsBoard数据库总览 1.1 数据库信息 1.1.1 数据库名称 1.1.3 数据库用户名及密码 1.1.3 数据库表 ...

  7. 物联网IOT时序数据库influxdb(2.x)

    物联网IOT时序数据库influxdb 物联网IOT时序数据库influxdb(2.x) 1.简介 2.InfluxDB相关概念 3.InfluxDB安装 3.1 本地安装 3.2 docker容器方 ...

  8. 数据库_第一第二第三范式讲解(通俗易懂)

    第一范式(1NF)无重复的列 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性.如果出现重复的属性,就可能需 ...

  9. tidb数据库_异构数据库复制到TiDB

    tidb数据库 This article is based on a talk given by Tianshuang Qin at TiDB DevCon 2020. 本文基于Tianshuang ...

最新文章

  1. Elasticsearch内存分配设置详解
  2. webpack 入口文件 php,webpack,jsx_webpack jsx 找不到入口文件,webpack,jsx - phpStudy
  3. ARM1176JZF-S/S3C6410 内存地址转换
  4. 实战SSM_O2O商铺_23【商铺列表】Controller层开发
  5. 20200207_Dontla_MBTI第二步基本分析报告((ISTJ))
  6. python类中变量作用域_python进阶14变量作用域LEGB
  7. sql-mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION问题解决
  8. win7 64位 内核安全_Win7进入死亡倒计时,全国一半电脑要遭殃?
  9. Ajax与jQuery异步加载数据
  10. 2016021902 - linux解压缩命令
  11. idea 添加格式化json插件GsonFormat 和快速解析第三方返回json数据
  12. VMWare安装报错:此安装程序要求您重新启动系统以完成 Microsoft VC Redistributable安装,然后重新运行该安装程序。
  13. vue中使用微信聊天表情
  14. 【Android驱动】高通msm8953背光流程
  15. 计算机桌面变蓝屏,电脑进入桌面蓝屏解决方法
  16. Eclipse - 更换新的工作空间后,怎么把上一个工作空间的配置复制过来
  17. 接入小程序客服(java版教程),处理第一次主动推送会话超时问题
  18. GBC游戏掌机(一)
  19. SIP协议详解(中文)-1
  20. 星淘惠:阿拉山口跨境电商班列为跨境电商保稳提质助力

热门文章

  1. 【机器学习】阿里云天池竞赛——工业蒸汽量预测(2)
  2. springboot自定义ClassLoader实现同一个jar支持多版本的使用场景【附源码】
  3. MySQL系统变量auto_increment_increment与auto_increment_offset学习总结
  4. 在arm架构的mac上安装sql server(m1芯片 or m2芯片)
  5. C语言阶段小项目(火车购票系统)
  6. 智慧城市是什么,建设智慧城市需要哪些核心技术?
  7. dalvik下替换so简单dump出梆梆加固保护的odex
  8. 什么是ANR,如何避免ANR
  9. Easy-x的基础教程使用介绍
  10. stm32驱动NRF24L01_原理+代码解析