良好的推荐策略:不能只看点击量,应综合考量多指标

点进去的人多,就是好策略吗?显然不是吧。标题党文章点击多,但用户很可能点进去就退出来,没准都会骂两句。

这么,阅读完成度高,就是好策略吗?其实也不能如此绝对,好多不太高雅的内容可以吸引读者看完,可这些文章没营养,常年来看读者也不会满意。

Albert解释。

良好的推荐策略:不能只看点击量,应综合考量多指标

Albert

那肿么办?

哲学问题,不妨从哲学家哪里借鉴答案。哲学家陈嘉映专门写过一本书,就叫《何为良好生活》。

他的推论其实很复杂,并且从技术层面来理解,所谓良好生活似乎是“一系列复杂指标的总和”,包括快乐、品行、智识、自我实现等等。

这么以这种推,一个良好的推荐策略也不能只考察“点击量”、“点赞数”或“留存率”这样的单一指标,而是应当把好几个维度的数据集合上去,产生更复杂的指标。

Albert追忆,当时各个团队可以放开四肢随便做实验过后,很快就意识到在指标上的“囊中害羞”。

那段日子,无论是推荐策略团队,还是产品团队,还是营运推广团队,都绞尽脑汁开始设计奇奇怪怪的指标。

于是,这又引出了新的困局:

指标是由无数“小红心”这样的底层数据估算而成的。指标越复杂,就要调度越多的底层数据。

我们不妨把各个团队拿来生成报表的各类“数据鞋厂”想象成炼油厂,把存在数据库的原始数据想像成地底的欧盘。

在炼油厂规模比较小的时侯,似乎一口简易油井就足够供应;

然而,如今炼油厂发展壮大,须要综合炼钢各种类型的欧盘,油井的性能就妥妥成了困局。就是右图中闪动的白色剪头。

结果就是,2017年时剖析师要查一个指标的历史变化情况,大约要等20秒钟就能看见结果。

20秒虽然不长,可剖析师不是三天只看一个指标啊,他的工作就是每时每刻看指标。这三天出来,光等就等到颓废。。。

历史喜欢开玩笑——就在工具不怎样凑手的店面,却偏偏来了个大活儿!

(三)“查数”神器

2017年,抖音火了,火到不能再火。

打南边来了一亿用户,每人都要上传视频;打北面来了两亿用户,每人都要观看、点赞、评论——汹涌人潮中,“小红心和它的数据同学们”比从前翻了成千上万倍。

注意,这个时侯,假如炼油厂(数据应用)须要欧盘(数据)的时侯,还现场从油田(数据库)里抽取肯定是来不及了。

合理的办法是:创造出一个大库房,把欧盘提早整理好放到哪里,须要的时侯可以第一时间抓取,这个库房就叫“数仓”。

如同下边这样:

建造一个牛X的数仓,刻不容缓。

摆在老师傅面前的技术方案有四五个,如同东邪西毒南帝北丐那样各有千秋。

可逐个尝试了以后,结局很残酷——大多数技术路线都未能满足如此大规模数据的高速调阅。。。

现在的数仓团队技术负责人Carl,正是在这个危难时侯加入团队的。

Carl刚加入没几天,大家就告诉他噩耗:东邪西毒南帝北丐都顶不住,目前就剩一个“郭靖”看上去还是个苗子。

这就是当时最新的开源剖析型数据库ClickHouse。

“虽然并且,啥。。。啥是ClickHouse?”在数据库领域纵横八年的老司机Carl有些难堪地问。。。

虽然这不怪Carl,在2017年,ClickHouse诞生不久,刚开始在社区里流行,还没有那个像样的江湖大鳄敢冒险选用这个年青的“郭靖”,没据说过也再正常不过。

可邪门的是,经过进一步测试,ClickHouse读写数据的性能总是名列前茅,如同一个闪闪发光的极速机械臂,老师傅越看越爱。

