不吹不擂,你想要的Python面试都在这里了【315+道题】+精心整理的解答

  • Part01-Py基础篇(80)

  • Part02-网络编程和并发(34)

  • Part03-数据库和缓存(46)

  • Part04-前端框架和其他(155)

Part01-Py基础篇(80)

Part02-网络编程和并发(34)

Part03-数据库和缓存(46)

1、列举常见的关系型数据库和非关系型数据库都有哪些?

  1.1 关系型数据库:Oracle、MySQL、DB2、Microsoft SQL Server、PostgreSQL、Microsoft Access、SQLite、Hive;

  1.2 非关系型数据库(NoSQL):MongoDB、Redis、ElasticsearchCassandra、HBase

  详情见权威的数据库排行榜:https://db-engines.com/en/ranking

  1.3 关系型与非关系型数据库的区别:

  • 关系型数据库

  1、特点:

  1. 基于单一关系模型,结构化存储,有完整性约束;
  2. 通过二维表建立数据之间的联系;
  3. 采用结构化查询语言(SQL)做数据读写;
  4. 操作保存数据的一致性

  2、优点:

  1. 通过事务处理保持数据的一致性;
  2. 数据更新的开销很小;
  3. 可以进行Join等复杂查询;
  4. 20多年的技术历程,技术成熟;

  3、缺点:

  1. 数据读写必须经过sql解析,大量数据、高并发下读写性能不足;
  2. 为保证数据一致性,需要加锁,影响并发操作;
  3. 无法适应非结构化的存储;
  4. 大量数据集中到一台服务区处理,使服务器不堪重负;
  5. “阻抗失谐”,即数据库中存储的对象与实际的对象实体有一定的差别;
  6. 扩展困难;
  7. 数据库庞大,价格昂贵;
  • NOSql数据库

  1、特点:

  1. 非结构化的存储;
  2. 基于多维关系模型;
  3. 部署容易,开源免费,成本低;

  2、优点:

  1. 处理高并发、大批量数据的能力强;
  2. 支持分布式集群,负载均衡,性能高;
  3. 解决“阻抗失谐”问题;
  4. 内存级数据库,查询速度快;
  5. 存储格式多,支持key-value形式、文档形式、图片形式;
  6. 没有多表连接查询机制的限制,扩展性高;

  3、缺点:

  1. 技术起步晚,维护工具以及技术资料有限;
  2. 不支持sql工业标准;
  3. 没有join等复杂的连接操作;
  4. 事务处理能力弱;
  5. 没有完整性约束,对于复杂业务场景支持较差;

2、MySQL常见数据库存储引擎及比较?

  数据库存储引擎是数据库底层软件组件,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。MySQL的核心就是存储引擎。

2.1 常见存储引擎;

  MySQL提供了多个不同的存储引擎,包括处理事务安全表的引擎和非事务安全表的引擎。在MySQL中,不需要在整个服务器中使用同一存储引擎,针对具体的要求,可对每一张表使用不同的存储引擎。MySQL5.7 支持的存储引擎有:InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、BLACKHOLE等。使用show engines语句来进行查看。

  • InnoDB是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键。MySQL5.5.5之后,InnoDB作为默认的存储引擎。
  • MyISAM基于ISAM的存储引擎,并对其进行扩展。它是在Web、数据库存储和其他应用环境下最常使用的存储引擎之一,MyISAM拥有较高的插入、查询速度,但是不支持事务。MySQL5.5.5之前的版本中,是默认的存储引擎;
  • MEMORY存储引擎将表中的数据存储到内存中,为查询和引用其他表数据提供快速访问;

2.2 如何选择?

         
         
         
         
         
         
         
         

3、简述数据三大范式?

4、什么是事务?MySQL如何支持事务?

5、简述数据库设计中一对多和多对多的应用场景?

6、如何基于数据库实现商品计数器?

7、常见SQL(必备)

8、简述触发器、函数、视图以及存储过程?

9、MySQL索引分类

10、索引在什么情况下遵循最左前缀的规则?

11、主键和外键的区别?

12、MySQL常见的函数?

13、列举创建索引但是无法命中索引的8种情况?

14、如何开启慢查询日志?

15、数据库导入导出命令(结构+数据)

16、数据库优化方案?

