面试不是意味着给解决方案,有时候我们也应该质疑问题
来源:互联网 发布:人工智能企业排名 编辑:程序博客网 时间:2024/05/19 03:26
在面试的时候你会被问到各种各样的怪问题,在绞尽脑汁想着解决方案的时候你或许可以从实际的角度给出最完美的方案。
以下举个数据库相关的面试问题:
CSDN论坛帖子总量的统计,要求实时更新!
MyISAM 存储引擎的情况SELECT COUNT(*)的Query就能解决了!注:MyISAM 存储引擎互联网基本不会选择。
Innodb 存储引擎的情况呢?千万的帖子呢?访问量再大一点呢?
或许有些哥们会想到增加一个统计表,每次有新的帖子产生的时候,都将统计表中统计量这个值增加1,
这个哥们的方法肯定能解决查询的问题不错,但是高峰时期可能每秒就有几十甚至上百个帖子新增操作的时候呢?
又是一场噩梦了,是不是......
其实这种问题我们换个思维,这是一个合理的需求吗?明显需求造成的资源投入产出比相当低。
多少人会关心实时更新的帖子总量统计?有谁会在乎这个数据短时间内的不准确性?
其实去掉实时更新这个问题就很好解决了,创建一张统计表,隔一段时间去统计一次就OK了,不是吗?
这样既可以解决统计值查询的效率问题,又可以保证不影响新发贴的效率,一举两得。
别看这个问题出现的不多,其实实际有很多类似的功能,如:某些表达到一个数量级之后,我们去分页显示他的时候,完全可以
不用准确的显示这个列表总共有多少条信息,总共分了多少页,而只需要一个大概的估计值或者一个时间段之前的统计值就OK了。
这样也可用省去实时大数据的COUNT操作。
总结:从面试题看生产,很多时候我们可用换个角度思考问题,更多的发散思维。
从需求性看实际,并非一味的实时和精准是比较好的,有价值的方案。
从问题出发,我们更需要的是知道问题的本质原因。
- 面试不是意味着给解决方案,有时候我们也应该质疑问题
- 有时候 遗憾也未尝不是一种美
- 我们在平时或面试遇到这些问题时,我们应该怎么回答?
- 我们也应该支持这些地区独立
- 是热爱不是质疑
- 面试问题不是我想像中的样子。。更不像我们训练的样子。。
- 质疑我们的存在
- 我们应该如何面试程序员/技术人员?
- 我们应该考虑的问题
- 即使你不是创始人,你也应该拥有这些能力
- 有时候,我们不得不傻
- 英语对我们意味着什么?
- 也谈面试的问题!
- 面试应该准的问题
- 程序员也应该注意 -- 养老保险问题
- 符号‘::’有时候不是运算符
- 人要有所坚持,即便是有时候坚持意味着孤立无援
- 有时候也得乐乐
- 以旧换新,iPhone5s免费拿
- iOS MD5加密
- Struts2源码学习(一)准备工作
- 在smarty中使用if else
- hadoop作业调优参数整理及原理
- 面试不是意味着给解决方案,有时候我们也应该质疑问题
- 修改adb devices的设备ID/设备号
- Python yield 使用浅析
- ACE网络框架学习体会
- 百度地图在android的使用
- poj 3714(典型的最近点对问题)
- Google搜索技巧与黑客入侵
- ACE框架的三大部分
- spring框架整合使用定时任务框架java quartz的示例代码配置