磁盘如何分配数据数据

       📝个人主页:五敷有你      

 🔥系列专栏:算法分析与设计

⛺️稳中求进,晒太阳

磁盘如何分配数据

数据切割:

按照固定长度进行切割---》编码翻译(常用) 计算机要求按照8bit(字节)进行切割

按照变长进行切割----》哈夫曼编码(常用于压缩)

字节是存储数据的最小单元

CPU、内存和磁盘

cpu一次处理数据(一次可以处理32bit或64bit的数据)的时间是0.2ns

磁盘查找数据需要机械臂的移动

台式机120r/s

笔记本90r/s

从cpu下达指令,到磁盘查到数据有3~6ms

内存条速度为20ns

内存的内部结构是电容器当内存条断电,数据就会消失

有中间商(内存条传输)会比原来多20ns

但时间节省在查找上

大块数据会一次性由磁盘传给内存条(游戏前的加载)

磁盘上的数据经常删除和添加--》磁盘上有大量的内存碎片----》查找次数增多

每个扇区大小是4KB(约32000bit),

内存中也有对应的叫页(内存中最基本的存储单元)

为什么要有扇区?

磁盘中数据是存储在扇区中的,是磁盘的基本单元

为什么内存用红黑树也不用b树:

b树在内存存储数据时,减少了在页间的查询次数,增加了页内的查询次数,页内查询比页间查询更耗时,所以内存使用红黑树。

为了提高查咋效率:

宁可放弃空间,也要提升查询时间

B树的应用点:

b树一般用于磁盘。

对于在内存中来说,多叉树的作用不大,但是对于磁盘来说,如果一个结点存了10个key,就可以少寻址很多次。所以多叉树的作用就是使得层高降低为了减少寻址次数。这也就是为什么磁盘的存储适合用b树或b+树的原因。

多叉树 -> 降低层高 -> 减少结点数量 -> 减少磁盘IO -> 提升性能

B+树结构特点

1.非叶子节点仅具有索引作用,也就是说,非叶子节点只能存储Key,不能存储value;2.树的所有叶节点构成一个有序链表,可以按照key排序的次序依次遍历全部数据。

B+ 树的优点

1.由于B+树在非叶子结点上不包含真正的数据,只当做索引使用,因此在内存相同的情况下,能够存放更多的key;

2.B+树的叶子结点都是相连的,因此对整棵树的遍历只需要一次线性遍历叶子结点即可。而且由于数据顺序排列并且相连,所以便于区间查找和搜索。而B树则需要进行每一层的递归遍历。

B树的优点

由于B树的每一个节点都包含key和value,因此我们根据key查找value时,只需要找到key所在的位置,就能找到value,但B+树只有叶子结点存储数据,索引每一次查找,都必须一次一次,一直找到树的最大深度处,也就是叶子结点的深度,才能找到value。

未建立主键索引查询

建立主键索引

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

回文数-第15届蓝桥第5次STEMA测评Scratch真题精选

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第179讲。 如果想持续关注Scratch蓝桥真题解读,可以点击《Scratch蓝桥杯历年真题》并订阅合集,…

C语言----找出10个整数中的最大值

今天让我们来看看如何找出10个数的最大值吧。 题目描述 今天杰克在做数学题目的时候产生了思考,我应该怎么才能找出10个数的最大值呢,给大家一道题目,帮帮杰克吧,现有数组int arr[] { 1,2,15,4,8,6,23,8,9,10 };,使用…

ceisum 画矩形 画带高度的矩形 画竖起来的矩形

