MaxCompute核心场景
云数据仓库
在云计算、大数据时代,数据仓库的重要性毋庸置疑,其建设也在不断的进化中。某知名新零售客户在横向对比之后,毅然决定基于 MaxCompute 强大的计算能力进行数据仓库的建设。
挑战
- 数据仓库:
- 需要在打造在线数仓,在线完成数据开发、数据清洗和转换等任务。
- 通过数仓构建可视化数据展示的应用,即时展示营收数据,便于运营和决策快速调整。
- 推荐引擎:打造短视频和图片的推荐引擎,需要具备便捷性和灵活性的在线产品,支持多种算法和过滤体系。
- 算法平台应用:
- 基于元信息的回归:作为一个 UGC 的平台,用户上传内容的质量是参差不齐的,为了保证平台内容的质量。编辑进行了很多精选和挑选的工作。如何提升编辑的筛选效率是当前需要解决的关键问题。
- 近义词:需要有一套高效的算法优化搜索的体验,使用户在搜索时更容易获得目标内容。
- 业务总线:需要提升一些应用场景(搜索热词统计、实时热度统计)的响应速度、实时触发业务事件,支撑类似于发送优惠券、推送消息等业务。
解决方案
1、基于数据仓库的方法论在阿里云大数据平台上建设的数据仓库,通过简单的命名规则就构建起各种层级和维度的数据,依赖 MaxCompute 的强大计算能力,和简单的 SQL 处理语言,公司技术团队只有一名数据工程师就能快速生产出各种数据,以支撑各种 BI 报表。
2、流计算的引入,提高了公司业务的实时表达能力而又没有增大开发成本。对某些业务还起到了异步,解耦和降级的作用,大大降低了对线上已有的复杂业务的影响,因而降低了开发和维护成本。
3、与机器学习算法平台 PAI 的对接也帮助了公司技术团队在机器学习等高难度领域大数据应用的探索,比如尝试了训练回归模型对用户上传视频的打分,还有对文本的处理聚类等。
4、基于统一的数据存储和计算,公司通过对用户的特征抽取,开发了自己的一套基于内容的推荐模型(通过用户对内容的行为,在 MaxCompute 中通过 SQL/MR 的计算生成用户特征,通过 DataX 存储在 OTS 中,在实时的计算中获取并对用户进行基于兴趣的内容推荐),和阿里云推荐引擎一起,为用户提供个性化内容,也取得了不错的效果。同时也在智能搜索方面做了初步的尝试。
收益
- 不需要像传统大数据业务一样构建一个非常复杂的 Hadoop 栈,并且对其进行运维,节省了金钱和时间成本。
- MaxCompute 的整个生态系统设计的比较完善,无需专职数据团队,降低了人员成本。
- 得益于 MaxCompute 的生态,可以在 21 天内搭建推荐系统。
- 借助阿里云实时计算非侵入实现业务总线,满足了绝大部分场景。
架构
湖仓一体
MaxCompute 提供湖仓一体方案,该方案可以打破数据湖与数据仓库割裂的体系,并将数据湖的灵活性、生态丰富能力与数据仓库的企业级部署能力进行融合,助力构建数据湖和数据仓库相融合的数据管理平台。
挑战
- 随着公司业务的飞速发展,业务所用计算资源消耗越来越大,自建 CDH 集群扩展性差,扩容操作难度高且有一定操作风险;昼夜资源使用不均,导致资源无法合理使用;CDH 集群使用本地SSD 磁盘,存储费用高,CDH 组件的压力日益变大。
- 员工日益增多组织架构日趋复杂,CDH+EMR 混合云架构出现瓶颈。部门计算资源不能有效隔离,元数据管理不完全统一,用户权限管理不统一,HDFS 和对象存储上的数据有冗余。
- 后期,湖仓计算不能自由流动,异构计算引擎元数据管理不统一,存储管理不统一,权限管理不统一。
解决方案
基于 MaxCompute+Data Lake Formation +E-MapReduce 的湖仓一体架构。
收益
- 统一的元数据管理:统一把 ERM 的元数据和 MaxCompute 元数据保存在 DLF。
- 统一的存储管理:统一把 EMR 与 MaxCompute 外表的数据,保存在数据湖的 OSS 中。
- 湖仓计算自由流动:EMR 创建的表 MaxCompute 可以马上读到,MaxCompute 创建的表也可以马上被 EMR 读到,真正做到了湖仓之间计算的自由流动。、
架构图
日志大数据分析
某天气信息查询软件客户将日志分析业务从云下Hadoop 集群迁移到阿里云 MaxCompute 后,开发效率提升超过 5 倍,存储和计算费用节省了 70%,更高效的赋能其个性化运营策略。
挑战
公司运营团队每天最关心的是用户正在如何使用 APP,在他们操作中透露了哪些个性化需求。这些数据全部存储在公司的 API 日志中,对这些数据分析,就变成了运营团队每天最重要的工作。公司API 每天产生的日志量大约在 2TB左右,主要的日志分析场景是天气查询业务和广告业务。
“用户每天产生的日志量大约在2TB。我们需要将这些海量的数据导入云端,然后分天、分小时的展开数据分析作业,分析结果再导入数据库和报表系统,最终展示在运营人员面前。”公司运维部经理介绍,整个过程中数据量庞大,且计算复杂,这对云平台的大数据能力、生态完整性和开放性提出了很高的要求。 之前公司使用国外某云计算服务公司的云服务器存储这些数据,利用 Hadoop 的 MapReduce 和 Hive 对数据进行处理分析,但是存在以下问题:
1、成本:包括存储、计算及大数据处理服务成本对比阿里云成本很高。
2、网络带宽:移动端业务量大,需要大量的网络带宽资源支持,但数据上传也需要占用 网络带宽,彼此之间相互干扰造成数据传输不稳定。
解决方案
针对上述情况,公司将日志分析业务逐步迁移到阿里云大数据平台之上。
方案涉及的阿里云大数据平台组件有:
- 云原生大数据计算服务(MaxCompute)
- 大数据开发治理平台(DataWorks)
- 流计算(StreamCompute,规划中)
- 流式数据服务(DataHub)
另外,由于每天产生的数据量较大,上传数据会占用带宽,为了不影响业务系统的网络资源,客户开通了阿里云高速通道,用于数据上传。通过此种手段解决了网络带宽的问题。
收益
1、迁移到MaxCompute 后,流程上做了优化,省掉了编写 MR 程序的工作,日志数据全部通过SQL 进行分析,工作效率提升了 5 倍以上。
2、存储方面,MaxCompute 的表按列压缩存储,更节省存储空间,整体存储和计算的费用比之前省了70%,性能和稳定性也有很大提升。
3、可以借助MaxCompute 上的机器学习算法,对数据进行深度挖掘,为用户提供个性化的服务。
4、阿里云 MaxCompute 提供更为易用、全面的大数据分析功能。MaxCompute 可根据业务情况做到计算资源自动弹性伸缩,天然集成存储功能。通过简单的几项配置操作后,即可完成数据上传,同时实现了多种开源软件的对接。
架构图
>>快来点击免费下载《阿里云MaxCompute百问百答》了解更多详情!<<