APP下载

大数据环境下基于MySQL的数据库架构设计与实现

2018-06-19江西应用工程职业学院江国文

电子世界 2018年11期
关键词:数据表备份实例

江西应用工程职业学院 江国文

引言

随着互联网技术的快速发展,人们频繁的访问数据库,向后台发送数据处理请求。因此需要操作系统拥有较快的处理速度,来满足人们的访问需求。与此同时,随着大规模系统的出现,MySQL技术也有了较快的发展,充分发挥出运行速度快、使用成本低的优势,有效提高了数据处理的质量与效率。而且使用基于MySQL的数据库架构,既可以按需使用数据资源,还可以提高数据安全性。因此,本文讨论如何在大数据环境下,设计与实现基于MySQL的数据库架构,就显得极为重要。

一、大数据环境下MySQL的数据库架构概述

大数据是指无法在可承受的时间范围内用常规软件进行捕捉、管理和处理的数据集合。现阶段,大数据的定义已经不再单纯局限于数据的规模大小,它代表着传统的计算机技术已经难以有效处理庞大的数据信息,同时也代表着大数据处理的新技术和新方法,将会带来更大的发展。通常来说,大数据具有四个特征。一是数据体量巨大。二是数据种类多样,主要可以分为结构化数据和非结构化数据两种。三是指价值密度较低,这与数据总量的大小互为反比。四是指处理数据的速度较快,这是大数据最为突出的优势。随着互联网技术的飞速发展,大数据技术也在各个领域中得到了广泛应用,其基本内涵逐渐呈现多元化特点,需要从理论、技术与实践三个角度深入解析。就理论角度而言,大数据理论是大数据技术发展的必然需求,其也是相关领域应用的基础。大数据的理论基础可以理解为相关行业对大数据技术的定性描述,进而探讨大数据对行业的作用。就大数据技术角度而言,大数据技术是大数据发展的重要基石。大数据技术在发展过程中,结合互联网、云计算、信息存储、分布式与感知技术,通过对大量的数据进行采集、分类与存储,最终规整形成统一的大数据技术。就大数据实践角度而言,大数据实践是大数据相关技术的最终体现,也是大数据技术的根本价值,各行各业利用大数据技术进行相关实践,共同描绘了大数据技术宏伟蓝图。

MySQL概念与特点:

在大数据背景下,MySQL作为一个关系型数据库,广泛应用于WEB方面。且随着信息技术的迅猛发展,MySQL逐渐成为关系型数据库应用最广泛的软件之一。在实际应用过程中,该软件会使用不同的表格来存储数据,有助于分类整理数据。同时,MySQL软件还采用了双授权政策,分为社区版和商业版俩种。最大的优点是开放源码,除此之外,还有运行速度快、使用成本低等优点。就其特性而言,首先,使用C和C++进行编写,还进行了多种测试,确保可以进行源代码的移植。其次,既可以当做一个单独的程序,在客户端服务器中使用,也可以作为一个库,植入到其他的软件中进行使用。此外,还支持大型的数据库,可以及时处理上千万条记录,提高数据的处理速度与处理效率。

二、MySQL的数据库架构设计与实现

(一)MySQL关系型数据库设计

1.相关功能确定

MySQL关系型数据库设计时,其创建功能与删除功能主要包括于DBEntityTask中。在创建过程中主要采用多线程设计原则,每当设计一个MySQL关系型数据库时,就需要多线程处理。具体设计如下:

2.数据表设计

MySQL关系型数据库的创建过程主要包括db_entity_list、server_pool_list与ser_connection三张表。具体过程中,server_pool_list主要负责记录大量数据、内存等参数信息;iops主要负责数据的查询,表db_entity_list与表srv_connection想关联,通过一系列算法操作。表server_pool_list中的vip字段是用来访问实例的IP地址,访问完之后将信息记录在表db_entity_list中的VIP字段里。

3. MySQL关系型数据库实现过程

在MySQL关系型数据库创建过程中,相应的云服务平台会对相关信息参数进行检验,校验通过后,会对输入的信息编码,并传给C++端进行处理。当C++端接收到相关信息编码后,会依据系统规则,将相应指令录入db_entity_list中。相关人员则通过查询srv_connection表,可以获得相应的参数。再次通过服务器调试,便可获得server_po_lis在MySQL关系型数据库中的地址。Python端收到消息后,将消息解码,对所连接的存储创建lvm,用于安装数据实例;其次,在实例创建过程中,端口会随机生成MySQL数据库访问密码;最后,如果MySQL关系型数据库创建失败,则会将相关信息反馈于服务器中。服务器根据反馈信息,进行相应的处理,便直接完成MySQL关系型数据库的更新。

