初创公司大数据药方|WOT技术门诊第二期诊断书
10月11日,WOT技术门诊第二期会诊结束,本期特邀门诊专家当当广告及推荐部高级架构师 董四辈,针对很多初创公司遇到的大数据典型问题开出了那些药方?
董四辈:当当广告及推荐部高级架构师、吉林大学本科硕士毕业、曾任搜狗地图开发经理、现任当当推荐部高级架构师
从事:架构设计 、数据分析、网站安全等相关工作。并关注:互联网安全、反欺诈、机器学习等新技术的应用
问题一:很多移动APP创业公司,目前还只是用传统的方式存贮数据,或者分析数据,那么大数据对我们而言还停留在概念阶段,毕竟我们不是BAT,所以能否让达人以一到两个案例实际讲解一下,从需求到技术架构的举例来讲,从而让创业公司更快收益?
董四辈:我想这个问题,提问者最关心的是如何“收益更快”。所谓收益快,一般来说指的的是:时间成本少;人力投入少;运维成本低。实际就是数据分析平台,主要分析的问题如数据有哪些?成本如何?收益如何?什么结果?
- APP应用分析 , 市场数据分析;
- 业务数据与行为数据;
- 成本:人力成本,时间成本,运维成本;
- 不断变化的需求;
咱们主要是针对APP应用来说,这里需要用到数据收集与数据分析。如果是要降低成本最简单的办法就是直接使用第三方平台来收集数据。比如:使用友盟这样的第三方平台。对于收集数据存储,当然你也不必自己从头开始,可以租用公有云,按需付费。比如:阿里云,七牛云存储等。
但是,使用第三方平台服务之后自然也会带来负面作用:如友盟,简单好用,免费;不足之处,数据无法取回做深度与交叉分析无绝对安全性可言 。主要还是要看这个APP创业公司早期的决策是什么,使用第三方数据统计服务只是一个过渡方案。当当网现在使用的就是友盟服务,这些数据我们也是同样没办法进行深度分析的,不过我们会做自己的数据收集与分析,让两者并存相互验证从而产生附加效应。最后,这些数据如果想要出效率还是要再次挖掘,这个时候不同数据是要不同对待的,把业务数据和行为数据分开。最后,数据必须,展现出曲线饼图,柱状图,用于决策,才能说明系统是否成功。
以下是大家需要注意的技术点:
数据报表与仪表盘
业务数据写SQL:灵活定制数据准确、实时,可进行复杂业务分析;不足之处:历史状态被覆盖,自多扩展复杂,计算力有限 。
数据模型:Event:eventid+pageid+properties+userid;User:userid+ properties
行为数据写日志:http传输 》kafka》 hdfs ,可以从kafka订阅消息
数据挖掘与分析:python hadoop spark ,与业务数据库解耦,计算力强大;维度,指标,漏洞分析,如(注册,访问,点击...)
数据展现:曲线,饼图,柱状图;工具HighCharts,OpenCharts
数据反馈:产品分析,迭代运算
最后,总结第一个问题的解决方式就是:
- 使用第三方服务;
- 选择2-3人小团队;
- 选好数据模型;
- 工具就选常用的Python Hodoop Spark;5.业务数据最好使用Mysql(像订单,物流,支付)这些都是结构化数据;
- 行为数据(搜索,浏览,点击,收藏),每天都会大量产生直接存HDFS 就可以了。
问题二:以前我们做过两个大数据平台项目,一个是IoT,一个是CityNext,一个是数据格式较少但数据量大,一个是数据格式复杂,基于Hadoop在做,几十人的团队才完成了存储和简单实时分析,如果是小型公司或者创业团队又何去何从呢?
董四辈:一个大数据项目前期投入了大量人力和时间成本,后期感到做出来的东西和一开始预估的差距较大,就产生了上面问题的出现,那么这个时候到底应该是何去何从呢?我个人认为:做大数据平台这样的项目遇到成本问题是很常见的,尤其是初创这个问题尤为明显,成本问题分为三部分:人力成本;时间成本;运维成本,如果是创业团队,就应该更加谨慎,况且市场与需求变化的特别快,如果你长时间耗在一个地方,就是一种浪费。建议:
- 团队应当尽量小:最好3-5人的技术骨干团队,便于沟通,执行力高,几十人沟通过于繁琐,沟通不畅时很容易导致执行效率降低。
- 创业初期需求与市场变化速度快,应该及时调整策略,不能再某一地方消耗太多时间。
- 在创业团队早期,最好能够使用第三方基础设施来降低运维成本。比如租用公有云。
问题三:我现在工作中遇到的问题,我觉得就是一堆垃圾数据,业务方希望我们能挖掘出价值,我们试了各种算法,结果都不理想,现在我想给出一个理论界限,苦于不知道如何下手,有没有什么办法,从统计特性给出各种算法效果的理论边界?
董四辈:这个问题我也遇到过,并且困惑过。比如,我现在是在做推荐系统,就是针对某些商品做推荐,我可以无限优化我的算法来提高KPI么(点击率,订单占比.....)?如果进行数据价值挖掘能够无限制挖掘吗?如果,我不能无限制的分析和挖掘,我想知道这个峰值到底在什么地方?理论上来说,肯定不能无限优化和无线挖掘的。
先给大家讲一个小故事:第一年,算法团队从无到有,直接提升30%KPI。公司很高兴。第二年。公司加大投入,发现第二年KPI仅提升了10%。第三年,公司决策层投入更多人力,发现KPI才提升了3%。大家发现了什么?虽然投入在不断增加,但是KPI指标增长却是越来越低。其实,第三年就是一个瓶颈。对于第二个问题的提问者,我想说,你既然已经把所有的方法都试了一遍,还是没有找到结果,说明,你已经遇到了瓶颈。接着刚才的故事讲,故事里的主人公也到了类似的问题,第四年,公司里来了一个产品经理,说:“你们把产品的颜色改变下:红色的叫”文艺红“,蓝色的叫”潘坷“,把商品给打上文艺和潘康谋曛尽”接下来,你们猜结果怎么样?KPI瞬间提高了30%。所以,有些时候数据分析瓶颈实际上反映了产品模式瓶颈。如果,你真的非常诚实的验证了你的数据,那么可以非常肯定产品形态或者产品模式遇到了瓶劲。一般来说,,如果你的优化或者挖掘已经大幅度下降了,这个时候就应当减小投入,并不是说不分析了。然后,你就应该过渡到产品方向上究其原因。
问题四:对于传统企业来说,决定搭建自己的人大数据平台时有什么需要注意的呢?技术的选取?相关人员的定位?像成联电商我们是做耐材(耐火材料)为主的传统企业,如果我们开始自己搭建大数据平台有什么比较通用化的模式吗?
董四辈:先说说背景吧,商场变成了试衣间,大家都去网上买,同理建材市场变成了建材展示中心怎么办?这里其实包含两个问题1.真正的传统行业的大数据分析平台;2.传统行业怎么搞电商;这里就针对第一个问题说说吧,在互联网的冲击下,“建材市场沦为材料展示中心”,在这种情况下传统企业也需要借助大数据来进行变革。相对于技术选型来说,更重要的是数据规划与计划,传统行业的数据分析不能脱离行业背景,否则数据无法实现准确落地。比如:客户的订货时间,客户量,客户的特点,年龄范围,客户地域分布;(这些确实需要具提的行业背景)从以上这些数据中挖掘分析,那些用户喜欢什么耐材?在哪个时间段某种耐材最受欢迎?喜欢某种耐材的究竟是什么人?以及行业内部运作过程中会产生哪些数据?带着这些问题,再去看有哪些合适的技术平台。
人员定位:不仅需要大数据技术人才,还需要有深厚行业背景且热衷于大数据的专业人才
数据分析:大致可以分为,业务数据和行为数据;业务数据(用户,订单,支付,物流...)这类数据一般都比较精确与规则,这些结构化数据可以直接使用传统的数据库存储分析。
行为数据(浏览、搜索记录、点击记录...)这类数据一般量比较大,最好使用NoSQL(MongoDB),或存储在hdfs上指定维度与指标:成本,销量,决策,价格
数据挖掘:根据已定的目标或指标,预测用户的需求量提前预判,分析用户人群(有兴趣的,愿意购买的,由于不觉的),地域定向等。
总结(重点是行业数据规划,规划不好数据,系统就是个摆设很难落地,尤其是目标与指标制定):
人员构成:大数据技术人才(3-5人),有深厚行业背景的人才(1-2人);
数据存储:结构性业务数据mysql,复杂的行为数据NoSQL或hdfs;
分析与工具:python 、hadoop、spark;
行业数据规划:客户的订货时间,客户量,客户的特点,年龄范围,客户地域分布;
分析目标与指标:销量、成本、区域、产品类型;
数据展现:曲线图、柱状图,工具HighCharts;