不同云环境下使用MongoDB与MySQL数据库的物联网数据管理性能评估外文翻译资料

 2023-03-14 06:03

不同云环境下使用MongoDB与MySQL数据库的物联网数据管理性能评估

作者:MEyada,WSaber,MMEGenidy,FAmer

摘要

物联网(IoT)给数据库管理系统(DBMS)带来了新的挑战。在日常生活中的物联网设备使用了大量的传感器。这些传感器产生大量的异构数据,需要由适当的DBMS来处理。评估在物联网中如何存储和操作大量异构数据方面给DBMS带来了挑战。DBMS可以分为两种主要类型:关系型DBMS和非关系型DBMS,这两种主要类型的代表分别为MySQL和 MongoDB。本文旨在提供一个全面的比较评估两种流行的开源DBMS,这种比较是基于对插入和检索大量物联网数据时性能的评估,以及对云计算中两种类型的数据库处理不同规格资源时性能的评估。本文还提出了两种预测模型,并根据数据库的大小和云实例的规格对它们进行了区分,以估计请求响应时间。这些模型有助于选择适当的DBMS,以便根据估计的响应时间在具有特定规格的云实例上管理和存储特定大小的数据。结果表明,通过增加测试数据量,MongoDB在延迟和数据库大小方面优于MySQL。此外,MongoDB可以比MySQL更好地节省资源,因为MySQL需要更高的硬件的资源却以较低的性能工作。

关键词:物联网; DBMS; SQL; NoSQL; MySQL; MongoDB; AWS; 云; 多重非线性回归;

前言:

如今,物联网(IoT)技术已成为许多行业的支柱,如智能家居系统、工业控制系统、药房和医院监控、开源网络数据和气象站等。物联网是一个基于感知、收集和共享数据的系统,因此该系统需要进行大量数据的交换操作。利用物联网技术生成的大量异构数据,如文本、数字、音频、视频和图片。这些类型的数据不但需要在云服务器中传输、处理和存储,还需要按需查询和更新它们。存储和管理大量的有效的物联网数据是主要挑战之一。灵活的数据库管理系统(DBMS)是实现这一挑战的重要目标。

DBMS是一个负责存储和管理数据库的软件,关系型DBMS是应用十分广泛的系统。它们基于关系模型,使用结构化查询语言(SQL)作为应用程序编程接口语言。关系型DBMS可以很好地存储结构化数据和管理它们之间的关系。然而,使用物联网意味着要处理大量异构数据,这对传统的关系型DBMS的性能产生了不利影响。针对传统关系型DBMS的局限性,提出了非关系型DBMS。NoSQL数据库是无模式的,它们的设计目的是与非结构化数据协调工作。他们应该易于分发,具有高可伸缩性和可用性。这些属性需要从数据的角度来实现物联网背后的愿景。寻找一个合适的DBMS来管理和存储大量的异构数据是当前面临的挑战之一。对关系型和非关系型DBMS的性能评估是解决这一挑战的方法之一。

云计算技术提供强大的服务器、网络、存储、服务和应用等可配置计算资源池,可以用最少的管理工作或服务提供者来快速提供和发布。云存储服务是云基础设施的重要组成部分。它可以很容易地处理大量数据。这类数据库使用云计算范式来优化一致性、可用性和分区容忍度。

本文的主要目的是在合适的数据库管理系统中找到一种有效的方法来管理和存储大量的异构数据。这一目标是通过进行综合实验来实现的,以比较和评估两种类型的数据库的性能。性能指标包括延迟和数据库大小。该评估执行如下:

1.评估操作异构物联网数据对性能的影响。

2.评估因物联网网络扩展和数据存储在数据库中的方式以及存储数据的大小而导致的工作负载增加的程度。

3.研究提升云实例能力对提升性能的影响。

4.提供一种新的方法来评估和比较各型DBMS,并根据预测模型来估计响应时间的延迟。

本文的其余部分组织如下。第1节介绍了背景和相关工作。第2节介绍了实验评价中使用的硬件和软件工具。第3节介绍性能评估实验和结果。第4节介绍了预测合适DBMS满足用户需求的统计分析。

一、背景及相关工作

1、试验背景

物联网技术基于从传感器、跟踪设备、智能手机、社交媒体和车辆等不同来源收集大量数据。这些类型的数据通过网络发送到适当的云平台,由适当的服务进行管理。物联网应用分类。根据性能要求,分为四个部分:关键物联网、大规模物联网、工业自动化物联网和宽带物联网。在这里,性能需求根据数据大小、延迟、数据速率、可靠性和可用性进行评估。物联网技术的基本目标是有效地操纵数据,服务器和数据中心负责平滑地操作和存储所有接收到的数据,然后通过适当的编程语言处理数据。最后,将该数据存储在数据库中。图1展示了管理和存储物联网数据的主要操作。

