MySQL分区技术在海量系统日志中的应用_陈江.pdf
《MySQL分区技术在海量系统日志中的应用_陈江.pdf》由会员分享,可在线阅读,更多相关《MySQL分区技术在海量系统日志中的应用_陈江.pdf(3页珍藏版)》请在咨信网上搜索。
1、2023.4电脑编程技巧与维护1概述在数字经济时代,随着信息技术的不断发展,许多企业每个月都产生巨大的日志,短时间内海量日志查询面临着极大的挑战。因为传统的MySQL数据库存储技术处理大数据量的能力不足,MySQL数据库表是以文件方式存储到磁盘中,对于大数据量的情况通过索引的存储结构搜索数据,显然非常耗时。如果想搜索和实时分析日志,传统的MySQL单表单区的方式无法在一个合理的响应时间内处理大量的数据,因此MySQL分区技术应运而生。2MySQL 分区技术MySQL分区是使用MyISAM引擎的一张表主要对应3个文件,(1)frm存放表结构;(2)myd存放表数据;(3)myi存表索引。如果一张
2、表的数据量太大,那么myd、myi也会变得很大,查找数据就会变得很慢。这时可以利用MySQL的分区功能,在物理上将这一张表对应的3个文件,分割成许多个小块,这样在查找一条数据时,就不用全部查找了,只要知道这条数据在哪一块,然后在对应位置查找。如果表的数据太大,可能一个磁盘放不下,就可以把数据分配到不同的磁盘里。数据库分区技术就是把一张表的数据分成N多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上。通俗地讲,表分区是将一张大表,根据条件分割成若干张小表。假设某日志表的记录超过了700万条,为了更好地体现分区的优势,在进行表分区时,可以优先选择日志表的一些特性作为分区的条件,例如,记录时
3、间、日志类型等。分区类别主要有RANGE分区、LIST分区、HASH分区、KEY分区、子分区。在此主要探讨RANGE分区在海量日志中的研究与应用。在某物联网软件运行过程中,需要每隔20 min或30 min检测终端设备是否通联,每检测一个终端设备需要记录下该设备的运行状态、设备IP、Mac等信息。在上百个设备中,平均每天能产生上千条设备运行日志,一个月便能产生数万条日志。用户需要每天不定时查看这些运行日志,以便观测设备的运行状态。用户可以通过日期条件查询每天设备运行状态并以表格的形式显示出来。随着软件业务的不断扩展,设备也逐渐增多,人工检测的机会也越来越多。随着时间的推移,设备日志数量与日俱增
4、,总数量超过40万条时,数据库服务器的压力骤增,进而造成用户检索设备日志的时间延长,大大降低了用户使用的频率,影响了系统的工作效率,并且影响与设备日志表有关联的其他功能,导致其功能响应速度越来越慢。为了能够更好地提高系统的性能,节省查询的时间,提高设备日志的查询效率,保障设备日志功能正常运行,更好地为用户提供便利,在此对系统进行优化,改变了数据库单表的结构,采用分区管理数据的模式,极大改善了系统的性能。3设计方案与实现为了更直观地展示此次需求改造方案,利用Visio工具,制作改造方案,如图1所示。主要对设备日志表进行优化和改造,针对设备日志表,按照提前约定的分区规则,利用MySQL数据库分区技
5、术对表中的数据进行分区存储,使其存储到不同的分区文件中。对于与设备日志记录表有关联的功能模块,采用数据层面的优化方式,减少从数据量较大的表中查询数据的次数。MySQL 分区技术在海量系统日志中的应用陈江,王政山,隋福宁(武警指挥学院,天津300000)摘要:随着信息技术的飞速发展,系统的业务功能不断扩大,产生的日志与日俱增,导致应用软件的运行速度越来越慢,不能很好地满足用户对软件性能的需求。基于此,重点研究了 MySQL 分区技术在大数据量软件日志中的应用,通过 MySQL 数据库的分区技术提升数据库的性能,从而保障软件的稳定运行,为大数据量的系统提供优质服务。关键词:分区;MySQL 分区;
6、日志;数据库优化图1改造方案说明分区数据查询分区数据入库定时检测任务用户检测需求其他模块间调用设备日志表 设备日志分区存储p20200731p20200630每日设备日志汇总表存储汇总数据自动从分区表中获取数据每日日志汇总97DOI:10.16184/prg.2023.04.0462023.4电脑编程技巧与维护3.1数据库结构改造通过观察,分析设备日志记录表的数据可知,从2020年系统部署使用以来,数据量与日俱增,总计50多万条,相当于每天产生600多条数据,平均每月的数据量2万条左右。针对这种情况,为了不增加维护成本,采用对数据表进行分区处理的方式,并按照数据量级进行分割数据。当数据量规模较
7、小时,以5万为单位级进行数据分割;当数据量规模较大时,以10万为单位级进行数据分割。分区表具有较强的可维护性,在面对数以万计的数据时,能够非常容易地将分区合并、新增和删除,使数据更容易被管理和维护。在数据查询方面,能够加快数据的查询速度、提高查询的效率,但分区技术不能够提高全表检索的速度,只能通过条件查询来加快查询的速度。设备日志记录表(device_record_log)的字段设计包含自增主键字段(device_id)、设备名称(device_ti-tle)、设备类别(device_type)、设备序号(device_in-dex)、设备型号(device_model)、设备(sn)、设备M
8、ac(device_mac)、设备网址(device_ip)、子网掩码(de-vice_netmask)、设备网关(device_gateway)、设备检测日期(device_checkin_date)、检测类型(checkin_type)、故障类型(error_type)、故障备注(error_remark)、备注(error_remark1)。采用水平分区的方式对设备日志记录表进行优化。首先,查询device_id的最大值,计算需要分区的最小数量;然后,调整单表结构,将单表文件拆分成多份文件,成为分区表,使得一张单表具有多张表的存储功能,在应对存储大数据量时,不致于让单表的压力过大,数据的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MySQL 分区 技术 海量 系统 日志 中的 应用 陈江
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。