数据服务解决的问题:
不同规模和不同类型的查询会使用到不同的中间存储,数据服务可以使用统一的api接口访问数据
数据和数据接口归属于不同应用,数据和接口无法复用,数据服务将接口统一在数据服务上,拥有数据限流的功能,可以实现数据共享。
无法得知数据和应用的关系,无法优先恢复重要应用的数据,数据服务建立了数据与应用的链路关系,可以加快故障恢复。
数据模型字段变更导致应用需要重新上线,数据服务可以解藕数据应用和中台数据,只需要修改参数和字段的映射关系即可。
数据服务功能:
实现接口规范化定义,约定好API名称,定义好输入输出参数。
提供网关服务。为每个注册的应用分配accesskey 和 secretkey,应用访问时携带。同时相关负责人给API对应用授权,对应用访问API进行限流。最后进行接口监控,包括响应时间、调用次数、失败次数。
建立数据模型到数据应用的链路关系。给予应用API授权时,将应用甚至页面的标签推到元数据中心中的上游模型,取消授权时,清理标签。
提供推送数据能力,将数据写到消息中间件中,由应用进行订阅。
数据服务要支持多种中间存储。根据不同情况使用不同存储,常用的包括mysql、hbase、elasticsearch、redis等。
建立逻辑模型,实现数据复用。可以给API建立类似视图查询的多表关联查询的功能,访问时动态查询数据。
构建API集市,实现接口复用。基于元数据中心数据指标进行指标筛选,对于已有的接口可以直接申请访问权限。
数据服务系统建设上,需要在接口服务上能实现高可用和水平扩展。建设逻辑模型查询,从多张表聚合数据后返回。数据根据依赖导出到中间存储上。
网友评论