A new parameter to control updating statistics strategy

       If a table contains several indexes and a select query does not have a “force index” hint clause, the MySQL optimizer take charge of determining which index to use. In some cases, we find that MySQL optimizer does not select the best index.

Here we discuss a strategy to deal with the problem, using a new parameter.

 

1、table and index statistics

The statistics contains the number of different key values in a given index, which affects the decision of index selection.

       In a big table, it is not workable that scans all the rows and counts the accurate statistics. So InnoDB pick up some example rows to estimate the result. The variable “innodb_stats_sample_pages “is used to define the number of example rows. Its default value is 8.

       There should be a balance consideration about this variable. Because the function “dict_update_statistics”, which is used to update a table’s statistics, is automatically called at various times. The bigger the innodb_stats_sample_pages is, the more accurate result comes, but it may lead to excessive I/O and CPU.

 

2、When the dict_update_statistics called?

There are some scenarios that dict_update_statistics will be called.

a)       Statements like “show status”

Such as “show index from table-name” and “show status like ‘’”.  There is a variable named “innodb_stats_on_metadata” to control whether run dict_update_statistics in such queries. Default value is ON.

b)       Table monitor

When a table named “innodb_table_monitor”(InnoDB table) is created, table monitor will be run every minute. “dict_update_statistics” is called here.

c)        Analyze table table-name

d)       Dynamically during insert/update operation.

This is why the innodb_stats_sample_pages cannot be set too big. There is a counter to record the times of modifying indexed column of this table from last dict_update_statistics. When the counter is up to 2000000000 or 1/16 of the table row number, dict_update_statistics is called.

 

3、Force re-calculate statistics using analyze table

Let’s look into the next steps:

Set innodb_stats_sample_pages = BIGNUM;

Analyze table table-name;

Set innodb_stats_sample_pages = 8;

 

Obviously this does not make sense, for the reason of d) in last section.

 

4、Strategy for certain requirement

But let’s think about this case, when there are lots of rows in a table, and the row number will keep relatively stable in a period.

We run the analyze table command, and test the queries that will run upon this table, check that the index selection working well.

Since the dynamically re-calculating may get wrong statistics and then leads to wrong index-selection, we plan to disable the mechanism, using a variable that can be update by command “set global”.

The variable can be named “innodb_stats_dynamically”, ON as default.

So when we think the data number is big enough and will be relatively stable in a period afterward, the sample commands can be as follow:

 

Set innodb_stats_dynamically = off;

Set innodb_stats_sample_pages = BIGNUM;

Analyze table table-name;

Set innodb_stats_sample_pages = 8; (optional)

 

        

【AI方案集】AI智能体全自动跨境电商运营系统设计.docx 这套AI技术方案不走“先堆概念再硬套场景”的老路,而是以业务痛点为锚点,把机器视觉识别、预测性分析、大模型知识赋能等能力拆解成轻量化可落地的功能模块,直接嵌入生产运营的关键环节,既能快速落地见效,又能通过持续的数据迭代逐步放大价值,帮企业在不盲目新增硬件投入的前提下,稳步完成智能化升级,实实在在把AI变成能降本、提效、控风险的生产工具。 立即下载

相关推荐

产业园区运营负责人如何实现创新资源的系统化配置?.docx

产业园区运营负责人如何实现创新资源的系统化配置?

FairFuzz: A Targeted Mutation Strategy for Increasing Greybox Fuzz Testing Coverage

摘要 本文提出了FAIRFUZZ,从两个方面改进AFL: 自动化识别很少被输入hit的分支 提出创新的mutation mask创造算法,使生成的输入能够hit给定的rare branch 1 介绍 本文的主要贡献: 提出一个新颖的mutation mask策略来增加hit rare branch的概率 基于AFL,将上述策略集成到AFL上,实现FAIRFUZZ并开源 以AFL为baseli...

1421

高校技术转移办公室人员需要哪些材料完成成果转化项目审核?.docx

高校技术转移办公室人员需要哪些材料完成成果转化项目审核?

Git:源码安装版本控制工具Git