Carl她们一合计,没人吃龙虾,并不等于龙虾不好吃啊。拍拍胸膛,我们先用呗!

老师傅们就这样冲进了战场,用了两个月就基于ClickHouse搞出第一版数仓,交给一些勇于尝鲜的规模小一点的业务团队去用。

Carl

然而,吃大闸蟹的代价很快就来了。

刚刚说过,ClickHouse如同一个机械臂。但是一个完整的数仓,仅仅有机械臂还不行,还须要有系统负责多个机械臂之间的配合,还要有一系列举措保证机械臂的故障修理。

如同下边这样:

然而,ClickHouse自己都是初出茅庐,和它相配套的系统更没有经过大规模磨合检验,暗含着五花八门的坑。。。

当时一个大的数仓里能达到400-500个ClickHouse集群,集群之间要实现“高可用”,靠的是Zookeeper系统。

那么多集群满负荷运行,压力都会集中在Zookeeper头上,弄不好都会死掉。。。

Carl追忆。

要命的是,当时有些团队早已开始依赖这套系统,她们吃大火锅唱着歌查着数据,忽然系统崩溃,那个觉得如同被麻匪劫了一样慌。

Carl她们也惊出一身虚汗,把伙伴放在危险窘境那妥妥有损技术人的尊严啊,这些事儿决不能发生——他们当虽然出独身30年的手速,写了一套临时脚本活生生扛住。

脚本如同临时缠上的胶水,虽然不是长久之计。

她们只能左右开弓:

右手维护脚本,手指开始写一套永久的高可用方案。

几周以后,新方案火速上线替换掉临时脚本,才算灭火成功。。。

用几个机器人把Zookeeper的任务分担出来。

然而,汗还没来得及擦,新的“险情”又来了。

虽然数仓的构建原本就是为了让人查询各类奇怪的数据。可有些业务团队的脑洞过大,查数据的坐姿堪称健身——总让机械臂去够架子边沿的袋子。。。

数仓又不可能躺在沙发歪斜腿说:“你查的这个数据太怪了,我不想给你找。”

它只能勉为其难去查,这一下不要紧,机械臂触发Bug“扭了腰”,整个系统就被搞挂了。

Carl她们一开始的看法是,预测一下你们就会用哪些怪坐姿使用数仓,后来他发觉自己天真了:

调用数仓的这群人脑洞可太大了,老师傅根本猜不到她们会如何出牌,只能遇见一个问题修补一个问题——Bug难免有,及时修好上次不犯就是好同志。

数仓死掉,业务团队多少是能容忍的,可伴随而至的另一件事儿她们却忍不了:

每一次数仓“因病”去世(死掉),再投胎转世(重启)都须要十来分钟,这等不起啊。。。

Carl她们突然意识到,数仓的“重启速率”这种细节,也妥妥是性能的重要组成部份!

老师傅赶快研究,她们发觉数仓重启之所以须要绕圈圈这么久,就是由于读取“元信息”的过程比较冗长,干脆一不做二不休,专门写了一套程序把这种信息读档管理上去。

须要重启的时侯,直接读取这一整套数据,又干净又卫生。

你发觉没,那种阶段Carl她们做的事情,似乎哪件都说不上惊天动地。并且,假如没有几百个核心业务每晚在数仓上反复磨擦,你还真没办法把这种问题都发觉,也没办法解决得如此饱满。。。

这个“圆润”,同样为未来埋下了伏笔,我们一会儿再说。

我们的故事快进到2018年,此时Carl她们早已相继给ClickHouse降低了几百项大小改动,致使“字节版”的ClickHouse早已和母胎的“社区版”有很大区别了,于是她们决定给自己的ClickHouse起个新名,称作ByteHouse。

这一年,也是Carl最开心的一年。由于随着ByteHouse肉眼可见越来越好用,公司内好多团队的数据鞋厂都纷纷把ByteHouse数仓作为自己数据处理的重要一环。

