首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
牛客489150197号
武汉警官职业学院 Java
发布于湖北
关注
已关注
取消关注
@J_PLUS:
面试知识点:数据库(一)
一、数据库有哪几种分类?特点是? 通常把数据库分为两类,即关系型数据库和非关系型数据库。 1.关系型数据库 关系型数据库是指采用了关系模型来组织数据的数据库,而关系模型是由二维表及其联系组成的数据组织。目前主流的关系型数据库有:MySQL、SQL Server、Oracle、Postgresql优点: 易于维护:都是使用表结构,格式一致; 使用方便:SQL语言通用,可用于复杂查询; 复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。 缺点 读写性能比较差,尤其是海量数据的高效率读写; 固定的表结构,灵活度稍欠; 高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。 2.非关系型数据库 非关系型数据库也称为NOSQL(Not Only SQL),作为关系型数据库的一个补充,能在特定场景和特点问题下发挥高效率和高性能。常见的非关系型数据库类型有键值(Key-Value)存储数据库和面向文档数据库(Document-oriented)。键值存储数据库类似hash,通过key做添加、删除、查询,性能高,优势在于简单、易部署、高并发。目前主流的非关系型数据库有:Redis、Memcaced、MongoDB【其中MongoDB适用于网站后台数据库(更新快、实时复制)、小文件系统(json,二进制)、日志分析系统(数据量大的文件)。】 二、数据库常用引擎和区别和比较 面试官经常问的基础问题,就是基于MySQL数据库的这几种引擎。 MyISAM:默认的MySQL插件式存储引擎,它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。注意,通过更改STORAGE_ENGINE配置变量,能够方便地更改MySQL服务器的默认存储引擎。 InnoDB:用于事务处理应用程序,具有众多特性,包括ACID事务支持。(提供行级锁) BDB:可替代InnoDB的事务引擎,支持COMMIT、ROLLBACK和其他事务特性。 Memory:将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。 Merge:允许MySQL DBA或开发人员将一系列等同的MyISAM表以逻辑方式组合在一起,并作为1个对象引用它们。对于诸如数据仓储等VLDB环境十分适合。 Archive:为大量很少引用的历史、归档、或安全审计信息的存储和检索提供了完美的解决方案。 Federated:能够将多个分离的MySQL服务器链接起来,从多个物理服务器创建一个逻辑数据库。十分适合于分布式环境或数据集市环境。 Cluster/NDB:MySQL的簇式数据库引擎,尤其适合于具有高性能查找要求的应用程序,这类查找需求还要求具有最高的正常工作时间和可用性。 Other:其他存储引擎包括CSV(引用由逗号隔开的用作数据库表的文件),Blackhole(用于临时禁止对数据库的应用程序输入),以及Example引擎(可为快速创建定制的插件式存储引擎提供帮助)。 一般来说不使用事务的话,请使用MyISAM引擎,使用事务的话,一般使用InnoDB 比较常用的是 MYISAM,InnoDB,MemoryInnoDB:支持事务处理,支持外键,支持崩溃修复能力和并发控制。如果需要对事务的完整性要求比较高(比如银行),要求实现并发控制(比如售票),那选择InnoDB有很大的优势。如果需要频繁的更新、删除操作的数据库,也可以选择InnoDB,因为支持事务的提交(commit)和回滚(rollback)。 MYISAM:插入数据快,空间和内存使用比较低。如果表主要是用于插入新记录和读出记录,那么选择MyISAM能实现处理高效率。如果应用的完整性、并发性要求比较低,也可以使用。 Memory:所有的数据都在内存中,数据的处理速度快,但是安全性不高。如果需要很快的读写速度,对数据的安全性要求较低,可以选择MEMOEY。它对表的大小有要求,不能建立太大的表。所以,这类数据库只使用在相对较小的数据库表。 三、B树和B+树 B树的原理 动态查找树主要包括:二叉搜索树,平衡二叉树,红黑树,B树,B-树时间复杂度O(log2N),通过对树高度的降低可以提升查找效率;尤其是在大量数据进行存储的时候会存储到外部 磁盘,通过对外部磁盘的读取时需要快速的查找到对应的位置,所以需要一种高效的外村数据结构。B树:就是为了存储设备或者磁盘设计的一种平衡查找树 B树与红黑树的区别 B树的节点可以有很多孩子节点,红黑树是一种近似平衡的二叉搜索树即每个节点只有两个孩子一颗含有N个节点的B树和红黑树的高度是一样的O(lgn)。 B树的定义 对于一颗M阶的B树1)树中的每个节点最多有m个孩子2)除了根节点和叶子节点外,其他节点最少含有m/2(取上限)个孩子3)若根节点不是叶子节点,则根节点最少含有两个孩子4)所以叶子节点都在同一层,叶子节点不包含任何关键字信息 B+树的原理 B+树特点1)B+树是B树的一种变形,它把数据都存储在叶子节点,内部只存关键字(其中叶子节点的最小值作为索引)和孩子指针,简化了内部节点。2)B+树的遍历高效,将所以叶子节点串联成链表即可从头到尾遍历。 B+树的定义1)有n棵子树的结点含有n个关键字,每个关键字都不保存数据,只用来索引,并且所有的数据都存储在叶子节点;2)所有叶子结点包含所有关键字信息和指向关键字记录的指针,其中关键字从小到大顺序链接。 为什么B+树比B树更适合做系统的数据库索引和文件索引 1)B+树的磁盘读写代价更低因为B+树内部结点没有指向关键字具体信息的指针,内部结点相对B树小2)B+树的查询更加稳定因为非终端结点并不是指向文件内容的结点,仅仅是作为叶子结点的关键字索引,因此所有的关键字查询都会走一条从根节点到叶子结点的路径。即s所有关键字查询的长度是一样的,查询效率稳定。
点赞 1
评论 0
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
07-24 19:44
苏州大学 集成电路IC设计
强行上台
不知道大家是否还记得性教育这么通识课程,一个大教室里面几百个人,我当时是听说这门课很水,绩点比较高,报的这门课,谁知道最后有个男女混合上台做活动,几百上千个人里面,竟然抽中了我,直接让微内的我裂开,玩的活动还非常尴尬,前人搭着后人跳兔子舞,能想象吗,在几百人面前的台子上,就老师在那指挥,下面全是沉默,给点反应互动也不至于这么尴尬,大学反正都管自己玩游戏,谁还真上课啊。
校园里的破防时刻
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
07-25 17:51
京东提前批
笔试不难,我只能说东子这次可以去做兄弟了
投递京东等公司10个岗位
点赞
评论
收藏
分享
07-06 17:22
小米_大家电部_工业设计师
25 校招结束,7 offer 收尾
都说本科毕业找工作难,我感觉还是找的不够多,四五月份几乎天天找,最后在 7 个 offer 里选择去小米辣
嘀哩咕噜说啥呢:
小米辣吗
,那举办了
投递小米集团等公司10个岗位
点赞
评论
收藏
分享
07-25 10:39
门头沟学院 Java
PDD笔试
求问佬PDD笔试内容是啥呀、这种测试会有挂掉的风险吗
投递拼多多集团-PDD等公司10个岗位
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
都是 dirty work,为什么别人的简历上就能言之有物🤔
1.6W
2
...
百度提前批一面(秋招第一场也估计是压力最大的)
7695
3
...
秋招首凉-腾讯TEG 云架构平台提前批
4077
4
...
【07.29更新】能救一个是一个!26届毁意向毁约裁员黑名单
3867
5
...
干活最少的实习生因为长得漂亮转正了
3450
6
...
团孝子启动ing!
2541
7
...
令人心动的offer!!!
2459
8
...
QQ提前批一面凉经
2169
9
...
26滴滴秋招提前批Java一面
2061
10
...
mentor:你是猪吗?
1981
创作者周榜
更多
正在热议
更多
#
你遇到最难的面试题目是_
#
7375次浏览
111人参与
#
工作压力大怎么缓解
#
94023次浏览
994人参与
#
中兴秋招
#
196542次浏览
2201人参与
#
工作中哪个瞬间让你想离职
#
51506次浏览
452人参与
#
26届的你,投了哪些公司?
#
21419次浏览
264人参与
#
你最讨厌面试问你什么?
#
14792次浏览
193人参与
#
分享一个让你热爱工作的瞬间
#
32274次浏览
335人参与
#
我对___祛魅了
#
31759次浏览
301人参与
#
简历上的经历如何包装
#
13866次浏览
476人参与
#
你跟室友的关系怎么样?
#
4001次浏览
71人参与
#
如何快速融入团队?
#
11393次浏览
137人参与
#
多益网络求职进展汇总
#
31385次浏览
139人参与
#
和同事相处最忌讳的是__
#
15306次浏览
157人参与
#
什么样的背景能拿SSP?
#
16952次浏览
131人参与
#
我和mentor的爱恨情仇
#
62041次浏览
379人参与
#
打工人的精神状态
#
68166次浏览
1114人参与
#
实习生活中那些难忘的瞬间
#
165282次浏览
2451人参与
#
元戎启行求职进展汇总
#
36282次浏览
278人参与
#
牛友们的论文几号送审
#
48648次浏览
792人参与
#
总结:哪家公司面试体验感最差
#
63486次浏览
288人参与
#
百度秋招提前批进度
#
116990次浏览
1355人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务