大数据时代关系数据库MySQL的创新与发展

2020-08-07 08:51颜清苗壮赖鑫生蒋昌猛
科技风 2020年20期
关键词:数据库技术大数据应用

颜清 苗壮 赖鑫生 蒋昌猛

摘 要:关系型数据库应用技术作为大数据时代信息领域支撑基础和软件学科的重要分支,仍然是计算机领域中最为广泛的应用技术。互联网的爆发诞生了大数据,也成就了MySQL。作为关系数据库的MySQL为WEB方面分布集群数据库系统的应用研究得到重视,MySQL的不断创新将满足可扩展性、可靠性和可用性等大数据要求,已经展现出关系数据库处理大数据的曙光。

关键词:大数据;数据库技术;MySQL;应用

中图分类号:TP311.13文献标识码:A

1 大数据时代数据库技术面临的新问题

1.1 大数据与云计算

随着大数据时代的到来,获取数据的设备不再只是传统计算机,智能手机、GPS定位仪等感测装置成为新的产生数据的来源,从这些设备搜集到的数据都与以往有很大的差异。大数据具有体量巨大、种类繁多、价值密度低、处理速度快等特征,面对大数据时代海量的数据增长与非结构化特点,传统的关系型数据库的处理能力捉襟见肘,没有优势。大数据不仅包括关系模型的结构化数据,还包括如日志文件、XML文档、JSON文档、Email等半结构化数据和各种格式的图片、视频等非结构化数据,大数据难以用常规软件进行捕捉、管理和处理,是超出传统数据库软件工具能力范围的数据集合。单台计算机无法处理大数据,实时的大数据分析,即采用分布式架构向数十、数百或甚至数千的电脑分配工作,依托云计算对海量数据进行分布式数据挖掘,通过“加工”实现数据“增值”。大数据处理的特色就是它的分布式处理、分布式数据库和云存储、虚拟化技术,大数据、云计算代表了大数据时代数据处理的新技术和新方法[1]。

1.2 NoSQL的发展状况

非关系型数据库NoSQL已经在非结构化和不可预知数据方面显示出明显的优势而崭露头角。NoSQL如MongoDb、redis、HBase等,无须经过SQL层的解析,可以存储自定义的数据格式,分布式并发存储读写性能很高,可以解决传统关系数据库做不到的事情,NoSQL数据管理技术的应用越来越受到人们的青睐[2]。但NoSQL存储系统没有系列化,使用键值对存储数据,数據没有耦合性,容易扩展,其key,value形式、文档形式、图片形式等格式是一种数据结构化存储方法的集合,keyvalue数据库产品却缺乏通用性,应用受到局限。NoSQL数据库除HBase有较完善的安全特性外其他均没有提供内建的安全机制,很多产品都不够完善,并缺乏强有力的理论、技术支持[3]。NoSQL无事务处理,不提供SQL支持,不支持附加功能BI和报表,学习和使用成本较高。NoSQL种类繁多,其共同的特点是无关系型特性,超越了普通数据库的概念,且严格意义上不是一种数据库,要取代关系型数据库十分困难。

1.3 关系型数据库的劣势与转型

大数据和关系型数据的不同之处在于它没有固定的字段、格式、结构,其中绝大多数是非结构化数据,但大数据也包含了少量结构化数据。传统的关系型数据库不能很好扩展,难以处理海量数据,支撑不了大数据的应用,在实现大数据分析的需求中力不从心。由于大部分分布式数据库都是用SQL作为标准查询语言,其数据的处理能力也仅局限于结构化数据,对于无法使用SQL进行解析的非结构化数据更是无能为力。NoSQL异军突起近乎占据了互联网分布式数据库的半壁江山,近几年分布式的关系型数据库也有所转型,纷纷开始支持JSON格式,向混合型数据库发展。关系模型相对于网状、层次等模型更容易理解,关系型数据库SQLite、Oracle、MySQL等使用通用的SQL语言操作,对于复杂的查询非常方便。为顺应大数据时代的发展,关系型数据库MySQL的分库与分表、业务拆分、主从复制等性能扩展,读写性能的提高在大数据应用中发挥了极大的作用,逐渐成为应用于WEB方面最为广泛的软件之一[4]。