Git:源码安装版本控制工具Git 1.下载源码 https://github.com/git/git https://www.git-scm.com/download/ https://mirrors.edge.kernel.org/pub/software/scm/git/ 我下载的源码是: https://mirrors.edge.kernel.org/pub/software/scm/g...

test1280 2万+

状态估计【扩展卡尔曼滤波算法的神经网络训练】BP神经网络、扩展卡尔曼滤波EKF+BP、粒子滤波PF轨迹估计研究(Matlab代码实现)

【状态估计】【扩展卡尔曼滤波算法的神经网络训练】BP神经网络、扩展卡尔曼滤波EKF+BP、粒子滤波PF轨迹估计研究(Matlab代码实现)内容概要:本文主要介绍了基于变频控制的多相交错LLC谐振变换器闭环仿真研究,重点探讨了多相交错并联技术在降低输出电流纹波和提升功率容量方面的优势,分析了交错角对纹波抵消的影响以及均流问题的成因。针对变频控制带来的非线性特性,文章采用扩展描述函数(EDF)建立小信号模型,用于指导PID控制器的设计,并验证其在稳态和动态工况下的控制性能。通过Simulink仿真平台对闭环系统进行建模与测试,考察了启动过程、负载阶跃响应及频率调节的平滑性,结果表明所设计的控制系统具有良好的稳态精度和动态响应能力。; 适合人群:电力电子、电气工程及其自动化等相关专业的高校师生及从事电源系统研发的工程技术人员。; 使用场景及目标:①掌握多相交错LLC谐振变换器的工作原理与建模方法;②学习变频控制下非线性系统的建模与PID环路设计技巧;③应用于高效率、低纹波开关电源的仿真设计与优化。; 阅读建议:建议结合文中提供的仿真模型与参数设置进行实践操作,重点关注EDF建模过程与控制器参数整定方法,通过对比不同交错角下的仿真结果加深对纹波抑制机理的理解。

论文复现基于物理信息神经网络预测2D3D非稳态温度场及热源(Python代码实现)

内容概要:本文详细介绍了基于物理信息神经网络(PINN)预测2D和3D非稳态温度场及热源的Python代码实现,旨在复现相关科研论文。该方法将物理定律嵌入神经网络结构中,利用偏微分方程描述传热过程,在无需大量标注数据的前提下,求解复杂的非稳态传热问题,实现对温度场时空演化和内部热源分布的高精度预测。文中系统阐述了PINN的模型构建原理、损失函数设计策略(包含初始条件、边界条件与控制方程的物理约束)、网络训练流程以及数值实验结果,充分展示了其在科学计算与工程仿真中的强大潜力与良好泛化能力。; 适合人群:具备一定Python编程基础和深度学习理论知识,熟悉偏微分方程与传热学基本概念,对科学计算、物理信息建模、智能仿真等方向感兴趣的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于复现并深入理解PINN在非稳态热传导问题中的具体应用;②为从事热管理、材料科学、能源系统、航空航天等领域的研究人员提供可扩展、可定制的开源代码框架;③辅助高校教学与科研实践,帮助学生掌握物理信息驱动的机器学习建模方法及其在实际工程问题中的实现路径。; 阅读建议:建议读者结合文中提供的完整代码与详细注释,使用主流深度学习框架(如TensorFlow或PyTorch)进行动手实践,重点理解物理约束如何通过损失项融入网络训练过程,并尝试在不同几何构型、边界条件或热源形式下进行模型验证,以深入掌握PINN的设计思想与泛化机制。

Testing strategy

This artical comes from http://www.thoughtworks.com/consulting/testing-strategy. THe company "thoughtworks" is an amazing companyhas leadership in software technology all over the world i think. The...

云计算? 222

无源项一维波动问题的PINN的Python torch实现

