《数据库索引设计与优化》译本错误纠正(1)

        今天在学习《数据库索引设计与优化》第十一章第198页的时候遇到一个问题,即参数的文字描述与实际不符。我看的是从网络上找到的译本,许多喜欢白嫖的朋友可能也会像我一样遇到这种问题。

        可以看到,上面对参数Z的描述是:Z=上一次索引重组以来增加的叶子页数。但是在下文中,有提到“一个索引重组后包含50000个叶子页(Z)”。可以看到,这两个Z所表达的含义并不一致。 

        究竟哪个才是正确地?

        根据上下两个公式:

        (1)BINOMDIST(X, Y, 1/Z, TRUE)

        (2)BINOMDIST(5, 50000, 1/50000, TRUE)

        很明显,下面的Z所表达的含义才是正确地。纠正过后,应该是:Z=索引重组后索引中包含的叶子页总数。

        不确定这里是翻译问题,还是我手中的译本在网络上传播的过程中,这部分内容被人恶意修改过。

        讲到这里,顺便解释一下为什么公式“BINOMDIST(X, Y, 1/Z, TRUE)”可以确定一个叶子页未被分裂的概率。(不了解EXCEL函数BINOMDIST的功能和原理的朋友可以先去了解一下)。

        在这个公式里:

        (1)Y指的是随机插入的索引行数(也可以理解为索引行随机插入的次数);

        (2)1/Z指的是随机插入一个索引行,被插入到任意一个叶子页的概率(有Z个叶子页,一个索引行随机插入到任意一个叶子页的概率都是1/Z);

        (3)最后结合整个公式来理解一下X的含义,“BINOMDIST(X, Y, 1/Z, TRUE)”指的是随机插入Y个索引行,有小于等于X个索引行被插入到同一个叶子页的概率,当X=索引重组之后单个叶子页可以被添加的新索引行的数量时,这个公式就可以表示一个叶子页未被分裂的概率(因为一旦X大于单个叶子页可以被添加的新索引行的数量,这个叶子页就分裂了)。

        公式“BINOMDIST(X, Y, 1/Z, TRUE)”计算得到的是一个近似值,不过这个近似值依然是可被参考的(书中很多公式计算得到的结果都是近似值)。

        以上是我对《数据库索引设计与优化》译本的纠错,以及本人对公式“BINOMDIST(X, Y, 1/Z, TRUE)”的理解,希望能对爱学习的朋友有帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/70715.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

API测试工具:Swagger vs Postman 2025最新全面对比

随着微服务架构的普及和云原生应用的激增,高效的 API 开发、测试和文档管理工具变得越来越重要。在众多 API 工具中,Swagger 和 Postman 各自以不同的方式解决着 API 开发生命周期中的关键问题,本文将从多个维度深入对比这两款工具&#xff0…

如何查询SQL Server数据库服务器的IP地址

如何查询SQL Server数据库服务器的IP地址 作为数据库管理员或开发人员,了解如何查询SQL Server数据库服务器的IP地址是一项重要技能。本文将介绍几种简单而有效的方法,帮助你轻松获取这一信息。无论你是新手还是经验丰富的专业人士,这些方法…

centos 7 安装python3 及pycharm远程连接方法

安装openssl 使用pip3安装 virtualenv的时候会提示WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available. 这是因为缺少openssl 2.0以上版本 解决办法: 一、先确认版本 openssl version 二、安…

AI人工智能之机器学习sklearn-数据预处理和划分数据集

1、概要 本篇学习AI人工智能之机器学习sklearn数据预处理和划分数据集,从代码层面讲述如何进行数据的预处理和数据集划分。 2、简介 本片讲述数据预处理的标准化处理、归一化处理,以常用的两个类为例 标准化处理类 StandardScaler归一化处理类 MinMax…

智能硬件-01智能停车场

行业背景 随着现代人们生活水平的提高,私家车辆在不断增加,小区将面临着临时车用户要多于固定车用户的窘境,尤其是在早晚高峰时段车辆出入拥堵,对小区的车辆管理难度越来越大,对停车场收费员的岗位要求越来越高&#…

定长内存池的实现、测试及错误分析

背景 C/C 申请内存使用的是 malloc ,malloc 其实就是一个大众货,什么场景下都可以用,但是什么场景下都可以用就意味着什么场景下都不会有很高的性能。 定长内存池解决固定大小的内存申请释放需求, 性能达到极致,不考…

vue3 下载文件 responseType-blob 或者 a标签

在 Vue 3 中,你可以使用 axios 或 fetch 来下载文件,并将 responseType 设置为 blob 以处理二进制数据。以下是一个使用 axios 的示例: 使用 axios 下载文件 首先,确保你已经安装了 axios: npm install axios然后在你…

Search API:让数据获取变得简单高效的搜索引擎代理商

