Advertisement

MaxCompute 挑战利用 SQL 技术处理序列数据

阅读量:

简介: MaxCompute 面临着利用 SQL 处理序列数据的挑战,而非依赖 MR 和函数

在日常的数据处理工作中,编写数据加工任务的主要方式是使用 SQL。首先,是因为自身对 SQL 的掌握较为熟练(拥有十多年的数据开发经验,虽然只是熟悉几个关键字,但也不敢说自己不行),因此较少涉及 MR 和函数的使用。在接触 MaxCompute 的这些年里,所编写的函数数量应该不超过 10 个,主要原因还是自身的 JAVA 技术水平有限。记得早些时候写过一个用于校验身份证号码的函数,在当时的一个项目中,原本一段 SQL 执行需要 2 分钟,而使用我的函数后却延长到了 12 分钟。当时该项目组还联系了 MaxCompute 的研发团队,研发负责人又找到我,请我帮忙优化代码。我当时感到非常惶恐,因为自己深知技术能力有限。最终只能厚着脸皮请求研发团队协助优化代码,在他们的帮助下性能才得以提升。此后我更加不敢随意编写函数了,毕竟 MaxCompute 官方建议尽可能采用 SQL 进行处理,SQL 是经过优化的方法,而自行编写 MR 或自定义函数很难保证性能。这也导致我在这一方面始终处于较低水平。当然我认为问题并不在我本人,我只是遵循了“妈妈”的建议而已。

最近出现了一些奇妙的情况,连续有两个项目都遇到了与序列值计算相关的问题,并且明确要求不能使用函数和 MR。同事将问题交给我处理时

全部评论 (0)

还没有任何评论哟~