2017年从2月到4月底已经过去了三个月,回首过去,总结经验,展望未来。本文将从以下几个方面对过去的三个月做个总结。

技术的增长

在短短的三个月,往大脑中塞入了大量新技术,新知识。涉及python、Tornado、mongodb、运维工具(expect,shell,fabric),hadoop、hbase、hive、zookeeper、ycsb、ganglia等。总结起来可以分为两个阶段:python速成,hadoop生态初步接触。下面就从这个两个阶段进行总结。

Python速成

通过小项目驱动的形式,快速的从Python小白到能熟练的使用Python快速的解决各种问题。主要又分为了两个方面。
1、从股票数据的采集——>k线的合成——>数据的存储——>对外提供api

从tushare中采集股票的tick数据,然后实时的合成分钟线,存储到文件和mongo中,最后利用tornado搭建实时服务接口 tornado 实时服务架构设计 | 燕十 ,对外提供股票实时的分钟数据。一环扣一环的,就差没有使用vue写个前端把数据展示出来。
从熟悉Python的基本语法,数据结构,网络采集,异常处理,数据库操作,多线程,多进程,类,到使用Python框架tornado,一应俱全。一步一个坑,扎扎实实的入了Python的门。

2、房屋数据采集—>数据清洗—>模型训练

这是我的毕业设计,全程采用Python,从各大租房网站上采集房屋数据,到实时入库,数据清洗,到使用Scikit-learn建模。逐步熟悉了爬虫的编写,页面数据的解析,网络异常方面的处理,数据方面的处理,机器学习库的使用。

至此,通过两条线,我可以说对Python还是熟悉的,高级技巧不会,低级的难不倒。

hadoop生态初步接触

三月份开始入坑hadoop相关方面的生态,至此已经入坑2个月,从深陷沼泽到满满爬出。也分为两个方面吧

1、虚拟机——>线上安装测试—->hive
为了搭建公司的正式线上的hadoop集群,现在虚拟机中搭建了一个测试版本,熟悉整个搭建的过程。然后搭建了线上的hadoop集群,中间解决了很多实际遇到的问题,并对hadoop集群做了基本的性能测试,累计产出6篇技术总结文档。在此过程中学习使用运维工具(expect,shell,fabric)来对hadoop集群进行自动部署,管理等,还没有好好的总结一下。
随后又是折腾了一周的Hive,将股票的历史数据导入hive,做一些测试,使用Python连接Hive,hive分区,查询性能优化。

2、Hbase
从Hbase的性能开始,利用微博的数据进行性能方面的测试,逐渐的遇到了使用python写入Hbase的timeout问题(见 python写入Hbase超时问题分析 | 燕十) ,Hbase的热点问题,性能的优化。中间上了YCSB压测工具,ganglia性能监控工具。逐渐了解Hbase的特点,如何去优化,如何解决遇到的问题。Hbase就是我这段时间最难啃的骨头。

我画个图,来归纳总结一下。

我只想说,一个人啃着hadoop生态里这些螃蟹,越来越有点味道了,尽管前面坑无数,该跳的还是得跳。

阶段总结

总结完主要的部分——技术的增长,来概要总结一下其它方面的情况。
1、累计输出技术总结文档10篇左右,写文档的能力大幅提升
2、对问题的分析,思考过程逐渐深入
3、完全无师自学入门hadoop
4、编程装备:电脑支架,防蓝光眼镜,机械键盘都,眼部按摩仪都配齐了。

说了这么多好的,也必然有很多不足之处,列举三项主要的:
1、不能准确的抓住问题的要害,导致走很多的弯路,耗费很多的时间。如解决Hbase的超时问题.
2、有些关键点没有及时记录,总结没到位,导致二犯。
3、身体素质有点下降,天天对着电脑,头有点蒙逼

下个阶段的规划

为未来3个月(5月到7月底)做些规划
1、解决逐步解决一下两个问题
如何能够写成pythonic的代码,脱离低级的python开发者?
如何从源码上定位问题的原因?
2、hbase精通计划,逐渐阅读Hbase的源码,不只是停留在了解的层面上,要深入
3、机器学习基础计划:利用业余时间,学好机器学习的基础知识,主要是啃西瓜书
4、租房数据采集计划:不断采集各大租房网站的房源数据,用来找房和尝试各种机器学习算法

总说计划赶不上变化,但是前期计划能确定未来一段时间内大体的一个方向。

PS:欢迎想做租房数据研究方面的同学加入,主要工作有:
1、爬取自如,5i5j,58,安居客,蘑菇租房等房源的数据
2、数据整合预处理,格式化。
3、利用各种模型对数据进行建模分析。
4、数据前端展示(原型图见上面)
项目目标是能够解决两个问题:
1、找到一个潜在的制定租房价格的一个规则
2、更加快速的找到最优质的房源
有意向可以直接联系我:微信mindaxuxiaoping