2019年3月19日,阿里云RDS PostgreSQL数据库GPU规格版本正式上线,开启了RDS异构计算并行加速之路。该版本在RDS(关系型数据库服务)的云基础设施层面首次完成了与阿里云异构计算产品的适配,实现了PostgreSQL时空引擎Ganos在空间图形图像处理上的并行计算加速,成为国内第一个将GPU应用于商业空间信息领域的数据库。

1. GPU并行计算

GPU(Graphic Processing Unit)是一种高并行架构图形处理器,其最突出的特点就是计算核心多,相比传统CPU四个、八个等计算核心, GPU的计算核心可以多达到几千个,加上数据高速缓存和流控制,这样的结构非常适合对计算密集型且易于并行处理的数据进行计算加速。GPU最初是被设计用来专门处理并行图形计算问题的,近年来,随着GPU在人工智能和高性能计算领域应用越来越多,GPU已经成了更强大且更广义的处理器代名词。

伴随该版本的发布,RDS在云基础设施层面首次完成了GPU计算框架的适配,为云上数据库构建异构计算并行环境建立了重要基础。由于空间图形图像数据体量大、计算复杂,首期GPU加速能力主要与阿里云数据库时空引擎 Ganos结合,大幅提升空间数据处理性能。PostgreSQL时空引擎 Ganos为一种云数据库增值服务,为各类时空数据提供云上的高效存储、查询和分析计算服务。

系统提供了CPU与GPU异构计算框架,能自动检测GPU环境,并建立基于规则的优化方法选择评估CPU计算、GPU计算或混合计算,用户做到无感知。在空间计算方面,建立了GIS空间并行模型(如栅格数据的Raster-Chunk-Cell框架)与CUDA(显卡厂商NVIDIA推出的运算平台)并行模型的最佳适配,达到减少GPU任务调度,最大化利用GPU资源的目的。

2. 典型应用场景

2.1 空间数据加速上云

空间栅格型数据(遥感影像、高程模型等)分幅数多,体量大,上云速度慢。通过改良基础算法提高云数据库写入速度是用户比较关心的应用场景。以栅格数据的重采样算法为例,三次卷积采样以及更高级的重采样算法成像质量好,但运算量会成倍增加。因此,提升基础算法的处理效率是加快栅格数据处理应用的关键。按输出10000*10000像素大小的遥感影像数据来计算,需要独立运行1亿次采样算法,属于计算密集型操作,且栅格数据呈矩阵模型,可充分利用GPU并行加速能力提高重采样效率。

2.2 影像实时动态投影

在遥感空间应用中,因数据来源或采集方式不同,往往存在坐标系统不一致的情形。当需要叠加统一显示时,要么事先转成同一坐标系,要么进行实时动态投影。前者会存在数据冗余问题,而后者更为高效,但往往因动态投影计算量大,在CPU环境下往往很难达到实时显示效果。通过GPU并行计算提升动态投影计算效能可解决这一问题。

2.3 移动对象数据处理

随着互联网出行、位置感知技术的快速发展,移动对象(飞机、船、车、行人等)产生的数据量越来越多,大量的轨迹数据的接入、更新和显示,给数据传输和存储带来很大的挑战。通过借助GPU并行计算能力,对移动对象的轨迹数据进行实时动态抽稀处理,可达到减少存储量、快速传输显示的目的。

3. 加速性能评估

经对比测试,以遥感影像三次卷积重采样纯算法加速为例,GPU并行计算较CPU平均提升50倍左右,且随数据量越大、计算越复杂,提升效果越明显。从全链路角度,当数据存储在SSD云盘时,遥感影像入库(含索引创建)GPU较CPU快9-15倍;当数据存储在OSS(Object Storage Service,对象存储服务)时,数据入库全流程GPU较CPU加速4-7倍。

4. 使用途径

阿里云RDS for PostgreSQL数据库GPU规格版本已经在公有云上线,目前仅在华东2(上海)开放。用户购买时,请选择PG10基础版,并在规格栏选择GPU加速机型,系统已经默认带有GPU环境。用户使用时不需要设置任何参数即可体验GPU加速计算带来的性能体验。

更多关于RDS for PostgreSQL请戳链接:

产品入口:

https://www.aliyun.com/product/rds/postgresql

GPU使用进阶:

https://help.aliyun.com/document_detail/107560.html?spm=a2c4g.11174283.6.1043.363c4c228eeiuy


本文作者:ganos

阅读原文

本文为云栖社区原创内容,未经允许不得转载。

