云服务 PostgreSQL UDB,让 31 会议数据管理更高效可靠

ucloudcn · 2019年07月26日 · 最后由 hooopo 回复于 2019年07月26日 · 5679 次阅读

“PostgreSQL UDB 用在大数据分析上,查询效率更高。相比自建,其可靠性更高,方便运维维护。”

— 31 会议运维经理 汤雷

如何用好 PostgreSQL?

PostgreSQL 是业内一款十分流行的开源数据库,和 MySQL、MongoDB 等并列第一梯队。

PostgreSQL 支持多种表关联算法,有丰富的统计函数和语法,面对多维度的复杂查询和分析场景性能表现优异。而 MySQL 和 MongoDB 也各有亮眼特性和众多拥趸。

客观来说,这几种数据库各擅胜场,没有必要简单比较孰优孰劣,而是应该充分了解各自的特点,根据业务需求合理决策和巧妙搭配,从而获得最大化的效果。

UCloud 用户 31 会议的实践案例,可以帮助说明 PostgreSQL 在解决大数据量快速查询上成功应用的法门。

用户场景

31 会议是中国领先的场景营销科技服务商,隶属于上海八彦图信息科技有限公司。通过运用互联网、物联网、AI、大数据和云计算技术,并结合会议、展览、活动等面对面营销场景,其陆续推出了会议云、展览云、营销云三大产品体系以及 10 个行业场景方案。其中,31 会议云和 31 会展云作为一站式数字会务 SaaS 云平台,通过组件化、集成化、流程化实现会展全流程智慧化。

注:图片来自 31 会议

可以想见,SaaS 化的会议平台,内部模块众多且关联紧密,对数据库的需求呈现多样化和精细化的特点,所以首要的是调研了解市面上可获取的主流数据库类型。UCloud 能提供的 UDB 子类型如下表:

由于用户的业务特点,其对 OLTP 和 OLAP 都有重要的诉求,而截至目前累计服务 30 多万家客户、130 多万场会展的业务量,意味着数据库的存储量也很可观。

经过审慎考虑,用户同时选用三种数据库,针对性的满足不同目标。

其中,PostgreSQL 相比于 MySQL 在 OLAP 上的快速高效是其优势,也是用户选型 PostgreSQL 的重要砝码。在实际业务中,用户利用 PostgreSQL 来处理单表 500w 条记录规模的大数据量查询,并且快速流畅的将结果流转到下一业务环节。

自建集群还是 PostgreSQL UDB?

现在需要面对的选择,是利用云主机自己搭建 PostgreSQL 集群,还是直接使用 UCloud 现成的 PostgreSQL UDB 产品?

PostgreSQL UDB 具备高安全性和高可用性,并有备份创建、自动回档等功能。数据层面来讲,高可用主备和底层数据存储,具备数据冗余,可以保证数据零丢失。

基于产品层面提供的这些要素,31 会议选择了使用 PostgreSQL UDB 产品。让我们感到欣慰的是,在该用户使用 PostgreSQL 的一年多时间内,其实例没有发生过一次故障,后台对可靠性设计的机制抵御住了各种意外状况,没有影响用户正常使用,帮助其免去了紧急排障的烦恼。

如何保证高可靠?

为了充分保证可靠性,PostgreSQL UDB 产品化方面做了多项工作,例如:

1. 自动回档

这个功能是指,当用户出现人为误操作造成数据删除或者丢失时,只要之前 7 天的备份存在,就可以利用“秒级回档”功能将数据恢复到过去 7 天内的任意一秒,可以说是为用户使用 PostgreSQL 产品提供了一颗“定心丸”。

除了回档,用户也可通过“创建从库”功能来创建更多数据库的副本,进一步增加数据的安全性。

2. 高可用部署,自动容灾

PostgreSQL UDB 为确保服务的高可用性,采用主从复制架构,主数据库提供服务的同时,有另一套数据库服务不断同步数据并随时待命,UDB 后台的自动容灾模块可以在 PostgreSQL 实例服务出现问题时自动探测到,并自动容灾,保证数据库服务的稳定可靠。

实例切换时,容灾模块会把待命的备用 PostgreSQL 服务提升为主库,并且在原来主服务启动之后回退到从库。整个过程中用户不需要任何人工干预和配置修改,真正做到自动容灾。

图:PostgreSQL UDB 自动容灾示意图

3. 热升级,不停服在线扩容

PostgreSQL UDB 可依据业务的需要,动态按需扩展数据库资源。用户只需在控制台上进行几次点击,就可以动态调整实例的内存和磁盘大小,满足不同业务阶段对于数据库性能和存储空间的弹性需求。

PostgreSQL UDB 在资源扩容过程中,数据库服务可以做到基本不停服,只有秒级的闪断。这样大大减少了数据库扩容对于业务的影响时间,做到真正的“热升级”。

目前,PostgreSQL UDB 在北京、上海、广州和香港等多地上线服务,具体部署情况如下:

版本有点低

需要 登录 后方可回复, 如果你还没有账号请 注册新账号