数据服务产品定位

数据服务作为上层应用的数据开放窗口,在经过数据清洗和加工之后,可以通过数据服务的API功能,将加工好的数据表以API的形式对外开放,解决了从数据开发到数据应用之间的壁垒。

数据服务通过提供安全稳定的API快速构建的能力,提高数据开发和运维效率。

数据服务技术架构

从数据服务的技术角度,整个产品包含API管理服务、API查询服务、统一查询服务和网关服务,其中网关服务能够对某些服务的调用起到限流等作用,且自身通过多副本节点的方式保证高可用。

产品架构 - 图1

API管理服务:
API管理服务是数据服务产品的web后端,负责数据源登记、API配置管理、测试和发布、API调用状态查询等业务逻辑。API管理服务无系统级别的状态,只需要保证单个用户访问session在一个节点,从而保证操作流畅。

API查询服务:
API查询服务用以接受用户的请求,根据请求头信息、请求方法、请求URL、请求Body信息解析出调用的API ID、调用参数,并生产统一查询服务的SQL,调用统一查询服务,获取到查询结果后封装返回。API查询服务自身是无状态的只读节点,通过多副本节点的方式来保证高可用。

网关服务:
网关服务起到内部组件相互调用的路由作用,组件对组件的访问都必须经过网关服务;能够对某些服务调用起到限流作用;也可以主动发现某种服务的节点变化;网关服务自身是无状态的只读节点,通过多副本节点的方式保证高可用。

统一查询服务:
接受统一查询SQL和数据源相关信息,解析SQL生成对应的数据源查询计划,查询具体的数据系统,并返回结果。统一查询服务自身是无状态的只读节点,通过多副本节点的方式来保证高可用。