Hi 欢迎来到易观方舟
有问题就找小舟助手
联系我们 周一至周五 10:00 - 18:00

产品咨询:4006 - 010 - 231 转 1

商务合作:4006 - 010 - 231 转 2

咨询与帮助

2020 OLAP算法大赛「通关秘籍」 | 听听这届参赛选手怎么说!

 

自英雄帖发布以来,2020易观数科第四届OLAP算法大赛吸引了各路精英。经过一个多月的招募,我们收到了来自爱奇艺、哔哩哔哩、中国移动、中科院计算所、中南大学等100多家团队的报名。
根据大赛安排,比赛将于10月9日正式开启,历时11天,比赛结果将全部开源。届时我们会邀请冠、亚军得主,在「2020易观A10数据智能峰会」现场分享比赛经验。

 

  • 选手们为这次比赛做了哪些准备?
  • 他们如何理解OLAP技术?
  • 对本次题目有什么看法?
 

为此,我们采访了部分参赛者:

       

Q&A

Q:你是从哪里知道OLAP算法大赛的?

A:从Clickhouse 讨论群里,看到大家在聊这件事。

 

Q: 以前有参加过类似的比赛吗?相比之下觉得本次比赛的优、缺点分别是什么呢?

A:这是我第一次参加。希望在这次比赛的过程中,能够和更多同领域的小伙伴交流,一起进步。

 

Q:请问您怎么评价这次大赛的题目?

A:题目从实现难度来看,还是比较简单的。但是算法逻辑的多样化,可以考验选手对OLAP即时查询,以及数据优化的认知。

 

Q: 对于OLAP技术应用,或者算法方面,你平常有什么钻研?

A:从数据库的选型到表引擎的选型,再到数据存储结构的选型,接着是查询SQL的优化,有些特殊的情况可以采取数据预处理方式。

 

Q:请问您对于赢得比赛有没有信心呐?

A:必须有啊!我就是来拿奖的!必胜!(自信君上线……)

 

Q: 您对本届大赛有什么建议么?

A:我希望拿到正式数据和正式比赛环境的时候,能有足够的时间给我们进行环境搭建和数据导入工作。

 

Q:测试数据里的xwhen会作为条件过滤吗?比如 xwhen>? and xwhen <?

A:一般不会直接按unix时间戳范围进行筛选。参赛者研究测试数据,为正式比赛做准备。

 

Q:比赛前是否可以提前把数据join好放在一张表里面?

A:比赛前1小时会给临时数据,用于模拟实际业务场景,实际情况是数据一直在往服务器上传,为提升答题效率,参赛者提出方案。

 

易观数科持续推动OLAP发展

 

随着大数据的持续发展,我们会发现“数据永远是临时的,分析永远是有时效性的”。从另一个侧面,OLAP技术发展得如火如荼,实时分析日益成为一个企业,成为数字决策企业的主要组成部分有效快速高效分析出数据中的有效信息,成为一个企业抢占行业龙头制高点的决胜关键,这反过来也催快了实时分析技术的飞速发展。

 

在发展的过程中,我们发现市面上的OLAP技术已经种类繁多,比如Facebook的Presto、Spark SQL、Cloudera推的Impala、MapR推的Drill、Pivotal开源的GreenPlum和HAWQ都属于OLAP技术体系,当然还有近两年在中国风靡的,来自战斗民族的Clickhouse,Clickhouse也是在2017年易观数科的OLAP大赛上成为当年最大的黑马,在夺冠后一战成名。

        

目前的OLAP引擎分类以及对应的优缺点和适用场景

 

从以上可以看出,每种技术都有优缺点,在做技术选型时,需要依据具体业务场景进行选择。为推进OLAP技术在数据分析领域的发展应用,汇聚行业优质资源,搭建数据爱好者交流平台,易观从2017年开始举办OLAP算法大赛。

 

 

易观数科OLAP算法大赛这几年

 

从2017年至今,围绕“漏斗分析”、“session分析”、“PV、UV流量预测”、“性别年龄预测”等热门命题,大赛荟聚了数千位算法爱好者、凝结了精彩的算法成果,在百度搜索OLAP算法,几乎被易观数科OLAP算法大赛“霸屏”截止目前,所有开源组的比赛成果都已在GitHub上开放出来,可前往https://github.com/analysys/olap 查看,而商业组选手的表现也可圈可点。

 
  • 2017年,PingCAP 参赛组以超过原始基准测试近 30 倍的成绩,获得了商业组的冠军,借助   PingCAP 的核心产品 TiDB,展现了强大的复杂 OLAP 处理能力。TiDB 的算法引擎在处理时将性能作为首要目标,运用多种存储布局和索引手段,对数据进行快速扫描和有效过滤,大量使用 SIMD 技术的向量化计算,优化布局,极大减少编解码开销,并根据场景进行智能化存储和 IO 策略。最终以超过原始基准测试近 30 倍的成绩亮眼胜出,获得了专家评审的一致认可。

 

  • 帆软团队凭借出色的能力,连续两年拿下前三的好成绩,2018年更是一举夺魁。2018年帆软使用自主研发的直连分布式引擎,基于Alluxio和HDFS,采用列式存储方案,以Spark作为基础,基于流式计算,辅以高性能查询算法,为直连引擎提供强劲的查询支持。面对亿级数据和多维度复杂场景时,直连分布式引擎能大幅提高有序漏斗的计算的效率和准确性。
 
  • 2019年,氪信技术团队凭借300毫秒准确处理8亿条行为数据的惊人速度和准确率获得冠军。氪信团队已向ClickHouse开源社区提交了十几项功能,主要围绕特征工程、数据清洗、时序数据处理等领域,是ClickHouse在机器学习领域的先行者之一。
 
 

参赛技巧

 

大赛为所有参赛者还整理了一份干货满满的参赛技巧,预祝各位参赛者顺利、成功突围。

 

1.充分理解赛题这是算法大赛取得较好成绩的先决条件。

 

2.深入了解常用OLAP引擎目前各种开源和商业的OLAP 引擎很多,各有其擅长的方向,选取合适的OLAP 引擎,意味着可以算的更快。

 

3.优秀计算模型设计合适的OLAP引擎可以让计算更快,现有引擎不能完全满足赛题要求,可能需要参赛者开发定制化的UDAF函数,优秀的计算模型是结果准确和高效计算的保证。

 

4.合理的数据组织形式:比赛数据集巨大,而相对而言,硬件资源非常有限,合理的数据组织形式,可以充分利用大数据的分治思想,在有限的资源下,高效的完成对大数据集的快速计算。

 

此外,今年的事件分析题目非常直观,容易理解,通用的计算引擎即可完成计算,但是为了追求极限速度,参赛选手可以从如下几点做探索:数据编码和存储方式;分而治之的思想;执行计划的优化,甚至二次开发;高效的自定义udaf;参考往届开源的解决方案等。

 

————————————

 

2020 OLAP算法大赛结果及颁奖典礼,将在2020易观A10数据智能峰会「开发者日」举行,届时算法大赛技术新秀现场分享参赛心得,更有腾讯、滴滴等大厂的技术大牛分享技术实战经验。

  

相关推荐:

体验文中提到的功能

立即免费体验Demo

百闻不如一见

现在来体验方舟如何帮你挖掘商机、增长业绩

体验Demo