图1管理和存储物联网数据。

云服务提供商如微软、谷歌云和亚马逊网络服务(AWS)为云用户提供商业应用程序、网络服务和基础设施。微软Azure用于为以微软为中心的组织提供通用的业务应用程序和开发环境。此外,它还用于云原生应用程序和批处理计算。谷歌云用于原生云应用程序和批处理计算,以及作为一个整体利用谷歌云平台的项目。AWS在基础设施市场中最受欢迎,因为与其他IaaS提供商相比,AWS拥有最高的市场份额和计算能力。AWS有很多服务,其中之一是弹性计算云(EC2),它提供了创建虚拟专用服务器(VPS)的能力,比如你的PC,但除了带宽和存储空间外,还具有专用的互联网协议地址(IP)、GB内存和处理器核心。它实际上是AWS服务之一,Amazon简单存储服务(AmazonS3)用于将数据集保存在数据库服务器中。服务器端编程语言负责许多任务,如处理收集的数据、与服务器交互、与数据库交互以及对数据库的操作。PHP,Python和Node.JS是最常用的服务器端编程语言。Node.JS是最常用的,因为它是JavaScript操作环境,事件驱动,异步编程和专门为网络服务设计。需要良好的数据库管理系统以适当的方式存储收集的数据。Oracle和PostgreSQL通常被称为SQL数据库。它们是最常见和使用最广泛的数据库。在开始处理数据库之前,SQL需要一些预定义的模式来设置结构。在这里,所有的数据必须遵循相同的结构,这意味着结构的更改对任何系统而言都是困难的。不幸的是,使用物联网网络会产生大量异构数据。传统的SQLDBMS并不是为解决这些问题而设计的。MongoDB、Cassandra、Hbase等非关系型数据库通常称为NoSQL(Not-onlySQL)数据库。NoSQL数据库具有针对异构数据的动态模式。NoSQL数据库中所有类型的数据都以多种方式存储和管理,如面向列、KeyValue和基于图或者组织为面向文档的存储。

MySQL是由Oracle公司开发、发布和支持的一种流行的开源关系型DBMS。与其他关系系统一样,MySQL将数据存储在表中,使用SQL语言访问数据库。在MySQL中,您可以根据需求预先定义数据库模式,并设置规则来管理表中字段之间的关系。模式的任何更改都需要一个迁移过程,该过程可以使数据库脱机或显著降低应用程序性能。MySQL支持多种类型的复制服务。此外,它的分布式数据库引擎比PostgreSQL更健壮。

MongoDB是一个面向文档的非关系数据库,可以用于分发和存储大型二进制文件,如视频和图像。它将数据作为文档以二进制表示形式存储,称为BSON(二进制JSON)对象,这是类似于对象的二进制编码JSON。相关信息存储在一起,通过MongoDB查询语言进行快速查询访问。MongoDB中的文档可以被组织为“集合”。字段可以因文档而异,不需要向系统声明文档的结构——文档是自描述的。如果需要将一个新字段添加到文档中,那么可以在不影响集合中其他所有文档、不更新中央系统编目和不使系统脱机的情况下创建该字段。因此,在资源使用和长期存储方面,它比其他数据库具有更好的性能,能够处理大量的物联网传感器数据,。MongoDB还支持对嵌入式对象和数组进行索引。与其他NoSQL数据库相比,它能有效地与内存存储、复杂数据和动态查询进行交互。MongoDB是一个基于扩展的方案,提供了在硬件扩展,情况下的灵活性。

2、相关工作

很多研究介绍了基于物联网数据结构的SQL和NoSQLDBMS的比较。这些研究中的主要指标是存储、语法和查询延迟、数据库连接时间和模式设计。在本文中,讨论了MongoDB和MySQL混合数据库的可能性。结果表明,将MongoDB与MySQL结合使用,可以提高使用MySQL数据库的性能。在本文中,作者展示了数据模型引用、嵌入和混合模型之间的性能差异。该混合模型基于合并集合以提高性能并减少存储大小。使用两种模型对关系和非关系DBMS的性能进行了评估。一种是在小规模数据上实现的,另一种是在大规模数据上实现的。基于CRUD操作对性能进行了评估,得到了两种DBMS的优缺点。性能是根据查询的时间和数据的大小来评估的。然而,这种比较是在简单的结构化数据上实现的,并且检查了一种类型的MongoDB模式,这并没有显示出MongoDB的好处。

在本文中,关系数据库和非关系数据库对物联网数据进行了检查。实验在MongoDB、PostgreSQL和MySQL上实现。结果表明,NoSQL在不同场景下都优于SQL。然而,实验中使用的传感器数量是固定的。此外,还研究了一种类型的MongoDB模式。

