肥宅钓鱼网
当前位置: 首页 钓鱼百科

数据库的数据结构与特点(数据库中的数据结构以及查询过程)

时间:2023-07-08 作者: 小编 阅读量: 4 栏目名: 钓鱼百科

查看当前查询状态的命令如下:SHOWFULLPROCESSLIST查询过程的步骤如下:1.客户端向服务器发送请求借用于MYSQL的协议将客户端的请求发送到服务器端。MYSQL协议是一种半双工协议,即可以发送也可以接收数据。查询优化器是对我们的SQL语句进行优化最后变成一个查询执行计划。MYSQL数据库支持第三开发的引擎。

一、数据结构

数据结构通常会影响两个维度的优化:一是响应时间;二是资源消耗。

● 选择时数据类型的影响

选择数据类型通常应该遵守以下规则:

1.越小越好

所谓的越小越好是指数据类型所占的字节空间,即所占的内存情况。

2.数据类型越简单越好

通常来说越简单的数据类型,在处理时所消耗的CPU时间频率是最少的,数据类型越复杂,所消耗的CPU时间频率就会越长。例如时间、日期、IP地址等,之所以会这样是因为复杂的数据类型在比较时不是简单的ACSII比较,必须借用专门的函数来比较。

3.避免使用NULL

在定义表时,避免允许使用NULL,如果非要使用也是使用NOT NULL,因为NULL表示不是一个值,这样就不好比较。

● 常见数据类型说明

1.整型

整数又分为:TINYINT、smallint、mediumint、int、bignit,分别所点的字节数为8、16、24、32、64个字节空间

2.实型

实型分为:Float、double,分别占4个和8个字节

3.字符

字符类型又分两种:char和varchar

char是固定的大小,例如char(10),占10个字节。

varchar可变长度,例如varchar(10),如果执行我们没有用到10个字符,那么用到多少个就内存就会分配多少个,但是最多不超过10个字符,最后会有额外的字节用来做标识的。

4.日期与时间

日期与时间所点字节数与日期和时间的格式无关,固定的占8个字节

二、 查询过程

所有我们输入的SQL语句最后都会变成一个可执行的计划,放在CPU中来理解就是一个任务,每个CPU(如果CPU是单核的话)那么只同时处理一个任务,即CPU只能同时处理一个线程。

查询在运行的有不同状态:

  • 1.休眠

等待新的查询

  • 2.查询

线程正在执行查询或将查询的结果返回到客户端

  • 3.锁定

表示表处于锁定状态

  • 4.分析与统计

分析和统计相关的信息,并对查询进行优化

  • 5.拷贝数据到临时表

将结果集的数据拷贝临时表

  • 6.排序结果

对查询的结果进行排序

  • 7.发送数据

发送数据一般理解将数据返回到客户端,也可以是查询状态之间的数据传递。

查看当前查询状态的命令如下:

SHOW FULL PROCESSLIST

查询过程的步骤如下:

1.客户端向服务器发送请求

  • 借用于MYSQL的协议将客户端的请求发送到服务器端。MYSQL协议是一种半双工协议,即可以发送也可以接收数据。但不能同时发送和接受数据。

2.查询缓存

  • 检查查询结果在缓存是否存在,如果在缓存就存在那么直接将缓存的数据发送给客户端即可,如果缓存中不存在我们需要的结果数据,那么到第三个步骤。
  • 如果判断缓存中是否有我们需要的结果集的数据,是通过哈希查询来确定,是一种精确的哈希方法,并区别分大小写。

3.解析与优化查询

  • MYSQL会将我们的语句变成一个解析树,生成解析树会去检查语义、语法是否错误,判断表的信息是否正确等。
  • 查询优化器是对我们的SQL语句进行优化最后变成一个查询执行计划。

通常优化的内容的包括以下部分:

--->对连接表进行重新排序

--->将外链接变成内链接进行查询

--->代数等价法则,即关系运算符的处理

--->优化聚合函数: count()、min()、max()

--->计算和减少常量表达式

--->覆盖索引

--->子查询优化,将多个子查询转换为独立查询

--->尽早终结,是指执行的查询语句不要写的过长

--->优化in集合,优化in集合中的关系谓词

4.生成执行计划

  • 将语句优化好的,会重新生成一个解析树,再将这个解析树生成一个可执行的计划。

5.查询引擎

  • 对API函数对引擎进行操作,通过引擎到数据库中取数据。再将数据发送到客户端。
  • MYSQL数据库支持第三开发的引擎。
    推荐阅读
  • 如何将表格设置为三线表格 怎样将表格设置为三线表格

    以word为例,将表格设置为三线表格的方法如下:1、首先绘制一个普通表格。

  • 附近的投币洗衣机在哪里(全自动投币洗衣机进农民新村)

    自助洗衣机的投用,将大大改善租客们的洗衣困境。

  • 秋葵切成片不焯水直接炒可以吗(秋葵相关介绍)

    秋葵切成片不焯水直接炒可以吗?以下内容大家不妨参考一二希望能帮到您!秋葵中含有较多的粘液成分,如不焯水直接炒,这些粘液炒菜的过程中不仅容易巴锅,还可能导致菜肴看起来黏黏糊糊的,十分营养美观;秋葵中含有较多的草酸成分,不焯水直接炒的话,不见影响钙和蛋白质的吸收,还会导致品尝时苦涩味较重,建议将秋葵用沸水简单焯烫后再炒,这样既提升了口感和菜肴美观,还促进了营养吸收,一举多得。

  • 梦见手被割破了很深的口子(梦见手被割破了很深的口子去缝针)

    3、做生意的人梦到手被割破一个大口子,代表起步较难,慢慢顺利,北方得财南方贵人。

  • 吃杨桃的正确吃法(吃杨桃的正确吃法图片)

    看过上面的介绍,大家能了解吃杨桃的正确方法,也能知道它不能和什么一起吃,再吃杨桃时就能按正确方法去做,能让杨桃发挥好的养生功效,也能避免食用杨桃后让身体出现不良反应。

  • 怎样才能储存黄金(如何储存黄金)

    黄金首饰不要和纯银首饰合在一起存放,以免互相碰撞和磨擦而使足金首饰表面变银色。金饰品有抛光工艺,所以较亮,但长时间佩戴时由于汗液等因素,渐渐失去光亮,这是正常现象。避免把K金首饰与其他首饰摆放在一起,特别是钻石,因硬度不同会引起互相磨擦而刮花,黄金饰品应该以首饰盒子独立存放。

  • 三七粉正确的吃法和时间(三七粉的服用方法)

    三七粉温开水冲服,服用方便。米汤送服能促进吸收。中医临床药师建议门诊经常有患者开具并购买三七粉,用于保健作用,大多数人都是长期服用。在这里提醒患者,三七偏温,一般湿热体质,不宜长期服用,期间需注意观察,以防给身体带来不良影响。临床医师要提醒患者根据自身条件、辩证后服用。

  • 人生价值观(人生观)

    很多人认为个人主义是洪水猛兽是可怕的,但我所说的是个平平常常健全而无害的。干干脆脆的一个个人主义的出发点,不是来自夕阳,也不是完全中国的中国思想上具有健全的个人主义思想,可以与夕阳思想互相印证。

  • 免费看所有电影电视剧附网址(让你免费看电影)

    但是大师兄影视是真的快,已经被下架好多好多回了,但是每次被下架了,马上就有上架的新版本搞上去维护速度之快,简直堪比大厂!ios是伪装上架,打开正确页面需要使用一定的办法。这软件适配平台更是离谱,ios安卓网页TV版,就别管你是什么设备,全都能用

  • 盐吃多了对身体有什么危害(盐吃多了有什么危害)

    医生指出,造成脑中风最主要的原因,是高血压病。报告显示,在世界人口前20的大国中,中国因为饮食结构问题造成的心血管疾病死亡率、癌症死亡率排名第一。而在饮食导致死亡的统计表中,位列第一名的,就是高盐。食盐摄入高的地区高血压发病率也高。所以,高盐饮食也是造成中风频发的重要元凶之一。流行病学调查表明,盐的摄入量和胃癌风险之间正相关。氯化钠摄入过量还会损伤血管调节局部血压的能力,从而出现大脑供血的问题。