50倍时空算力提升,阿里云RDS PostgreSQL GPU版本上线的更多相关文章

  1. 再也不怕数据丢失!阿里云RDS MySQL 8.0上线回收站功能

    背景 MySQL 在生产环境使用过程中,会伴随着开发和运维人员的误操作,比如 DROP TABLE / DATABASE,这类 DDL 语句不具有可操作的回滚特性,而导致数据丢失,AliSQL 8.0 ...

  2. 赋能时空云计算,阿里云数据库时空引擎Ganos上线

    随着移动互联网.位置感知技术.对地观测技术的快速发展,时空信息已从传统GIS行业渗透到大众应用及各行各业.从静态POI(兴趣点)到APP位置信息,从导航电子地图到车辆行驶轨迹,从卫星影像到三维城市建模 ...

  3. 阿里云RDS for SQL Server使用的一些最佳实践

    了解RDS的概念 这也是第一条,也是最重要的一条,在使用某项产品和服务之前,首先要了解该产品或服务的功能与限制,就像你买一个冰箱或洗衣机,通常也只有在阅读完说明书之后才能利用起来它们的所以功能,以及使 ...

  4. 阿里云 RDS 数据库又发 CPU 近 100% 的“芯脏病”

    最近云界发生了2件事,一件是大事,一件是小事,大事是阿里云与微软合作推出了开放应用模型 Open Application Model(OAM),小事是由于微软 SQL Server 在阿里云上水土不服 ...

  5. 阿里云RDS与ECS服务器数据库做主从

    阿里云RDS与ECS服务器数据库做主从 [精] 里云RDS(数据库)基于飞天大规模分布式计算和存储能力,提供超高性价比的单机版实例,同时利用读写分离横向扩展读能力,满足网站类的业务需求.提供稳定.高性 ...

  6. 强强联合 阿里云 RDS for SQL Server 与 金蝶 K/3 WISE 产品实现兼容适配

    强强联合 阿里云 RDS for SQL Server 与 金蝶 K/3 WISE 产品实现兼容适配,原K/3 WISE用户通过简单配置就可以无缝搭配RDS SQL Server使用,不需再费时费力自 ...

  7. 为更强大而生的开源关系型数据库来了!阿里云RDS for MySQL 8.0 正式上线!

    2019年5月29日15时,阿里云RDS for MySQL 8.0正式上线,使得阿里云成为紧跟社区步伐,发布MySQL最新版本的云厂商.RDS for MySQL 8.0 产品是阿里云推出的 MyS ...

  8. 记阿里云 RDS MySQL 的一个大坑

    花了一个下午的时间,终于把一个阿里云 RDS MySQL 的一个大坑填上了,解决方法令人匪夷所思!绝对会让各位看官感到大吃一惊,阿里云 RDS MySQL 居然有这样 xx 的大坑! 问题 最近应业务 ...

  9. 抱歉!15:44-16:39阿里云RDS故障造成全站不能正常访问

    非常非常抱歉!2016年3月7日15:44-16:39,由于阿里云RDS(云数据库)故障,造成全站不能正常访问,给您带来了很大很大的麻烦,恳请您的谅解! 故障是在15:44开始出现的,应用日志中出现大 ...

随机推荐

  1. 嘴巴题6 BZOJ3450JoyOI1952 Easy

    Time Limit: 10 Sec Memory Limit: 128 MB Submit: 936 Solved: 698 [Submit][Status][Discuss] Descriptio ...

  2. php 随意参数方法的使用

    1, 用到的PHP函数: func_get_arg() / func_get_args()/ func_num_args 2, func_get_arg(index) :根据索引取得参数具体值     ...

  3. parameter– tRPRE and tRPST

    DDR读数据有效之前,有一段时间DQS(DQS#)需为低(高),此段时间即为read preamble,tRPRE. 同理,读数据结束之前,某段时间为read postamble,tRPST.

  4. Spring注解驱动开发(四)-----aop、声明式事务

    AOP 概念 指在程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式:-----基于动态代理 一个aop示例 1.导入aop模块:Spring AOP:(spring-aspects ...

  5. HBase 三维模型解析

    总结下一直想写hbase的实践经验,在用hbase的过程中,我们都知道,rowkey设计的好坏,是我们能最大发挥hbase的架构优势,也是我们是否正确理解hbase的一个关键点.闲话少说,进入正题. ...

  6. 2019-1-29-Roslyn-使用-WriteLinesToFile-解决参数过长无法传入

    title author date CreateTime categories Roslyn 使用 WriteLinesToFile 解决参数过长无法传入 lindexi 2019-01-29 16: ...

  7. mybatis框架学习:

    一.什么是框架 它是我们软件开发中的一套解决方案,不同的框架解决的是不同的问题 使用框架的好处: 框架封装了很多的细节,使开发者可以使用极简的方式实现功能 大大提高开发效率 二.三层框架 表现层: 用 ...

  8. A Simple Problem with Integers POJ - 3468 (线段树)

    思路:线段树,区间更新,区间查找 #include<iostream> #include<vector> #include<string> #include< ...

  9. springMVC--动态验证码实现

    在网站开发过程中我们一般都会为了防止用户连续提交都会提供验证码的功能,简单来说就是生成一个动态图片,在图片中保存一些校验信息,将校验信息放到session中和用户提交的验证码信息进行对比,如果出现错误 ...

  10. CHARINDEX函数

    CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置.CHARINDEX函数调用方法如下:    CHARINDEX ( expression1 , expression2 [ , st ...