17、char和varchar的区别?

18、简述MySQL的执行计划?

19、在对name做了唯一索引的前提下,简述以下区别?

 select * from tb where name = ‘Oldboy-Wupeiqi’ ? 

select * from tb where name = ‘Oldboy-Wupeiqi’ limit 1

20、1000w条数据,使用limit offset分页时候,为什么越往后翻越慢?如何解决?

21、什么是索引合并?

22、什么是覆盖索引?

23、简述数据库读写分离?

24、简述数据库分库分表?(水平、垂直)

25、Redis和memcached的比较

26、Redis中数据库默认是多少个db及作用

27、Python操作Redis的模块?

28、如果Redis总某个列表的数据量非常大,如何实现循环显示每一个值?

29、Redis如何实现主从复制?以及数据同步机制?

30、Redis中的sentine的作用?

31、如何实现Redis集群?

32、Redis中默认有多少个哈希槽?

33、简述Redis有哪几种持久化的策略及比较?

34、列举Redis支持的过期策略?

35、MySQL里有2000w的数据,redis中只存20w数据,如何保证Redis中都是热点数据?

36、写代码,基于Redis的列表实现先进先出,后进先出队列,优先级队列?

37、如何基于Redis实现消息队列?

38、如何基于Redis实现发布和订阅?以及发布订阅和消息队列的区别?

39、什么是codis及其作用?

40、什么是twemproxy及其作用?

41、写代码实现Redis事务操作?

42、Redis中的watch的命令的作用?

43、基于Redis如何实现商城商品数量计数器?

44、简述Redis分布式锁和redlock的实现机制?

45、什么是一致性哈希?Python中是否有相应模块?

46、如何高效低找到Redis中所有以oldboy开头的key?

Part04-前端框架和其他(155)

原文地址:https://www.cnblogs.com/tqtl911/p/9750709.html

时间: 2024-07-31 04:59:50

不吹不擂,你想要的Python面试都在这里了【315+道题】+精心整理的解答的相关文章

不吹不擂,你想要的Python面试都在这里了【315+道题】

https://www.cnblogs.com/wupeiqi/p/9078770.html 近日恰逢学生毕业季,课程后期大家"期待+苦逼"的时刻莫过于每天早上内容回顾和面试题问答部分[临近毕业每天课前用40-60分钟对之前内容回顾.提问和补充,专挑班里不爱说话就的同学回答]. 期待的是可以检验自己学习的成功:苦逼的是怎么又有东西没记住,但我们依然每天坚持一遍.一遍又一遍指导记住为止. 原本以为大家会把讲过的都记录下来,以便日后毕业复习,事实证明18岁的我还是太年轻. 一切想象的太美好

想发出,什么时候都不晚

人性是矛盾的,每个人总希望自己的人生一帆风顺.但是此时此刻的我却觉得太顺利的人生不好,有些波澜起伏,大风大浪总归是好的,这样当更大的挫折来时,才不至于一下子被击垮! 我,一个平平凡凡的我,平凡的长相,平凡的智商,略低的情商,走过了二十多年平平凡凡的人生,没有遇到过现在这般的挫折和压力,或者以前遇到了但是总有母亲帮我挡住了,从小好好学习,天天向上,在自强不息的努力之后,考上了全市最好的高中,然后来到了C9高校,所有的这些像命运设计好的坦途一样,甚至大学,专业都是别人帮我选好了,所以我不是一个有主见

想知道老板们每天都在想什么吗?!我来告诉你们

不知道你有没有想过这样的一个问题:他为什么是你的领导? 不同的人,能列出不同的原因,比如他比你工作能力强,他比你会为人处事,他比你有背景,甚至他比你年龄大.入行早等等.但不论什么原因,他是你的领导已经是既定的事实了.如果你有能力,那么你可以给自己一个方案,给自己做一个项目,所谓的项目远没有想象中的那么复杂,说的通俗一点就是“所谓项目就是计划要解决的问题”!当我们把所有要解决的问题都可以解决好,我们也就成了领导了. 下面就给大家看看他们花了近万元参加管理培训才能得到的东西,要的留下QQ邮箱,童叟无

想要成为python大神,这17个老司机收藏的国外免费学习网站不可错过!