一、画矩形,每个点不带高度,距离地表500米 viewer.entities.add({polygon: {hierarchy: new Cesium.PolygonHierarchy(Cesium.Cartesian3.fromDegreesArray([113.34742631368005, 38.1066616874903,113.34779274419935, 38.1022786524791,113.358628631…

是谁?写的Java神作一出版就获Jolt图书大奖【抽奖赠书】

送书活动 1️⃣参与方式:点此参与抽书抽奖 2️⃣获奖方式:小程序随机 抽5位,每位小伙伴一本《Effective Java中文2024版》 3️⃣活动时间:截止到 2024-4-6 12:01:00 注:所有抽奖活动都是全国范围免费包邮到家&#xff…

.[backups@airmail.cc].faust勒索病毒深度解析 | 数据恢复 | 数据解密

前言: 在当今数字化时代,网络安全问题日益凸显,其中勒索病毒无疑已成为一大全球性的威胁。这些恶意软件不仅悄无声息地侵入个人和企业的计算机系统,而且以其狡猾的加密手段锁定重要数据,进而向受害者索要高额赎金。随着…

Sora可能会改变我们的思维方式

当经济学家评估生成式人工智能对人类工作的影响时,教育家也有自己的担忧,毕竟在写作、答疑等领域,AI所展现的能力已经令许多人类望尘莫及,学者们可能有这样的思考:散文是否会继续主导人类的交流和论证。 社交媒体和新闻…

windows 系统下 mysql 数据库的下载与安装(包括升级安装)

windows 系统下 mysql 数据库的下载与安装(包括升级安装) 一、mysql 介绍: MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。 MySQL 是最流行的关系型数据库管理系统之一&#xf…

上位机图像处理和嵌入式模块部署(qmacvisual测量标定)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 在机器视觉中,测量是很重要的一个环节。如果是简单的定位,可能精度要求并不那么严格。但是如果是对产品进行QA测量,需要精确到0.1mm,甚至是0.05mm这样的精度,那就需要对camera…

15.Python访问数据库

如果数据量较少,则我们可以将数据保存到文件中;如果数据量较 大,则我们可以将数据保存到数据库中。 1 SQLite数据库 SQLite是嵌入式系统使用的关系数据库,目前的主流版本是SQLite 3。SQLite是开源的,采用C语言编写而…

Spring boot如何执行单元测试?

Spring Boot 提供了丰富的测试功能,主要由以下两个模块组成: spring-boot-test:提供测试核心功能。spring-boot-test-autoconfigure:提供对测试的自动配置。 Spring Boot 提供了一个 spring-boot-starter-test一站式启动器&…

不是所有的Linux工具都会让人惊叹,但这个绝对让你叫绝

今天我要向大家介绍一款非常强大的系统诊断和监控工具——sysdig。它能替代top、iftop、lsof和strace等工具,让你的工作更加高效。下面让我举几个应用场景,让你亲眼见证它的强大! 什么是sysdig sysdig是一款开源的系统诊断和监控工具&#…

排序算法-归并排序

Leetcode链接:. - 力扣(LeetCode) 归并:将原始数组划分为若干个子数组,然后将这些子数组分别排序,最后再将已排序的子数组合并成一个有序的数组。是一种分治思想 思路: 1.分 2.治 3.怎么治 …

Matlab实验:FIR数字滤波器设计

01.代码内容及原理 02.代码所有效果图 获取代码请关注MATLAB科研小白的个人公众号(即文章下方二维码),并回复MATLAB实验;本公众号致力于解决找代码难,写代码怵。各位有什么急需的代码,欢迎后台留言~不定时更…

从零开始,构建智慧企业:人事管理软件新升级全攻略

本文从智能化人事管理的六大核心要素探讨如何打造一个适应现代企业需求的智能化人事管理系统,并介绍几款市场上表现优秀的人事管理软件。 随着我国经济的发展,企业全球化是大势所趋,难免会出现跨国员工数量增加、办公地点分散、跨部门协作等…

超图新建三维数据集继续学习

1 新建三维数据集 之前操作过新建三维数据集,还不熟悉,继续熟悉; 现在有一个文件型的数据源,名为swtest1;它前面小图标上有UDX三个字母,表明这是一个UDX类型的数据源;在此数据源上右击&#x…

vs2022 开始自己的第一个Python程序

这是针对于vs2022安装和使用教程(详细)创建Python项目的简单示例,旨在示范从项目搭建到程序运行的简单流程,代码就是打印Hello World,适合初次使用vs2022的用户~ 1.以Python为例,下拉到Python应用程序&…

c#仿ppt案例

画曲线 namespace ppt2024 {public partial class Form1 : Form{public Form1(){InitializeComponent();}//存放所有点的位置信息List<Point> lstPosition new List<Point>();//控制开始画的时机bool isDrawing false;//鼠标点击开始画private void Form1_MouseD…

一次普通的漏洞挖掘思路分享

No.0 前言 一名web安全小白&#xff0c;自己仅学了一点思路&#xff0c;直接实战&#xff0c;运气不错&#xff0c;碰到了管理员弱口令&#xff0c;进入后台后&#xff0c;继续测试自己学会的思路挖掘深一点的漏洞&#xff0c;这里与各位分享一下&#xff0c;如果有更多的思路…

01 - 半加器 异或门

---- 整理自B站UP主 踌躇月光 的视频 1. 半加器 ABSC0000011010101101 S A ‾ B A B ‾ C A B \begin{aligned} S & \overline{A}B A\overline{B} \\ C & AB \end{aligned} SC​ABABAB​ 2. 异或门 S A ‾ B A B ‾ \begin{aligned} S & \overline{A}B A\o…

如何评估编码器性能优劣?全方位检测方法与常见故障解决方案

编码器是一种电子或机械装置&#xff0c;其主要功能是将物理量&#xff08;如角位移、直线位移、速度、压力、温度等&#xff09;转换为相应的电信号&#xff0c;或者是将数据、信号或信息进行格式转换和编码&#xff0c;使其能够适应特定的通讯协议、传输介质或存储要求。 在…