更让Carl高兴的是,在业界好多大公司也纷纷开始选择ClickHouse作为数仓核心组件。

这些觉得,如同你在网易云发觉了一首评论寥寥的宝藏歌曲,几年后却发觉评论早已十万加,所有人都在听——一种“老子就是有眼光”的觉得油但是生。

ByteHouse上场以后,我们不妨再来看我们的主角“小红心”,它的“奇幻旅程”就和前几年显著不同了。

张三给一个视频点了小红心,小红心诞生以后,会先入住数据库这个“宾馆”;

之后它会从酒店下来,步入ByteHouse这个硕大的“仓库”,和来自其他“宾馆”的数据汇合在一起;

接出来,小红心就会按照调遣步入功能各异的数据鞋厂,用自己的脸庞组成报表;

其实,假如有必要,一些报表会继续步入那种“A/B测试”的神器Libra,最终为这个数字世界里的每一个决策提供根据。

注意,我画的这个旅游线路是“极简版”。

在实际的“数据旅行”中,估算一个数据没有那么简单。

小红心很可能要在“宾馆”(数据库)“仓库”(数仓)和鞋厂“数据应用”中来回穿梭,中途要换好几次“大巴”,还要和不同的数据“组团”——一趟旅途分成几百段都很正常。

出席过旅行团的浅友都有过这样的经历:集体坐大巴的时侯,总有个他人由于五花八门的理由迟到,一车人只得坐在那儿干等,这会大大增加旅行团的行进效率。。。

没错,在“数据旅行团”中,这些事儿同样会发生。。。

就在2018年,随着数据处理流程越来越复杂,老师傅们发觉,数据该出现不出现,该发车不发车的情况越来越多。

例如,抖音规定有些报表下午9点就要估算下来,但是上面的数据没下来,指标就填不进去——将军看不到地图,这仗莫非要“盲打”了吗?

数据旅行团的问题,也可以从现实旅行团头上借鉴答案。

没错,数据旅行团须要一个“导游”,并且是一个严厉的导游,谁迟到就打谁屁股的那个!

(四)数据旅行团的“导游”

“字节有一个很牛的文化,你晓得是哪些吗?是拉群。”Brian笑着给我讲。

“当年,遇见‘数据流程卡住’的问题,你只要把相关负责人拉到一个群,她们还会神奇地行动上去,自己协商出办法把问题给解决!自驱力杠杠的。”

可问题就在于,“一腔热血”不能解决所有问题。

拉群办事,靠的虽然是肉身,如同在数据流程的水管破口上用右手头按住那样↓↓↓

可随着数据应用变多,发觉的破口越来越多——每次出问题就多拉一个群,到后来,相关负责人手机里的群早已密密妈妈,老师傅们的拇指头不够用了↓↓↓

推论很显著:靠人力解决“数据整治”的困局,长远来看根本不可取。

这儿,就是Brian和他的朋友们领略实力的时刻了。

哦还没给你介绍,Brian是字节跳动数据整治工具DataLeap的负责人。这个DataLeap,就是昨晚我们说的“数据旅行团”里的“导游”。

Brian

具体来说,DataLeap保证数据流程的方式,是通过各方签订“SLA”(服务级别合同Service-LevelAgreement)来实现的。

啥是SLA?

我们还是沿袭之前的事例:

如果A团队必须在早上9点把一个报表准时递交给抖音的负责人,这么B团队就要在夜里6点前把所有指标算下来;

借此向前推,C团队就要在夜里3点前把估算指标所需的数据都打算好;

再向前推,C团队估算所需的更底层数据在晚上1点就要由D团队打算好。

在这个共识的基础上,A、B、C、D四个团队就在DataLeap上签字画押,也就是签订SLA。

这下,数据链路上重要节点的责任就被“铁路民警,各包一段”了。

