当前位置: 首页 > news >正文

网站建设维保合同范本17素材网下载

网站建设维保合同范本,17素材网下载,岳阳君山,运营推广怎么学Mysql实战-SQL存储引擎 前面我们讲解了索引的存储结构#xff0c;BTree的索引结构#xff0c;我们一般都知道Mysql的存储引擎有两种#xff0c;MyISAM和InnoDB,今天我们来详细讲解下Mysql的存储引擎 文章目录 Mysql实战-SQL存储引擎1.存储引擎2.MyISAM的特点3. InnoDB的特…Mysql实战-SQL存储引擎 前面我们讲解了索引的存储结构BTree的索引结构我们一般都知道Mysql的存储引擎有两种MyISAM和InnoDB,今天我们来详细讲解下Mysql的存储引擎 文章目录 Mysql实战-SQL存储引擎1.存储引擎2.MyISAM的特点3. InnoDB的特点4.InnoDB和MyISAM的对比5.索引树层级 1.存储引擎 什么是存储引擎 MySQL中的数据用各种不同的技术存储在文件(或者内存)中。每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力 存储引擎就是数据库底层的软件组织数据库管理系统使用存储引擎来进行增删改查不同的引擎底层采用不同的存储机制索引机制锁机制等等Mysql常用的存储引擎 Mysql常用的存储引擎有两种, MyISAM和InnoDB 2.MyISAM的特点 MyISAM 是MySQL最早的存储引擎MyISAM 支持表级锁定和高速读取MyISAM 既不支持事务、也不支持外键MyISAM 优势是访问速度快但是表级别的锁定限制了它在读写负载方面的性能MyISAM 它经常应用于只读或者以读为主的数据场景 MyISAM会把数据存储在磁盘上分别存储成3个文件其中文件名和表名都相同但是扩展名分别为 .frm(存储表定义).MYD(MYData存储数据).MYI(MYIndex存储索引) MyISAM的索引的索引和数据是分开存储的他的结构是BTree 在Tree的叶子节点的数据区域存储的是实际数据的地址指向实际的地址这种索引就是非聚集索引 3. InnoDB的特点 InnoDBMySql 5.6 版本默认的存储引擎InnoDB 是一个事务安全的存储引擎它具备提交、回滚以及崩溃恢复的功能以保护用户数InnoDB InnoDB采用行级锁定能够提高多用户并发数以及性能InnoDB 将用户数据存储在聚集索引中以减少基于主键的普通查询所带来的 I/O 开销InnoDB支持事务处理和外键约束等功能 InnoDB会把数据存储在磁盘上分别存储成2个文件 .frm(存储表定义)ibd(数据和索引文件) 它和MyISAM很大的区别就是InnoDB的数据文件本身就是索引文件索引和数据是放在一起的只有一个文件idb文件后缀结尾 InnoDB的索引结构也是BTree结构但是Tree的叶子节点保存的就是完整的数据记录索引的Key就是表的主键数据文件本身就是主索引这就要求表结构必须有主键即使没有显式的设置主键也会默认生成一个隐式主键 数据和索引在一起叶子节点包含了完整的数据记录这种索引就叫做聚集索引 4.InnoDB和MyISAM的对比 对比InnoDB引擎MyISAM引擎文件存储方式.frm 后缀是表定义文件ibd(数据和索引文件一起).frm后缀是表定义文件.MYD是数据文件.MYI是索引文件索引方式BTreeBTree辅助索引data区域Tree的数据区域data存储的是索引主键的值所以需要靠辅助索引获得主键然后用主键到主索引中检索获得记录也就是回表Tree的数据区域data存储的是索引地址事务支持支持事务ACID不支持事务锁机制表级锁行级锁表级锁count(*)查询全表扫描MyISAM表级锁直接存储了表行数count(*)直接读取无所扫描读效率效率低效率高写效率效率高效率低常用场景读写操作读操作读多写少 5.索引树层级 经常听到别人说Mysql的索引树一般会在3层这个是有什么依据为什么说Mysql的索引树一般都在1-3层的结构 下面我们来具体的计算一下看看3层结构可以支持多少数据 我们可以根据B树的原理进行一下数据推算磁盘每页数据为4KMysql的B树 对此又进行了一次调整在Mysql也有自己的页概念Mysql每一页数据等于磁盘4页的大小Mysql里面的一页数据其实是16K那么也就意味着Mysql里B树的非叶子节点可存储16K的数据我们计算一个索引大小Mysql规定一个索引占8B索引和下一级索引之间的下一层地址空间占6B也就是一个索引是 86 14B我们按照每个非叶子节点的16K来计算Mysql索引树每个节点能容纳(16*1024B)/14B1170个索引key及指针叶子节点是存放数据节点的假设每条数据的大小是1KB,那么每一个叶子节点都可以存放 16KB/1KB16个数据假设我们现在有一个高度为3的BTree存满数据第一层 可以只放 索引指针 1170个第二层同样是 1170个索引指针第三层 可以存放16个数据这里不是索引和指针了是真实数据 那么三层的树我们可以存放 1170117016 21,902,400 2KW 两千万条数据只需要3次I/O操作我们就可以精确定位数据 所以我们的表数据一般而言都保持在千万级以内索引树都会保持在3层之内因此Mysql的索引树一般都在1-3层。 至此我们彻底的了解了mysql存储引擎的分类及区别也深入探讨了索引树一般会在3层的底层逻辑
http://www.hkea.cn/news/14334818/

相关文章:

  • vr全景网站开发广东网站制作公司排名
  • 学设计的视频网站公明网站建设
  • 舞蹈培训机构网站建设网页制作软件绿色版
  • 男女做那个是的视频网站公司做网站的费用
  • 网站检测流量大的推广平台有哪些
  • 有没有做会计的网站淘宝客网站应该怎么做
  • 网站查看空间商网站开发建设培训
  • 上海网站设计公司 静安网站建设 作用
  • 广东企业网站建设推荐装修设计方案
  • 离石做网站的网络公司企业官网网站建设免费
  • 做网站写代码怎么样国外网站免费dns
  • seo优化方法网站快速排名推广渠道做网站什么价格
  • 在电脑上怎么建设网站中国建筑设计作品网站
  • 购物网站首页界面设计网站开发的技术类型有哪些
  • 手机端网站变成wap云虚拟主机怎么使用
  • 做精神科网站价格徐州泉山建设局网站
  • 网站推广建设阶段广西桂川建设集团网站
  • 长春模板网站建站手机app用什么软件制作
  • 网站建设排序题教学平台
  • 网站 cms 免费河北网络推广
  • 经典wordpress网站个人主页怎么找
  • wordpress 注册界面优化公司治理结构的措施
  • 药店网站模板购物网站数据分析
  • 邹平网站开发招聘网站建设技术要求
  • 自己做的网站怎么上传网站站内文章互联
  • wordpress开发视频网站模板网站建设五年发展规划
  • 自动下单网站开发wordpress 下工具下载
  • 辽宁省高等级公路建设局网站更换wordpress图标
  • 有专门做预算的网站没网站开发帐务处理
  • 给公司做网站需要什么什么叫电商