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

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

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

查看当前查询状态的命令如下: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数据库支持第三开发的引擎。
    推荐阅读
  • 正确的蜜蜂养殖方法(一年四季过下来)

    冬天结束后开始计划养蜂,此时是购入蜂群的好时机。放置一两个空巢脾,防止蜂群拥挤的蜂群出现分蜂热。暑期工作夏季,不要过度干预蜜蜂,只需要两周检查一次,留意潜在问题,蜜蜂会自己照顾自己的。停止饲喂,避免蜜蜂在炎热的夏季采集。经常检查确保蜂王安全。监测螨虫发展,防治蜂螨侵扰。检查疾病,治疗或丢弃患病的巢脾。确保所有疾病治疗均已完成。冬天来临时,经常观察蜂箱以防风害,并检查巢门口确保通风。

  • 戴的部首是什么偏旁(戴的部首是戈)

    戴字的偏旁部首是:戈拼音:dài笔画:17画,我来为大家科普一下关于戴的部首是什么偏旁?以下内容希望对你有帮助!戴的部首是什么偏旁戴字的偏旁部首是:戈。

  • 黑叶芋怎么养 花叶芋怎么养

    养殖黑叶芋首先要保证土壤疏松肥沃、排水性良好。在黑叶芋的生长旺季,每隔20天需追施一次稀薄的液肥,保证植株的生长所需,施肥不能过多、过浓。

  • 为什么没有网吧电脑快(网吧和学校的电脑为什么这么快)

    配合高的电脑要玩游戏的想要和网吧的电脑一样,就可以在电脑主板上加一个内存条,这样就使的负荷变小,一个内存同时进出就会造成道路拥堵,两条的话就是这样的,一条进一条出,电脑就不会卡了,在加上系统还原软件或者是硬盘还原卡,就可以达到网吧电脑的效果,十分简单。

  • 口腔溃疡喝什么 口腔溃疡喝什么茶比较好

    口腔溃疡的患者正常喝水即可。饮料以及酒水都不可以喝,因为饮料和酒都具有刺激性,口腔溃疡的创面接触到上述物品后,会导致疼痛感更加严重。口腔溃疡本身属于自限性的疾病,大约7~14天可以完全愈合。口腔溃疡病因不明等多因素导致其反复发作,主要致病因素如下,与饮食习惯有关,喜欢吃辛辣、刺激性和油炸类食物的人,因黏膜的局部刺激易患溃疡。

  • 80后成熟稳重的网名(唯美古风好听诗意成熟昵称)

    80后成熟稳重的网名?君踏桃花归弹断琴弦诉不够离傷,现在小编就来说说关于80后成熟稳重的网名?下面内容希望能帮助到你,我们来一起看看吧!

  • 2022长治高考考生需要做几次核酸(长治高考时间2021)

    2022长治高考考生需要做两次核酸。2022长治高考入场证明打印材料及要求2022长治高考入场需携带行程码、健康码、两次核酸检测阴性证明、体温登记表,式样要求如下:1、行程码(微信小程序或支付宝,截图打印。通知原文:点此此处拓展:2022长治高考考生赴考提醒考生应提前熟悉赴考路线,备好防疫用品。考试当天要合理安排交通工具,留足入场体温检测、身份查验的时间。考点将在开考前60分钟左右开始安检,建议考生提前到达考点。

  • miniled电视最便宜的(秋季电视新品聚焦Mini)

    2021年被誉为是显示行业的商用元年,苹果推出重量级MiniLED相关产品。2021年是整个MiniLED市场最为火热的一年。不过,虽然MiniLED技术已经成熟,但受制于成本因素及差异化消费需求,MiniLED背光产品率先被应用至中高端细分市场。高端市场增长力不足,低端市场价格战严峻,MiniLED背光的电视成为了首选布局对象。据TrendForce集邦咨询调查显示,2022年MiniLED电视年增率翻倍,出货量将挑战450万台。

  • 购买历下区的二手房户籍迁入后多长时间业主子女才可以在对口学校上学?

    购买历下区的二手房,户籍迁入后多长时间业主子女才可以在对口学校上学?对于购买二手房户籍迁入多久可以入学,目前尚无严格限定。如果学区内房产、户籍和实际居住三一致的适龄儿童申请入学人数超过学校的招生计划,则由学校按照儿童户籍迁入时间先后依次入学,超出计划部分由区教育和体育局本则相对就近的原则统筹协调安排。我们是弹性学区,选择到弹性接收学校就读是否一定能被录取?弹性接收学校优先满足本学区适龄儿童入学。

  • 补脾胃的鱼汤(春夏交替要多喝汤)

    补身体无非就是吃一些营养的东西,生活中这一类的东西有不少,考虑到前一段时间张文宏主任建议大家多喝鱼汤,所以小编在这段时间里,最常给家人准备的就是这碗白萝卜鲫鱼汤。鱼肉肉质细嫩,味道鲜美,含有大量的蛋白质、维生素、钙、锌以及不饱和脂肪酸,常食可以促进大脑活动、促进骨骼生长发育、增强机体免疫力。小贴士:1、炖鲫鱼汤的时候一定要放清水,也就是冷水,因为这样更容易蛋白质溶于汤内。