1.4 关系数据库的性能瓶颈

面对大数据时代爆发式增长的海量数据,诸如图像、音频、视频等非结构化数据为主的大数据面前,传统数据库不仅缺少有效分析的工具和方法,也难以满足高并发的读写需求和海量数据的高效率读写。关系型数据库的实体完整性、参照完整性和用户定义的完整性形成了关系模型的事务一致性特点,降低了数据冗余。关系数据库缺乏灵活性,为稳定、固定的表结构及其事务的一致性付出了读写性能差的巨大代价。一直处于市场的垄断地位的关系数据库,随着存储、处理和分析的数据量指数倍的快速增长,关系模型设计架构及复杂的调优参数决定了传统SQL数据库很难进行扩展,加之专用场景下并不最优的通用标准,关系数据库并不适合存储过大的数据,高并发情况下,关系数据库在性能、数据安全、资源使用等多方面达到平衡调优成本巨大等劣势明显,面临的这一难题将极有可能沦落为性能瓶颈。

2 大数据时代关系数据库技术的难题

2.1 关系型数据库技术的发展趋势

数十年来,关系数据库中积累大量的应用数据已经成了社会的宝贵财富。从你的银行存款,到你的每一笔网上交易都在关系型数据库中保存着,关系型数据库每时每刻都在影响人们的生活。传统的数据库都是用SQL作为标准查询语言,其数据处理能力局限于结构化数据。例如IBM DB2,Oracle,Microsoft SQL Server,Sybase等等,版本也不断更新,在数据库管理系统中发挥了巨大的作用。如今,大数据时代的互联网带来了空前的信息大爆炸,深深影响着人类社会的生产与生活。关系型数据库有完善的安全机制,数据和用户的强制分类,不同类别用户访问的数据类别也不同,用户依据账户的权限操作数据库。关系型数据库需建立字段后存储数据,建好的数据库要增删字段极其麻烦。大数据技术改变了互联网数据的应用模式,能快速从各种各样类型的海量数据中获取有价值信息。在大数据时代,非结构化数据会自觉与不自觉地渗透到关系数据库中,关系型数据库技术突破若干缺陷之后,发展前景将十分广阔。

2.2 大数据时代的关系数据库技术及其研究動态

2.2.1 分布式集群数据库

分布式集群数据库系统即数据库服务系统,通过网络连接组成一个完整的大型的关系型数据库。数据库服务系统可由网络上不同地方的多台计算机组成,保证了海量数据的存储。数据库服务系统中任意一台计算机都保存着自己完整的数据库,并具有一致性、完整性、安全性三个性质。分布式集群系统是一个逻辑整体的数据库,互联网将各个数据单元链接在一起,分布集群服务器通过外部链接技术进行远程控制、管理、信息交换与数据共享,用户对此系统单一的逻辑访问请求自动分解变换成网络请求,客户机利用相应的数据库结点完成非数据库的处理操作。

2.2.2 关系型数据库MySQL

关系模型的二维表结构相对网状、层次等其他模型来说更容易理解,SQLite、Oracle、MySQL等是采用关系模型组织数据的关系型数据库。MySQL服务器自带三个数据库:information_schema数据库、mysql数据库、test数据库。information_schema数据库保存了MySQL服务器所有数据库的信息,比如数据库的名、数据库的表、访问权限、数据库表的数据类型、数据库索引的信息等数据库的点点滴滴信息都存储在这个数据库中。mysql数据库是MySQL服务器中的所有的信息表。test数据库是用于测试用的空的数据库。在大数据背景下,MySQL软件分为社区版和商业版两种,采用了双授权政策。通用的SQL语言易于复杂的查询,操作非常方便。在MySQL服务器中,其实体完整性、参照完整性和用户定义的完整性降低了数据冗余,形成了关系模型的事务一致性特点。MySQL软件使用不同的表格来存储数据,具有运行速度快、使用成本低、开放源码等优点[5]。MySQL软件使用C和C++进行编写,进行了多种测试,确保源代码的移植。MySQL软件可当一个单独程序在客户端服务器中使用,也可以作为一个库,植入到其他的软件中进行使用。