内容概要:本文详细介绍了无源项一维波动问题的物理信息神经网络(PINN)的Python实现方法,基于PyTorch框架构建神经网络模型,将波动方程作为物理约束嵌入损失函数中,实现对偏微分方程的无网格数值求解。文中系统阐述了PINN的核心原理、网络结构设计、初始与边界条件的处理策略,以及利用自动微分技术高效计算高阶偏导数的方法。该方法摆脱了传统数值方法对网格划分的依赖,能够以端到端的方式逼近复杂物理问题的解,展现出在科学计算与工程仿真领域的强大潜力,尤其适用于高维或多物理场耦合问题的智能求解。; 适合人群:具备深度学习基础、偏微分方程知识及Python编程能力的研究生、科研人员,以及从事科学计算、工程仿真与人工智能交叉领域研究的专业技术人员。; 使用场景及目标:①掌握物理信息神经网络(PINN)求解偏微分方程的理论与实现流程;②完成无源项一维波动方程的神经网络建模、训练与结果可视化;③将该方法迁移应用于热传导、流体力学、电磁场等其他物理系统的建模与仿真研究; 其他说明:代码实现强调物理定律与数据驱动的深度融合,建议读者在学习过程中结合PyTorch框架特性与微分方程理论,通过调整网络层数、激活函数、损失权重和优化器参数等方式,探究不同配置对模型收敛速度与求解精度的影响,以深化对PINN工作机制的理解。

软构随笔5

2022年春季学期 计算学部《软件构造》课程Lab 3实验报告

qq_51948785的博客 257

工业流水线上玻璃瓶内异物检测数据集VOC+YOLO格式915张1类别.md

【重要提示】本页面仅为资源介绍,不含外部下载地址 亲爱的 优快云 用户: 感谢你浏览本资源页面,在这里提前向大家说明相关情况,避免后续产生误解。本资源我设置的初衷是 0 积分免费分享文档介绍,希望可以无偿给到有需要的朋友。但 优快云 平台存在自动调控机制,系统会根据资源下载热度、文件体积、平台规则等因素,自动修改资源所需下载积分,页面显示为 1 积分、2 积分或更高积分都属于平台自动调整结果,并非我手动修改设置,我没有权限自主锁定积分数值。 如果你打开页面后,发现下载所需积分不为 0,请务必谨慎考虑是否下载。一旦你支付积分完成下载,后续遇到资源内容和描述不符、文件损坏等问题,我无法承担对应的积分损失,也没有渠道为你办理积分退还。在此强烈建议,只有页面明确显示 0 积分的时候,再进行下载操作。 同时特别说明:这份资源介绍文案里,没有附带任何外部下载地址。资源本身是通过 优快云 官方上传通道上传的附件,正常情况下直接点击页面自带的下载按钮即可获取文件。页面找不到外部下载链接属于正常情况,并非资源缺失。 如果因为平台积分显示异常,导致你被扣取积分,积分退款、积分异常相关问题,请直接联系 优快云 官方客服咨询处理。平台规则由官方制定,我无法干预积分变动,望各位理解。

【网络性能测试】基于Iperf工具的Linux服务器带宽检测:TCP/UDP上下行速率与多并发稳定性评估方案

涵盖TCP和UDP协议下的上传与下载带宽、多并发连接支持以及长时间稳定性测试。详细说明了Iperf的安装步骤(包括内容概要:服务端CentOS系统本文介绍了如何和客户端Windows系统的使用Iperf工具部署)、基本命令对Linux服务器带用法及关键宽进行全方位测试参数解析,并提供了多种实际测试场景的命令,涵盖TCP和UDP协议下的上传示例,如指定端口、带与下载带宽、宽、时间、多并发连接支持能力以及网络稳定性测试。线程数等,帮助用户全面详细说明了Iperf的安装步骤评估网络服务质量。此外(包括服务端Cent,还列出了常用OS系统和客户端参数及其功能,便于Windows系统的部署)、基本灵活配置测试环境命令格式及常用。; 适合参数含义,并通过人群:具备一定具体命令示例演示Linux系统操作基础和网络了不同场景下的测试方法,如指定知识,从事运维、端口、带网络测试或系统宽、测试时管理相关工作的技术人员长、并发线,尤其是需要对程数等,服务器带宽性能帮助用户全面评估网络进行评估的专业人员。; 使用性能表现。;场景及目标: 适合人群:具备①测试服务器在基础网络知识和高负载下的最大吞Linux操作能力的运维吐能力;人员、网络工程师②验证网络链或开发人员,路是否存在丢包或尤其适用于需要对波动;③服务器网络性能进行评估多并发连接对调优或故障排查的技术人员。带宽的影响;; 使用场景及④进行长时间运行目标:①测试的稳定性监测,服务器在高负载下的最大吞吐能力确保生产环境网络可靠;②评估。; 阅读建议:建议读者TCP/UDP传输结合文档中的命令实例,在真实环境中搭建性能差异;③验证多线程并发连接对带测试场景,逐步实践宽的影响;④各项参数组合,长时间运行测试以重点关注测试结果中的判断网络稳定性;⑤带宽数值、丢包率和延迟变化诊断丢包、,从而深入理解网络延迟等问题。; 阅读建议:建议性能瓶颈所在,并在实际环境中搭建优化网络架构。测试环境,结合文档中的命令示例逐步实践,重点关注参数组合对测试结果的影响,并利用日志记录和分析功能提升测试准确性。

