基于K-means的SAMP系统数据库查询性能优化策略

作者:马跃; 王喆峰; 尹震宇*; 王春晓; 李明时; 廉梦佳
来源:计算机系统应用, 2019, 28(06): 69-75.
DOI:10.15888/j.cnki.csa.006936

摘要

中科院仪器设备共享管理平台(以下简称为SAMP)系统有效解决了各科研单位间仪器设备管理封闭、共享困难和运行效率低的棘手问题.同时,可以及时了解各类仪器的使用情况、共享情况,为各级业务主管部门展开科学高效的管理工作提供良好的决策依据.当SAMP系统应用数据库中存储的数据量达到百万级时,对数据库中预约表和用户表(或仪器表)进行连接查询时,将导致数据表查询性能的下降,从而影响整个SAMP系统的性能.目前主流的解决方案是采用Hash取模算法对数据表进行水平切分,但预约表中的主键为自动递增的整数,并没有实际意义,所以优化效果不理想.由于预约的用户和被预约的仪器在地理区域上呈现一定的聚集性,因此本文提出了一种基于K-means聚类算法的分表策略,采用该策略能够将预约表的查询性能提升至少70%.

全文