广告
返回顶部
首页 > 资讯 > 数据库 >数据库知识扫盲,数据库索引
  • 198
分享到

数据库知识扫盲,数据库索引

数据库知识扫盲,数据库索引 2016-02-02 04:02:06 198人浏览 猪猪侠
摘要

存储引擎 早期存储引擎都是把数据库相关数据固化到磁盘的,在并发上每张表都是表锁, 后期的存储引擎(例如innodb,in-memory等)大多都是元数据在磁盘上,索引数据在内存中,在并发上每张表都是行锁 2、磁盘型数据库索引 数据库如一本

数据库知识扫盲,数据库索引

存储引擎
早期存储引擎都是把数据库相关数据固化到磁盘的,在并发上每张表都是表
后期的存储引擎(例如innodb,in-memory等)大多都是元数据在磁盘上,索引数据在内存中,在并发上每张表都是行锁


2、磁盘型数据库索引
数据库如一本词典,存储很多数据,但要快速找到你需要查的词,就需要目录,在数据库中这个目录就叫索引,索引存的啥呢,
索引存的是被建索引字段的有序集合,并且每个字段都跟着一个数据的磁盘物理地址,有了索引表,如何查呢,在我们学习数据
结构与算法的时候,就接触到二叉树查找,那个时候就了解到树结构在查询上的优良性能,所以为了提高索引表的查询性能,索引
表数据是被存在树结构上的,sql是b+树,mongoDB是b树,简单区别就是b+树数据存放在叶子节点,叶子节点上有横向指针,
这也就确定了SQL在范围查询上的优良性能,b树数据存放在各个节点,这就确定MonGoDB在精准数据查询上的优良性能。
既然大致了解了索引结构,那索引是如何提升查询性能呢,索引树存在内存上,当你查询被索引数据时,数据库会遍历索引树,
匹配数据,找到数据磁盘物理地址,取出数据,这个过程因索引树参与数据匹配,会大大降低扫描的数据量,由此大大提升查询
性能,从这里我们能看出索引两大特点,有序集合和树结构。既然索引这么好,是不是应该给所有字段建立索引呢,其实非也,
索引会大大提升查询性能,但也会增加数据插入负担,因为每插入一条数据,所有相关索引要更新的,所以索引要查询量大的字段
上面,查询量不大想优化性能的要权衡增加的插入负担。常用的索引类型有三种,有序索引,hash索引,text索引,最常用的是
有序索引,就是上边讲的内容。复合索引是多字段索引,字段索引用途常为查询和排序,如果复合字段都为查询功能,则按照主次
建立索引即可,如果复合字段有查询也有排序,排序字段要放在查询字段前面建立索引。
索引性能调试有俩重要参数,毫秒数跟扫描量,具体参考以毫秒数为主,毫秒数和扫描量正相关,但毫秒数跟索引好坏不一定正相关,
这中间还牵涉到一个参数是数据量。

查询语法
关系型数据库大多遵循SQL语法规范,非关系型数据库语法各异。

存取性能
数据库按照存储位置分内存型数据库,磁盘型数据库。内存型数据库数据存在内存中,查询性能秒杀磁盘数据库。

数据库管理工具
这个因人而异,我个人比较喜欢Navicat,因为Navicat能连接各种数据库,并且交互比较友好,界面为中文。

数据库集群
每种数据库都有配置文件,一个配置文件启动一个数据库实例,集群就是配置多个数据库文件,可以分布在不同服务器上,
启动多个实例,建立主仆关系,主少从多, 集群一般为主写从读。


您可能感兴趣的文档:

--结束END--

本文标题: 数据库知识扫盲,数据库索引