【Linux公有云网站配置实战|企业网络管理课程溯源、完整实训、例题解析与故障排错】

文末整理配套学习网站、网课、专业书籍。早期网络依靠人工经验维护,没有标准化流程、统一配置规范,网络故障频繁,于是各大高校开设企业网络管理相关课程,目的是培养能够维护企业内网、服务器、对外业务网站的专业运维人员。本次实训基于公有云服务器,以Linux操作系统为基础,完整完成云服务器初始化、远程连接、Web服务安装、网站源码部署、防火墙与云安全组放行,最终实现公网用户通过IP访问企业网站。Linux系统凭借稳定、开源、免费的优势成为企业服务器首选,课程新增Linux命令、用户管理、服务部署、防火墙配置内容。

2501_92125808的博客 340

DeepSeek-OCR 本地部署使用教程(附完整环境配置与推理示例)

DeepSeek-OCR是由DeepSeek AI推出的开源OCR模型,支持高精度文档识别与结构化输出(如Markdown转换)。本文提供了详细的本地部署指南,包括系统要求(推荐Linux+A100 GPU)、环境配置(Python 3.12.9+PyTorch 2.6.0+CUDA 11.8)、模型下载及两种推理方式:高性能的vLLM(适合批量处理)和灵活的Transformers(适合调试)。支持多种分辨率模式和提示词模板,适用于合同识别、PDF转换等场景。常见问题包括显存优化和性能调优建议。

qq_58607032的博客 6723

介绍模糊测试(Fuzz Testing,Fuzzing)

介绍模糊测试(Fuzz Testing,Fuzzing) 一、什么是模糊测试? 模糊测试是一种自动或半自动的测试技术,常被用来发现软件/操作系统/网络的代码中的错误和安全性问题,其中用于输入随机的数据和不合法的数据被称为“FUZZ”。之后,系统将被监视各种异常,如系统崩溃或内置代码失败等。 模糊测试最初是由威斯康辛大学的巴顿·米勒于1989年开发的。模糊测试是一种软件测试技术,是安全测试的一种。 ...

土豆洋芋山药蛋的博客 2万+

关于动态存储器dram中rank,bank,device之间的关系

