本小节将会为您介绍Hologres如何连接DataWorks数据服务并生成API。

DataWorks数据服务旨在为企业搭建统一的数据服务总线,提供快速将数据表生成数据API的能力,同时支持您将现有的API快速注册到数据服务平台以统一管理和发布,帮助企业统一管理对内对外的API服务。

Hologres与DataWorks深度集成,支持直接对接DataWorks数据服务,快速助力企业将高速查询的数据生成API提供对外服务。

Hologres对接DataWorks数据服务的操作步骤如下:

  1. 配置Hologres数据源

    在使用数据服务之前,需要配置Hologres数据源。登录DataWorks进入数据集成,单击左侧菜单栏数据源 > 数据源管理 > 新增数据源,选择PostgreSQL数据源

    填写PostgreSQL数据源相关配置信息:

    808
    配置项 内容 备注
    数据源类型 JDBC连接串模式 必选
    数据源名称 可自定义
    适用环境 开发、生产 根据项目情况选择
    JDBC URL jdbc:postgresql://Endpoint:Port/Database?preferQueryMode=simple&tcpKeepAlive=true
    • Endpoint:Hologres实例的经典网络地址
    • Port:Hologres实例的经典端口地址
    • Database:Hologres的DB名
    • ?preferQueryMode=simple&tcpKeepAlive=true:连接串的配置参数
    • 示例:jdbc:postgresql://demo-cn-shanghai-internal.hologres.aliyuncs.com:80/testdb?preferQueryMode=simple&tcpKeepAlive=true
    用户名 当前账号的Access ID 可在用户信息管理页面查看
    密码 当前账号的Access Key 可在用户信息管理页面查看
  2. 生成API

    数据源配置成功后,返回数据服务页面新建API,您可以根据业务情况来选择向导模式或者脚本模式生成数据API。

    809
  3. 测试API

    生成API的信息填写完成之后,填写右侧菜单栏的属性请求参数返回参数,单击保存,然后单击右上角测试,进入测试页面。检查需要测试的参数,单击开始测试,若右边返回结果为ok,则说明API测试通过,能正常发布。示例使用脚本模式测试如下:

    812

    同时您也可以使用数据服务的测试API模块来完成测试,详情请见测试API

  4. 发布API

    测试API完成之后,单击右上角的发布,将API发布至API网关,并上架至API市场。单击上方的服务管理,选择已发布的API,查看发布的API详细信息,更多发布API相关可以参见发布API

  5. 调用API

    若您需要调用已成功发布的API,可以参见调用API配置API至对应的应用。

常见报错排查

若是在使用数据服务过程,报错如下:
SQL state [XX000]; error code [0]; 
ERROR: Query could not generate plan by gporca : GPDB Expression type: Query Parameter not supported in DXL; 
nested exception is org.postgresql.util.PSQLException: 
ERROR: Query could not generate plan by gporca : GPDB Expression type: Query Parameter not supported in DXL]",
一般出现以上错误原因为JDBC URL连接串有问题,需要增加扩展参数:
  1. JDBC URL中加扩展参数,示例如下:
    jdbc:postgresql://endpoint:port/dbname?preferQueryMode=simple
  2. 或者在JDBC URL中加扩展参数,示例如下:
    jdbc:postgresql://endpoint:port/dbname?preferQueryMode=simple&tcpKeepAlive=true