从互联网数据分析师技能掌握要求角度看数据平台架构演变

来源:互联网 发布:html5 css3 js pdf 编辑:程序博客网 时间:2024/05/21 10:49

初级数据平台

初级数据平台概述

初创公司由于数据量不够,一般直接用sql在业务数据库跑数据,导入Excel或SPSS等进行分析。
等有了一些数据量,多备几个服务器,分库分表。
再进一步,单独建一个统计数据库,利用存储过程或脚本定时跑N多报表数据,再直接接入到后台即可。

业务数据库是读写优化,读的性能不怎么高,而且表结构是为了方便数据流存取,操作历史数据通常是单独存一张表或者直接不存或者定时删除一定时间之前的历史数据,分析师跑数据还需要逻辑处理和聚合函数。跑跑业务状态数据差不多,跑个UV、跑个历史操作数据、复杂查询逻辑都很慢。对实时性要求不高,业务不复杂不多变,历史操作数据不太必要的公司来说够用。

数据分析师需掌握技能:

硬技能:

  • *Excel
  • *SQL(通常是MySQL)
  • Power BI/Tableau(自动刷新数据源+建模+可视化,目前这类工具还有很多,比如帆软、Quick BI、BDP等,这类工具再过几年应该会是必备技能)
  • Python、R、VBA(爬虫、NLP、自动化)

软技能:

  • 分析思路(把自己定位成商业咨询)
  • 指标管理(熟悉业务制定指标体系,简单来讲也就是把业务分几个模块,每个模块有一两个关键指标,以关键指标为结果分拆过程指标方便制定增长目标)
  • 熟悉业务流程(没事经常在线上操作,在数据库里查查日志,没准有啥新发现。。)
  • 指标预测(没有对比就没有分析,所以不管是KPI管理还是做活动都需要做预测)
    ——以上涉及统计学、营销学、运营、产品知识,别说我没说。

——总结:必备技能也就是Excel+SQL出出报表,软技能看公司水平和侧重点,从纯出报表到需要做活动、做A/B测试及对结果负责都有可能。很多这类公司连业务指标都是乱的,发展很有限。PS:除非业务上能得到很大的锻炼,否则赶紧进阶,不然很快被这个时代的学弟学妹们所替代。

中级数据平台

中级数据平台概述

中小公司数据平台
[图片引用自:https://zhuanlan.zhihu.com/p/24042022 ]
此类数据平台基本满足大部分公司,除了一二线互联网公司、金融、银行这些数据量大的公司,其他基本都足够支持了。

基本思路:

数据采集层:业务数据库、日志数据、文本数据(历史数据或爬虫抓取的竞对资料等)、第三方数据等收集到一手数据
数据存储层:通过ETL得到汇总数据或明细数据存在各种数据库中(关系型、多维型等)
数据展现层:直接对接前端或使用第三方展示工具,或者需要时用SQL查询

这种模式有几种情况:

  • 独立数据集市:数据源(业务数据库、文本数据、日志数据、第三方数据等)——数据集市——数据展示
  • 部门可直接访问数据仓库:数据源——数据仓库——数据展示
  • 非独立数据集市:数据源——数据仓库——数据集市——数据展示

相关解释:

  • 数据库(DB)和数据仓库(DW):
    数据库是一种技术,而数据仓库是一个过程。
    数据库是面向事务(OLTP)的存储系统,需要减少冗余,遵从3NF。通常存储当前状态数据,可能不存储历史操作数据也可能存储90天内的历史操作数据。
    比较流行的数据库:MySQL,Oracle,SqlServer,DB2等。
    数据仓库面向分析(OLAP)的一套数据集合体系,用于支持决策,可以冗余,存储所有历史数据。
    数据仓库之父比尔·恩门(Bill Inmon)在1991年出版的“Building the Data Warehouse”(《建立数据仓库》)一书中所提出的定义被广泛接受,数据仓库是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策。
    比较流行的数据仓库:AWS Redshift,Greenplum,Hive等。
  • 数据仓库和数据集市
    数据仓库是企业级的,数据集市是部门级的,公司可基于现在选择先架设数据集市再建数据仓库(优点是能快速搭建,缺点是后期建数据仓库可能存在字段不统一等麻烦),还是先建数据仓库再建数据集市(优点是先统一了业务逻辑和字段等,缺点是前期梳理业务逻辑耗时太多)。当然,也可以不要数据集市,不过这样不同部门可以访问所有数据是比较不好的。
  • 数据仓库基本架构
    数据仓库基本架构
    图片引用自:http://blog.csdn.net/qq_26562641/article/details/54943584
  • 比较好理解的数据仓库概念相关参考资料:
    数据仓库组成部分
    数据仓库的架构与设计
    浅谈数据仓库的基本架构
    数据仓库基本概念
    数据仓库定义及特点
    数据库 与 数据仓库的本质区别是什么
    第二篇:数据仓库与数据集市建模

——总结:这个阶段要么自建数据仓库+前端展示(echarts等或者第三方工具tableau),要么直接使用第三方解决方案(永洪、神策等)。

数据分析师需掌握技能:

硬技能:

  • *excel、sql,这就不用说了
  • *SPSS/python(科学计算)/R,熟练掌握其中一种(能拿起来就用的程度)
  • *常用统计方法、数据挖掘方法
  • *了解数仓和数据平台架构
  • *可视化(看平台,自用power bi,商用tableau或其他第三方BI工具)
  • hive/spark

软技能:

  • *自有一套分析思路(任何数据分析师都应该逐渐总结出一套自己的分析框架,在面对事务时要习惯灵活套用)
  • *数据建模(虽然数据建模是数据建模师的工作,但对数据分析师来说建立一套部门指标体系,懂得数据建模,甚至懂得从底层业务数据如何ETL出来的聚合数据对于分析的追根溯源都有很大的帮助。这一部分自己使用power bi或tableau或其他BI软件时可以锻炼一下)
  • *成本意识和数据应用意识(数据分析师的本质是将实际的商业交易抽象成数字构成的模型,最终实现利益最大化。所以商业数据分析师更要懂得如何把现实抽象成数字模型,怎么抽样最好,又如何优化使得数字模型更加健康。这些都需要在生活和工作中多实践多总结才能有一点收获的。)

高级数据平台

高级数据平台概述

大数据平台架构
图片引用自:http://bigdata.51cto.com/art/201706/542792.htm
大部分大公司数据平台类似这样,部分技术会基于各自选择有所替代。

基本思路:

数据采集层:业务数据库、日志、其他数据源,再利用spoop转存文件/ETL离线采集,利用flume+kafka采集实时日志数据
数据处理层:hadoop上进行批处理,storm或spark streaming实时处理
数据分析层:Spark Mlib/Mahout进行数据挖掘
数据访问层:BI后台接入,HBase海量实时查询,Kylin多维实时查询
——总结:替代工具很多,一些大公司也会自主研发技术,基本大概模式是如此。

当然,这三个阶段并不是断层的,公司数据平台现状也并不严格在这三个阶段内。在初级数据平台阶段,你仍然可以利用业务数据库+本地数据库(计划任务+Python脚本作为ETL工具存储汇总数据)+power bi/tableau作为数据集市汇总各方面源数据+power bi/tableau可视化展示;在中级数据平台阶段,也可能把数据仓库架设在hadoop上,并使用一些类如高级数据平台的技术;在高级数据平台阶段,也可能有更多的东西。
这三个阶段,区别在于数据量、数据需求粒度和时效、业务数量和规模,其演变也只是跟着这些需求在改进。

数据分析师需掌握技能:

硬技能:

  • 除上面的技能,更多在了解大数据平台架构上

软技能:

  • 除上面的技能,更多在更细分维度上和更完善的分析模型上

参考资料:

干货:大数据平台架构
为什么选择这样的大数据平台架构?
大众点评数据架构变迁
美团的大数据平台架构实践
链家网大数据平台建设,平台枢纽——工具链
中小企业如何搭建数据平台?
如何创建一个大数据平台?具体的步骤
大数据平台规划方案
滴滴大数据架构
滴滴数据平台架构演进
多图技术贴:深入浅出解析大数据平台架构:
腾讯大数据平台纵览
与 Hadoop 对比,如何看待 Spark 技术?

术语

大数据技术图谱
图片源自:https://www.zhihu.com/question/26568496
- 数据仓库
- 数据集市
- Mongodb
- Nosql
- hoodoop
- YARN
- HDFS
- Hbase
- Hive
- pig
- spark
- Storm
- spark streaming
- Sqoop
- flume
- canal
- Kafka
- Impala
- Spark Mlib
- Mahout
- Zookeeper

阅读全文
0 0