(计算机应用技术专业论文)基于分区的网络行为监控系统数据库设计与优化研究.pdf_第1页
(计算机应用技术专业论文)基于分区的网络行为监控系统数据库设计与优化研究.pdf_第2页
(计算机应用技术专业论文)基于分区的网络行为监控系统数据库设计与优化研究.pdf_第3页
(计算机应用技术专业论文)基于分区的网络行为监控系统数据库设计与优化研究.pdf_第4页
(计算机应用技术专业论文)基于分区的网络行为监控系统数据库设计与优化研究.pdf_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

乏r t e 工dt 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。 签名:奶旌 日期:动伊年争月矽日 论文使用授权 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:韩钙多冬导师签名: 日期:7 1 0f d 年乡月咕日 f _ 、 吣 摘要 摘要 在2 1 世纪这样的信息时代,数据库技术已经渗透到各种应用领域当中,互联 网的快速发展推动着数据库技术应用的激烈变革。在信息数据量飙升的环境下, 用户不再仅仅需求某种单一软件,而是越来越关注并寻求稳定、高效的数据层解 决方案。- 本文所依托的课题项目背景某企业b s 结构员工网络行为监控系统引用 了当前最流行的l a m p ( l i n u x 卅却a c h e + m y s q l + p h p ) 架构进行开发。被大家公认 为目前l i n u x 系统下运行速度最快的m y s q l 数据库保存了各种网络行为日志信 息。然而面对要频繁读写大规模日志数据这样的需求,如何进行合理的数据库设 计与性能优化,使得网络行为监控系统数据库稳定、高效的运行是本课题的主要 工作目的。 为保证大规模数据的查询效率,本文设计了一种基于静动隔离数据拆分的架 构。首先将大规模日志数据拆分为活跃数据与静态数据,即实时与历史日志,通 过定时任务调度实现活跃数据到静态数据的复制,其次结合m y s q l5 1 版本引入 的新特性p a n i t i o n 表分区技术,按照不同时间粒度对日志进行表分区。对于数 据量较小且频繁访问的基础数据表,采用磁盘表与内存表并存方式保存数据,以 提高表连接效率。为监控策略制定模块设计了灵活的监控策略表,以模板形式应 用策略到单个被控对象或组被控对象中,并实现了监控策略应用的组优先,方便 管理员操作。从而设计了一套合理、高效的数据库s c h e m a 。 在q u e r y 优化方面,本文通过分析频度较高的q u e r y 语句e x p l a i n 执行计划, 设计了适当的索引。对于不适合建立索引的数据列,本文提出了一种数据分类模 型,按照列属性对数据表进行一维或二维关系的数据分类,并以视图方式保存, 通过匹配对应的数据子集,实现查询语句重组,取代原来繁琐的q u e r y 语句。经 测试表明,q u e r y 优化后避免了全表扫描造成的响应时间延迟,查询效率比优化前 大大提高,证明了该优化方案的可行性。 关键字:m ys q l 数据库,s c h e m a 设计,性能,优化 9 a b s t r a c 玎 a b s t r a c t 21s tc e n t u r yi st h ei n f o r m a t i o na g e ,a n dd a t a b a s et e c h n o l o g yi sa p p l i e di nv a r i o u s f i e l d sw i d e l y t h er a p i dd e v e l o p m e n to fi n t e m e tp r o m o t e st h ei n t e n s ec h a n g e si nt h e d a t a b a s e i nah u g ed a t ae n v i r o n m e n t ,o n l yt h es i n g l es o f t w a r ec a nn o tm e e tt h en e e d s a n ym o r e ,w h i l eas t a b l ea n de f f i c i e n td a t a1 a y e rs o l u t i o ni se v e nm o r ei m p o r t a n ta n d r e c e i v e sm u c hc o n c e r n t h es o u r c eo ft h i sd i s s e r t a t i o ni sab s e n t e r p r i s e b a s e dn e t w o r kb e h a v i o r m o n i t o r i n gs y s t e m t h i sp r o j e c ti sd e v d o p e do nl a m p ( l i n u x + a p a c h e + m y s q l + p h p ) p l a t f o r m t h ep r o c e s s i n gs p e e do fm y s q l i nl i n u xi sg e n e r a l l ya c k n o w l e d g e da s f a s t e s tc u r r e n t l y ,a n dm a s s i v en e t w o r kb e h a v i o rr e c o r d sm o n i t o r e da r es t o r e di nm y s q l h o w e v e r ,w i t had e m a n do ff r e q u e n t l yr e a d i n ga n dw r i t i n gh u g ea m o u n to fd a t a ,t h e m a i nt a s ko ft h i st h e s i si st od e s i g na n do p t i m i z et h ed a t a b a s e ,s 0t h a tt h ed a t a b a s ec a n r e m a i nr u n n i n gs t a b l e l ya n de f f i c i e n t l y i no r d e rt oe n s u r et h eq u e r ye f f i c i e n c y , ad a t a b a s ea r c h i t e c t u r eb a s e do ns t a t i ca n d a c t i v ed a t ap a r t i t i o ni sd e s i g n e di nt h i sd i s s e r t a t i o n f i r s t l y ,t h em a s sd a t ai ss e p a r a t e d i n t ot h es t a t i cd a t aa n da c t i v ed a t a ,w h i c ha r ea l s oc a l l e da sr e a l t i m eo n e sa n dh i s t o r i c a l o n e s ,a n dt h ec o p y ,w h i c hi sf r o mr e a l t i m et oh i s t o r i c a lo n e ,a r ei m p l e m e n t e dt h r o u g h t i m i n gt a s kd i s p a t c h i n g t h e nb o t ht h et w ok i n d so fd a t aa r es e p a r a t e di n t om a n y p a r t i t i o n sb a s e do nt i m eg r a n u l a r i t y t h ef u n d a m e n t a ld a t a ,w h i c hi ss m a l la n d a c c e s s e d f r e q u e n t l y ,a r es t o r e du s i n gm e m o r ye n g i n ea n dm y i s a me n g i n e t h i ss o l u t i o ng r e a t l y i m p r o v e st h ep e r f o r m a n c eo f t a b l ej o i no p e r a t i o n i nm o n i t o r i n gp o l i c yf u n c t i o nm o d u l e , i no r d e rt om a k et h ea d m i n i s t r a t o ro p e r a t i o ne a s i l y ,t h ec o n t r o lp o l i c i e sa r ea p p l i e d u s i n gt e m p l a t ea p p r o a c h ,a n dg r o u pp r i o r i t ya r ei m p l e m e n t e d t h e r e f o r e ,a l la p p r o p r i a t e a n de f f i c i e n td a t a b a s es c h e m ai sd e s i g n e d i i lt h ea s p e c to fq u e r yo p t i m i z i n g ,t h r o u g ha n a l y z i n gt h ee x p l a i np l a no fq u e r y s t a t e m e n t s ,w h i c ha r eu s e df r e q u e n t l y ,s o m ea p p r o p r i a t ei n d e x e sa r ed e s i g n e df i r s t l y a s t ot h ed a t ac o l u m n sn o ts u i t a b l ef o ri n d e x i n g ,ad a t ac l a s s i f i c a t i o nm o d e li sd e s i g n e di n t h i st h e s i s t h ed a t aa r ed i v i d e di n t os e v e r a ls m a l lt w o d i m e n s i o n a la n do n e d i m e n s i o n a l d a t as u b s e t t h e s es u b s e ta r es t o r e da sv i e w s ,t h eo r i g i n a l s t a t e m e n ta c h i e v e s i i 一丝兰! 坠g ! r e c o m b i n a n tb ym a t c h i n gt h ec o r r e s p o n d i n gd a t as u b s e t t h et e s tr e s u l ts h o w st h a ti th a s a v o i d e dt h er e s p o n s ed e l a yt h a tc a u s e db yf u l lt a b l es c a na f t e rq u e r yo p t i m i z a t i o n t h e q u e r ye f f i c i e n c yh a sb e e ng r e a t l yi m p r o v e d ,w h i c hp r o v e st h e f e a s i b i l i t yo ft h i s o p t i m i z i n ga p p r o a c h k e y w o r d s :m y s q ld a t a b a s e ,s c h e m ad e s i g n ,p e r f o r m a n c e ,o p t i m i z a t i o n i i i 目录 目录 第一章引言1 1 1 课题背景1 1 2 国内外研究现状与发展趋势2 1 3 论文研究目标4 1 4 论文解决的问题5 1 5 论文主要工作与组织结构6 第二章m y s q l 数据库简介及其架构研究7 2 1 m y s q l 的发展历史与特性介绍7 2 2 m y s q l 的主要应用领域9 2 3m y s q l 系统架构1 0 2 4 m y s q l 插件式存储引擎1 4 2 5 本章小结1 6 第三章m y s q l 数据库性能优化理论与方法研究1 7 3 1 数据库性能优化概论1 7 3 2 影响m y s q l 性能的主要因素研究与分析1 8 3 2 1客户需求对性能的影响1 8 3 2 2 数据库s c h e m a 设计对性能的影响2 0 3 2 3 q u e r y 语句对性能的影响2 1 3 3 数据库性能优化方法二2 2 3 3 1 数据库s c h e m a 设计优化思想2 2 3 3 2q u e r y 语句优化2 4 3 3 3 索引的使用2 4 3 4 本章小结2 5 第四章网络行为监控系统需求分析与数据库架构设计2 6 4 1 客户功能需求介绍2 6 4 2 针对大规模数据查询的需求分析2 8 4 3 基于静动隔离数据拆分的架构设计3 0 4 4 本章小结3 l i v 目录 第五章网络行为监控系统数据库设计与优化研究实现3 2 5 1 m y s q l 服务器安装与配置优化3 2 5 1 1 m y s q l 服务器安装优化3 2 5 1 2m y s q l 服务器参数配置优化3 3 5 1 2 1 影响性能的主要参数分析3 3 5 1 2 2 重要参数配置与调优3 5 5 2 日志管理模块表设计与优化3 7 5 2 1 日志管理模块表结构字段设计3 7 5 2 2 实时与历史日志分离实现3 9 5 2 2 1 表水平拆分与定时复制任务调度3 9 5 2 2 2 数据拆分前、后性能测试4 1 5 2 3 日志管理模块的高效分区实现。4 2 5 2 3 1实时日志表的分区实现4 3 5 2 3 2 历史日志表的分区实现4 5 5 2 4 设计最恰当的索引4 5 5 2 4 1实时日志表索引设计与性能测试4 6 5 2 4 2 历史日志表索引设计5 0 5 2 5 日志表的数据分类模型与视图设计5 2 5 2 5 1 建立数据分类模型5 2 5 2 5 2 分类数据的视图设计5 3 5 2 5 3 查询语句重组实现5 4 5 2 5 4 数据分类视图性能测试5 5 5 2 6 历史日志数据的转储与定期清理5 6 5 3 被控主机i p 肥c 管理模块表设计与优化5 8 5 3 1 模块功能分析5 8 5 3 2 寻找访问频繁的字段5 8 5 3 3 逆规范化表设计添加冗余提高查询效率5 9 5 3 4 基础数据表的存储方案6 0 5 3 5 批量数据导入功能的实现6 2 5 4 监控策略模板制定模块6 3 5 4 1 设计灵活的策略模板表6 3 5 4 2 监控策略实现组优先6 5 v v i 第一章引言 1 1 课题背景 第一章引言 2 l 世纪是网络信息高速发展的时代,计算机网络的普及应用已渗透到社会各 个层面,在企业的应用也越来越广泛。然而,i n t e m e t 在方便社会的同时也随之带 来的更多的安全和管理问题。比如有的企业员工利用工作时间看新闻、玩游戏、 干私活、聊天、泄密公司资料、炒股票、下电影、听歌曲、浏览色情站点,甚至 在互联网上发布一些不健康或危害公共安全的信息,这不仅仅消耗公司的网络资 源,更会影响公司的工作效率,更为可怕的是,公司的一些涉密信息一旦被泄漏 到外部网络,后果不堪设想【5 】。因此如何对企业局域网内计算机的网络行为进行规 范和调整,充分保证业务的网络流量,为企业获取和交互信息提供便利,从而提 高企业的办公效率和生产效益,保障企业局域网健康、安全、可靠的运行已经成 了企业网络管理者非常关注的热点问题。基于这种情况,根据企业的实际需求, 设计一个局域网内网络行为监控系统实时记录与分析员工的网络行为,及时掌握 网络的使用的状况并做出上网策略,这是非常必要的。 互联网信息高度膨胀,使得集中式数据库在很多应用场景中所遇到的扩展局 限已经越来越明显;而且,商业软件和高端硬件设备价格高昂,这些都给很多用 户带来了较大的压力【3 】【6 1 。然而,作为一种开放源码数据库软件,m y s q l 则独树 一帜,性能高、快速是它最引以自豪的特性,在互联网平台表现非常出色;以m y s q l 为基础的开源组件也正在不断地被发展并应用,令人目不暇接,功能日益完善, 显然已经具备了企业级应用的主要特性;其开放的魅力更是传统的商业数据库软 件所遥不可及的,大大降低了企业的开发运营成本【7 】【8 1 。无疑,m y s q l 数据库已 然成为了众多数据库软件中的亮点。 几年来,无数大型w 曲应用系统选择了m y s q l 数据库作为构建架构的一部 分,甚至针对自己的需求改进m y s q l ,这些成功案例更加充分证明,以m y s q l 为基础的数据层解决方案已经成为互联网应用不可或缺的一个重要组成部分p d 引。 在这种技术背景下,基于b s 结构的某公司网络行为监控系统的开发就是采用了 当下最流行的l a m p ( l i n u x + a p a c h e + m y s q l + p h p ) 架构。该系统主要供管理人员 使用,主要功能包括:通过w e b 浏览器监视当前网内各个协议流量的分布,如 电子科技大学硕士学位论文 h t t p 、s m t p 、p o p 3 、q q 等协议;浏览员工的基本信息资料、网页浏览日志、m s n 聊天日志、邮件收发日志等,监视哪位员工在什么时间做了什么操作;在监控策 略模块中,可以根据需求自由针对员工或部门定制策略执行模板,比如进行关键 字过滤设置、u d 黑白名单设置、拦截各种p 2 p 软件等。后台数据库服务器模块通 过m y s q l 实现,数据库中存储了监控系统中记录下的所有员工网络行为日志数据 和员工的基本信息资料。 为了进行事后统计分析和提供证据,持久保存历史数据信息对于网络行为监 控系统来说是非常重要的,一般需要保存最近半年的历史数据信息,符合互联 网安全保护技术措施规定简称公安部8 2 号令的相关条款规定:要求记录并保 留内网用户发生的各种网络访问行为日志至少六十天以上,包括访问时间、互联 网u d 等信息【1 8 】。 该公司i n t r a n e t 规模节点1 0 0 0 台左右,外网接口为1 0 0 m b i t s s 。基本上每天中 午1 2 点出口流量达到上限,大概8 5m b i t s s ,到下午4 点,会出现一个次峰值, 将近8 0m b i t s s 。而且在实际的电信网络环境中,h t t p 协议的流量是最大的,对于 网页日志来说,其数据存储和处理速度问题非常棘手。 在公司实际的电信网络环境中,h t r p 协议大约占总流量的2 8 7 ,平均每个 小时网页浏览日志记录数目在2 2 万条左右,按照一天1 0 个小时的上班时间算, 仅仅网页日志记录也有2 2 0 万条,再加上其他协议,如s m t p 、p o p 3 、p 2 p 等, 数据库中需要记录的数据会更多。 从上面的数据可以看出,基于内容的网络行为监控系统其数据库规模比较大, 并且每时每刻都有大量数据写入数据库。而m y s q l 在大数据量环境下的性能和商 业数据库差别较大,因此需要重点考虑数据库性能优化问题【l o 】【1 7 】【5 0 1 。对m y s q l 进行优化,更多的并不在于对数据库本身的研究,而在于架构的设计【2 】【2 7 1 ,即如何 通过数据拆分、复制、m e m o r y 等技术使得数据库能合理分配访问压力,从而提高 处理性能,保证数据库的运行效率削。 1 2 国内外研究现状与发展趋势 目前国内外各企业、公司都非常重视对其内部网络的规范和安全化,规范网 内员工的网络行为以保证办公效率,防范涉密信息流到外部网络。基于这些原因, 各安全公司都相继推出各自的网络行为监控产品。网络行为监控系统的应用已经 遍布于各大政府机关部门、事业单位及企业公司【4 】【5 1 。 2 第一章引言 国外在网络行为监控方面的研究以及对相应产品的研发要早于国内,而且也 占有技术领先优势。作为员工因特网管理( e i m ) 解决方案的领导厂商,w e b s e n s e 公司实现了基于一个庞大的网站分类数据库w e b s e n s em a s t e rd a t a b a s e 进行网络内 容过滤的技术,检查每一个请求以立即决定是否允许或拒绝该请求。w e b s e n s e m a s t e rd a t a b a s e 包括4 ,0 0 0 ,0 0 0 多个站点,共有超过8 0 个类别,包括m p 3 、赌博、 购物和成人内容,支持的协议包括h t t p 、p o p 3 、s m t p 、a p 、p 2 p 等,在全球w e b 过滤市场也处于l e a d e r 地位【l 引。 专业的内容安全厂商s u r f c o n t r o l 目前已经研发了网页过滤系统、邮件安全网 关和反间谍软件三类安全产品。其中s u r f c o n t r o lw e bf i l t e r 实现了基于网站分类数 据库过滤w e b 访问功能,w e b 过滤全球市场占有率仅次于w e b s e n s e 公司,但是 s u r f c o n t r o lw 曲f i l t e r 没有内容还原和备份功能,无法提供事后取证【2 0 】。 近几年,国内在网络行为监控方面的研究步伐也越来越快。计世资讯公司是 这样定义内网监控产品的:“监视并记录、控制管理局域网内主机的上网行为,包 括监控流量、监控p 2 p 软件下载、监控游戏行为、监控网页浏览、监控聊天内容、 监控邮件收发等”【2 。而其关键技术主要包含内网接入、内网安全审计和桌面安 全管理等三个部分。由北京天融信公司开发的网络卫士安全审计系统t a w ,能够 实现对网页浏览、p 2 p 软件、邮件收发、文件下载、即时聊天( m s n 、q q 等) 、远 程登录( t e l n e t ) 等网络行为进行监控和内容审计【2 2 1 。此外,在国内,深信服、飞 鱼星、网康、金盾、宝创和其他一些厂商也相继推出了基于内容的内网网络行为 监控产品。 单从技术角度来比较,国外研究的网络行为监控技术和产品确实要优于国内 厂商,但是从各国的实际网络应用环境来比较,并不是如此。网络行为管理产品 被用来管理互联网访问内容和互联网用户,这与各国的文化、人文环境、法律法 规和企业的管理制度都息息相关,例如:国外与中国在成人内容上的分级不同, 导致对成人内容的过滤结果不同;国外与中国的流行网络应用不同,有很多是只 有中国用户使用的网络应用,而国外的产品往往不能支持对这些应用的控制和管 御【5 】【2 3 】 o io 国内早期的产品大部分都是基于c s 架构而且针对5 0 0 台主机以下的中小型 网络环境的居多,由于没有超大的数据量,其数据库设计和系统实现都比较简单, 无需考虑数据库性能问题【2 3 1 。从这两年开始,一些企业不再青睐于c s 结构的产 品,因为产品需要安装在每一台被监控主机上,有些员工会认为这有悖于“自由 的办公环境”,对此可能产生抵触情绪,造成部署产品的困难。而直接安装在网关 电子科技大学硕士学位论文 的易于部署、维护和升级的b s 模式监控产品逐渐成为企业的新需求。 因此未来网络行为监控系统的发展趋势将会是b s 架构体系,并且在中高端 网络环境中高性能地运行。而这样的发展趋势必然会淘汰早期的数据库设计思路, 面对越来越庞大的数据信息量,对数据层的设计与优化方案显得至关重要。 国外的一些公司提供了针对海量数据的数据层解决方案,比如微软公司在 s q ls e r v e r2 0 0 5 中提出了支持企业级的智能化解决方案,优化管理数据分区,并 且封装了数据挖掘功能【1 翻 1 5 】;s y b a s e 公司也提出了基于表分区技术的数据库系统 的解决方案【1 5 】 2 4 1 。 国内的公司在研发网络行为监控产品的时候,面对中高端网络环境,一般都 采用硬件为主、软硬件相结合的方式,主要依靠更高的硬件设备减缓数据库的压 力,并没有采取更好的数据层解决方案【3 6 】【4 9 1 。硬件产品虽然部署简单、故障率低, 但成本昂贵,不是所有企业都能承受的。目前针对大型数据库系统性能优化研究 的论文很多,解决方案中普遍采用表分区技术【1 3 】, 1 5 论文中针对s q ls e r v e r2 0 0 5 提出了一种基于动态表分区的大型数据库解决方案, 1 6 论文也提出了一套针对 o r a c l e 数据库的性能优化方案。而针对m y s q l 数据库的比较完善的性能优化解决 方案并不多见。 1 3 论文研究目标 数据库技术经过4 0 多年的发展,其应用已经渗透到社会各种领域。数据库在 众多企业网络中处于核心地位,各类应用程序存取数据信息,都离不开数据库, 而所有这些与数据库交互的过程都需要对数据库进行访问。有时数据库的响应时 间并不像我们想象的那样迅速,尤其是对于大数据量数据库的访问,它耗费的时 间可能会出奇的长,甚至无法返回数据,很难满足用户的需求,数据库性能问题 由此产生【”铘j 。在数据量成倍飙升,而且对数据库的访问也越来越频繁的情况下, 最关键的就是要对数据库进行性能优化,使得数据库应用运行的更快,这个们陕 通常是指响应的时间短或者吞吐量高闻。实际上,在企业级的数据层解决方案中, 数据库性能的好坏往往很大程度上取决于应用的合理与否。要做到应用合理,需 要着重考虑数据库s c h e m a 设计、存储设计、q u e r y 查询优化、索引使用,甚至数 据库服务器参数配置等【2 】【1 3 】【4 5 1 。 另外,在数据库s c h e m a 设计的时候,应当充分考虑企业的实际功能需求以及 可能经常使用到的查询处理。目前很多正在运行的数据库系统,由于没有过多的 4 第一章引言 考虑后期扩展问题,在早期对数据库进行结构设计时规范性差,以至于当要处理 的数据量越来越大的时候,造成了系统性能低以及扩展性差等诸多问题【3 引。 同时,为了改善m y s q l 数据库的访问处理速度,提高系统的运行性能和效率, 需对m y s q l 数据库的性能优化进行深入研究,先要对它本身的架构与q u e r y 处理 流程有所理解,从多方面分析导致系统性能瓶颈的因素,从中找出最可能收到性 能提高显著效果的方面,并提出优化策略。 本文的研究目标主要是在研究了影响数据库性能的各种因素基础之上,为该公 司网络行为监控系统设计一套合理、高效的数据库s c h e m a ,并从索引使用、数据 分类模型设计、q u e r y 语句优化、存储设计等多方面等多方面提高m y s q l 性能, 制定有效的m y s q l 性能优化方案。即使在应用程序频繁读写海量日志数据的情况 下,网络行为监控系统数据库依然能保证其性能和运行效率。 1 4 论文解决的问题 在频繁读写海量日志数据情况下,为保证网络行为监控系统m y s q l 数据库稳 定、高效的运行,从提高数据访问效率的角度出发,本论文从数据库设计、优化 策略、数据分布架构上,提出了一套合理的数据层解决方案,论文解决的问题有 以下几点: ( 1 ) 对数据库在网络行为监控领域的发展现状做了研究,以提高数据库数据 访问效率为目的,提出了适合当今监控需求特点的m y s q l 数据层设计方案。 ( 2 ) 分析了m y s q l 的新特性与海量数据存取的特点,提出了基于静动隔离 数据拆分的架构,实现实时日志与历史日志模块的分离,将数据表拆分思想与 m y s q l 表分区技术p a n i t i o n 引入到数据库s c h e m a 设计的整个过程,充分保证 海量数据的存取速度。 ( 3 ) 对海量数据进行数据分类模型设计,减小数据规模,通过分类视图代替 单表查询,从而将全表扫描带来的i o 资源消耗与响应延迟后果降到最低。 ( 4 ) 对数据量小且被频繁访问的基础表,采用内存方式存储数据,提高访问 效率,并实现磁盘表与内存表数据并存,解决数据易丢失性问题。 ( 5 ) 结合企业网络行为监控的应用特点,设计了灵活、高效的监控策略模板, 使得监控策略的定制更加简捷,并为后期监控范围的扩展提供便利。 5 电子科技大学硕士学位论文 1 5 论文主要工作与组织结构 在论文写作之前,作者很荣幸参与了该公司“网络行为监控系统开发 项目, 该项目采用了当前最流行的l a m p 架构技术。在该项目中,作者主要工作是:负 责m y s q l 数据库服务器搭建及数据库设计与性能优化部分,以及日志浏览审计模 块、监控策略定制模块、员工信息管理模块的w e b 设计与开发。 论文的主要工作为:首先,从硬件、数据库应用角度多方面分析导致性能瓶 颈的主要因素,对数据库s c h e m a 设计理论和性能优化方法进行研究。其次,在明 确了企业网络行为监控的功能需求后,提出了基于静动隔离数据拆分的架构,实 现实时日志与历史日志模块的分离,结合数据表拆分思想以及m y s q l5 1 版本以 后才引入的新特性节甜i t i o n 表分区技术,为网络行为监控系统设计一套合理、 高效的数据库s c h e m a ,并从服务器参数配置、索引使用、数据分类模型设计、q u e r y 语句优化、存储设计等多方面提高m y s q l 性能,制定有效的m y s q l 性能优化方 案。 论文组织结构如下: 第一章介绍了本文的课题背景和目前国内外的研究现状及发展趋势,并对本 文的研究目标和论文所做的工作进行了描述。 第二章介绍了m y s q l 数据库的特性与应用领域,并对m y s q l 数据库的架构 和插件式存储引擎进行了充分的理解。 第三章从硬件、数据库应用角度多方面分析了导致性能瓶颈的主要因素,对 数据库s c h e m a 设计与优化理论进行了研究。 第四章对网络行为监控系统的实际应用需求进行了分析与理解,设计基于静 动隔离数据拆分的架构。 第五章基于第三章的设计与优化理论以及第四章的架构设计,以提高数据访 问效率为目标,对数据库s c h e m a 进行合理、高效设计,实现数据静动隔离以及表 分区,从服务器参数配置、索引使用、数据分类、q u e r y 语句优化、存储设计等多 方面优化,以提高m y s q l 性能。 最后一章是对全文的总结,提出本文的不足之处,并对网络行为监控系统中 数据库设计与眭能优化的完善进行展望。 6 第二章m y s q l 数据库简介及其架构研究 第二章m y s q l 数据库简介及其架构研究 最近几年,随着l t 技术的发展,开源数据库逐渐盛行,被大多数用户所青睐。 和传统的商业数据库相比。m y s q l 软件是目前甚为流行的开放源码s q l 数据库服 务器产品。其访问速度在互联网平台表现非常出色,被广泛应用在各个行业领域 当中,小到微型的嵌入式系统、w e b 网站,大至大型企业级应用,其身影无处不在。 2 1m y s q l 的发展历史与特性介绍 早在1 9 8 5 年,m y s q l 诞生于原来的m y s q la b 公司,后来该公司于2 0 0 8 年被s u n 公司收购( s u n 公司仅在第二年又被强大的o r a c l e 收购) 。起初的 m y s q l 功能很少,也很简单,方便使用,并且完全不必考虑事务完整性,它支持 s q l 标准化查询语言,主要的特色就在于存取数据的速度非常快【2 】。由于m y s q l 诞生在互联网开始高速发展的时期,当时多数小公司都倾向于选择m y s q l 作为数 据库管理系统,因此m y s q l 的用户数量越来越多,抓住了互联网客户【2 引。 在其功能和性能不断改进与完善的过程中,m y s q l 始终将目标客户的需求摆 在第一位置,并不断追求高性能的突破,在其开发过程中也得到了很多著名厂商 和技术团队的支持。通过几年的努力,最终成功地屹立在互联网络行业当中。当 然,我们不否认m y s q l 之所以能够这样迅速发展,另一个关键因素就在于它是的 源代码是开放的【3 6 】。 众所周知,m y s q l 一直以其简单、高效、可靠的特点著称。下面通过与其他 主流数据库进行比较,我们将从功能、性能以及易用性这3 个方面来了解m y s q l 的主要特性。 ( 1 ) 功能特性 为了满足多种商业需求,毫无疑问的,功能肯定是会被数据库管理系统列入重 点参考要素。虽然早期m y s q l 版本功能很少,只能实现非常基础的顺序数据存取 操作,但是经过多年的改进和完善之后,已经满足了企业级应用的主要特性,通用 数据库管理系统所有相关功能的需求也已经基本达到【3 6 1 。 除了少部分并不会被经常使用的标准,a n s is q l9 2 的大部分标准m y s q l 都 已经基本实现,而o r a c l e 和其他一些商业数据库还没有m y s q l 实现的爹3 2 】。在 7 电子科技大学硕士学位论文 事务完整性处理的支持方面,m y s q l 通过引入第三方插件式存储引擎i n n o d b 实 现了s q l9 2 标准所定义的四个事务隔离级别,而当前商用数据库管理系统都很少 有做到这一点的【3 9 】。 目前m y s q l 的新版本只能提供如对存储过程、存储函数、触发器等的可编程 支持,因此在这一方面,m y s q l 表现稍显逊色,功能有限,无法和其他几大商用 数据库管理系统相媲美。 然而m y s q l 应有的重要功能一一俱全,正所谓麻雀虽小五脏俱全。其功能完 全足以满足我们的通用商业需求,能够提供足够强大的服务。硬币是有正反两面 的,其实每一款数据库管理系统都有各自的优缺点,各自的倾向不同,重点服务 的对象不一样而已。曾有专门机构对数据库软件进行调查研究,调查结果显示: 用户仅仅会经常使用数据库提供的其中4 0 的功能特性,而某些复杂的高级功能 特性往往还会引发性能问题 2 6 】。 ( 2 ) 性能特性 谈到性能,m y s q l 一直都有非常杰出的表现,这是其一大亮点【2 5 】。而且恐怕 除了o r a c l e 数据库,其他所有商用数据库管理系统都只能甘拜下风。在性能和功 能完善方面,m y s q l 始终将性能作为第一考虑的要素,它的发展目标并不在于成 为一个功能最强大的数据库产品,而是希望自己能够在满足客户大部分功能需求 的前提下,将余下的大部分精力都集中在系统性能提高方面【2 8 】 3 6 】。 ( 3 ) 易用性 不用过多强调,每一个m y s q l 用户都能够明显地感觉出m y s q l 在易用性方 面占有很强的优势,对于普通用户来说,一些像o r a c l e 、d b 2 大型商业数据库系 统的操作难易程度远远不如m y s q l 。举个例子,在m y s q l 数据库系统中,创建 一个数据库只需要c r e a t ed a t a b a s e 命令即可在瞬间完成,而在o r a c l e 数据 库中,创建一个数据库完全不是一个简单的命令所能完成的。m y s q l 从诞生开始 就一直遵循简单易操作的原则,这一特性也使得它吸引了大量的初级数据库用户 最终选择了m y s q l 。而这一批批初级用户,几年来伴随着m y s q l 成长与发展, 已经成为了高级数据库用户。 ( 4 ) 可靠性 作为开源数据库管理系统的代表,m y s q l 在稳定可靠性方面,同样表现很出 色,并不比其他产品差太多,现在很多大型网站业务都运行在m y s q l 数据库环境 2 1 9 1 1 3 0 1 。 第二章m y s q l 数据库简介及其架构研究 ( 5 ) 灵活性 m y s q l 数据库的灵活性高,主要表现在它的存储和检索方式方面。m y s q l 包含许多类型的存储引擎,用户可以选择、修改适合其应用需求的e n g i n e ,甚至 可以在数据库服务器在线运行的时候就进行修改,无需重启服务器,即时生效; 而其它数据库系统都无法做到如此灵活,甚至是某些大型商业数据库,它们也仅 支持一种数据存储类型【2 引。 通过上面的简单比较,我们不难发现,m y s q l 在简单、高效、可靠这三个原 则上面,每一项都做得非常出色。而且,考虑到当前用户的需求越来越多样化, m y s q l 开始努力增强完善功能,以保证不断满足客户的新需求,比如5 1 版本就 开始支持了表分区( p a r t i t i o n ) 功能,给数据性z 一- * 匕l - - , 带来巨大的提升【2 4 ,2 5 1 。 2 2m y s o l 的主要应用领域 任何一种产品都不可能完全适用于所有用户。我们要根据各自的应用需求并 权衡每一种产品的各种特性,从中选择出一种最适合于自身的产品。m y s q l 适用 于下列几种应用领域。 1 ) w 曲网站系统 首先,m y s q l 最初的用户就是一些小型w e b 系统,发展至现在,最支持它的 仍然还是网站应用,可以说是一路伴随m y s q l 着成长。当前最为流行的l a m p 网站架构体系正在被无数网站所应用,它成本低廉,而且可移植性、稳定性很高, 是最强的网站解决方案,被大中小型企业、政府信息化平台考虑为首选架构1 2 4 1 。 另外,m y s q l 的受欢迎程度之所以这么高,也是因为安装配置m y s q l 都非 常简单,维护起来较很多大型商业数据库管理系统也要方便的多,而且其性能表 现毫不逊色。 2 ) 日志审计系统 m y s q l 数据库存取数据的速度是非常高效的,所以其插入和查询性能都很高, 如果设计好数据库结构,在使用m y i s a m 过程中,两者可以做到互不干扰,不需 要锁定,并发性能很高。所以,对于像网络行为监控系统这种频繁插入、查询日 志记录的需求来说,m y s q l 是首选。 3 ) 数据仓库系统 最初的m y s q l 数据库,就是为了向大型零售商提供数据仓库的服务而量身设 计的,因此现在它依然保持着在此领域的优势,处理大数据量的速度非常迅速。 9 电子科技大学硕士学位论文 然而随着现在数据仓库数据量的飙升,这些数据所需要的存储空间要求越来越高, 而且数据量的不断增长,使数据的统计分析效率越来越低,而复杂度却越来越高 3 0 l o 为了解决这样的问题,有如下几种方案:第一可以考虑升级为更高性能的主 机和存储设备以提高计算性能和i o 性能,这种解决方案在短期内效果肯定非常理 想,但是价格更加昂贵,这种高成本的代价,并不适合那些普通企业,而且现在 计算机产品更新很快,用不了多久,高性能的设备又会变为被淘汰产品,设备利 用率很小;第二,可以考虑r e p l i c a t i o n ( 主从复制) 技术,通过将数据复制到多台 大硬盘容量p c 服务器上,这种方案比第一种的成本要低廉很多,也可以收到比 较好的效果,只是有一定的存储空间限制;第三种,采用表分区、数据水平垂直 切分技术,通过某种指定的条件,在每一台机器上只保存满足特定条件的部分数 据,分散到多台p c 机上,一起计算,既可以解决一台机器的数据访问量过多问题, 又可以解决计算性能和v o 性能问题,同样成本也很低【3 l 】。第一种方案所有的数 据库都可以实现,然而其高成本的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论