在知乎上,看到大家对大数据、人工智能讨论的非常火热,作为一个接触大数据一年多的小白来说,很多大佬的回答自然有着指引性的,个人受益良多,于是在周末对知乎相关专栏的文章进行了整理。大数据学习是需要一个过程的,少年,加油!

大数据真正火起来,是在 2013 年,该年被称为 “大数据元年”。

此前其实大数据已经真真实实的存在了,而那时还没有大数据(Big Data)这一说辞。2004年 Google 先后发表了三篇论文,著名的“三驾马车”:

分布式文件系统 GFS

分布式计算框架 MapReduce

NoSQL 数据库 BigTable

建议从头看这三篇论文,了解大数据的前史。

而是谁把大数据这门技术带到了世人面前呢,Doug Cutting , Lucene 全文搜索项目创始人。此人阅读完 Google 的三驾马车后,用纯 Java 实现了 HDFS 和 MapReduce. 此后,Yahoo, 阿里,Facebook 等先后部署了大数据 Hadoop 集群,继而发明了 Pig, Hive 等基于 Hadoop 的生态组件。

到此为止,要读的资料就开始多起来了:

《Hadoop Definitive Guide》

《Hive Definitive Guide》

《Practical Hive》

但前提至少, Java 你要通吧!

《Java 核心技术》

《Java 并发编程实践》

《深入理解 Java 虚拟机》

《Thinking In Java》

从上面的历史知道,大数据其实是 Google 率先提出来的,Google 是搜索公司,自然造就这么大的一个轮子是为了搜索用的。所以大数据的第一个应用就是为了搜索。此时外界对于大数据技术,还尚属于吃瓜群众系列,除了 Yahoo, Doug Cutting, 以及 Cloudera, Hortonworks 等一小众公司痴迷之外,大家都很保守。

但平静之下暗流涌动,直到 Facebook 做出了 Hive , 将数据仓库项目的 90% 任务都推向 Hive 的时候,大家才幡然醒悟,原来巨兽已经屹立很久了。纷纷跟进。这个阶段,大数据被应用最多的地方在数据仓库技术上。而且 Hive 对于 SQL 工程师特别友好,这也促使了 SQL 技术人员对于大数据的热忱。

说起数仓项目,大家耳熟能详的是 Kimball 和 Inmon. 他俩的书必看:

《The Data Warehouse Toolkit: The Definitive Guide to Dimensional Modeling》(《数据仓库工具箱》)

《Data Architecture A Primer for the Data Scientist:Big Data,Data Warehouse and Data Vault》(《数据架构 大数据、数据仓库以及 Data Vault》)

至此为止,开发人员的作用是帮助企业完成一些大规模数据的统计,核算工作,提高了效率。但还仅仅是公司的“成本中心”,与“利润中心”格格不入。作为有追求的技术人肯定不愿意,既然数据在自己手里,为什么不能发挥他们的价值呢。所以数据应用进入了数据挖掘时代。此时的挖掘因有了大数据技术,与以往的抽样挖掘完全不一样,基本可以做到全量数据挖掘。所以有关挖掘的技术栈,也可以了解下。

这个阶段可以参考的数目有:

《概率论与数理统计》

《数据挖掘:使用机器学习工具与技术》

前提是计算机基础必须牢靠:

《数据结构与算法分析》

《算法》

也是跑不掉的。

数据挖掘在大数据之前就已经存在了,常规的算法有决策树,分类,关联,线性回归,贝叶斯,聚类等。但都是基于抽样的不完整数据。而现在大数据来了之后,数据喂得更多,模型就更加有效了。依靠人规定的算法已经不能满足机器的胃口,机器可以自己吃进数据,调节参数,产生更多模型,得到更精确的预测。所以大数据应用直接将传统的数据挖掘带入了机器学习时代。

《机器学习》(周志华的西瓜书,必读)

《机器学习实战》

《推荐系统实战》

《计算广告》(洞悉互联网最原始的变现方式)

《集体智慧编程》

《深度学习》

这个领域就要看你研究什么方向了,自然语言处理,视觉识别,无人驾驶等等,都有各自的专业书和技巧需要阅读和掌握。

值得一说的是,数据仓库类的应用涉及到最多的还是离线应用,通过一段时间的数据同步,将计算生成的聚合数据、挖掘模型同步到存储中,方便 UI 调用。但有些实时性很高的应用,比如金融风控,无人驾驶,量化交易等,对数据模型有很高的高频要求,此时再用 Hadoop MapReduce, Spark 就会不达标了。因此更多的实时分布式计算引擎就被发明出来了,比如 Spark Streaming, Flink, Storm 等。

关于这些流式计算引擎,参考书目有:

《Learning Spark: Lighting-fast Data Analysis》(《Spark 快速大数据分析》

《Advanced Analytics With Spark 》(《Spark 高级数据分析》)

《Real-Time Big Data Analysics》(《实时大数据分析,基于 Storm、Spark 技术的实时应用》

《Storm 分布式实时计算模式》

《Learning Apache Flink 》

《Introduction to Apache Flink》

以上都是主流生态组件的参考数目,有些框架粘合剂的组件,比如 Kafka, Zookeeper, MongoDB 等NoSQL 书籍,也需要适当看看:

《MongoDB :The Definitive Guide》(《MogoDB 权威指南》

《Kafka: The Definitive Guide》(《Kafka 权威指南》

《从 Paxos 到 Zookeeper 分布式一致性原理与实践》

//总结//

如果你开始进入细节化的学习了,强烈建议不要只看书,一定要多动手!Code 不写出来,那就等于书白看。类似于粘合剂的技术,其实完全可以参考官方资料,在动手实现中,通过搜索引擎帮你解决。

最后,一定别忘了看看 Martin 的《Designing Data-Intenstive Applications》, 此书将所有前面提到的应用都总结成方法论,让你有种一览众山小的感觉。

以上都是工程类的基建入门书。

祝你眼光远大,心狠手辣。

大数据开发工程师的成长之道相关推荐

  1. 大数据开发工程师到底是干嘛的?日常做什么呢?

    最近后台收到很多私信,内容大都差不多,总结下来就是: 目前在学习大数据专业,想提前了解一下大数据开发工程师的工作职责是怎么的?需要提前准备些什么?大数据分了哪些岗位? 笔者已从事数据开发工作三年有余, ...

  2. 成为一个大数据开发工程师的学习步骤--文字版

    本博客搬运自我知乎所出视频成为一个大数据开发工程师的学习步骤? - 知乎大数据的学习是有条件限制的,首先你需要是一名普通的工程师,如果你是Java工程师的话更好,但如果你是小-https://www. ...

  3. 数据库开发转行大数据开发工程师怎么样?

    数据库开发转行大数据开发工程师怎么样?大数据的方向的工作有大数据运维工程师.大数据开发工程师.数据分析.数据挖掘.架构师等.有工作经验想转行大数据开发主要考察基础.学习能力.解决问题的能力.想转转行大 ...

  4. python开发和大数据开发工程师_大数据开发工程师的岗位职责

    大数据开发工程师负责该领域的业务需求讨论,完成技术方案及数据开发.下面是学习啦小编整理的大数据开发工程师的岗位职责. 大数据开发工程师的岗位职责1 职责: 1.负责所分管团队的团队建设和日常管理工作; ...

  5. 秋招面经第一弹:百度一面-大数据开发工程师

    秋招第一弹:百度一面-大数据开发工程师 写在最前:秋招以来一直在冲,因为事情比较多,对于笔试面试一直没有复盘,现在靠仅存的记忆把面试的一些问题记录下来,尽可能记录出能回忆到的问题,但可能记的不是很全. ...

  6. 大数据开发工程师的入门书单

    你们是不是都听过一句话:谷歌比你自己更了解你 事实上,这句话并不是毫无根据,我们周边的一切无不体现数据的重要性,你想想,我们对自己的看法会受到多种主观和客观的因素影响,但谷歌却没有这些限制,而且掌握你 ...

  7. 如何成为一名大数据开发工程师,工作经验总结

    如何成为一名大数据开发工程师,工作经验总结 原画心旗 2019-11-06 13:35:22 首先,我个人进入大数据行业也纯属偶然,当年实习的时候做的是纯纯的Java开发,后来正式毕业了以后找了份Ja ...

  8. 阿里p6的大数据开发工程师都要学什么?

    又涨啦!据第三方数据统计,2020年9月全国招收程序员352733人,9月全国程序员平均工资14469元,相比8月的14401元涨了68元.但不少人却说薪资根本没有这么高,其实虽然都是程序员薪资差别还 ...

  9. 如何成为阿里巴巴大数据开发工程师?你要学习很多东西

    大数据大数据,个个都在喊 但究竟什么是大数据开发,如何成为一个大数据开发工程师?加米谷大数据请添加链接描述的这篇文章告诉你如何成为阿里巴巴也需要的大数据工程师. 大数据通用处理平台 1.Spark 2 ...

最新文章

  1. python日志输出到屏幕,python日志写入文件
  2. java super object,java学习记录笔记--继承,super,Object类
  3. JavaFX技巧30:带有DropShadow的ScrollPane
  4. java post返回xml数据类型_Java 通过HttpURLConnection Post方式提交xml,并从服务端返回数据...
  5. vm安装net失败_使用minikube安装kubernetes和dashboard
  6. vscode remote ssh_win10 下安装Vscode
  7. 随笔:《向死而生》---我修的死亡学分
  8. Chrome插件分享—不定期更新
  9. 学习路线、站点推荐、工具软件、资源下载
  10. Delphi 字体修改一例 (转)
  11. 大学毕业4年-回顾和总结(9)-股权投资1年,给自己一个答卷(好狗狗、皇包车、职业梦、比呀比、易途8)(创业有风险,投资需谨慎)
  12. 老王论坛蓝色大屏幕调节亮度
  13. Inmp架构搭建wordpress开源博客
  14. 【校招笔试】网易校招网络笔试题,菜的抠脚,蠢的流泪
  15. python读取oracle数据库中文乱码_PL/SQL连接Oracle数据库,中文乱码,显示问号
  16. 用Python实现腾讯云点播VOD
  17. ARM9 SWI软件中断
  18. [JVM]了断局: 说什么也没用,背就完了[必背]
  19. 如何将ASCII码数组转化成多个字符的字符串(摘)?
  20. 内存不能为read/written 问题的简单解决办法

热门文章

  1. iphone11pro市场价_iPhone11 Pro正式发布,售价感人,网友:还是买不起!
  2. 必联路由器虚拟服务器怎么设置,LB-LINK必联路由器【无线中继】设置教程
  3. 微信支付宝二码合一开发(java)
  4. yandex浏览器_使用CSS升级文本编辑器:Yandex的实践
  5. VirtualBox/SharedFolders
  6. python合并excel出现多余列等问题
  7. 三、Scikit-learn机器学习框架
  8. 移动开发----Android模仿打字机效果的自定义View实现
  9. centos安装pssh
  10. C 怎么处理windows路径_在Windows中使用msix打包工具监视注册表和文件