在字节内部,每天都会新增一些“数据旅行线路”——用DataLeap来构建线路的时侯,就可以同时订立相应的SLA。

如果之后碰到问题,数据卡在了C团队那儿,DataLeap会直接给C团队弹出报案,让她们赶紧处理,假如没有虽然修补,车祸责任就落在了C团队身上。

如同一个有趣的“击鼓传锅”游戏。(开玩笑的,你们很友好不会背锅,DataLeap只是帮各个团队明确了权责。)

Brian非常提醒我,不要把DataLeap想像成冰凉的“签字画押”工具,它还有好多温情的黑科技。

例如,老师傅在DataLeap里外置了一个算法,可以依照表现手动给一条数据链路的“健康度”打分。

假如某个数据传输节点设置不合理,或则给储存估算分配的资源太小气,或则历史上出现了多次延时,就会影响这条数据链路的分数。

相关团队只要时常关注各条数据链路的分数,才能把问题剿灭在萌芽中了。

再例如,DataLeap还可以设定每条数据链路的“优先级”。

假定抖音每晚须要1000个数据流来形成1000种报表,这么,万一碰到不可抗力,估算资源吃紧,在规定时间内只能算出40%的报表。

这时侯应当肿么办呢?

这是个精典的“吃自助餐”问题:腹部有限,如何能够吃回本?肯定是先吃最值钱的螃蟹!

所以,抖音团队也应当先挑最重要的报表估算——他们可以在DataLeap里提早规定好:

100个“一级任务”;

300个“二级任务”;

600个“三级任务”。

这样遇见问题的时侯,DataLeap就可以手动保证数据根据轻重缓急的次序被估算一秒5000赞,最大程度减少损失。

故事发展到这个阶段,我们的主角小红心的“奇幻旅途”又升级了。

在它穿梭在数据库、数仓、数据剖析系统的过程中,后面会时刻站着一个导游(DataLeap),絮唠叨叨苦口婆心地帮它安排行程,催它一个个赶通告。

至此,字节这群老师傅花了几年时间悉心打造下来的“数据奢华旅行团”,就已基本呈现在你面前。

请注意,“豪华”这两个字不是我随便加的修饰,虽然在2018年,每颗小红心旅行一趟出来,总体耗费的成本比现今高不少,可谓奢华。

但这些“豪华”没啥骄傲的,这当然代表着性价比不这么极至。

在2018年之后,一方面全球经济形势都碰到了暴雨,大伙都不富裕;另一方面,人们对数字世界的依赖却只增不减,要处理的小红心还是越来越多。

Albert算了算,现在Libra上每晚新增的实验有2000个,同时进行中的实验数更是数以万计。

步入A/B测试的就有如此多,这么每时每刻形成的总报表数就更多了,因而,底层的数仓和数据库被调用的次数就更更更多了。

这些情况下,老师傅似乎比原先压力更大,各个环节都被推动要优化“数据旅行”的开支——又让马儿跑,又得马儿不吃草。

小红心必须得“穷游”了↓↓↓

(五)穷游的小红心

“问你个问题,每位A/B实验应当选择多少样本做对比,就能得出科学的结果?”Albert问我。

“那。。。应当是越多越好吧。”我说。

首先,测试是十分花费估算资源的,假如实验规模过大,同时上那么多实验,Libra肯定撑不住。

再说,假如一个App有1亿用户,测试样本就把1亿用户分成两个5000万,那就不是实验,而是实际发生了。假如A策略有缺陷,都会对A策略覆盖的5000万用户都都引起不可逆的负面影响。

他说。

“要如此说,样本数目就不能太大,选1千人。”我说。

“1千人测试下来的结果,一定会和1亿人测试的推论相同吗?”他反诘。

“那就。。。每次实验选1千人,连续做5次实验,5次结果互相印证,会不会好一点?”我有点发懵。

