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

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

相关文章:

  • JavaScript算法-合并两个有序链表
  • 多进程网络服务端详细说明文档
  • 计算机工具基础(五)——Vim
  • LeetCode 解题思路 3(Hot 100)
  • 操作定制万年历投屏模拟点单叫号器
  • 【机器学习】 [代码篇] 30. KNN - sklearn 以及 自定义KNN 的实现
  • 【Elasticsearch】script_fields 和 runtime_fields的区别
  • 游戏引擎学习第124天
  • Graph and GNN——图的表示与图神经网络的介绍与应用
  • GateWay
  • Vue3核心编译库@vuecompiler-core内容分享
  • PDF扫描档智能方向识别:多模型投票机制的实践测试 救活古典书籍
  • 每日一题-设计浏览器历史记录,关于栈的应用
  • 鸿蒙开发第4篇__关于在鸿蒙应用中使用Java语言进行设计
  • 十、大数据资源平台功能架构
  • 使用 frp 实现内网穿透:从零到一的完整指南
  • Uniapp 小程序复制、粘贴功能实现
  • c++:多态
  • 算法题(79):两个数组的交集
  • 七、Redis集群高可用
  • 八成盈利,2024年沪市主板公司实现净利润4.35万亿元
  • 大学男生被捉奸后将女生推下高楼?桂林理工大学辟谣
  • 书业观察|一本书的颜值革命:从毛边皮面到爆火的刷边书
  • 千亿市值光储龙头董事长向母校合肥工业大学捐赠1亿元
  • 上海数学教育及数学科普专家陈永明去世,享年85岁
  • 加拿大今日大选:房价、印度移民和特朗普,年轻人在焦虑什么?