Search API:让数据获取变得简单高效的搜索引擎代理商 在当今数字化时代,数据驱动的决策变得越来越重要,而获取精准、实时的数据是众多企业、研究机构和开发者的核心需求。然而,直接爬取搜索引擎或行业资讯网站可能会遇到诸多挑战&…

halcon三维对象处理例程总结(二)

目录 一、intersect_plane_object_model_3d二、interactive_intersection三、measure_plant四、moments_object_model_3d五、projective_trans_object_model_3d六、read_object_model_3d_generic_ascii一、intersect_plane_object_model_3d 计算三维物体模型与平面之间的相交部…

基于 Python 的项目管理系统开发

基于 Python 的项目管理系统开发 一、引言 在当今快节奏的工作环境中,有效的项目管理对于项目的成功至关重要。借助信息技术手段开发项目管理系统,能够显著提升项目管理的效率和质量。Python 作为一种功能强大、易于学习且具有丰富库支持的编程语言&…

2月24(信息差)

🌍“任意舞蹈任意学”!宇树机器人又进化了 传Meta有意合作抛出橄榄枝 🎄两部门:深入推进公路沿线充电基础设施建设 推动大功率充电技术标准应用 ✨小米15 Ultra、小米SU7 Ultra定档2月27日 雷军宣布:向超高端进发 1.…

mysql 迁移到人大金仓数据库

我是在windows上安装了客户端工具 运行数据库迁移工具 打开 在浏览器输入http://localhost:54523/ 账号密码都是kingbase 添加mysql源数据库连接 添加人大金仓目标数据库 添加好的两个数据库连接 新建迁移任务 选择数据库 全选 迁移中 如果整体迁移不过去可以单个单个或者几个…

C++和OpenGL实现3D游戏编程【连载23】——几何着色器和法线可视化

欢迎来到zhooyu的C++和OpenGL游戏专栏,专栏连载的所有精彩内容目录详见下边链接: 🔥C++和OpenGL实现3D游戏编程【总览】 1、本节实现的内容 上一节课,我们在Blend软件中导出经纬球模型时,遇到了经纬球法线导致我们在游戏中模型光照显示问题,我们在Blender软件中可以通过…

JUC并发—12.ThreadLocal源码分析

大纲 1.ThreadLocal的特点介绍 2.ThreadLocal的使用案例 3.ThreadLocal的内部结构 4.ThreadLocal的核心方法源码 5.ThreadLocalMap的核心方法源码 6.ThreadLocalMap的原理总结 1.ThreadLocal的特点介绍 (1)ThreadLocal的注释说明 (2)ThreadLocal的常用方法 (3)ThreadL…

Deepseek和Grok 3对比:写一段冒泡排序

1、这是访问Grok 3得到的结果 2、grok3输出的完整代码: def bubble_sort(arr):n len(arr) # 获取数组长度# 外层循环控制排序轮数for i in range(n):# 内层循环比较相邻元素,j的范围逐渐减少for j in range(0, n - i - 1):# 如果当前元素大于下一个元…

Java-01-源码篇-04集合-05-ConcurrentHashMap(1)

1.1 加载因子 加载因子(Load Factor)是用来决定什么时候需要扩容的一个参数。具体来说,加载因子 当前元素数量 / 桶的数量,当某个桶的元素个数超过了 桶的数量 加载因子 时,就会触发扩容。 我们都知道 ConcurrentHas…

vue3: directive自定义指令防止重复点击

第一章 前言 相信很多小伙伴会在各个渠道上搜如何防止重复点击,之后会推荐什么防抖、节流来避免这一操作,该方法小编就不继续往下说了。接下来说说小编的场景,项目已经完成的差不多了,但是由于之前大家都是直接点击事件调用方法的…

忽略Git文件的修改,让它不被提交

使用Git托管的工程中,经常有这样的需求,希望文件只是本地修改,不提交到服务端。 如果仅仅是本地存在的文件,我们可以通过.gitignore配置避免文件被提交。 有的时候文件是由git托管的,但是我们希望只在本地修改&#…

Zap:Go 的高性能日志库

文章目录 Zap:Go 高性能日志库一、Zap 的核心优势二、快速入门 Zap1. 安装2. 基本用法输出示例 三、Logger 与 SugaredLogger:如何选择?1. **Logger(高性能模式)**2. **SugaredLogger(开发友好模式&#xf…

每日一题——顺时针旋转矩阵

顺时针旋转矩阵 目录 一、问题描述二、解题思路 1. 原地旋转矩阵2. 旋转逻辑3. 代码实现 三、代码解析 1. 参数说明2. 原地旋转逻辑3. 返回矩阵 四、示例测试代码五、复杂度分析 1. 时间复杂度2. 空间复杂度 一、问题描述 以下是内容转换为 CSDN 的 Markdown 格式&#xf…