“你看,这就是问题所在。当样本规模变小的时侯,这就弄成了一个统计科学问题了。告诉你答案,从统计学的角度来看,‘5千人做5次’的结果并不比‘5千人做1次’的结果更确切。”Albert笑。

“等等,让我捋捋。。。”话聊到这里,我早已在晕菜的边沿徘徊了。

“其实,我们这种做代码工程出身的,一开始统计学知识也不够。并且从2018年开始,我们意识到自己的局限性,引进了好多数据科学家,我讲的那些推论是跟她们学习之后才明白的。”Albert开导脆弱的我。

看我的表情还存留一丝执拗,Albert又给我讲了几个板栗:

例如“样本污染问题”。

好多团队每次做“A/B测试”,就会仍然选择ID是质数的用户为A组,ID是质数的用户为B组。

这就有问题了,如果两次*本应独立*的实验用的分组情况完全相同,甲实验都会干扰乙实验。

乙实验观察到“A策略比B策略好”,这很可能是由于在甲实验里的A策略比B策略好,因为样本选定不科学,这个“好”在第二次实验里依然在发挥作用。。。

也就是说,两次实验发生了“交叉污染”。。。

再诸如“分组干扰问题”。

你在上海选购了A、B两组用户做拉新,介绍一个新用户注册抖音就给一包烧烤底料(这是随意编的策略)。

而且很可能A、B两组用户在真实世界里原本就有关系,是朋友、家人、朋友,会口耳相传。

两个策略都会互相干扰,呈现出失真的结果。

所以,必须让A、B两组用户越不认识越好。

然而,你又不能一组选在上海一组选在内蒙。由于这样两组样本本身差别太大,山西人爱吃盘面鸡,不想要你的烧烤底料。。。

你看,这种问题五花八门,但说究竟她们要做的就是一件事儿——在“成本可控”的情况下,尽量保证“决策卫生”,因而把测试结果确切率无限加快到“理论极至”。

所以,从2018年开始,数据科学家们在Libra上面外置了好多保证“决策卫生”的流程和功能。它们犹如一个个“安全气帘”,保证不太懂统计科学的菜鸟司机也能上秋名山飙车。。。

其实,要实现全流程“穷游”,数据库房同样须要技术升级。

然而,数仓这东西十分精密,所有组件都紧紧咬合在一起,牵一发动腰部,没办法“微整形”,要整就整“大放疗”。

在2020年左右,ByteHouse的各类小优化早已做到极至,拱不动了。Carl她们咬咬牙——与其逃避命运,不如主动出击——决定对ByteHouse进行两场大放疗。

这第一台放疗就是“存算分离”。

我们回到上面的比喻,把ByteHouse看做一个库房。本来这个库房是每一个货架(储存资源)后面都站着一个固定机械臂(估算资源),须要这个货架上的数据,它就拿出来。

并且可想而知,假如库房规模不断变大,机械臂数目也会线性增多。

但是,不是每位货架上的数据时刻都须要存取——大部分时间机械臂(估算资源)都在闲置中,资源浪费。

所谓存算分离,就是把机械臂弄成联通的,须要那个货架上的数据,就过去拿。可想而知,这样的整修除了能节约好多“机械臂”,能够腾出“货架”的空间。

如同下边这样↓↓↓

第二台放疗就是“并行处理”。

起初ClickHouse的任务分配模式是“树状”的:

一个查询任务来了,就须要一个“工头”把任务分配给好多机械臂,它们把数据找来,再汇总给工头。可这样有个显著的缺点,就是工头一个人成为了系统的困局,尤其是在数据汇总的时侯,你们都把数据给它,它还会忙不过来。

所谓“并行处理”,就是让机械臂们自己分别汇总,之后把汇总后的结果报给工头,能够大大减短估算的时间。

别看这两台放疗从逻辑上听起来不难理解,而且要完成整修,须要深入数仓内部的最细节代码,相当于把每一颗螺栓都进行整修,再精致地封装回来,难度直逼开颅放疗——Carl她们整整干了五年。

