看完2019年阿里巴巴Python面试题详解,月薪3万不是梦( 三 )


2) 为什么选择redis数据库,因为redis支持主从同步,而且数据都是缓存在内存中的,所以基于redis的分布式爬虫,对请求和数据的高频读取效率非常高 。
3.数据库的优化?
1. 优化索引、SQL 语句、分析慢查询;
2. 设计表的时候严格根据数据库的设计范式来设计数据库;
3. 使用缓存,把经常访问到的数据而且不需要经常变化的数据放在缓存中,能
节约磁盘IO;
4. 优化硬件;采用SSD,使用磁盘队列技术(RAID0,RAID1,RDID5)等;
5. 采用MySQL 内部自带的表分区技术,把数据分层不同的文件,能够提高磁
盘的读取效率;
6. 垂直分表;把一些不经常读的数据放在一张表里,节约磁盘I/O;
7. 主从分离读写;采用主从复制把数据库的读操作和写入操作分离开来;
8. 分库分表分机器(数据量特别大),主要的的原理就是数据路由;
9. 选择合适的表引擎,参数上的优化;
10. 进行架构级别的缓存,静态化和分布式;
11. 不采用全文索引;
12. 采用更快的存储方式,例如 NoSQL存储经常访问的数据
结尾以上只是一部分题目,关注小编,我这里有很多Python学习资料,我会每天和大家分享我的学习方法以及根变成有关的趣事 。




推荐阅读