首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏张善友的专栏

    10步骤优化SQL Server 数据库性能

    作者从基础的数据库索引开始全面讲述了SQL Server数据库应用程序的性能优化,包括数据库设计和数据访问代码。 系列文章如下: Top 10 steps to optimize data access in SQL Server. optimization steps in SQL Server, this article focuses on using indexing to optimize data access Top 10 Top 10 steps to optimize data access in SQL Server. Top 10 steps to optimize data access in SQL Server.

    1.4K50发布于 2018-01-22
  • 来自专栏IT技术分享社区

    数据库知识:SQL优化10个经典案例场景实战

    ; 对于大分页的场景,可以优先让产品优化需求,如果没有优化的,有如下两种优化方式, 一种是把上一次的最后一条数据,也即上面的c传过来,然后做“c < xxx”处理,但是这种一般需要改接口协议,并不一定可行 select * from _order where shop_id = 1 and order_status in (1, 2, 3) order by created_at desc limit 10 >、NOT EXISTS、NOT IN、NOT LIKE等 案例7、优化器选择不使用索引的情况 如果要求访问的数据量很小,则优化器还是会选择辅助索引,但是当访问的数据占整个表中数据的蛮大一部分时 (一般是20%左右),优化器会选择通过聚集索引来查找数据。 案例9、asc和desc混用 select * from _t where a=1 order by b desc, c asc desc 和asc混用时会导致索引失效 案例10、大数据

    2.1K60发布于 2021-09-30
  • 来自专栏Java帮帮-微信公众号-技术文章全总结

    数据库数据库优化(SQL优化

    数据库数据库优化(SQL优化) sql语句优化 1.查询的模糊匹配 尽量避免在一个复杂查询里面使用 LIKE '%parm1%'—— 红色标识位置的百分号会导致相关列的索引无法使用,最好不要用。 例子 SELECT * FROM ORDERS WHERE CUSTOMER_NAME NOT IN (SELECT CUSTOMER_NAME FROM CUSTOMER) 优化 SELECT 10.临时表 慎重使用临时表可以极大的提高系统性能。 11.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 14.应尽量避免在 where 子句中使用 or 来连接条件,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num=10 or num=20 可以这样查询 : select id from t where num=10 union all select id from t where num=20 15.in 和 not in 也要慎用,否则会导致全表扫描

    6K40发布于 2018-03-15
  • 来自专栏Python与算法之美

    10,模型的优化

    搜索超参数空间以优化超参数需要明确以下方面: 估计器 超参数空间 交叉验证方案 打分函数 搜寻或采样方法(网格搜索法或随机搜索法) 优化模型的常见方法包括 网格搜索法,随机搜索法,模型特定交叉验证, 信息准则优化。 使用网格搜索法或随机搜索法可以对Pipeline进行参数优化,也可以指定多个评估指标。 ? ? 三, 模型特定交叉验证 一些特定的模型,sklearn构建了一些内部含有交叉验证优化机制的估计器。 它们主要是在linear_model模块。 linear_model.LassoLarsIC 采用了信息准则进行优化

    80221发布于 2020-07-17
  • 来自专栏全栈程序员必看

    数据库优化 – SQL优化

    前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 获取问题SQL 不同数据库有不同的获取方法,以下为目前主流数据库的慢查询SQL获取工具 MySQL 慢查询日志 测试工具loadrunner Percona公司的ptquery等工具 接下来我们用一段实际优化案例来说明SQL优化的过程及优化技巧。 DEFAULT NULL, `gmt_create` varchar(30) DEFAULT NULL, PRIMARY KEY (`id`) ); 三张表关联,查询当前用户在当前时间前后10 b modify `user_id` int(10) DEFAULT NULL; alter table c modify `user_id` int(10) DEFAULT NULL; alter

    4.1K10编辑于 2022-10-04
  • 来自专栏JAVA杂谈

    数据库优化 - SQL优化

    是时候 关注 我们一波了 前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。 本文从SQL角度进行数据库优化,提升SQL运行效率。 获取问题SQL 不同数据库有不同的获取方法,以下为目前主流数据库的慢查询SQL获取工具 MySQL 慢查询日志 测试工具loadrunner Percona公司的ptquery等工具 Oracle AWR DEFAULT NULL, `gmt_create` varchar(30) DEFAULT NULL, PRIMARY KEY (`id`) ); 三张表关联,查询当前用户在当前时间前后10 `user_id` int(10) DEFAULT NULL; alter table c modify `user_id` int(10) DEFAULT NULL; alter table c add

    2.2K20发布于 2019-11-06
  • 来自专栏JAVA杂谈

    数据库优化 - 实例优化

    从网上去搜数据库优化基本都是从SQL层次进行优化的,很少有提及到数据库本身的实例优化。 减少数据库服务器CPU使用率 减少数据库服务器IO使用率 减少数据库服务器内存使用率 指标 SQL平均响应时间变短 优化前:数据库平均响应时间500ms 优化目标:数据库平均响应时间200ms 数据库服务器 CPU占用率变少 优化前:数据库高峰期CPU使用率70% 优化目标:数据库高峰期CPU使用率50% 数据库服务器IO使用率变低 优化前:数据库IO WAIT为30% 优化目标:数据库IO WAIT低于10% 数据库优化误区 在进行数据库优化的时候可能会有以下几个误区: 优化之前一定要深入了解数据库内部原理 优化是有“套路”的,照着这些“套路”你也可以很好的完成数据库优化 不断调整数据库参数就可以最终实现优化 wait_timeout,interactive_timeout 28800 避免应用连接定时中断 POSTGRES 参数分类 参数名 参数值 备注 数据缓存 SHARED_BUFFERS 物理内存10

    1.9K30发布于 2019-10-30
  • 来自专栏Java知识点

    10章_索引优化与查询优化

    — 分库分表 关于数据库调优的知识非常分散。 虽然 SQL 查询优化的技术有很多,但是大方向上完全可以分成 物理查询优化 和 逻辑查询优化 两大块。 物理查询优化是通过 索引 和 表连接方式 等技术来进行优化,这里重点需要掌握索引的使用。 关联查询优化 # 3.1 数据准备 # 分类 CREATE TABLE IF NOT EXISTS `type` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT ` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `card` INT(10) UNSIGNED NOT NULL, PRIMARY KEY (`bookid`) # 9.2 前缀索引对覆盖索引的影响 结论: 使用前缀索引就用不上覆盖索引对查询性能的优化了,这也是你在选择是否使用前缀索引时需要考虑的一个因素。 # 10.

    90330编辑于 2023-08-02
  • 来自专栏cwl_Java

    性能优化-MySQL数据库优化

    2、mysql数据库优化 可以从哪几个方面进行数据库优化?如下图所示: ? 这个时候就要了解sql优化 B、数据库表结构优化 根据数据库的范式,设计表结构,表结构设计的好直接关系到写SQL语句。 C、系统配置优化 大多数运行在Linux机器上,如tcp连接数的限制、打开文件数的限制、安全性的限制,因此我们要对这些配置进行相应的优化。 D、硬件配置优化 选择适合数据库服务的cpu,更快的IO,更高的内存;cpu并不是越多越好,某些数据库版本有最大的限制,IO操作并不是减少阻塞。 注:通过上图可以看出,该金字塔中,优化的成本从下而上逐渐增高,而优化的效果会逐渐降低。

    4.8K20发布于 2020-02-13
  • 来自专栏盛开在夏天的太阳

    数据库优化

    数据库优化方案(百万级数据量)   1. 对sql语句进行优化, 首先对where和order by涉及的列加索引。    尽量避免在where子句中进行null值判断, 数据库中的值尽量保证都是非空的。备注、描述、评论之类的可以设置为 NULL,其他的,最好不要使用NULL。 最好替换为union join select id from t where num = 10 union allselect id from t where Name = 'admin' select id from t where num=10 or Name = 'admin' 尽量不使用 in 和 not in 替代方案:使用between select id from t where num 然而当通配符出现在字符串其他位置时,优化器就能利用索引。

    1.3K20发布于 2020-09-27
  • 来自专栏sofu456

    数据库优化

    mysql配置优化数据库 提高读取速度 表建索引 分区表 优化查询语句 insert table values select * from table limit 1 delete from table 数据量到了100万条后,查询时间可以很明显的对比出来,设置事务有的数据库不一定能提高写入效率,例如redis redis事务 multi\exec //redis事务不能提高写入效率,反而降低,使用 pipeline命令可以提高写入效率 多线程 多线程访问数据库使用多个数据库连接,不要跨线程使用同一个数据库连接,可以同netstat命令查看连接

    1.1K10编辑于 2022-05-06
  • 来自专栏ellipse数据库技术

    数据库优化

    是时候 关注 我一波了 1.SQL优化 1.SQL优 1)应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 2)应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描, 2.索引优化 创建索引可以大大提高系统的性能。 01 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 02 可以大大加快数据的检索速度,这也是创建索引的最主要的原因。 3.数据库结构优化 拆分表:分区将数据在物理上分隔开, 拆分 1.对表进行垂直分割后,如果需要查询原表的全部数据,需要使用join操作 2.对表进行水平分割后,查询所有数据需要使用Union操作 4.服务器硬件优化 砸钱完事 END 点击文末右下角的 “在看” 解锁更多惊喜哦!

    1.2K20发布于 2019-08-16
  • 来自专栏mysql

    hhdb数据库介绍(10-10)

    功能入口: 在管理平台页面中点击配置->节点管理->"切换"使用须知:配置了数据节点高可用切换规则,且已经动态加载到计算节点 节点下主从、双主的复制关系已经搭建好,且复制延时时间不得超过10秒MGR节点不支持手动切换 若取消master_delay后的复制延迟仍大于10s,则不允许切换,master_delay也会恢复之前设置的值。 如果优先级最高的从存储节点不可用或延迟超过10秒,程序将从剩余切换规则中依次选择优先级最高的进行切换,如果均不可用或延迟超过10秒,则切换失败,提示错误(切换失败日志提示 switch datasource

    28810编辑于 2024-12-05
  • 来自专栏架构驿站

    【DB优化】MySql数据库优化概述

    多端口绑定监听 II 操作系统级优化 使用64位的操作系统,更好的使用大内存。 III.1存储引擎的选择 Myisam:数据库并发不大,读多写少,而且都能很好的用到索引,sql语句比较简单的应用,TB数据仓库 Innodb:并发访问大,写操作比较多,有外键、事务等需求的应用,系统内存较大 innodb_buffer_pool_size参数 INNODB 数据、索引、日志缓冲最重要的引擎参数,根据(hit riatos和FILE I/O)判断 wait_time_out参数 线程连接的超时时间,尽量不要设置很大,推荐10s 尽量不要在数据库中做运算。 3. 避免负向查询和%前缀模糊查询。 4. 不在索引列做运算或者使用函数。 5. 不要在生产环境程序中使用select * from 的形式查询数据。 10. 联表查询的时候,记得把小结果集放在前面,遵循小结果集驱动大结果集的原则。 11. 开启慢查询,定期用explain优化慢查询中的SQL语句。

    3K60编辑于 2022-03-25
  • 来自专栏后端架构

    数据库索引优化

    前言数据库的索引是经在项目中常常使用到的,但索引是吧双刃剑,提高了查询但是也拖慢了修改的速度。索引优化思路原文翻译如下:提高 SELECT 操作性能的最佳方法是在查询中测试的一个或多个列上创建索引。 需要考虑一个业务优化。对于索引的特殊性,它加快了查询,但是拖慢了一些增删改。导致原本有一些频繁更新和查询的业务出现了影响。 这就导致一种新的解决方案产生,对数据库进行一个读写分离或者说分库分表,这也是解决方案的一种。原因是因为当你在对数据进行增删改的时候,会对数据进行上锁,也就是常说的事务隔离级别。 总结首先要确定查询中的关键字段,选择合适的索引类型,优化索引结构,并定期维护索引健康。同时还要结合执行计划进行优化,找出查询瓶颈所在,进一步优化索引设计或查询语句。 总的来说,索引优化需要结合具体的业务需求和数据特点,采取针对性的优化措施。

    82010编辑于 2024-07-12
  • 来自专栏java一日一条

    数据库查询优化

    比如采用顺序存取策略,一个嵌套3层的查询,如果每层都查询1000行,那么这个查询就要查询10亿行数据。避免这种情况的主要方法就是对连接的列进行索引。 尽管在所有的检查列上都有索引,但某些形式的where子句强迫优化器使用顺序存取。 当能够利用索引自动以适当的次序产生输出时,优化器就避免了排序的步骤。 既然你仅需要7列,而不是视图返回的10列,更多不必要的数据被返回。浪费SQLServer的资源。 15 在SQL中捕捉异常: 这一条准则应该不能算是优化方面的,只是编写要求。

    5.8K20发布于 2018-09-19
  • 来自专栏call_me_R

    10个JS优化小技巧

    .markdown-body h4,.markdown-body h5,.markdown-body h6{line-height:1.5;margin-top:35px;margin-bottom:10px #f8f8f8}.markdown-body blockquote:after{display:block;content:""}.markdown-body blockquote>p{margin:10px let test: boolean; if (x > 100) { test = true; } else { test = false; } // 简洁 let test = x > 10 冗余 let test = ''; for(let i = 0; i < 5; i ++) { test += 'test '; } // 简洁 'test '.repeat(5); 10

    72830发布于 2021-02-05
  • 来自专栏开源部署

    MySQL数据库优化

    引言: 关于数据库优化,网上有不少资料和方法,但是不少质量参差不齐,有些总结的不够到位,内容冗杂偶尔发现了这篇文章,总结得很经典,文章流量也很大,所以拿到自己的总结文集中,积累优质文章,提升个人能力,希望对大家今后开发中也有帮助 5、锁定表 尽管事务是维护数据库完整性的一个非常好的方法,但却因为它的独占性,有时会影响数据库的性能,尤其是在很大的应用系统中。 如果一个数据库系统只有少数几个用户来使用,事务造成的影响不会成为一个太大的问题;但假设有成千上万的用户同时访问一个数据库系统,例如访问一个电子商务网站,就会产生比较严重的响应延迟。 尽量不要对数据库中某个含有大量重复的值的字段建立索引。 8、优化的查询语句 绝大多数情况下,使用索引可以提高查询的速度,但如果SQL语句使用不恰当的话,索引将无法发挥它应有的作用。 下面是应该注意的几个方面。

    2.1K20编辑于 2022-08-18
  • 来自专栏cjz的专栏

    Windows10 关闭传递优化

    传递优化是什么? 你一定有一个疑问,那就是没有网络的时候,也会提示更新系统,因为传递优化就是在局域网里,其它的wind版本比你的高,就回自动去拉去下载,最后让你更新 关闭传递优化步骤 按 wini+i调出设置 进入更新与安全 或者直接搜索: 传递优化

    1.3K30编辑于 2022-12-21
  • 来自专栏测试开发干货

    【简历优化平台开发教程-10

    目前,我们已经完成 4条优化意向的设计和前端部分,本节课将进行如下: 技术路线 的选择: 技术栈,目前我计划是分为python系和java系,这二者实际上,在工作中95%的工作都是相同的,尤其是简历上 后端算法中,会按照不同工龄等其他优化设置,提供默认的二者的关键字技术,来检查待优化简历中是否足够。 而第三个选项“无”,则代表了一众暂时还未涉及到代码的简历,比如纯手工测试,性能,安全测试,管理等。 所以选择了无,并不代表简历要求就降低了,相反,针对于其他非代码方面的要求和优化力度会加大!

    30740编辑于 2023-08-14
领券