就在ByteHouse做放疗的时侯,DataLeap也没闲着。

Brian给我介绍了一个字节独创的理念,叫“数据的分布式自制”。

这是啥呢?

举个反例,像抖音、今日头条这样的顶流业务,对数据的要求就是“变态级”的,哪怕数据晚到一秒钟,可能都是车祸。而且对于字节内部刚才孵化的小业务,就没必要如此较真,数据晚半个小时虽然也没问题。

于是,DataLeap就加入了一个功能,可以按照你们不同的容忍程度,自助调整数据链条的“松紧”。

“干嘛要调,不是数据传递越快越好吗?”我问。

由于时间就是金钱。

对数据要求严格,就必须在全链路的估算、存储、监控都下足本钱,成本自然就高;

反之假如对数据时效要求不高,就可以坐慢车,大大节约成本。

他说。

如同这样,客机列车车辆随意挑。

Brian她们搞出的“抠门”操作还有好多。

例如,有些没人用的就数据会仍然抢占储存空间,而且团队却不舍得删,如同不敢扔家里的旧书,生怕哪天还要看。

但是,储存用的硬碟却是实打实的成本啊!眼看每天都有新数据源源不断进来,储存资源成本越来越高。。。

DataLeap一看,这个事儿我能帮忙啊!

由于所有的数据链路都在DataLeap上创建,它就自然能晓得什么数据访问量比较高,什么数据仍然在“万年冷宫”。按照数据的热度,DataLeap能够精准建议团队删掉一些最冷的数据。

这样一来,除了储存成本大大增加,数据也可以在合适的机会被销毁。

故事提到这,我们的主角小红心的“数据旅行团”又有了新升级。

首先,它的整个旅途在保证质量的情况下,会显得更实惠;

其次,在完成所有旅程以后,它最终都会回归自然。直至这一刻一秒5000赞,小红心才真正走完了它“驱动世界”的旅途。

给你看下全景图吧:

刚刚我为了便捷你理解,仍然在指出“穷游”,似乎老师傅都很小气似的。但,这样历练极至的数据处理体系,莫非仅仅是为了省钱吗?

其实不是。

别忘了,数据是数字世界的石油——不仅仅是字节跳动须要数据石油,也不仅仅是互联网行业须要数据石油,我们现实世界里的鞋厂、饭店、机场、银行,千行百业全部都在源源不断地形成数据,她们其实也有权利使用数据石油。

可问题在于:不同行业的“数据密度”是不同的。互联网行业天生泡在数据石油里,如中东土豪一样;但一些传统行业如同贫油国,有些数据并不丰富,有些开采难度较大。

这些情况下,还要斥巨资建设数据处理体系,她们就没有动力了。。。

换句话说,只有一个性价比足够高的数据处理体系,能够融入千行百业,帮助她们来开采自己的石油。

字节这群老师傅突然抬头,发觉整个江湖之上,自己对于数据技术的处理早已到了得心应手的地步。于是,高层谨慎讨论,打算把那些年积累出来的各类技术开放下来,服务广大企业。

这就是后来大名鼎鼎的“火山引擎”。

(六)成为“利器”

2021年,数据老师傅们来了个1秒变装——从服务公司内部业务,转向服务衣食住行、千行百业。

字节这种系统也来了个1秒变装——A/B测试系统Libra更名为DataTester,用户下降剖析系统TEA更名为DataFinder,数据洞察工具风神更名为DataWind、客户数据平台Mirror更名为VeCDP,一起装在了称作“VeDI”的数智平台里。

如同这样(点击可以看大图)

虽然,各行各业建设数据体系,本质上就是把字节走过的路重走一遍,火山引擎的价值恰恰是——字节踩过的10086个坑,不要再让其他公司踩。

老师傅发觉,她们要做的还是老三样:

1、帮助企业构建“收集小红心”的能力;

