Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 数据库优化和数据库查询优化之间有什么区别?_Database_Query Optimization_Database Tuning - Fatal编程技术网

Database 数据库优化和数据库查询优化之间有什么区别?

Database 数据库优化和数据库查询优化之间有什么区别?,database,query-optimization,database-tuning,Database,Query Optimization,Database Tuning,有人能告诉我数据库优化和数据库查询优化之间的确切区别吗 我已经阅读了维基百科上的以下链接: 据我所知,数据库调优似乎只是数据库查询优化。我还是很困惑 这两者之间到底有什么区别?我认为查询优化是数据库优化的一个子集。如果您阅读任何有关性能调优的常规书籍,通常只会看到与调优查询相关的一章。其他章节涉及分区、索引、负载测试、锁定和阻塞、硬件、内存、模式等。我认为查询优化是数据库优化的一个子集。如果您阅读任何有关性能调优的常规书籍,通常只会看到与调优查询相关的一章。其他章节涉及分区、索引、负载测试、

有人能告诉我数据库优化和数据库查询优化之间的确切区别吗

我已经阅读了维基百科上的以下链接:

据我所知,数据库调优似乎只是数据库查询优化。我还是很困惑


这两者之间到底有什么区别?

我认为查询优化是数据库优化的一个子集。如果您阅读任何有关性能调优的常规书籍,通常只会看到与调优查询相关的一章。其他章节涉及分区、索引、负载测试、锁定和阻塞、硬件、内存、模式等。

我认为查询优化是数据库优化的一个子集。如果您阅读任何有关性能调优的常规书籍,通常只会看到与调优查询相关的一章。其他章节涉及分区、索引、负载测试、锁定和阻塞、硬件、内存、模式等。

我理解查询优化与查询本身有关,因此,例如,您可以改进执行不佳的联接,删除不必要的字段等等。只会影响正在分析的查询的内容


数据库优化涉及到整个服务器,因为索引、查询负载,甚至与IO相关的事情,例如分区或将数据库拆分为不同磁盘中的不同文件组。

我知道查询优化与查询本身相关,因此,例如,您可以改进执行不佳的连接,删除不必要的字段,依此类推。只会影响正在分析的查询的内容


数据库优化涉及整个服务器,因为索引、查询负载,甚至与IO相关的事情,例如分区或将数据库拆分为不同磁盘中的不同文件组。

数据库优化指的是优化数据库本身。它对存储和内存的访问。各种缓冲区和运行时参数的组织。以及使用索引、去规范化、模式对象上的存储参数等优化模式

查询优化一次只涉及一条语句。它可能涉及重组语句、创建索引和物化视图、添加提示和更新统计信息


虽然两者之间存在重叠(当数据库性能更好时,单个语句也可能更快),但它们的目标往往相互矛盾。如果一次调整一条语句,可能会创建很多索引,但每个索引都会给数据库增加一点额外的负载,以便写入该表,因此总体性能实际上可能会受到影响。

数据库调整指的是调整数据库本身。它对存储和内存的访问。各种缓冲区和运行时参数的组织。以及使用索引、去规范化、模式对象上的存储参数等优化模式

查询优化一次只涉及一条语句。它可能涉及重组语句、创建索引和物化视图、添加提示和更新统计信息

虽然两者之间存在重叠(当数据库性能更好时,单个语句也可能更快),但它们的目标往往相互矛盾。如果一次调优一条语句,可能会创建很多索引,但每个索引都会给数据库增加一点额外的负载,以便写入该表,因此总体性能可能会受到影响