引擎的原理以及应用场景分析|学习笔记

简介: 快速学习引擎的原理以及应用场景分析

开发者学堂课程【MySQL 实操课程:引擎的原理以及应用场景分析】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/717/detail/12820


引擎的原理以及应用场景分析

 

接下来给大家分享的是 MySQL 实操课程第八节,本节课主要包含以下内容。

1、索引的原理以及应用场景分析:

索引是什么?索引的主要用途?在实际操作中,索引在数据库中所起的作用?

2、MySQL 下索引的分类:

可以从不同维度分成不同类型,比方说大家可以通过索引所覆盖的列分为单列索引、符合索引或多列索引;根据索引的特点分为主建索引、唯一索引或普通索引等等,在讲解中会讲到类型索引的差异和在实践中怎样正确使用?

3、MySQL 下索引的创建与应用:

会举一个综合性的例子,在一个表中覆盖到不同索引,

4、索引的设计原则:

在明确索引的用法后,大家如何去更好的设计索引和使用索引?大部分人在设计和使用索引时,都会遇到一些问题,比如设计好的索引已经设置和上传好之后,没有任何作用的产生,这种情况可能是因为设计索引不合理所导致的。

 

一、索引的原理以及应用场景分析

讲索引之前先回顾一下之前所讲的,如何创建表和如何创建字段,字段的类型有哪些等等,这些都是大家在使用数据库时,不可或缺的一部分,也就是说在使用数据库的过程中需要先去创建数据库,表和设计字段以及字段的类型,还有一个更重要的问题,当大家在数据库进行检索时,会发现数据库检索的效率特别低,也就是说查询语句的时间很长。

此时需要考虑的是为了提高查询效率的办法,第一个想到的会是索引,索引类似于小时候接触的新华字典,大家或多或少都有接触,新华字典的最大特点是在字典的前面部分提供目录,一部分是可以根据拼音,可以找到需要找的汉字的页码,从多少页开始讲于此汉字所接近的目录,另一部分是根据偏旁,汉字的部首快速查找到中文所对应的页码,新华字典所提供的更像是索引的替代品,帮大家完成了索引的功能,引出以下索引的定义:

1、索引的定义

(1)索引是对数据库中一列或多列的值进行排序的一种结构,使用索引可以快速访问数据库表中的特定信息;

详解:

索引是一种结构,索引的用途可以快速访问数据库表中的特定信息,是多行同时进行扫描,这也是索引的优势;索引不一定是一列,有可能是多列所组成,在创建索引时,需要制定在哪个表,因为索引是创建在表上的,这是索引的特点。

(2)索引好比书的目录,通过目录你可以快速搜索到想要查找的内容。

2、索引的优点和缺点

(1)优点:

创建索引的一个重要原因是因为索引可以提高检索速度,比如对于查询条件,在查询表时,后面加上自动语音等于某一个值时,这种情况下便会用到索引,提高检索速度;

还有一些有依赖关系的赋值表,在做联合查询时,索引也可以提高检索速度;在分组或排序的查询中,也可以使用索引减少分组或排序的查询时间。

(2)索引有以下的缺点:

索引并不是用的多,好处多。对比书,书的目录会对书的纸张进行占用,对应数据库中的索引,索引会占用存储;书在更改和添加文章时,都会进一步对纸张进行占用,在数据库中,每一次更新、修改或新增时,都会重新对索引进行一次维护,索引在创建和维护时,需要消耗时间,消耗时间的长短根据数据量进行判断,数据量越大,消耗的时间越长;

会占用存储空间,书需要一定的物理空间,在每一次更新、修改或新增数据时,都会动态的去维护的索引,此时便会影响到数据维护效率。

以上便是大家提到的关于索引的定义以及应用场景

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
机器人 智能硬件
基于STM32的电机控制系统设计与实现
基于STM32的电机控制系统设计与实现
668 1
|
7月前
|
人工智能 编解码 芯片
告别低效沟通|让技术提问不再头疼-这套高效AI提问模板来帮你
不会向ai提问,不知道怎么提问的 可以看看
20758 1
告别低效沟通|让技术提问不再头疼-这套高效AI提问模板来帮你
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能应用领域有哪些
本文全面探讨了人工智能(AI)的应用领域和技术核心,涵盖医疗、交通、金融、教育、制造、零售等多个行业,并分析了AI技术的局限性及规避策略。同时,介绍了生成式人工智能认证项目的意义与展望。尽管AI发展面临数据依赖和算法可解释性等问题,但通过优化策略和经验验证,可推动其健康发展。未来,AI将在更多领域发挥重要作用,助力社会进步。
|
机器学习/深度学习 JavaScript 前端开发
JavaScript 弹窗
JavaScript 弹窗
220 1
|
9月前
|
存储 安全 测试技术
云计算应该掌握的八种用途
云计算通过互联网提供按需付费的云服务,广泛应用于软件开发、社交网络、大数据分析、数据备份、文件存储、灾难恢复、云端通信和业务流程管理等领域。它帮助企业降低硬件成本、提高开发效率、保障数据安全、增强业务连续性,并支持多样化应用场景,成为数字化转型的核心引擎。
1969 2
|
监控 安全 网络安全
|
SQL 存储 分布式计算
神龙大数据加速引擎MRACC问题之RDMA技术帮助大数据分布式计算优化如何解决
神龙大数据加速引擎MRACC问题之RDMA技术帮助大数据分布式计算优化如何解决
699 0
|
移动开发 分布式数据库
"二叉树的性质与推导及常见习题整理 "
这篇内容介绍了二叉树的一些性质及其推导。
770 0