2、帮助企业建造小红心的“仓库”和“工厂”;

3、帮助企业给小红心的旅途配备“导游”。

举几个板栗吧。

有好多非互联网企业,还没有自己的App,或则App功能设计不健全。

她们最急需的,就是第一步——收集“小红心”的能力。

字节的一位朋友告诉我,她们刚才帮助领克车辆改进了App的设计,让领克的车主可以不用说话,仅仅通过在App里的各类操作就凸显出她们的诉求,如同明日头条和抖音所做的那样。

搜集到了小红心,领克就可以做“A/B测试”,因而一点点改进对车主的服务。

你看,数据链条就这样平缓地转动上去。

恐怕浅友里肯定有领克的车主,不晓得你近来体验到变化没。

领克还用火山引擎做了更多数据加工,篇幅有限就置于图里了。(点鸡可以变大)

有了小红心,就到了第二步——建造小红心的“仓库”和“工厂”。

2021年,Levi’s(李维斯)早已完成了用户数据库的构建,她们就让字节的老师傅们把数据接入了数据鞋厂——VeCDP(管理顾客数据的平台)。

这样一来,Levi’s就把自己的顾客分为六大人群体系,之后对每一类顾客进行个性化的推荐和营销。

这样除了降低了对好多非核心用户的打搅,能够集中精力服务真正的目标用户。

库房和鞋厂都有了,接出来就是第三步——给小红心配“导游”。

能走到第三步的企业,早已算是数据领域的佼佼者了,由于这说明她们的数据基础早已完备,开始考虑数据整治的问题了。(你还记得吧,字节也是在数据基础链路建设完整以后才重点搞数据整治的。)

讲实话,目前这样的企业还真不多,“得到”就是其中之一。

得到是好多爱智求真的男子伴(例如我)手机里的C位App。

客观上来说,这种顾客的消费能力还挺强的,所以她们使用得到App时形成的小红心(数据)的价值也很高,必须被注重,必须得到及时的响应。

所以,得到对数据链路的SLA要求贼高,数据决不能迟到。

这不恰好是DataLeap的用武之地么?

2021年的时侯,字节老师傅帮得到建设了DataLeap的数据体系,自此,数据不到位的情况大大减低。

字节的朋友还给我讲了很多案例,篇幅有限我就不给你转述了。

草灰蛇线伏脉千里,你还记得我们之前的这些伏笔么?

好多顾客没有专业的数据剖析师,这时侯Libra的傻蛋式操作就十分合适;

各行各业使用数据的模式千奇百怪,ByteHouse早年被锻练下来的饱满耐操就发挥了作用;

各个公司的数据发展水平不同,有的对数据质量要求高,有的对数据质量容忍度高,这个时侯DataLeap的分布式整治功能恰恰能派上用场。

她们当初吃力做了那么多细节功能,更多是出于纯粹的数据信仰。而且“纯粹”恰恰是改建世界最锋利的装备。

这些默默的努力现在一下子灵魂附体。大约正如那歌词:“人生没有白走的路,每一步都算数”。

(七)没有尽头的数据长征

熟悉中哥的人都晓得,我是一个“数据技术信仰者”。

缘由似乎也很简单,中国总体地大物“薄”,人均来看各类能源都谈不上丰富,漫长的时间里,我们可以借助的只有每位人的勤奋和忍让。

正是这样的历史,缔造了巨大的人口和统一的市场。而这两样,恰恰是数据的温床,蕴育了最丰富的未来能源。

从这个角度看来,我们终究得到了历史的一些垂青。

在未来几六年,大几率会爆发一场波澜壮丽的“数据技术普及浪潮”,每一个公司都可以用低廉的价钱订购一个高效的“数据处理引擎”,如同现今我们买车辆一样简单。

也只有到了数据引擎满地开花的时侯,我们才真正拍胸膛说自己是奔跑在数据上的国家。