2.2.3 MySQL的集群与主从同步机制

传统的关系型数据库(RDS)扩展性差,MySQL采用集群的方式移植到云中,MySQL集群是一个无共享的、分布式节点架构的存储方案,提高了数据的容错性和高可用性能。MySQL采用ShareNothing架构,总的数据表划分成若干个小表,分别存储在每个不同的数据库服务器上。MySQL集群有节点回复、系统恢复、热备份恢复、故障转移、分区、联机操作等功能,利用主库对从库采用同步机制进行数据复制,将主库数据同步到其他从库数据节点上,数据在多个数据节点保存,由于每台服务器的独立性,MySQL集群保证了数据库的可扩展性,解决了传统数据库扩展性差的问题。

2.3 MySQL数据库在大数据技术中的地位

MySQL以标准化为前提,可以进行Join等复杂查询,事务处理能够保证数据的一致性。MySQL主要应用定位于互联网开发,其分表、分区、分库的分布式数据库架构等对数据库进行拆分策略,提高数据的处理速度与处理效率,最大限度提高了读取数据的速度和并发量,提高了数据库的写入能力。如今web2.0网站根据用户个性化信息实时生成动态页面和提供动态信息,基本上无法使用动态页面静态化技术,数据库并发负载非常高,往往达每秒上万次读写请求。互联网的爆发诞生了大数据,也成就了MySQL。基于WEB的MySQL体积小、速度快、成本低,能够及时处理上千万条记录,初步满足和支持大型的数据库高并发的读写和高效率读写等要求[6]。MySQL不断扩大关系数据库易于使用、易于维护、安全可靠、性能卓越等方面更胜一筹的优势,将使关系数据库经受住大数据时代的洗礼,也将在大数据应用领域中大行其道。

3 结语

数据库技术及应用领域占整个计算机应用的70%以上,大数据时代的数据库技术日新月异迅猛发展,大数据的兴起也促使数据库从单一的关系型数据库向混合型数据库发展[7]。作为关系数据库的MySQL与时俱进、不断创新,叠加了NoSQL的巨大影响,在大数据高并发读写和高效存储功能方面走得非常扎实,不可否认MySQL将能够满足大数据应用所需要的可扩展性、可靠性和可用性等要求[8],成为面向大数据的数据库主流技术。MySQL5.6正式版逐渐增加对NoSQL和Hadoop的支持,已经展现出关系数据库处理大数据的曙光。

参考文献:

[1]贾钦.分布式数据库技术在大数据中的应用[J].电子技术与软件工程,2019(08):162.

[2]龚畅.大数据下的NoSQL数据库技术分析[J].信息记录材料,2018,19(06):118119.

[3]卓铁农.大数据下的分布式数据库HBase[J].计算机产品与流通,2019(02):102.

[4]张伟龙,吕明,胡宏,杜宝珠,张捷.MySQL数据库服务器监控系统设计与实现[J].工业控制计算机,2019,32(12):1820.

[5]胡强.MySQL数据库常见问题分析与研究[J].电脑编程技巧与维护,2019(12):9192.

[6]江国文.大数据环境下基于MySQL的数据库架构设计与实现[J].电子世界,2018(11):200201.

[7]王井乐.基于大数据下主题数据库的研究现状与展望[J].中国新通信,2018,20(09):98.

[8]刘阳娜.大数据下的MySQL数据库的效率优化[J].信息通信,2017(12):111112.

基金项目:2018年江西省教育厅高校省级教改立项资助项目(JXJG181616)

作者简介:颜清(1962—),女,湖南宜章人,教授,主要从事数据库、数据挖掘、计算机应用与研究等。

猜你喜欢
数据库技术大数据应用
数据库技术在云计算背景下的应用
新形势下数据库原理的双语教学
数据库课程微课设计及应用
GM(1,1)白化微分优化方程预测模型建模过程应用分析
煤矿井下坑道钻机人机工程学应用分析
气体分离提纯应用变压吸附技术的分析
基于大数据背景下的智慧城市建设研究
会计与统计的比较研究