前些年大数据如火如荼的展开,我也满怀热情的加入了学习的行列,心里也觉得这个是未来数据越来越多的比较好的解决方案。当时接触的是Hadoop生态圈,从cloudera的HDP4开始入手(当年cloudera和hortonworks还没有合并),入手的时候从hdfs(文件系统)和mapreduce(计算框架)开始学起,这两部分可以说是Hadoop生态系统的基石,但当时不会学的很深,主要是从理解原理和如何使用的角度开始,之后学了一些框架,当时流行Hive,其实现在这个也还是比价流行,很多企业还是在使用。sqoop作为一个ETL的工具,只是简单掌握吧。其实当年Hive和sqoop底层都是用的mapreduce,现在Hive已经可以更换很多计算引擎了,比如spark和tez,速度比传统的mapreduce快了很多。当年spark还不像现在这样如日中天。HBase作为当时比较独特的列式存储的数据库,其实很多公司并没太使用,估计是互联网企业会有较多应用,传统企业还是更多的在找到一个类似数据仓库的产品,更多的对接关系数据库,当然现在很多时候大家都说号称自己是数据湖,但很多名不副实。细心的同学可能发现上面只是说了一条路,那就是batch,并没涉及streaming。最开始的时候storm在streaming这块还是占有很重要的一席之地的,当年ali也用java重写了一个jstorm,后来也开源出来了。但后来随着spark的崛起,基本stream这块也被spark占领了,现在再做流处理应该都会选择spark了。
         后来觉得只学了这些东西好像欠缺点什么,尤其对于数据的生命周期来说,毕竟缺失了最后也是很有价值的数据挖掘的部分,前面提到的东西更多的侧重于数据平台的搭建,数据湖的建立,以及ETL的东西。当年从互联网公司出来的一个词叫用户画像,当年还是很牛的一个技术。于是我为了补全数据处理的生命周期,又开始辗转学习machine learning,后来deep learning。虽然中间也在天池和一些别的竞赛拿过一些名次,但经过一段时间的学习之后还是觉得作为程序员来说这个方向并不是太适合深入研究,建议名校,高学历多往这个方向发展。
         现在开始研究分布式的一些东西,其实这在某种程度上也算是对于最开始学习Hadoop的大数据的一个深入,当然这个绝不止于此,毕竟现在很多开发都是分布式的,dubbo和spring cloud这类微服务还有像区块链就能看出来。中间学习也很难说走了一些弯路,但有时候一方面是公司的业务需求,另一方面也是摸着石头过河,在所难免吧。
        最近几年没更新博客了,前段时间自己弄了新的博客,www.askjoey.up ,有兴趣也可以去那看看。