本文首发网易有数公众号:网易云音乐数据服务之路
数据服务作为统一数据中台建设的最上层,能够将数据仓库数据以服务化、接口化的方式提供给数据使用方,屏蔽底层数据存储、计算的诸多细节,简化和加强数据的使用;同时避免烟囱式建设、加强数据API的开发和交付效率,提升数据利用率。网易云音乐数据团队与网易有数进行了数据服务平台共建,并基于实际场景从无到有落地了数据服务在云音乐的使用,本文主要对共建进程及数据服务使用情况进行介绍。
数据服务平台简介
如前所述,数据服务旨在提供全面的数据服务及数据共享能力,能够作为数据仓库的统一出口,处于数据中台的最上层,对外提供统一数据服务,其位置如图。
从图可以看出,日志、业务数据等通过DataStream、NDC等平台同步、再经过实时离线等计算平台进行处理后落地成数据仓库的各层数据模型,同时借助于数据地图、元数据中心、数据质量中心等等数据中台套件对数据进行管理和校验等、使之成为资产。数据仓库的数据借助于数据传输,可以将数据从Hive离线数仓同步到HBase、Redis、DDB等在线存储中,数据服务即将数据从在线存储中读取的API服务,上层的数据产品、数据报表甚至于线上业务等都可以读取这些方便快捷地读取这些接口。
数据服务开发平台是一个集成了服务API开发、测试、部署、调用等一站型服务平台,能够非常便捷地基于在线存储快速生成数据服务API的平台。目前已集成到网易有数大数据开发套件中,平台如下:
平台用户分为服务调用者和服务创建者两个角色。
调用者即要通过服务接口消费数据的人,在音乐可能为各业务方的服务端、前端、算法等技术同学,平台支持调用者通过API集市找到需要调用的API,同时可以根据API的详情来查看API的调用方式、输入输出并申请调用权限。
服务的创建者即提供数据的人,在音乐即为数据开发,数据服务平台通过平台化的方式赋予数据开发一站式快速开发数据API的能力,包括API的创建、测试、一键发布等。之前数据开发要提供一个数据API需要写Java代码,然后申请机器、应用部署等一系列流程,目前只需要通过数据传输将数仓Hive数据同步到HBase、Redis、MySQL等在线存储中,然后在平台上以配置化或者简单SQL的方式即可快速生成一个API,同时绑定相应的资源组即可实现测试和快速发布。熟悉后整个流程可以到分钟级。平台也提供了报警监控功能,服务的创建者可以配置相关的报警信息,在已发布的API详情中看到API调用情况,如果调用有错误会受到报警信息。
下面详细介绍平台的共建进程及如何在云音乐得到落地使用。
<