数据服务入门

DataWorks数据服务的主要目标是为个人、团队和企业构建统一的数据服务总线,帮助用户统一管理面向内外部的API服务。例如,您可以将查询数据表功能快速的生成对应的API,或将已有的API注册至数据服务平台进行统一发布和管理。本文以MySQL数据源为例,为您介绍API开发的全套流程。

前提条件

  • 已开通API网关(API Gateway)服务,用于统一管理及调用API,详情请参见API网关服务

  • 已创建目标数据源,作为生成API所需的源端输入数据。详情请参见配置数据源

    本文示例创建MySQL类型的数据源。

背景信息

DataWorks数据服务作为数据库和数据应用之间的桥梁,旨在为个人、团队及企业提供全面的数据服务及共享能力,帮助用户统一管理面向阿里云内外部的API服务。

数据服务已与API网关连通,支持一键发布API至API网关。数据服务与API网关为您提供安全、稳定、低成本、易上手的数据开放共享服务。更多数据服务的介绍,详情请参见数据服务概述

进入数据服务

登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据开发与治理 > 数据服务,在下拉框中选择对应工作空间后单击进入数据服务

操作流程

  1. 步骤一:创建数据源并配置网络连通性

    使用数据服务创建API前,需先将您的数据库或数据仓库添加为DataWorks数据源,以此作为数据服务API的数据来源。开发数据服务API时,数据服务将访问该数据源获取数据表的Schema信息,帮助您进一步设置请求和返回参数。调用数据服务API时,数据服务将访问该数据源来执行查询请求。

  2. 步骤二:创建API分组

    数据服务基于API网关对外提供服务。在API网关中,分组是API的管理单元,并与调用地址的域名相关联。因此,在数据服务中创建API前,需先在API网关创建API分组。

  3. 步骤三:新建业务流程

    数据服务基于业务流程实现以业务为单元的数据服务API开发,并通过业务流程对API及创建API所使用的函数等文件进行组织管理。因此,在数据服务创建API前,需先新建业务流程。

  4. 步骤四:生成API

    业务流程创建完成后,您可基于该业务流程创建相应业务的API。

  5. 步骤五:测试API

    已创建的API需进行测试运行,测试通过后,该API才可发布上线。

  6. 步骤六:发布API

    通过测试的API需发布上线,发布成功后,其他服务才可调用该API。

  7. 步骤七:调用API

    数据服务支持使用简单身份认证加密身份认证调用数据服务API,您可根据需要选择。

  8. 步骤八:查看与管理API

    发布上线的API可在服务管理页面查看,同时,数据服务支持根据业务需求进行下线、授权及查看API调用详情等管理操作。

步骤一:创建数据源并配置网络连通性

使用数据服务创建API前,您需将数据库或数据仓库添加为DataWorks的数据源,并保障数据服务资源组与您的目标数据源网络连通,以便调用API时DataWorks可成功访问数据源。

  1. 进入管理中心

  2. 在左侧导航栏单击数据源管理,进入数据源管理页面。

  3. 创建数据源并测试网络连通性。

    1. 单击新增数据源,选择所需数据源类型。

      本文示例选择MySQL

    2. 配置数据源信息。

      根据实际需要进行配置,详情请参见配置MySQL数据源

    3. 选择数据服务资源组并测试资源组与数据源的连通性。

      本文示例使用开通DataWorks时默认提供的公共数据服务资源组。

      说明

      在任务高并发执行且无法错峰运行的情况下,需要专有资源来保障高并发和高频率的API调用。建议您选择购买使用DataWorks的独享数据服务资源组。详情请参见新增和使用独享数据服务资源组

    4. 单击完成,成功创建数据源。

    本文示例新建名为rds_workshop_log的MySQL数据源,并测试该数据源与公共数据服务资源组的连通性,参数配置如下图。新增数据源

步骤二:创建API分组

数据服务基于API网关对外提供服务。在API网关中,分组是API的管理单元,并与调用地址的域名相关联。因此,在数据服务中创建API前,需先在API网关创建API分组。

  1. 进入API网关

  2. 在左侧导航栏单击API管理 > 分组管理

  3. 在分组管理界面,单击创建分组,新建分组。

    本文示例新建名为Workshop的分组。

步骤三:新建业务流程

数据服务基于业务流程实现以业务为单元的API开发,并基于业务流程对API及创建API所使用的函数等文件进行组织管理。因此,创建API前,需先新建业务流程。

  1. 新建业务流程。

    数据服务 > 服务开发页面,通过如下两种方式新建:

    • 方式一:单击新建图标,选择新建业务流程

    • 方式二:右键单击左侧导航栏的业务流程目录,选择新建业务流程

  2. 配置业务流程相关参数。

    配置

    描述

    业务名称

    根据业务场景自定义名称。本文示例创建的业务流程名为DataService

    API分组

    选择API分组,用于后续管理API。本文示例使用步骤二中创建的Workshop分组。

    说明

    API分组是针对某个功能或场景的API集合,也是API网关对API的最小管理单元。如果您需要新建分组,可参考步骤二:创建API分组操作。

  3. 单击确定,成功创建业务流程。

    业务流程创建完成后,您可在数据服务左侧目录查看目标业务流程详情。