DEVICE_WIDTH表示设备的带宽(单位bit),每个列(column)包含DEVICE_WIDTH 位(bit),每一行(row)包含NUM_COLS个column。   而每一个bank包含NUM_ROWS个行(row)。所以一个设备(device)的存储容量为PER_DEVICE_STORAGE =NUM_ROWS*NUM_COLS*DEVICE_WIDTH*NUM_BANKS (i

wyj7260的专栏 4733

Unity2D像素刀光实现:粒子方向控制与像素级渲染规范

像素风游戏中的刀光特效并非普通粒子动画,而是需严格遵循像素艺术原理的视觉暂留模拟。其核心在于将‘瞬时切割感’转化为程序可执行的渲染逻辑:通过禁用纹理滤波保障1:1像素锐度,绑定刀锋向量控制粒子运动方向,限定≤0.15秒生命周期匹配人眼暂留阈值,并采用Stretched Billboard实现动态拉伸拖影。该方案兼顾美术语义(如直劈、横扫、突刺)与工程约束(Sorting Layer分层、对象池复用、单粒子GPU优化),广泛适用于Unity2D平台的动作反馈系统,尤其适配《空洞骑士》《死亡细胞》类高节奏像素R

weixin_32390647的博客 284

毕业于毕业设计

从现在到毕业还有六个多月的时间,在这段时间里每一个毕业生都面临着搞定毕业论文、毕业答辩以及档案户口的各种问题。主页君今天为大家准备了从毕业论文到离校手续的全面攻略,需要的童鞋果断分享吧~ 第一篇 毕业论文 一、毕业论文开题报告范文及注意事项 开题报告的内容大致如下:课题名称、承担单位、课题负责人、起止年限、报名提纲。报名提纲包括:   (1)课题的目的、意义、国内外研究概况和有关文献资料的

zhaogezhuoyuezhao的专栏 1714

私有云平台搭建——OpenStack

私有云平台搭建——OpenStack 搭建过程

2301_79739036的博客 3092

Recent Fuzzing Papers

Recent Papers Related To Fuzzing 原文在GitHub上更新: https://github.com/wcventure/FuzzingPaper All Papers Interesting Fuzzing DifFuzz: Differential Fuzzing for Side-Channel Analysis (ICSE 2019) REST-ler:...

wcventure的博客 2847

STM32G4系列数字LLC控制程序开发实战

本文详细介绍了基于STM32G4系列MCU的数字LLC控制程序开发全流程。从开发环境搭建、中断服务函数设计,到核心的电压环PID算法、Burst模式控制、状态机设计以及软启动优化,提供了完整的实战代码和关键参数调试经验,帮助开发者高效实现高性能数字电源控制。

weixin_29185493的博客 281

先进封装技术的一些优缺点探讨

半导体封装技术是半导体制造过程中的关键环节,它不仅保护了芯片免受物理损伤,还提供了电气连接和散热功能。随着技术的发展,出现了多种先进的封装技术,每种技术都有其特定的应用场景和优缺点。

阿拉伯梳子的专栏 2171

fairfuzz 论文概要

论文英文标题为:FairFuzz: A Targeted Mutation Strategy for Increasing Greybox Fuzz Testing Coverage 在看论文时,简单每个记录了一些重要的点,方便阅读和回顾。如果需要详细了解论文内容,可看论文原文。 摘要 AFL的局限,覆盖率低。而覆盖率低,会导致有些没有被覆盖代码的bug不会被发现。 本文提出2个方法来提高覆盖率。...

Chen_zju的博客 2241

Arcmap计算土方量教程

1. 创建现状TIN 结果数据: 2. 创建设计TIN 结果数据: 注意:现状TIN和设计TIN构建时候的坐标系不同,设置坐标系见最后的注意事项第1点,就是import(导入)那步骤,现状TIN构建时选择高程点数据或者等高线数据,设计TIN构建时候选择洱海面数据 3. TIN转栅格 改成你要存的数据库,注意中间不要有汉字 结果数据(设计TIN转栅格的同理) 4. 裁剪现状TIN转成的栅格 结果数据: 5. 计算土方量 结果数据: ...

欢迎关注,共同进步! 5015

使用greybox

1.创建项目 aboutgreybox2.添加图片 images 0.jpg 1.jpg3.添加GreyBox支持 greybox4.缩写jsp文件 index.jsp <a href="images/0.jpg" rel="gb_imageset[nice_pics]" title="我的相册">...

weixin_34293059的博客 161

《Android最全面试题-Offer直通车》目录

如今Android求职是僧多粥少,竞争非常激烈,企业招聘时要求很高,本专栏汇聚android面试各种考点,各大公司Android面试题,《Android 最全面试题》将助你全方位提升,助您脱颖而出,早日拿到满意Offer。本专栏汇聚了海量优质内容,文章数量超过100 篇。凭借过硬的质量,每月新增订阅用户数以百计,如今仅需特惠价 9.9 元,限时抢购,后续将逐步恢复原价,早订阅早开启逆袭之旅。精心筹备,整理出一系列超万字精华篇章,累计数十万的 Android 面试题深度剖析。

大模型大数据攻城狮的专栏 2870

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

上一篇: MySQL加非聚簇索引造成core dump及简单分析
下一篇: mysqldump新增参数控制插入数据和建索引顺序
iteye_621
博客等级 码龄8年 12粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值