坏消息是,我们目前的数据处理效率,还不能支撑那样的未来。

好消息是,老师傅们仍在继续努力。

Carl告诉我,近来ByteHouse正打算研究一个智能化的黑科技:

你还记得我们刚刚说过,一个任务抵达ByteHouse以后,要有一个工头来进行任务分配的吧。

面对一个任务,到底应当召唤出多少个“机械臂”去执行子任务呢?假如太多才会浪费算力,假如太少都会拖延时间。

当前的解决方案比较粗鲁,就是自动设定的默认值。

可未来ByteHouse进一步溶入各行各业,估算任务会显得愈发五花八门,都采用“默认任务分配策略”就不合适了。

所以,黑科技就是:按照现场情况,手动测算最合适的“并行度”来分配任务。

这些润物细无声的“智能化”还发生着在好多地方。

例如在DataTester(Libra)里,目前所有的指标都是剖析师自己凭脑子瓜想下来的。

但Albert告诉我,她们正在尝试研究一种技术,可以通过历史数据和行业属性自动向剖析师推荐:“要不要试试这样建立指标?”

这样的智能建议倘若足够靠谱,这么各行各业才会进一步甩掉对专业剖析师的依赖,借助数据的门槛急剧急剧增长。

DataLeap也有类似的黑科技。

Brian说,过去的DataLeap在发觉某个数据流卡住的时侯(通常是晚上),就会马上打电话吵醒响应团队的方方面面好几位负责人,但好多情况下能解决问题的就是其中一个人。

所以DataLeap正在研究的黑科技就是:

通过数据智能研判这个堵车具体是由哪个小分队导致的,直接给这一个人负责人来精准的“夺命连环Call”,他人该睡还睡。

“提升你们的幸福感嘛!”Brian笑。

举了这三个反例,可能你已然看下来了,未来数据技术发展的一大方向就是“数据处理的智能化”。

智能化浪潮的意义,堪称车辆从自动挡进化成手动挡一样,顿时让好多没信心驾车的人也能学驾车了。

不仅“智能化”,未来数据处理就会越来越“实时化”。

曾经的“小红心旅行”短则几个小时,长则几天,并且在好多场景下,我们等不了如此久:

例如,你搜索了一件大衣,下1秒你就希望电商马上给你推荐相像的样式;

例如,火电站周围的风向变了,就须要马上调整空冷岛吊扇的怠速,补偿风向对散热的影响;

例如,村民的用电情况发生改变,就须要马上调整电网输送功率,保持供电用电平衡。

实时报表的要求越来越高,小红心整个旅途可能在几秒内就得完成。(可以参考我写过的《你在被窝里刷手机时光静好,一个“神秘引擎”却在远方和时间赛跑》)

当延后以微秒计数,数据都会组成一条奔腾的大河。而在大河两岸,新的文明得以被滋润。

如同下边这张完整版大图:

尽管有点俗,但我的梦想就是通过产品化的形式,让未来更多的人就能用到数据。

人做的事情越来越少,手动化越来越多,直至人类从一条条数据链路中被完全解放下来。

Brian说。

我想了半天:“你这梦想早已不俗了吧?”

挥别字节的老师傅们,我忍不住掰着右手头估算。

20多年前,互联网出现;10多年前,智能手机普及;而构建在这种基础之上数据世界,仍是踉跄的女儿。

一个儿子早已这么强大,我有理由相信,更多奇迹早已预定了我们的未来。

但成长从来并非易事。

从荒芜到嘶鸣,现在数字世界的一切都由一行行微小而具体的代码拼凑而成,过去走到现今并无捷径。由此想见,由现今走到未来也没有捷径。

这可能是一场漫长的数据长征。老师傅只能前赴后继,用一行行代码取代步伐,去丈量大地。

但好在,代码是数字世界的钻石,它一旦创生,就再也不会消逝,我们每往前走一步,就离终点更近一步。