73

视频访谈: 个推袁凯:从移动开发到大数据架构,如何走好跨界这一步?

 5 years ago
source link: http://www.infoq.com/cn/interviews/interview-with-yuankai-talk-mobile-development-and-big-data-architecture?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
15:13

个人简介 袁凯,个推首席数据架构师,曾负责移动i联系、个信、个推SDK等移动端开发,目前主要负责个推数据平台架构研发工作,在Hadoop、Spark、Hbase等大数据技术领域有丰富经验。

archsummit100-1533209419652.jpg ArchSummit全球架构师峰会是InfoQ中国团队推出的重点面向高端技术管理者、架构师的技术会议,50%参会者拥有8年以上工作经验。

ArchSummit聚焦业界强大的技术成果,秉承“实践第一、案例为主”的原则,展示先进技术在行业中的最佳实践,以及技术在企业转型、发展中的推动作用。旨在帮助技术管理者、CTO、架构师做好技术选型、技术团队组建与管理,并确立技术对于产品和业务的关键作用。

袁凯: 大家好,我叫袁凯,目前在个推数据部门负责数据架构工作。我之前是做移动客户端开发,后来转到大数据部门负责个推大数据平台建设。

袁凯: 首先说一下为什么转到了大数据这一块。我在移动开发领域大概做了5年,转到大数据应该说是一个机遇,当然自己对这一块也比较感兴趣。大概在2013年左右,我们逐步对数据资产这个概念认识越来越深刻之后,就开始考虑如何基于大数据和人工智能改善对客户的服务,实现大数据和人工智能的赋能。当时公司的CDO(首席数据官)跟我聊起这块,他给我讲了一下关于数据的应用,听完之后我确定对数据这块比较感兴趣。之后也评估了一下自己跟新方向的匹配度,最后决定转岗。做好新领域这块,我认为不管做大数据还是做别的研发工作,更多的是在为业务赋能,需要更好地理解业务需求,并把业务问题转化为技术问题,然后选用合适的技术方案,让业务能够落地。

袁凯: 技术转型印象特别深刻。从事过大数据领域的同学应该都知道,我们做后端系统,或者做手机的APP开发,更多的时候是产品经理已经把需求设计好再跟技术同学沟通,然后想着怎么样去落地,关注的点更多是人和产品的交互,或者功能点的实现。但是在大数据这一块不一样,比如说,你开展一项业务的时候,你不再是简单地按照一个逻辑方式去做开发,更多的时候要有数据思维,有统计思维。打个比方,以前在做数据统计的时候,你调用一下SQL做个统计即可,但是在海量的数据下面,你需要很多的前期工作,需要对数据比较了解,才能设计出合理的统计方案。通过分析手段和数据思维,知道数据是怎么样的,最终再做方案,是跟传统的软件开发工作非常不同的一个差异点。

袁凯: 大数据平台上的安全措施,首先数据本身是加密存储的,除了加密存储,我们还要保证数据只有有权限的人才能访问到,我们做了非常多的访问控制工作。除此之外,我们在物理层面上也做了一些安全机制,确保整个存在云端的数据,不会被非法的访问和使用。

袁凯: 首先说一下,个推应该算是推送行业里面的先驱了,个推的核心系统已经迭代了多年,并且有比较完备的灾备机制和服务降级机制,保证整个系统高可用,保证了服务是非常稳定的,而且经过多年的迭代,服务的性能应该在业界也是获得了普遍认可的。还有省电省流量这块,首先,因为我们在这个领域沉淀比较多年,我们在手机端做了很多电源优化的工作,同时我们在传输过程中自己也设计了比较好的协议减少流量。安全方面,所有的数据都采用加密的方式进行传输。这样就保证了刚刚提到的4S。

袁凯: 如果说整个推送平台是一个系统,那么我认为大数据平台是这个推送平台的核心大脑。一方面,像我们刚刚提到的,在系统的迭代过程中,大数据平台不单单是在业务上扮演着如何支持的角色,打个比方,比如我们刚刚说到的精准推送,我们不单单是输出精准标签,同时大数据平台也会去看整个推送系统的运营状况,用数据化的思路去打造系统。

