首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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-29 14:13
快star-x人才计划避雷
两轮技术面都过了但是通知部门没hc了要换岗位重新投递,早干嘛了,我真绷不住了
_var:
早还没确认招谁(
点赞
评论
收藏
分享
07-28 13:47
东南大学 Java
美团日常实习面经
同门面的美团日常,在这边记录一下。
点赞
评论
收藏
分享
06-24 17:38
已编辑
哈尔滨工业大学 产品经理
26硕找实习找了三个月,至今0offer
我愿称为实习悖论➡️大公司实习经历不够➡️小公司说我稳定性差(实习时长我只能3个月,还要回尔滨秋招)求大佬帮看看简历🙏求推荐的岗位🙏工资一点要求都没有,自费实习我都愿意全国可飞,租房子实习
vicky_023:
先说能干六个月进去了再润呗 太老实啦
0offer是寒冬太冷还...
点赞
评论
收藏
分享
06-15 20:57
已编辑
门头沟学院 Java
逆天辅导员
大学生 大三 给家长打电话 扣操行分后续在图四
CARLJOSEPH...:
年轻人有傲气很正常,但是建议工作前洗净傲气。 说实在的,什么奖学金什么奖项的都很一般。尊重你的老师,在有时间的时候去上课,真遇到走不开的事,请态度端正地向你的老师说明情况,请求请假。我相信任何一个有师德的老师都会允许的(我的老师就是这样)。
点赞
评论
收藏
分享
07-25 14:39
西安工业大学北方信息工程学院 Java
NFT数字藏品交易平台系统开发
NFT数字藏品交易平台系统开发方案(2025年最新版)一、系统架构设计技术栈选型核心功能模块二、智能合约关键代码实现ERC-721核心合约(示例)荷兰式拍卖合约(示例)三、安全与合规方案安全措施合规性设计四、开发流程与工具链开发步骤关键优化点测试与监控五、第三方服务集成支付服务:Stripe(法币)、MoonPay(加密货币)。存储服务:IPFS、Filecoin、Tatum API。分析工具:Dune Analytics(链上数据)、Google Analytics(用户行为)。合规服务:Onfido(KYC)、Chainalysis(交易监控)。六、市场趋势与扩展功能跨链互操作性:通过Wo...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
都是 dirty work,为什么别人的简历上就能言之有物🤔
2.0W
2
...
百度提前批 三面
3252
3
...
干活最少的实习生因为长得漂亮转正了
2809
4
...
虾皮后端一面(已挂)
2511
5
...
7.30百度提前批一面
2031
6
...
QQ提前批一面凉经
1962
7
...
27双非百度offer timeline
1944
8
...
大学四年,我感觉我像个“孤勇者”
1889
9
...
面试劫匪??????
1785
10
...
百度提前批,三面被推迟一周,喜提秋招第一凉
1765
创作者周榜
更多
正在热议
更多
#
你遇到最难的面试题目是_
#
12065次浏览
163人参与
#
26届的你,投了哪些公司?
#
30655次浏览
360人参与
#
中兴秋招
#
201077次浏览
2262人参与
#
简历上的经历如何包装
#
17743次浏览
611人参与
#
反问环节如何提问
#
95121次浏览
1942人参与
#
工作中哪个瞬间让你想离职
#
57475次浏览
514人参与
#
我对___祛魅了
#
38710次浏览
374人参与
#
你跟室友的关系怎么样?
#
5259次浏览
89人参与
#
你最讨厌面试问你什么?
#
21194次浏览
244人参与
#
和同事相处最忌讳的是__
#
18863次浏览
193人参与
#
什么样的背景能拿SSP?
#
25259次浏览
165人参与
#
如何快速融入团队?
#
13595次浏览
160人参与
#
去年你投递实习了吗?
#
22751次浏览
331人参与
#
打工人的精神状态
#
69753次浏览
1129人参与
#
工作压力大怎么缓解
#
94523次浏览
1003人参与
#
元戎启行求职进展汇总
#
36538次浏览
284人参与
#
分享一个让你热爱工作的瞬间
#
32716次浏览
344人参与
#
机械人的金三校招总结
#
35995次浏览
461人参与
#
应届生应该先就业还是先择业
#
125424次浏览
698人参与
#
实习生活中那些难忘的瞬间
#
166641次浏览
2472人参与
#
我和mentor的爱恨情仇
#
62247次浏览
379人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务