用Python编写代码一点都不难,事实上它一直被赞誉为最容易学的编程语言. 如果你准备学习web开发, Python是一个不错的开始,甚至想做游戏的话,用Python来开发游戏的资源也有很多. 许多程序员都把Python作为编程之旅的开始,然后是像PHP和Ruby这样的语言.它也是最热门的Web开发语言之一,并极力推荐学习.但是,Python应该怎么学呢?应该从哪里开始? 小胖今天来为你解决这个问题,因为我自己学习编程和开始做开发的时候也依靠了很多这里的资源. 刚开始学习的时候可能会有些令人沮丧

对于不平凡的我来说,从小我就在想为啥别人就什么都能拥有,而看看自己却什么都没有,对于原来的我就会抱怨

对于不平凡的我来说,从小我就在想为啥别人就什么都能拥有,而看看自己却什么都没有,对于原来的我就会抱怨爸妈怎么没有别人父母都能给自己想要的,可我从未想过父母的文化只有小学,其实父母内心也有太多的辛酸,所以我不甘愿如此,从此让我在大学里面直接选择一个让我巨大的转折----IT. 首先我给大家说说IT的由来吧一 . 什 么是 ITIT 是信 息技 术的简称 ,Inform ation T echnology ,指与 信息相关 的技 术 ,包含 现代 计 算机 .网络 .通讯 等 信 息领 域 的技 术

东风吹战鼓擂 ICMAX篮球赛场上谁怕谁?

宏旺半导体八月职工篮球赛顺利举行,走出办公室相约篮球场,依旧是飞鹰VS猛虎队,此次篮球比赛可谓空前激烈,双方都有厉害的队员加入,将总比分拉到新高,赛场上激杀反超比分是常态. 随着裁判的一声哨向,飞鹰队和猛虎队展开了激烈的角逐(红色球衣飞鹰队,白色球衣猛虎队).第一节比赛刚开场双方还未很好进入状态,飞鹰队凭借着出色的身体素质和默契的配合在首个回合中拔得头筹,一记漂亮的三分球将现场气氛点燃,比赛逐渐热烈.猛虎队也不甘示弱,在接下来的几局比赛中渐入佳境,防守布局做到胸有成竹,进退有度,配合默契,做到了

不想放弃的python

本节Python部分(数据类型) 1 基本数据类型 数字: 整型int:年级,年纪,等级,身份证号,qq号,手机号 level=10 浮点型float:身高,体重,薪资,温度,价格 height=1.81 salary=3.3 字符串str:包含在引号(单,双,三)里面,由一串字符组成 用途(描述性的数据):姓名,性别,地址,学历,密码:alex3714 name='egon' 取值: 首先要明确,字符串整体就是一个值,只不过特殊之处在于: python中没有字符类型,字符串是由一串字符组成,想

移动安全技能提升播报,你想要的这类都有!

近年来,利用app渗透工具展开攻击的案例层出不穷,受害者也与日俱增.虽说只要消除安全漏洞就能够杜绝这些攻击,但这就需要安全从业者掌握正确的安全知识. 随着移动互联网的迅速发展,智能手机,平板电脑,一些可穿戴设备逐渐走进人们的生活,毫无疑问,这些安卓设备不但给我们带来了无穷的乐趣,还可以提高我们的工作效率.那么问题来了,不少人都遇到过这样一种现象,当我们下载安装一些应用程序的时候,往往会附带好多垃圾软件,甚至一些广告插件,给我们带来了极大的苦恼,怎么对安卓app软件进行安全加固,防止逆向破解,被植

半路出山想迅速上手Python做机器学习?这篇文章就是你需要的实用指南

毋庸置疑,近来机器学习人气日益高涨,逐渐在流行词榜单上占据一席之地.机器学习算法繁多,到底该选择哪一种处理相关数据是困扰很多学习者的问题.本文将以一种清晰简明的方式,解释并实践最常见的几种机器学习算法. 接下来,我们将罗列8种最常见火爆的机器学习算法,通过Python,将它们分别适用同一个经典数据集Iris(线性回归和逻辑回归除外),进而分辨出不同算法在预测准确率.模型建立过程.对数据集的使用方式等方向的异同.每一种算法后都将附上Python实现代码和演示视频. 推荐下我自己创建的Python学