本篇文章1535字,读完约4分钟

易观olap算法竞赛是国内数据库和在线分解行业的重要比赛,直接影响着许多科技企业的技术选型。 竞赛中聚集了数千名算法爱好者,美团评价、AlibabaCloud (阿里巴巴云)、小米、联通等头部科技公司、北大、北邮、中国科学院计算等科研机构参加过比赛。 今年10月,凭借丰富的数据场景解决经验和技术落地能力,氪信队成为唯一解决所有比赛问题的球队,以接近满分的成绩卫冕成功。

“卫冕OLAP 算法大赛冠军 氪信“列式计算引擎”C位亮相”

在两次olap算法大赛中,氪星出现了相信“胜利法宝”即“列式计算引擎”的身影。 2019年,通过氪信列式计算引擎,在300毫秒内正确解决了8亿条行为数据的记录,以近100倍的性能获胜,验证了氪信列式计算引擎规模机器学习中的平台技术特点。 今年的比赛问题提出以“事解体”为主题,通过更正确智能的数据算法,有效地管理不断发生的客户行动和流量数据,进一步考察参加团队的实际场景应用能力。

“卫冕OLAP 算法大赛冠军 氪信“列式计算引擎”C位亮相”

以下是氪信团队的经验。

比赛问题的解读

今年的主题相当于提供app客户运营的场景。 原始数据是10亿级的顾客行动数据,例如,某个顾客访问app,进行了查看和购买商品等行动。 平台上有5000万的顾客数据。 这意味着将客户属性、客户组与数十亿个序列相关联。 这实际上在比较有限的机械环境中存在课题。

“卫冕OLAP 算法大赛冠军 氪信“列式计算引擎”C位亮相”

正式比赛采用的3台8c16g机器,查询任务从几秒变为几百毫秒是算法本身的一大课题。

这次比赛的难点

在这次算法比赛中,选手三天前拿到了服务器和正式的比赛数据,但好像有富裕的事前解决时间。 但是,在比赛前15分钟,选手们收到了100多万的增量数据,估计了全部的数据,没有足够的时间做cube。

第四届olap算法大赛以事分解为主题,主题求出event表和profile表的相关性,两表之间的数据量相对于10000000vs5000000,join开销过大。 另外,问题是参加者考察了计算失重小计数、中位数等指标的分散计算方法,多种多样。

解开想法和妙计

氪信团队选择“列式计算引擎+准实时分解平台”结束价格比赛,根据客户id和日期分别制作切片,根据主题类型自己选择合适的切片执行计算。 使用了列内存+低基数( low cardinality )优化+数据压缩存储方案,计算方案使用了零共享mpp+cpu指令集优化+数据加热方法。

“卫冕OLAP 算法大赛冠军 氪信“列式计算引擎”C位亮相”

10亿条对5000万条的关联,被称为比较大的join,在3台低结构的机器下,采用存储器和硬盘非常慎重。 氪的应对措施如下。

首先,用离线任务的方法将历史数据合并到大表中,提取不能正常关联的event表数据,然后取得100万件event、5万件profile的增量数据后,将增量event作为未关联的历史event

分享经验

比赛中追求终极速度还是追求灵活性/倒退能力? 氪信队根据去年的经验,设计了可以灵活调整比赛问题变化的方案,使所有问题都能正确完成。 氪信团队在共享中说,方案在进一步优化的空期间: lz4的解压性能是第一瓶颈。 计算小计/总计时,常见方法会浪费完成的扫描过程,可以使用-resample进行组合扫描。通过预排序/预分组,可以节省重新计数的开销。

“卫冕OLAP 算法大赛冠军 氪信“列式计算引擎”C位亮相”

氪式计算引擎是比较大规模的数据观察、特征计算、图计算等任务而开发的高性能计算引擎,基于侧重于最大化计算性能、提高计算资源的利用率的列式计算引擎,氪信号是准实时的 提供亚秒级的大规模数据计算性能,用准实时级的数据观察查询能力,用“快速、稳定、准”直接分析场景的许多痛点。 通过评委小组的验证,氪信号基于列式计算引擎和准实时分解平台生成的数据解决方案的方法在正确性、扩展性方面具有显著的特征,比以前传输的解决方案的性能提高了几十倍。 将来,氪将推进产品优化和应用创新,用人工智能技术锻炼领域数字化、智能化变革的新“工具”。

标题:“卫冕OLAP 算法大赛冠军 氪信“列式计算引擎”C位亮相”

地址:http://www.china-huali.com/cjxw/34585.html