通过AWS CDK的实现,AWS Amplify开发框架现在开始支持连接和查询MySQL与PostgreSQL数据库,对于要通过GraphQL API使用关系型数据库的开发者尤为有用。这项更新允许用户提供数据库端点和凭证,便可以替所有关系型数据库操作生成完整的GraphQL API,当数据库架构改变时,也能执行命令套用最新的表格架构更新。

Amplify是AWS所提供的工具和服务集合,支持iOS、Android和网页应用开发,可供开发人员快速构建全端应用程序。Amplify包含多种快速构建和部署应用程序的工具,诸如一键式环境配置和后端程序代码自动生成等功能。

AWS在Amplify加入对GraphQL的支持,带来数据处理和查询的灵活性,因为GraphQL让开发者精确指出需要的数据,减少过多或是不必要的数据传输,进而提高应用程序的性能和回应速度,这也使得开发人员可以更有效地操作数据,提高开发效率和用户体验。

而AWS Amplify GraphQL Transformer则协助开发人员,能够更容易地开发基于GraphQL的应用程序。Amplify  GraphQL Transformer是Amplify CLI工具链的一部分,官方解释,GraphQL Transformer产生可扩展的工作管线解析器,以路由GraphQL API请求,并且进行身份验证和底层数据源的通信等工作。

在过去,GraphQL Transformer主要支持Amazon DynamoDB作为数据源,因为DynamoDB和Amplify紧密集成,能够提供快速且灵活的NoSQL数据库服务。而在Amplify GraphQL Transformer推出第2版的时候,AWS扩大其数据源的支持,加入包括OpenSearch和Lambda函数,使得开发者可以根据需求选择适合的数据存储和处理服务。

但开发者对于通过GraphQL API使用关系型数据库,访问像是Amazon RDS或Amazon Aurora数据库也有不少需求,因此现在AWS更新Amplify集成AWS CDK,来扩展对关系型数据库的支持,让开发者不只可将Amplify GraphQL API的@model类型用于DynamoDB,也能够用于MySQL和PostgreSQL关系型数据库。

而这项更新之所以重要,是因为开发者能够将GraphQL API连接至这些受广泛使用的关系型数据库,进一步善用现有数据库资源,并将其集成到使用Amplify所开发的应用程序架构中。

不论是在VPC(Virtual Private Cloud)中抑或是网际网络公开访问,开发者只需要提供MySQL或PostgreSQL数据库资讯,Amplify就能够自动生成可供修改的GraphQL API。该API可以安全地连接数据库表格,并进行创建、读取、更新和删除等操作,开发者也可以重命名数据模型,使其更符合前端需求。

开发者现在只需编写简单的程序代码,就可以将现有的Amplify GraphQL身份验证规则添加至API,依据使用案例的需求,采取用户身份验证或是公开只读模式。AWS Amplify关联数据库支持,现在可搭配Amazon VPC或是AWS云计算外部所托管的MySQL和PostgreSQL数据库使用。