为防黑客攻击 晚上应该关闭Wi-Fi吗?
|
图片B+树比B树优势在于: B+ 树非叶子节点存储的只是索引,可以存储的更多。B+树比B树更加矮胖,IO次数更少。 B+ 树叶子节点前后管理,更加方便范围查询。同时结果都在叶子节点,查询效率稳定。 B+树中更有利于对数据扫描,可以避免B树的回溯扫描。 索引的优点: 1、唯一索引可以保证每一行数据的唯一性 2、提高查询速度 3、加速表与表的连接 4、显著的减少查询中分组和排序的时间 5、通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。 索引的缺点: 1、创建跟维护都需要耗时 2、创建索引时,需要对表加锁,在锁表的同时,可能会影响到其他的数据操作 3、 索引需要磁盘的空间进行存储,磁盘占用也很快。
4、当对表中的数据进行CRUD的时,也会触发索引的维护,而维护索引需要时间,可能会降低数据操作性能 当在2之前崩溃时,重启恢复后发现没有commit,回滚。备份恢复:没有binlog 。一致 当在3之前崩溃时,重启恢复发现虽没有commit,但满足prepare和binlog完整,所以重启后会自动commit。备份:有binlog. 一致 binlog跟redolog区别: redo log是InnoDB引擎特有的;binlog是MySQL的Server层实现的,所有引擎都可以使用。 redo log是物理日志,记录的是在某个数据页上做了什么修改;binlog是逻辑日志,记录的是这个语句的原始逻辑,比如给ID=2这一行的c字段加1。 redo log是循环写的,空间固定会用完;binlog是可以追加写入的。追加写是指binlog文件写到一定大小后会切换到下一个,并不会覆盖以前的日志。 UndoLog UndoLog 一般是逻辑日志,主要分为两种: insert undo log 代表事务在insert新记录时产生的undo log, 只在事务回滚时需要,并且在事务提交后可以被立即丢弃 update undo log 事务在进行update或delete时产生的undo log; 不仅在事务回滚时需要,在快照读时也需要;所以不能随便删除,只有在快速读或事务回滚不涉及该日志时,对应的日志才会被purge线程统一清除 3、MySQL中的索引 索引的常见模型有哈希表、有序数组和搜索树。 哈希表:一种以KV存储数据的结构,只适合等值查询,不适合范围查询。 有序数组:只适用于静态存储引擎,涉及到插入的时候比较麻烦。可以参考Java中的ArrayList。
搜索树:按照数据结构中的二叉树来存储数据,不过此时是N叉树(B+树)。广泛应用在存储引擎层中。 (编辑:柳州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