本文链接: https://www.lsjlt.com/news/8693.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 数据库知识扫盲,数据库索引
    存储引擎 早期存储引擎都是把数据库相关数据固化到磁盘的,在并发上每张表都是表锁, 后期的存储引擎(例如innodb,in-memory等)大多都是元数据在磁盘上,索引数据在内存中,在并发上每张表都是行锁 2、磁盘型数据库索引 数据库如一本...
    99+
    2016-02-02
    数据库知识扫盲,数据库索引
  • 详细介绍MySQL数据库索引知识
    下面讲讲关于MySQL数据库索引知识,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完MySQL数据库索引知识这篇文章你一定会有所受益。MySQL数据库------索引一、索引的介...
    99+
    2022-10-18
  • 快速入门MySQL数据库索引的基础知识
    本文主要给大家介绍快速入门MySQL数据库索引的基础知识,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下快速入门MySQL数据库索引的基础知识吧。--...
    99+
    2022-10-18
  • 数据库索引
    索引(index)是帮助MySQL高效获取数据的数据结构。常见的查询算法:顺序查找、二分查找、二叉树查找、哈希散列、分块查找、B树。   1)哈希算法:就是把任意长度值(key)通过散列算法变成固定长度的key地址,通过这个地址进行访问的数...
    99+
    2017-04-03
    数据库索引
  • 数据库--索引
    索引索引是对数据库表中一个或多个列的值进行排序的结构。如果想按特定职员的姓来查找他或她,则与在表中搜索所有的行相比,索引有助于更快地获取信息。没有索引的情况下,如果执行select * from ...
    99+
    2022-10-18
  • 数据库基本知识
    一、创建和查看数据库 1.创建数据库 CREATE DATABASE [IF NOT EXISTS]#可选内容 db_name [create_specification]#如下定义:[DEFAUL...
    99+
    2022-10-18
  • 数据库知识补充
    2016.12.27.星期二--修改表alter--增加字段 ADDALTER TABLE 表名 ADD 字段名 各种修饰词 AFTER 字段名;ALTER TABLE library ADD booksn...
    99+
    2022-10-18
  • 数据库知识笔记
    1、强制使用decimal存储小数,不使用float、double,防止精度损失,如果存储的数据范围超过 decimal 的范围,建议将数据拆成整数和小数分开存储。这也是阿里的强制开发规范。2、高效分页li...
    99+
    2022-10-18
  • 数据库基础知识
    1.数据库的概念数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。2.数据库的作用3.数据层次模型4.常见关系型数据库5.SQL结构化查询语言本章没有讲NoSQL...
    99+
    2022-10-18
  • 学习数据库,你不得不知道的关于索引的小知识
      有了图,接下来,就是对于我今天看的内容觉得比较好的分享,文末有福利 1、select * 对效率的影响 在我们平时的代码编写或面试题中,很多人都会疑惑:select * 到底合理吗? 如果说不合理...
    99+
    2018-01-19
    学习数据库,你不得不知道的关于索引的小知识
  • 【MySQL】数据库基础知识
    文章目录 一. 什么是数据库二. 为什么要有数据库三. 数据库分类四. 数据库的基本使用1. MySQL安装2. 检查MySQL后端服务器是否启动3. 连接MySQL服务器4. 服务器,数据库...
    99+
    2023-09-03
    数据库 mysql
  • 数据库基础知识(三)
    五、Navicat Premium 12的安装和破解 Navicat Premium 12是一套数据库开发管理工具,支持连接 MySQL、Oracle等多种数据库,可以快速轻松地创建、管理和维护数据库。 相关教程网址:https:...
    99+
    2016-10-10
    数据库基础知识(三)
  • MySQL数据库基础知识
    day02 MySQL数据库基础知识一、基础知识概述:    基础决定你这门课程的学习成败!只有学习好这些基础知识以后,你才能真正的运用自如。才能够对数据库有更深入的...
    99+
    2022-10-18
  • 数据库知识点总结 -
    目录数据库介绍SQLSQL定义SQL的分类:DDL(数据定义语言:操作数据库和表)DML(数据操纵语言:操作数据(增删改))DQL(查询表中的数据记录)(重点)视图事务 数据库介绍 数据库DataBase: 用于存储和管理数...
    99+
    2021-05-02
    数据库知识点总结 -
  • Oracle数据库基础知识
    一、什么是关系型数据库 在学习Oracle数据库最初,先来了解下。什么是关系数据库。 关系型数据库是建立在关系数据库模型基础上的数据库关系系统(Relational DataBase Management ...
    99+
    2022-10-18
  • 总结数据库知识点
    本篇内容主要讲解“总结数据库知识点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“总结数据库知识点”吧!存储引擎InnoDBInnoDB 是 MySQL 默认的事务型存储引擎,只要在需要它不支持的...
    99+
    2023-06-16
  • mysql数据库的索引
    day04  MySQL数据库的索引一、索引概述:    索引是由一张表中的某个列或多列组成,而创建索引的目的是为了更优化管理我们的数据库表,提升我们查询使...
    99+
    2022-10-18
  • 数据库中的索引
    目录 一、什么是索引? 索引的实现原理 什么时候考虑添加索引? 索引的类型 二、为什么要有索引? 三、怎么用索引? 索引的创建和删除 怎么查看一条sql语句中使用了索引? 索引失效的情况以及对应解决方案 一、什么是索引? 索引是数据...
    99+
    2023-09-02
    mysql
  • 数据库知识复习之数据库系统概述
    数据库是数据管理的最新技术,是计算机科学的重要分支。从联机事务处理(On-Line Transaction Processing,OLTP)到联机肥西处理(On-Line Analysis Processi...
    99+
    2022-10-18
  • MySQL数据库引擎和索引
    一、MySQL 数据库引擎:1. Innodb引擎:Innodb引擎提供了对数据库ACID事务的支持,并且实现了SQL标准的四种隔离级别。在SQL标准中定义了四种隔离级别,每一种级别都规定了一个事务中所做的...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作