FAQ第一期 | 学习大规模数据处理需要什么基础?

问题一:学习大规模数据处理需要有什么基础?

其实在最开始做专栏的内容设计时,并没有对读者的知识背景作任何假设。

所以,即使是一些基础的技术概念,也会举例解释一下(如果你已经会了可能会觉得啰嗦,这时候就需要你照顾一下其他同学了)。如果你有一些语言的编程经验(任何语言都可以)的话,看文章的理解速度会快一点。文章中会有一些示例代码,是用 Python 编写的。

但是在设计类型的案例中,我不觉得它对读者有特别的技术要求。

希望你在后面的阅读中提出建议,告诉我有哪些地方我讲得不够清楚,或者解释的过多,会适当调整内容。

问题二:小型公司程序员学习大规模数据处理的意义?

大规模的互联网公司天生数据量是要大一些的。但是,这并不意味着大数据处理只在大公司才能发挥价值。你也要考虑其他方面。

第一,对于公司来讲,小型互联网公司或者传统企业,并不是不需要数据处理技能,而是他们还没有从数据中挖掘 business insight 的意识,没有数据驱动决策的意识,甚至没有收集数据的意识。

举个工作中见到的例子。比如,有些饲养奶牛的农户,他们几十年来根本不知道什么是数据。但是,当我们帮他们细致地搜集奶牛每天的活动数据,比如饮食、运动、作息、产奶,他们就能从中找到最经济(最优)的饲料投放方式。

第二,对于个人来讲,你就一定要看长期的职业发展,公司会从小变大,职位会从低变高。当你需要影响决策的时候,当你面临的数据量变多的时候,当你准备跳槽的时候,数据的处理能力都是至关重要的。

分享一个当年的面试经历。

面试官出的题目是这样的:如果要设计 Bloomberg 的股票信息系统中的数据库系统,系统需要实时更新股票价格,而数据更新的写入量非常大,用户也需要读取最新的股票资讯,你会如何设计这套系统。

这个问题其实有很多的未知区域需要我们去和面试官去阐明,例如用户的 Use Cases 是什么?在此就不一一展开了,在这里只想分享一个和一致性相关的内容。

在和 Bloomberg 的 Tech Lead 讨论时我发现,原来他们的股票系统显示的股价并不是强一致性的,延迟范围是 1 分钟左右。

因为应用场景上,普通股民并不会需要实时关心每秒钟股票价格的动态,更多的是关心大盘走势。而金融巨头在操作股票的时候,更多只关心特定的几只股票,所以这些股票的价格通常对于他们来说会更新快一点。

所以说,很多现实生活上的实际应用和我们本来想象的并不太一样。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值