袁凯: 实时计算在最近几年越来越火爆了,业务对数据信息的消化能力逐步增强了。以前可能数据隔一天,T+1都能接受,现在大家很多的系统是希望T+0,比如说毫秒级别延时,或者说秒级别延时的准实时。那么个推在这块,一方面是投入了比较多的精力引入一些开源框架,并且在这些框架上面做二次开发,增强计算框架的吞吐能力。另外一方面,我们也会通过业务的角度去梳理,就是说不单单是提高处理能力,同时也把业务按照不同的级别梳理清楚,让合适的技术与合适的业务场景结合起来,通过这种方法来提高个推系统的满意度。

袁凯: 举个例子,应该是比较经典的,实时数据处理这块,我们有些业务可能要求的是毫秒级别的延时,那么这样的业务里面我们可能会引入类似于Storm这样的开源产品,并且在这个过程中,保证数据的一致性等。另外一种场景,能接受一秒或者十秒以内的延时,这种情况我们可能会选用微批次的处理机制,比如Spark Streaming是典型的基于小批次计算,实现了比较好的效果,它的吞吐率会非常高,而像前面Storm可能吞吐率不一定很高。这就是我们基于业务场景来选型技术。

袁凯: 我先从整体上介绍一下个推的大数据平台。我们先从采集侧开始说起,采集侧这一侧,我们使用的是Flume,我们把数据从各个应用服务器上收集过来,写入到Kafka这个MQ里面;然后再通过Flume或者Camus这样的组件,把数据从Kafka里面最终落实到数据仓库的原始层里;我们的数据仓库是基于Hadoop生态系统建设的,当数据进到Hadoop以后,我们选用类似Hive或者Spark这些大数据的计算组件,去对数据完成计算和处理;除此之外,我们也有元数据管理的工具,一些是我们自研的系统。另外,数据到了数据仓库之后,我们还要考虑如何让业务方比较好地使用大数据平台,那么可能会引入类似Spark SQL或者说HUE这些产品,方便分析师在大数据平台上分析探索数据。除此之外,我们也有AI方面的应用,比如我们引入了Google的Tensorflow,跟我们的大数据系统结合起来,最终实现数据的挖掘和数据的处理都在一套平台上完成,实现最终业务的AI赋能。

袁凯: 整个机器学习在个推的应用还是非常广泛的,除了我们前面提到的精准的用户画像这块,我们还用在推荐,也用在设备的反欺诈,我们知道很多设备可能是虚假的注册流量,设备的反欺诈就是指将这些设备识别出来;还有客流的预测,比如说我们跟杭州旅委的协作过程中,做的景区人群热力图,我们通过模型能够把这个预测得比较好。

袁凯: 我觉得跨界这一块,首先自己要对新的领域感兴趣,我前面也提到了这一点。第二个是你要进入一个新的领域,需要知道这个领域的岗位,你的核心职责是什么,你需要在这里面解决哪些问题,这个业界有哪些经典问题需要大家解决,以及如何解决。你先要对你要跨过去的那个界做一个充分的了解。第二是你自己对自己的一个评估,了解自己是擅长哪些方面的。

袁凯: 前面像你问到的实时计算,特别是海量数据的实时计算,这些问题是非常经典的。除了这一块,更多的是偏向如何把数据治理好、管理好这些问题。还有一个是如何让大数据的能力落地到具体的业务场景中,我觉得这个是非常有挑战,也非常有意思的事情。因为它不单单是考虑纯粹的技术问题,还需要你具备比较强的工程落地能力,以及对业务的了解能力。一般一家公司的数据部门,它是一个业务跟技术结合非常紧密的部门,很多东西会在这个部门产生交汇,你不单单是要技术过硬,还要擅长了解每个需求的背后它的核心目标是做什么。袁凯老师接受我们的采访。

InfoQ: 以上就是我今天的采访问题,非常感谢


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK