阿里流传着这样一句话,“一切业务数据化,一切数据业务化”。
作为大数据从业者,你一定明白有数据是一回事,可要想让数据发挥价值、成为生产力是另一回事。手里得有两把刷子,才能成为大数据圈儿的“大拿”!
如何实现智能路径检测,查询出符合条件的路径详情及符合路径的用户数?
关于有序漏斗转化,如果想要更准确一些该怎么做?
面对大量的订单记录,如果想按照地域、时间、来源等维度等进行实时分析,该怎么实现?
对于海量评论数据,想要查询好评差评的比例,如果进行准实时分析想要秒级实现的话,如何来完成?
不管是面试还是实际工作过程中,数据工程师要时时刻刻面对这些层出不穷的技术演进。随着数据的爆发式增长以及指标维度多元化, T+1 的数据报表早已无法满足需求。如何在保证高时效性的同时,让数据发挥更大的价值是筛选“王牌”大数据开发工程师的重要门槛。
01对大数据开发工程师的能力新要求
OLAP型大数据开发能力
随着全行业数字化转型和新基建时代的到来,对技术人才提出了更高的要求。
对数字化转型的公司来说,公司的业务可以分为两类:一类是OLTP型的业务,一类是OLAP型的业务。对优秀的IT工程师来说,我们需要同时具备OLTP的技术能力和OLAP的技术能力。进一步来讲,对于前者,我们需要具备线上满足高并发、高可用、高扩展的开发能力,比如根据公司业务发展阶段给出优雅的线上微服务架构解决方案;对于后者,我们需要具备线下海量大数据处理和分析的开发能力,比如电商公司收入趋势的分析和预测、抖音等短视频平台日活用户分析等开发解决方案。
伴随数字化转型的向广向深发展,具备OLAP型大数据开发能力的工程师在人才市场上将具备更强的竞争力和更丰厚的薪资收入,也必然成为新时代的香饽饽。
OLAP 必备技术栈
那么如何成为有核心竞争力的大数据开发工程师呢?
我和大多数人一样,非常看好大数据的前景。这里有两个问题
你一定知道,大数据计算根据业务需求不同,又分为离线批量计算和在线实时计算。比如基于MapReduce的海量计算属于离线计算范畴;基于ClickHouse的计算属于实时在线计算范畴;还有Apache Doris这类ROLAP的MPP引擎,实现数据现用现算!特别是支持任意指标、任意维度并且秒级给出结果的在线实时计算的技术能力,对大数据开发工程师而言就更加重要了。
(100M数据集跑分结果,1亿数据查询速度:ClickHouse比Vertica快5倍,比Hive快279倍,比MySQL快801倍!)
热到烫手的ClickHouse究竟有多强?看看大厂对它的青睐你就懂了!
- 今日头条内部用ClickHouse来做用户行为分析,内部一共几千个ClickHouse节点,单集群最大1200节点,总数据量几十PB,日增原始数据300TB左右。
- 腾讯内部用ClickHouse做游戏数据分析,并且为之建立了一整套监控运维体系。
- 携程内部从18年7月份开始接入试用,目前80%的业务都跑在ClickHouse上。每天数据增量十多亿,近百万次查询请求。
- 快手内部也在使用ClickHouse,存储总量大约10PB, 每天新增200TB, 90%查询小于3S。
实时OLAP数据库ClickHouse是业界公认的一匹黑马,它能够优雅解决企业任意指标和任意维度组合,并且实时给出处理结果的复杂业务场景需求。而另一颗冉冉升起的OLAP新星——极速MPP数据库Doris也十分出色,已被京东广告、美团外卖、作业帮、小米、搜狐等一线大厂实践应用,它具有以下特性:
- 同时支持高并发点查询和高吞吐的Ad-hoc查询。
- 同时支持离线批量导入和实时数据导入。
- 同时支持明细和聚合查询。
- 兼容MySQL协议和标准SQL。
- 支持Rollup Table和Rollup Table的智能查询路由。
- 支持较好的多表Join策略和灵活的表达式查询。
- 支持Schema在线变更。
- 支持Range和Hash二级分区。
无论ClickHouse还是Doris,都有成为独当一面数据库的潜力,未来将在OLAP领域大放异彩,成为大数据人必须掌握的核心技能。那么,我们该如何学习?通过看书、看文章的确是一种自学方式,不过ClickHouse和Doris相对复杂,它在很多方面不像其他系统那样高度自动化,而正是某些看似不够自动化的设计,反过来却在使用中带来了极大的灵活性。
如果把普通数据库比作汽车,那么ClickHouse和Doris俨然就是手动档的赛车,对技术人员来说会有诸多不适应。