文章主要回顾了人人网的历史发展、现状和最近关于其停止服务的热议。同时,介绍了MySQL的索引下推技术,包括其工作原理、应用场景和注意事项。最后,推荐了一个面试刷题网站。
人人网曾是国内最早的校园社交网络平台,拥有过大规模用户和图片数量。然而,自2013年以来,人人网持续亏损,虽然有过复兴尝试,但未能重现昔日辉煌。
索引下推(ICP)是一种提高查询效率的技术,允许MySQL在使用索引查找数据时,将部分查询条件在存储引擎层过滤,减少回表查询和IO操作。它应用在联合索引上,可以减少需要从表中读取的数据行。
索引下推在MySQL 5.6及以后的版本支持,并在InnoDB和MyISAM存储引擎中生效。在某些情况下,如查询中引用了子查询、使用了函数或表达式、使用了聚簇索引查询时,索引下推可能不会生效。
文章推荐了一个名为“面试鸭”的面试刷题网站,提供全面的题库、持续更新、题解优质的特点,旨在解决面试学习痛点。
人人网已停止服务
的词条冲上热搜,我才发现,自己已经很久没想起来这个网站了。
对年轻一点的小伙伴来说,人人网可能早就是互联网“死在沙滩上的前浪”。但人人网毫无疑问地曾经火遍大江南北。
作为国内最早开始搭建校园社交网络平台的网站,巅峰时期,人人网拥有 2.4 亿用户信息,超过 70 亿张图片。凭借开心农场,人人网在2010年底,注册人数就达到 1.7 亿。
2011 年,微信刚刚诞生,人人网已经在美国纽交所上市。
但到了 2013 年,人人网开始持续出现亏损,发展每况愈下。2018 年的时候就有消息说人人网被卖了,app 也随之下架。2019 年底,新的人人网 app 上线,有不少老用户回归,公测当天就登苹果 APP Store 榜首,但用户习惯不是一时半会就能回来的。再次重启的人人网早已没有当年的热度。
起早贪黑“偷菜”的日子早就一去不返,微博热搜下还有不少朋友在怀念青春。
人人网微博的更新公告停止在 2021 年,这次登上热搜后,人人网团队发布公告称,人人网正在进行一次“换车”升级。
不知道这次人人网会继续“苟延残喘”,还是像天涯一样,选择停止运营,江湖不见。
……
怀念青春到此结束,今天也为大家准备好了面试题:
MySQL 的索引下推是什么?
回答重点
索引下推(Index Condition Pushdown, ICP)是一种减少回表查询,提高查询效率的技术。它允许 MySQL 在使用索引查找数据时,将部分查询条件下推到存储引擎层过滤,从而减少需要从表中读取的数据行,减少了 IO(本该由 Server 层做操作,交由存储引擎层因此叫做 “下推” ) 。
注意:索引下推是应用在联合索引上的。
扩展知识
官网示例说明
假设当前 people 表有索引
INDEX (zipcode, lastname, firstname)
,当执行以下查询时:
SELECT * FROM people
WHERE zipcode='95054'
AND lastname LIKE '%etrunia%'
AND address LIKE '%Main Street%';
如果没有索引下推
,当前的联合索引只能用上
zipcode='95054'
这个条件,引擎层用不上 lastname 这个条件过滤,只能得到所有符合
zipcode='95054'
记录,传递给 server 层过滤。
有了索引下推之后
,引擎层在得到符合
zipcode='95054'
的数据后,可以直接通过 lastname 条件过滤数据,不符合条件的不会返回给 server 层。
索引下推注意点
1)索引下推在 MySQL 5.6 及以后的版本支持,
InnoDB
和
MyISAM
这两个存储引擎都生效。
2)如果查询中引用了子查询索引下推可能不会生效,具体看 explain。
3)使用了函数或表达式索引下推也不能生效,这个和是否能命中索引的条件是一样的。
4)使用了聚簇索引(主键)查询,索引下推也不会生效,因为其是对于非聚簇索引来进行减少回表次数。
再来推荐下
我们的面试刷题网站和小程序:面试鸭!
咱们面试鸭立志成为
一款题库全面、持续更新、题解优质的刷题神器
,主要目的就是为了彻底解决所有你能想到的八股文学习痛点!
我们精选了近两年的高频面试真题,
已经
有 9000 多道面试题
目啦,
由大厂资深面试官手写答案,押题命中率超高!
不仅有传统八股文,场景题、项目题、系统设计题等等应有尽有,还在不断更新中!
现在邀请好友注册并成为会员,还可获得最高 50% 的分佣🧧!详情见面试鸭拉新邀请有赏规则(网页版面试鸭点击头像查看)
网页端网址:
www.mianshiya.com