数据的一些思考
一、背景
最近领导和团队沟通,想提高数据建模团队的能力。结合自己工作的经验和朋友的交流,来总结下如何去做。
二、我做过什么
很多大数据数据仓库人员都是从事过传统BI业务或者数据库业务的。传统BI一般都是Oracle存储过程,O是真的牛,很多银行和电力业务目前还是存储过程写的业务代码。自己曾经亲身经历过,两千行的业务package,写起来和改起来特别有“成就感”!后来听说了Hadoop,网上自己自己找资料,Win环境搭建了起来,现在去百度还能搜到那篇文章。后来再也不推荐别人去碰Win搭建Hadoop!
后来机遇,进了大数据行业,参与主导了一些大数据从无到有的建设过程。真的很感谢那段晚上十点后回家的岁月,还有工作中的伙伴,这段工作算是自己的一个能力的很大提升。从没有接触过Linux到写过近1000行的数据处理脚本,现在公司应该还在用吧。接触运维了百亿级别数据聚合秒出的Vertica (商业软件真好用),建了一个100多人的技术交流群,虽然不活跃,但确实帮到很多人。(还专门申请了一个Vertica的域名,部署了自己博客 http://vertica.club/ ,又该续费了……)
了解了zeppelin,参与了早期的一些功能建议和验证,虽然后来工作中没用到,自己也没有再跟社区,但这个工具真好用,这是专门给数据人的工具,非常好,可以写出很漂亮的数据报告。(下面找我名字吧…)
三、数据人应该做什么
还是说说我熟悉的数据仓库建设。个人认为数据人员可以走两个大方向提升自己(当然数仓理论知识必须得掌握),一、精通业务,熟练SQL,加强工程能力。记住工程能力很重要!二、了解算法,掌握PYTHON,熟练做分析。我是那种什么都想做的人……
1)、精通业务,就要做到业务指标的标准由你说了算,努力成为业务专家,参与一些重要指标的定义。比如去看公司的Wiki,通过在公司熟悉的同事找到业务架构负责人,了解相关资料。
2)、熟练SQL,并不仅仅是熟练写。要做到了解SQL的执行计划,掌握执行数据库环境的调优。当然很多人会说这是DBA做的工作,但是数据人应该比DBA写的SQL多吧,当你发现你写的一段逻辑能从1个小时优化到5分钟,你就会发现这是多有成就感。掌握数据库,要从数据库的存储架构出发,掌握数据库的简单管理,熟练应用场景。最终你掌握几种数据库使用后,你会发现你能够帮助公司或部门做数据库选型了。
算法这个笔者自己现在还没真正入门,学习中……,欢迎大神带进门!
四、如何做
1),既然是做大数据的数据仓库,对大数据各个组件要有了解,对大数据整个处理架构要有了解,从数据采集,到处理,再到数据展示,数据运营等,都需要了解。推荐一本书《大数据之路》,很感谢上家公司选购了这本书,给员工看。
2),SQL 熟能生巧,其实可以尝试用SQL写一些小工具,记得自己15年的时候闲暇写了一个身份证解析的包,大家用着很不错。附上代码 :https://blog.csdn.net/windyqcf/article/details/46048657
3),养成笔记的习惯,记得刚开始接触Vertica数据库的时候,自己上网百度,很少有资料,没办法,只能自己看英文版的官方文档,在自己的环境和工作中尝试总结,形成博客,慢慢发现自己积累了很多。