本文的提出是为了解决以前的许多局限性。比较了作为关系数据库的MySQL数据库和作为非关系数据库的MongoDB数据库在两种不同模式类型下的差异--引用和混合。作为一个非关系数据库,在两个数据库上都产生了更多的增强,以增加灵活性并减少冗余。它使用物联网基准来评估两种类型的数据库对物联网数据的性能。此外,研究了不同传感器数量的不同场景。性能是根据大小和延迟评估的。此外,实验在不同的云服务器上实现,不同的硬件规格。此外,还引入了统计分析来根据数据大小和服务器性能预测应该使用的最佳DBMS。

二、提出的绩效评估

1、试验概述

物联网数据结构被认为是主要的异构数据结构类型之一,需要适当的DBMS来处理。DBMSs的评价根据使用的标准而不同。本文试图提出综合的性能评估标准,并试图通过这种评估来展示各种类型数据库的行为。该实验的目的是评估和比较两种类型的DBMS:SQL的性能数据库和NoSQL数据库的物联网数据。这些实验中的主要指标是响应时间和数据库的大小。

表1实例的规范。

该评估主要由三个部分执行。首先,本文将研究工作负载增加对两个数据库的影响。这一部分有助于比较处理大规模物联网数据的两个数据库的性能。其次,它测试了改进云实例的能力对提高两个数据库的性能的效果。它有助于决定哪个数据库可以更好地节省资源。第三,通过对引入实验的测量数据进行统计分析,得出预测模型。本部分应用了两种预测方法,并对它们进行比较,以估计数据的延迟;在数据大小和实例性能方面。它还对这两种估计方法进行评估,并定义哪一种更准确。所提出的预测模型提供了在任意数据大小和任意实例上评估和比较两种类型的数据库的灵活性。它选择了具有低估计延迟的DBMS。

2、软件和硬件

本节讨论在建议的性能评估中所使用的软件和硬件。使用Node.JSLTSversion10.16.3和NPMversion6.10.2对采集的数据进行处理。Ubuntu16.04LTS版本作为操作系统安装MongoDB、MySQL和Node.JS。在实现此比较时使用了弹性计算云(EC2)。EC2仍然是AWS云平台的核心服务。它为客户提供了在Amazon虚拟服务器(EC2Instances)上构建和托管软件系统的机会。EC2是云中的虚拟专用服务器(VPS),其中的存储可以调整大小,而且几乎是无限的。对于Ec2服务,使用了三种类型的实例t3。large(称为VM1),t3。xlarge(简称VM2)和t3.2xlarge(简称VM3)。T3实例的特性是IntelXeonPlatinum8000系列(Skylake-SP)处理器,其全核心TurboCPU时钟速度可达3.1GHz。此外,还支持新的IntelAdvancedVectorExtensions512(AVX-512)指令集。表1显示了实例的规范。

表 1 实例的规范

3、数据库设置

1)物联网基准

本文以污染数据库为基础。这个数据库是基于收集关于室内和室外空气污染的因素。室内空气频繁严重污染比室外空气多,可自然净化。依赖于与被测空间的空间特征相关的时间状态和变量的物联网传感器数据应区别于其他同质输入,如图像和音频,因为它考虑的是异构数据,所以添加了一些更改,以增加灵活性并减少使用预期数据库时的冗余。数据库可以分为三个部分:传感器部分、位置经纬度部分和时间戳部分。第一部分是为特定的站点添加一个新的传感器。这部分是可以从多值部分添加一个新的字段为每个新传感器添加一个新的记录,转换为每个新传感器的传感器数据字段,即字段的数量等于所有传感器的数量,记录只有两个字段:sensor_id字段和sensor_data字段。这种更改增加了灵活性,因为它允许在不影响数据库结构的情况下增加任意数量的传感器。

第二部分涉及存储位置的经度和纬度。这部分可以归一化为一个独立的表或集合,其中包含三个字段:除了原始表或集合之外,每个站点位置的station_id、经度和纬度,但是用station_id字段替换longitude和latitude字段。这种变化减少了原始数据中的冗余,因为每将传感器数据插入到一个表或集合中,就不需要添加站点位置。第三部分,时间戳部分,涉及传感器数据的即时接收。这部分数据非常重要,必须添加到原始表或集合中。

通过这些改变,数据库在处理MySQL和MongoDBDBMS时变得更加灵活。编辑数据库后,它能够接收和存储来自任意数量的城镇、车站和传感器的数据。除了保存每个站点的位置,经度和纬度,以及每个记录的日

剩余内容已隐藏,支付完成后下载完整资料


英语原文共 14 页,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[596330],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。