当前位置: 首页 > article >正文

SQL_优化

1 SQL优化

(1) 数据读取

        ①分区裁剪:使用时只读取需要的分区.

        ②列裁剪:读取操作(select、where、join、group by、sort by等),不读取不需要的列,减少IO消耗.

(2) 数据筛选

        ①分区先过滤,区分度大的字段先过滤.

        ②不在筛选字段上使用函数和表达式.

(3) 分组聚合

        ①使用窗口函数时,排序键区分度大的放在前面.

        ②数据量大时,用group by替代distinct.

(4)  join

        ①减少不必要的关联字段.

        ②关联字段有用函数等处理时,可先处理好字段再关联.

        ③关联键区分度大的先执行.

        ④多表关联时,能减少数据量的表先关联.

        

(5) 索引

        合理设置索引,再使用时避免索引失效. 

(6) 整体

       ①将复杂查询分解为多个简单查询.

       ②将重复计算的结果存储在变量或临时表中.

2 结构优化

(1) 字段

        ①减少单表字段数.

        ②整数尽量用短的类型.

        ③可用枚举或者整数代替字符串类型.

3 资源优化

        ①调整内存参数:如缓冲池大小、缓存大小等.

        ②调整连接池:优化数据库连接池的大小和配置.

4 针对性优化

优化MySQL:从单表到高阶策略的全方位优化指南-CSDN博客https://blog.csdn.net/weixin_43875878/article/details/125927373Hive_优化/问题-CSDN博客文章浏览阅读2次。①除了需要导入数据表使用textfile外,表的存储格式使用orc 和 parquet. https://blog.csdn.net/weixin_43875878/article/details/145882724


http://www.kler.cn/a/563620.html

相关文章:

  • 深度剖析数据中台架构图,铸造数字文明的基石
  • Java进阶学习笔记64——IO流
  • MATLAB下载安装教程(附安装包)2025最新版(MATLAB R2024b)
  • LSTM时序建模:解码时间之河的智能钥匙
  • 玩转Docker | 使用Docker部署IT-tools工具箱
  • 【深入理解JWT】从认证授权到网关安全
  • VMware各个软件的作用
  • 【Web安全】图片验证码DOS漏洞
  • 前端 AJAX 二、AJAX使用
  • 设计模式Python版 中介者模式
  • 【C语言】Leetcode热题100 --更新中
  • php 获取head参数
  • 计算机毕业设计 ——jspssm519Springboot 的幼儿园管理系统
  • Mysql——约束与多表查询
  • oracle goldengate gglog-*.dmp文件
  • uniapp 本地数据库多端适配实例(根据运行环境自动选择适配器)
  • MS SQL 2008 技术内幕:T-SQL 语言基础
  • SOME/IP-SD -- 协议英文原文讲解6
  • 蓝桥杯备赛 Day9 构造
  • 数据结构与算法面试专题——桶排序