(二)MySQL关系型数据库实例操作

1.功能设计

MySQL关系型数据库还包括升级数据库资料、修改对应参数与刷新信息状态等实例。基于实例是可用状态,用户才可对数据库中的实例进行操作,具体操作步骤如下:

2.数据表设计

对实例可进行升级实例、刷新实例、更改参数的操作,其中参数修改操作涉及数据库表 db_ entity_list、表db_para_list与all_parameter_list数据表。若用于有修改相应参数的需求时,首先需要在上述数据库表中对相应的参数进行查询;其次,再获取表db_entity_list中记录的实例ID,并根据获取到的ID在表db_para_list中查找db-id字段,在表db_para_list中,记录了每个参数的默认值和可修改范围。

3.具体实现

当用户要对某一个参数进行修改时,前台会将信息以编码形式传递给C++端,C++端收到消息后将信息解码,根据数据信息去数据库中查询;如果查询结果显示是第一次修改数据,系统就会将修改后的信息插入表db_para_list中,反之,系统将直接修改数据表中的信息。有些MySQL数据库参数需要将实例运行停止后才可以变动;因而需要在all_parameter_list数据库表中进行相应参数查询,并确定是否进行实例查询,如果不需要,则sql语句可以对参数直接修改,反之,就需要先关闭实例,再对实例中的配置文件进修改,修改结束后自动重启相应的实例。最终,系统如果检测到相关实例完成重启后,变将相应的信息反馈到C++端,便会将数据库状态设置为可用状态。

(三)数据库实例备份的设计与实现

1.功能设计

实例备份分为立即备份和定时备份。DBEntityTask 类中包含的方法可对实例数据进行备份、删除以及创建删除临时实例数据等操作。实现实例的备份和恢复的方法如下:

2.数据表设计

关于MySQL数据库关于实力备份和恢复的表有backup_info_list和backup_stra_list,其中表backup_ stra_ list用于备份策略的设置,表backup_ info_ list用于记录备份文件的信息,无论是手动备份还是自动备份,所有的备份信息都记录在表backup info_ list中。

3.具体实现

MySQL数据库实现备份有用户手动备份和系统定时备份。定时器触发定时备份设置,备份信息就会存储到数据库表backup_stra_list中,当出现备份时间时,定时器自动响应并发出请求。同时,前端的服务器应及时查看数据备份情况,如果不处于备份状态,则无法进行备份操作;反之,把信息以编码的形式发送到C++端,C++端收到信息后进行解码,并将相应的数据信息录入backup_info_list数据表中。用户可在WEB页面查询到所有备份记录。

三、结束语

如今微博、网游等终端广泛应用,频繁向后台发送数据处理请求,传统单机数据库系统正面临着前所未有的PB级数据量的存储和计算难题。而MySQL数据库,是以GPL开源协议为基础,进而开发出来的开源数据库软件,同时,MySQL数据库自身性能及稳定性卓越,带给使用者很大的信心。因此,要实现大数据的快速发展,就要有数据库技术的全力支持。结构化、非结构化、面向关系型、面向对象等众多数据库概念,只有与现代化技术相互融合,才有可能促进双方共同发展,进而实现多源异构的海量数据存储以及信息资源的高效利用。

[1]刘艳.大数据环境下基NoSQL数据库的存储技术研究[J].信息通信,2016(9):108-109.

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

[3]刘江霞.一种基于Hadoop的大数据仓库技术研究[J].电脑编程技巧与维护,2017(16):65-67.

[4]王小霞.基于Hibernate框架的科研管理信息系统的设计与实现[J].信息技术与网络安全,2017,36(23):104-106.

[5]赵永霞,李文杰.SQL Server中的数据导入MYSQL[J].通讯世界,2016(8):212-212.

猜你喜欢

数据表备份实例
“备份”25年:邓清明圆梦
湖北省新冠肺炎疫情数据表
基于列控工程数据表建立线路拓扑关系的研究
浅析数据的备份策略
图表
完形填空Ⅱ
完形填空Ⅰ
基于VSL的动态数据表应用研究
出版原图数据库迁移与备份恢复
神奇的备份工具BackupXpress Pro