2017年开始接触达梦,从单机版本DM7,到集群版本DM8,达梦数据库因卓越性能优质服务成为了项目标配,成功应用于湖北省市纪委项目、湖北应急厅项目、湖北林业厅项目、某军品项目等。
基于数字孪生底座平台,在试点区县通过融合各类基础地图包含影像地图、矢量电子地图,在此基础上接入企业数据,实现企业数据上图展示,企业数据模糊查询、企业数据框选统计、企业数据政区统计、能耗产值计算器等功能。
通过建设企业数字能源应用系统,可以直观的在地图上展示企业点位数据和详情数据,可以精准查询相关企业并定位,可以宏观展示企业相关指标(行业分类、产值、能耗)的统计数据,通过能耗产值计算器可以模拟能耗产值的比例和数值,以此来指导调整能耗、优化产值的目的。
在查询框输入企业名称、社会统一信用代码、法人姓名等查询条件,支持模糊查询和精准查询,可以查询出符合条件的结果并在地图上进行展示,点击单个结果可以定位到具体位置并高亮显示。
生成环境中部署的系统,运维人员反馈,输入关键字模糊匹配查询超过10秒,性能极低。
开发环境数据20w条,生成环境数据800W条,虽然数量不是很多,但是生成环境是开发环境的40倍,问题被放大了,也就是我们常说的量变引发质变。通过分析SQL语句(执行计划是优化的重中之重,我们可以看到语句执行顺序,有没有走索引,检索的数据量等),查询慢可能是使用了视图,in语句嵌套查询 ,like ‘%关键字%’前后模糊匹配。
(1)in ( select字段1 from 视图) 子查询语句, 用时 11秒。
(2)改成inner join视图,用时 3.99秒。
(3)改成inner join物理表,关联两次,去掉嵌套查询,用时 1秒。
(4) like ‘%关键字%’改成 contains 全文检索
将原来前后模糊匹配的全表扫描查询,改为创建全文索引利用DM全文检索功能,较好地解决了模糊查询方式带来的问题,即可以高效的实现数据检索,又不失数据库固有的属性。不需要额外搭建ES搜索引擎,以及考虑数据同步时效性问题。
在创建全文索引时,有个细节需要注意可以使用SYNC关键字指明全文索引的同步类型。指定为SYNC TRANSACTION时系统将在每次事务提交后,自动以增量更新方式填充全文索引,不需要用户手动填充。
我们都知道视图是虚拟表,使用视图查询数据时,数据库会从真实表中取出对应的数据。那么再过滤之前他会有一个生产临时数据过程,如果数据量比较大会消耗过多时间。
笔者使用DM已有5年多时间,从早期单机版DM7,到现在集群版DM8,在项目中应用情况来看,不管从稳定性还是性能来看都属于国产数据库的领头羊,替代ORACLE\MS SQL毫无压力。特别是DM技术支持团队积极提供现场服务,在省纪委项目中,一个电话半小时到达现场,与我们一起分析解决问题,应用研发公司和客户都很满意,DM是用户用起来放心的产品。
最后祝福DM发展越来越好,做国产基础软件中最闪耀的明星。
文章
阅读量
获赞