步骤四:生成API

您需根据业务需要,在创建的业务流程中生成API。

  1. 生成API。

    数据服务 > 服务开发页面,通过如下两种方式生成:

    • 方式一:单击新建图标,选择新建API > 生成API

    • 方式二:右键单击左侧导航栏的目标业务流程,选择新建 > API > 生成API

  2. 定义API相关属性。

    生成API对话框,配置API信息。本文示例配置如下图。配置API主要参数介绍如下。

    配置项

    描述

    API模式

    您可选择使用向导模式或脚本模式创建API。

    • 向导模式:无需具备编码能力,即可快速配置一个数据API。

    • 脚本模式:支持多表关联、复杂查询和聚合函数等高级功能,可自行编写API的查询SQL,满足高阶用户的个性化查询需求。

    本文示例使用向导模式。两种模式的更多介绍,详情请参见生成API概述

    API名称

    自定义API名称。本文示例创建的API名称为rpt_user_info_all_d

    API Path

    API的存放路径,即相对于服务Host,API的请求路径。该配置用于拼接API的调用地址。本文示例路径配置为/user

    协议

    支持HTTP及HTTPS。

    如果您需要通过HTTPS协议调用API,请在发布API至网关后,在API网关控制台绑定独立域名并上传SSL证书,详情请参见支持 HTTPS

    请求方式

    支持GET及POST。

    说明
    • 当请求方式选择GET时,后续API添加的请求参数参数位置,仅支持选择QUERY。

    • 当请求方式选择POST时,后续API添加的请求参数参数位置,支持选择QUERY和BODY。

    返回类型

    仅支持配置为JSON类型。

    可见范围

    定义该API创建后的可见范围,取值包括工作空间私有

    • 工作空间:该API对本工作空间内的所有成员可见。

    • 私有:该API仅对API的负责人可见,且暂不支持授权。

    本文示例可见范围选择工作空间

    目标文件夹

    定义API在左侧业务流程中的存放目录。若您还未创建业务流程,请参考步骤三:新建业务流程创建。

  3. 配置API参数。

    在API的编辑页面,配置API参数。本文示例配置如下图。配置API

    1. 选择API的数据源。

      选择表区域,选择生成API所需的数据源表。

      参数

      描述

      数据源类型

      选择需要基于哪类数据源创建API。本文示例选择MySQL类型数据源。

      数据源名称

      选择需要基于该类型数据源下的哪个数据源生成API。本文示例选择步骤一:创建数据源并配置网络连通性创建的rds_workshop_log数据源。

      数据源环境

      标准模式工作空间支持选择访问开发或生产环境数据源,两种环境的区别,详情请参见必读:简单模式和标准模式的区别。本文示例选择生产环境

      数据表名称

      选择该数据源下需要生成API的数据表。本文示例选择rds_workshop_log数据源中的rpt_user_info_all_d表。

    2. 定义请求参数和返回参数。

      选择数据表后,选择参数区域会自动显示该表的所有字段,您可根据需要选择相应字段作为API的请求参数和返回参数。若需对字段进行排序,则可将目标字段添加至排序字段区域,进行相应调整。

      本文示例请求参数为uid,返回参数为该表的所有字段。

      说明

      单击右侧导航栏的请求参数返回参数,即可修改参数中字段的类型、示例值、默认值等配置。具体请根据实际需要使用。

步骤五:测试API

API生成后,需单击API编辑页面右上方的测试,验证API的请求与返回值是否符合预期。本文示例设置请求参数uid的值为0016359810821,测试返回结果。更多测试详情,请参见测试API测试API

步骤六:发布API

API提交发布后才可在其他服务进行调用。单击API编辑页面右上方的提交,选择对应版本进行发布。发布后的API,可在API网关查看。更多发布详情,请参见发布API发布API

步骤七:调用API

调用API目前支持如下认证方式,您可根据需要选择:

  • 简单身份认证:安全性低,适用于报表、数据大屏等场景。

  • 加密签名身份认证:安全性高,适用于应用开发场景。

  1. 单击数据服务顶部菜单栏的服务管理,进入服务管理页面。

  2. 在左侧导航栏选择API调用

    已发布的API将发布至API网关服务,您可通过API网关SDK调用API。详情请参见客户端调用API示例

步骤八:查看与管理API

您可在服务管理页面,查看已发布API,并执行相关管理操作。

区域

描述

API管理

服务管理 > API管理页面,可查看当前已发布的API、已获得授权及授权给他人的API。同时,可对拥有权限的API执行下线、授权、测试等操作。

API计量

服务管理 > API计量页面,可执行如下操作:

  • 计量大屏:从全局角度了解API的调用情况,包括API总数、状态码分布、错误码分布、总体计量及资源组的分配情况。

  • 计量详情:提供了各类可视化图表及统计数据,可针对单个API查看监控图表,包括API网关状态码、数据服务错误码、App请求次数、流量带宽、平均响应时间。

  • 日志分析:可使用日志分析功能对调用请求进行分析,当调用请求出现异常时,智能分析可帮助您快速定位问题,并给出诊断结果和建议。