zoukankan      html  css  js  c++  java
  • SQL优化 half

    对数据库系统的性能起着决定性的作用。对于同一条件下的SQL语句写法有很多,其中一些写法往往对性能又有很大影响。但是每个人掌握SQL语言的水平不同,如何才能保证写出高性能的SQL呢?针对这种情况,人工智能自动SQL优化工具应运而生。现在我就向大家介绍这样一款工具:SQL Tuning

    1. SQL Tuning 简介
    SQL Turning 是Quest公司出品的Quest Central软件中的一个工具。 Quest Central(图1)是一款集成化、图形化、跨平台的数据库管理解决方案,可以同时管理 Oracle、DB2 和 SQL server 数据库。它包含了如下的多个工具:
    ? 数据库管理(DBA)
    ? 数据库监控(Monitoring Pack)
    ? 数据库诊断 (Spotlight Diagnostics)
    ? 数据库分析 (Database Analysis)
    ? SQL优化 (SQL Tuning)
    ? 空间管理 (Space Management)
    ? 压力测试 (Load Generator)
    ? 数据生成 (Data Generator)
    ? PL/SQL 开发 (TOAD)
    ? 专家建议 (Knowledge Expert):提供各种错误提示说明
    2.使用方法:

      Tools/SQL Tunings

    (1)建立连接。
        在Quest Central主界面上的“Database”树上选择“SQL Server”,然后在下方出现的“Tools”框中选择“SQL Tuning”选项,打开“Lanch SQL Tuning for SQL Server Connections”对话框(图2)。我们在这里建立数据库服务器的连接,以后的分析工作都会在它上面完成。

     
                             

        双击“New Connection”图标,在弹出窗口中输入数据库的信息,单击“OK”,然后单击“Connect”即可。

    注:如果有原来建好的链接,那么选择一个,然后直接选择即可
    (2)分析原始SQL语句

         “Oriangal SQL”文本框内输入需要分析的原始SQL语句,查询出user_id是1724588和1724599的这个2个玩家的所有信息 

     选择Oraginal Sql,选择get_plan,会对原始句子进行分析,详细分析结果如下:

    选择Oraginal Sql,选择execute,会对原始句子进行分析并详细分析结果如下:

    执行和分析的结果分别会以表格和图标的形式显示,这些分析可以保存在一个地方,供以后执行参考

    (3)进行优化

    在右边一列里点击view advice,可以看到涉及3个层面的优化

    分别是:Filter  sql  rewites

               Filter  dll advice

               Filter  orher advice

    选择其中一种优化方式,点击右面上方的 get advice(灯泡图标),会获得优化建议,那么你可以选择是否要进行优化,可以根据建议的级别进行选择,如果要优化的话,可以选择apply advice,会自动生成Scenario1(应用了你的建议后的脚本) ,当然也可以rename

    这样优化就完成了

    (4)比较优化结果

         如果想比较下优化前后的结果,那么可以点击左上方,execute all,然后点击Execution Statistics看一下分析结果便清楚哪个脚本速度快,从显示看,优化后的脚本比原来脚本时间节省16s, 

    也可以通过Tuning Solutions 来进行选择

    s

       

    (5)学写专家级sql

    点击界面左方的“Compare Scenarios”按钮,我们可以比较优化方案和原始SQL中的任意2条SQL语句,SQL Tuning会将它们之间的不同之处以不同颜色表示出来,还可以在下方的“执行计划”中,通过比较两条SQL语句的执行计划的不同,来了解其中的差异

    3.小结
       SQL Tuning等人工智能自动SQL优化工具的出现,为我们节省出大量的时间和精力。借助这些工具的帮助,书写专家级的SQL语句将不再是难事。

  • 相关阅读:
    Linux .bashrc文件设置快速访问快捷键
    Fiddler如何添加ServerIP显示
    软件测试工程师常用工具汇总
    [ASP.NET Core开发实战]基础篇04 主机
    《数据结构与算法之美》24——堆的应用
    [ASP.NET Core开发实战]基础篇03 中间件
    《数据结构与算法之美》23——堆和堆排序
    [ASP.NET Core开发实战]基础篇02 依赖注入
    [ASP.NET Core开发实战]基础篇01 Startup
    [ASP.NET Core开发实战]开篇词
  • 原文地址:https://www.cnblogs.com/halfacre/p/plsql.html
Copyright © 2011-2022 走看看