腾讯云数据库 PostgreSQL(TencentDB for PostgreSQL)能够让您在云端轻松设置、操作和扩展目前功能最强大的开源数据库 PostgreSQL。腾讯云将负责绝大部分处理复杂而耗时的管理工作,如 PostgreSQL 软件安装、存储管理、高可用复制、以及为灾难恢复而进行的数据备份,让您更专注于业务程序开发。 

云数据库 PostgreSQL 能够让您在云端轻松设置、操作和扩展目前功能最强大的开源数据库 PostgreSQL,腾讯云将负责绝大部分处理复杂而耗时的管理工作,如 PostgreSQL 软件安装、存储管理、高可用复制、以及为灾难恢复而进行的数据备份,让您更专注于业务程序开发。 

功能

腾讯云 TencentDB for PostgreSQL 是集高性能、高可用、高安全防护、可扩展、易用型为一体的数据库托管服务。

轻松托管部署

预配置参数

腾讯云可以让您在几分钟之内启动 PostgreSQL 实例并连接应用程序,而无需其他配置。默认配置具有通用性的参数,且可在管理中心的参数设置中实时修改,帮助您摆脱繁重和复杂的安装配置过程,提高您的运维效率。

监控与告警

腾讯云提供了 PostgreSQL 的关键运行指标,包括 CPU 利用率、存储容量使用率、磁盘 I/O 等性能监控数据,您可以在管理中心查看,且无需额外付费,帮助您快速定位和解决问题。自定义指标告警阈值使您无需时刻关注监控,通过电子邮件或短信即可及时了解当前异常。

更高性能

超高 IOPS

腾讯云通过 PCI-E SSD 配置的硬盘,提供至少高于 SATA 三倍的 QPS 配置,帮助您更轻松满足业务高并发需求。

内核优化

通过修改 PostgreSQL 内核,优化如 Seqscan、 Hashjoin、 Nestloop 等算子,同等测试环境下,性能提升超4倍,让您以更少的数据库实例支撑更高的并发请求量。

更高可用性

主备架构部署

为确保可用性,云数据库 PostgreSQL 默认为您提供一主一备架构的部署模式,默认启动同步复制(Synchronous Replication),主机故障秒级切换到备机,使您的业务不中断,避免出现数据错乱、丢失等问题。

节点故障自动恢复

腾讯云为您的 PostgreSQL 数据库和底层物理设备提供7 X 24小时持续监控,发生故障时,将自动重启数据库及相关进程,如果节点崩溃无法恢复,则通过备份文件自动重建节点,该功能持续保障数据库服务能力,使您免于人工值守。

自动备份与回档恢复

云数据库 PostgreSQL 将定时备份您的数据库实例,自动备份保留期可配置为7天,自动备份存储在统一的安全备份存储内,提供99.99999%的数据持久性;您可以对实例进行回档操作,将数据库恢复到备份保留期内指定时间点的状态,精确到秒,恢复过程在临时实例中进行,不会影响现网实例;业务出现异常时,自动备份和恢复能力将让您的业务损失减少到最小。

多重安全防护

云数据库为每一个数据库实例提供安全防护能力,无需您单独购买;在数据库物理设备前通过安全模块提供防 SQL 注入、防暴力破解等能力;如果开通外网访问,也提供防 DDoS 攻击能力,抵御各种攻击流量,保证您的业务正常运行,减少攻击带来的业务中断和损失。

一键升级

为满足不断发展的业务数据存储需要,腾讯云最大可支持6TB容量、480GB内存,您可以通过腾讯云管理中心,实现一键升级到目标规格,而不需要您进行额外操作。升级后的实例将继承原有实例的 IP 和全部配置,升级过程仅在切换时产生秒级闪断,免于长时间停机,可随时满足业务弹性需求。

插件扩展

云数据库 PostgreSQL 支持的插件类型如下:

  • POSTGIS:快速支持空间地理信息,如地图、三维模型。

  • PL/pgSQL:PG 最常用的存储过程编程语言,与 Oracle 的 PL/SQL 类似。

  • orafce:兼容 oracle 语法函数的开源插件。

  • PL/Tcl:使用类似 C 语言语法的存储过程编程语言。

  • PL/Perl:使用 Perl 语法的存储过程编程语言。

  • hstore:使数据能以 Key/Value 方式高效存储和访问的数据类型插件。

  • postgres_fdw:将远程 PG 数据库对象映射到本地数据,从而可以像本地数据一样访问它们的扩展插件。

  • pg_stat_statements:收集 SQL 的运行信息(执行时间、次数等),存入系统表供监控调优的工具类插件。

更多插件,例如:pgrowlocks、citextsslinfo、uuid-ossp、hstore、postgres_fdw、pgrowlocks、citext、btree_gin、ltree、btree_gist、pgcrypto、chkpass、cube、pg_trgm、dblink、dict_int、tablefunc、fuzzystrmatch、tsearch2、unaccent、intarray、isn、intagg。

PostgreSQL 简介

PostgreSQL 是全球最强大的开源数据库,支持主流开发语言,包括 C,C++,Perl,Python,Java,Tcl 以及 PHP 等,能够对 SQL 规范的完整实现,以及丰富多样的数据类型支持,包括 JSON 数据、IP 数据和几何数据等,而这些能力大部分商业数据库都无法全面支持。在过去的若干年间,PostgreSQL 正在以飞快的速度发展,目前已经广泛用在包括地球空间、移动应用、数据分析等各个行业,已成为众多企业开发人员和创新公司的首选。

腾讯云云数据库 PostgreSQL 简介

云数据库 PostgreSQL 能够让您在云端轻松设置、操作和扩展目前功能最强大的开源数据库 PostgreSQL,腾讯云将负责绝大部分处理复杂而耗时的管理工作,如 PostgreSQL 软件安装、存储管理、高可用复制、以及为灾难恢复而进行的数据备份,让您更专注于业务程序开发。

目前,腾讯云已经提供 PostgreSQL9.3.5,9.5.4(内核优化)以及10.4版本。

1.更强的功能

过去的几年,PostgreSQL 已成为商用的首选开源关系数据库。

  • PostgreSQL遵循BSD协议,这意味着使用 PostgreSQL 无任何限制。

  • 可支持 C、C++、Java、PHP、Python 及 Perl 等,使您的业务开发更简单更易用。

  • PostgreSQL 是架构、语法、数据类型等与 Oracle 最接近的开源数据库。

  • 兼容 SQL 标准:SQL2003,支持 SQL2011 的主要特性;

  • 除了支持传统 SQL 的 LIKE 操作符、还支持 SQL99 新增的 SIMILAR TO 操作符和 POSIX 风格的正则表达式。

  • 丰富的数据类型:几何、网络地址、XML、JSON、RANGE、数组等。

  • 支持复合类型(自定义数据类型)。

  • 支持复杂的多表 JOIN 查询 SQL:JOIN 算法支持 hash join、merge join 等。

  • 支持窗口函数,可以改成复杂分析函数,因为分析函数包括了窗口函数。

  • 支持函数索引、部分(行)索引、自定义索引、全文索引。

  • 多进程的架构,更加稳定,单机可以支持更高访问量的数据库。

  • 有功能强大,性能优秀的插件,如 PostGIS 是一个空间数据库扩展程序插件,它增加了对地理对象的支持,允许您以 SQL 运行位置查询。

  • 达到商用级的数据强一致,基于 Synchronous Replication 复制技术,数据做到零丢失,即使类似于资金交易系统,也可以使用 PostgreSQL。

2.更高的性能

可适用于 OLAP 或 OLTP 场景的高性能数据库

  • 可与商业数据库媲美的查询优化器,支持所有主流多表连接查询(如 Nest loop、hash join、sort merge join 等),例如10万乘10万的表 join 是 MySQL 的100倍以上,可更快的从更多的表中获取结果,活动更精准的分析。

  • 基于 PCI-e SSD 存储,最大 QPS 可达23万以上,让您以更少的数据库数量支撑更高的业务并发请求量。

  • 大量性能视图,可查看正在执行 SQL、当前锁等待、表扫描和索引扫描方面等性能数据,帮助您更快速精准定位性能问题。

3.更便捷管理

  • 腾讯云可以让您在几分钟之内启动 PostgreSQL 实例并连接应用程序,而无需其他配置。默认配置具有通用性的参数,并可在管理中心参数设置实时修改。帮助您摆脱繁重和复杂的安装配置过程,提高您的运维效率。

4.便捷监控

提供了 PostgreSQL 的关键运行指标,包括 CPU 利用率、存储容量使用率、I/O 活动等性能监控数据,您可以在管理中心查看,且无需额外收费,帮助您快速定位和解决问题。自定义指标告警阈值,您无需时刻关注监控,而可通过电子邮件或短信及时了解当前异常。

5.超高性能

腾讯云通过优化 PostgreSQL 内核,提高内置算子性能,通过性能超高的 PCI-E SSD 配置的硬盘,提供至少高于 SATA 三倍的 QPS 的配置。腾讯云 TencentDB for PostgreSQL 默认为您提供一主一备架构的部署模式,默认启动同步复制(Synchronous Replication),使您的业务不中断,避免出现的数据错乱、丢失的等问题。

6.更强保障

节点故障后,集群调度将立即开始自动重试恢复节点。当您的数据出现严重问题时,能快速恢复到某个正常时间点,以应对升级故障、灾难恢复等情况。云数据库默认为每个数据库都提供了多重安全防护,无需单独购买即可拥有。

7.可扩展

您可以通过腾讯云管理中心,实现一键升级到目标规格,而不需要您进行额外操作。升级后的实例将继承原有实例的IP和全部配置,升级过程中,仅在切换过程产生1秒的闪断,而不需要长时间停机即可随时满足业务弹性需要。现有 PostgreSQL 如果还是无法承载您的业务发展,仅需少量改动甚至无需改动业务,即可支撑无限容量,无瓶颈的服务海量用户。

轻松托管部署

腾讯云可以让您在几分钟之内启动 PostgreSQL 实例并连接应用程序,而无需其他配置。默认配置具有通用性的参数,并可在管理中心参数设置实时修改。帮助您摆脱繁重和复杂的安装配置过程,提高您的运维效率。

便捷监控

提供了 PostgreSQL 的关键运行指标,包括 CPU 利用率、存储容量使用率、I/O 活动等性能监控数据,您可以在管理中心查看,且无需额外收费,帮助您快速定位和解决问题。自定义指标告警阈值,使您无需时刻关注监控,而可通过电子邮件或短信及时了解当前异常。

超高性能

腾讯云通过 PCI-E SSD 配置的硬盘,提供至少高于 SATA 三倍的 QPS 的配置。腾讯云 TencentDB for PostgreSQL 默认为您提供一主一备架构的部署模式,默认启动同步复制(Synchronous Replication),使您的业务不中断,避免出现的数据错乱、丢失的等问题。

更强保障

节点故障后,集群调度将立即开始自动重试恢复节点。当您的数据出现严重问题时,能快速恢复到某个正常时间点,以应对升级故障、灾难恢复等情况。您也可以通过控制台提供的备份功能进行自主数据恢复,详情见 安全管理-信息安全说明-备份与恢复。云数据库默认为每个数据库都提供了多重安全防护,无需单独购买即可拥有。

可扩展

您可以通过腾讯云管理中心,实现一键升级到目标规格,而不需要您进行额外操作。升级后的实例将继承原有实例的 IP 和全部配置,升级过程中,仅在切换过程产生1秒的闪断,而不需要长时间停机即可随时满足业务弹性需要。现有 PostgreSQL 如果还是无法承载您的业务发展,仅需少量改动甚至无需改动业务,即可支撑无限容量,无瓶颈的服务海量用户。

1.企业数据库

如 ERP、交易系统、财务系统涉及资金、客户等信息,数据不能丢失且业务逻辑复杂,选择 PostgreSQL 作为数据底层存储,一是可以帮助您在数据一致性前提下提供高可用性,二是可以用简单的编程实现复杂的业务逻辑。

2.含 LBS 的应用

大型游戏、O2O 等应用需要支持世界地图、附近的商家,两个点的距离等能力,PostGIS 增加了对地理对象的支持,允许您以 SQL 运行位置查询,而不需要复杂的编码,帮助您更轻松理顺逻辑,更便捷的实现 LBS,提高用户粘性。

3.数据仓库和大数据

PostgreSQL 更多数据类型和强大的计算能力,能够帮助您更简单搭建数据库仓库或大数据分析平台,为企业运营加分。

4.建站或 App

PostgreSQL 良好的性能和强大的功能,可以有效的提高网站性能,降低开发难度。

特对本文做如下声明

  1. 本文档意在向客户介绍腾讯云对于 PostgreSQL 产品、服务的安全概况,部分产品、服务的内容可能有所调整。如您对此有强制要求,建议您与腾讯云以书面商业合同(SLA)进行约定。否则,腾讯云对本文档内容不做任何明示或模式的承诺或保证;

  2. 安全特性范围较广,本文仅涉及“部分”技术安全要点;

  3. 本文档不作为国家或行业信息安全相关标准、要求参考文档;

  4. 本文经过可阅读性加工,加之笔者能力有限,若存在描述不准确的地方请参考第1点。

  5. 文档解释权归腾讯云所有。

1、概述

腾讯云 PostgreSQL 通过下列认证并符合下列认证的安全要求

  • ISO22301 认证

  • ISO27001 认证

  • ISO20000 认证

  • ISO9001 认证

  • 可信云服务认证

  • 信息安全等级保护(三级)

  • STAR 认证

PostgreSQL 部分功能设计也参考:

  • GBT 20273-2006 信息安全技术 数据库管理系统安全技术要求(二级以上)

  • JRT 0072-2012 金融行业信息系统信息安全等级保护测评指南(四级)

2、腾讯云 PostgreSQL 服务安全保障(运维安全说明)

2.1 综述

PostgreSQL 的管理安全与技术安全要求符合国家信息安全等级保护(三级),部分要求达到金融行业信息安全(四级)标准。

2.2 内部人员、系统身份鉴别

为提高数据库主机系统安全性,保障各种运维的安全性,腾讯云进行一系列的加固措施,包括但不限于:

  • 对登录操作系统和数据库系统的用户进行身份标识和鉴别,且保证用户名的唯一性;

  • 根据基本要求配置用户名/口令;口令必须具备采用 3 种以上字符、长度不少于8位并定期更换;

  • 启用登录失败处理功能,登录失败后采取结束会话、限制非法登录次数和自动退出等措施。

  • 远程管理时通过腾讯企业IT监控下的访问方式,提供内部风控审计,敏感操作均进行加密。

  • 对数据库主机管理员登录运维系统进行双因素认证方式,即采用动态令牌+密码进行身份鉴别

2.3 内部人员、系统访问控制

腾讯云云数据库管理系统和管理人员提供自主访问控制方案,包括但不限于:

  • 内部运维人员和系统全部基于腾讯云安全策略进行控制(满足审核要求);

  • 主体的粒度为用户级,客体的粒度精确到数据库表级;

  • 提供严格的代码管理和访问控制。

  • 高危系统仅腾讯内网(开发网)可访问;与互联网严格物理隔离。

2.4 内部安全审计

提供全面的安全审计和风控机制:审计功能包括但不限于数据库操作审计、管理系统操作审计、文件操作审计、外挂设备操作审计、非法外联审计、IP 地址更改审计、服务与进程审计等。审计范围覆盖到服务器上的每个操作系统用户和数据库用户;例如包括:腾讯云管理员行为、系统资源的异常使用和重要系统命令的使用等系统内重要的安全相关事件;审计记录包括事件的日期、时间、类型、主体标识、客体标识和结果等;审计记录保存 1 年以上,且存储在安全等级更高的位置,避免受到未预期的删除、修改或覆盖等。

  • 管理系统操作审计:腾讯云对内外管理系统的操作均记录详细操作日志,以便于风险追溯。

  • 定期风险评估:腾讯云安全团队定期对数据库运维管理进行安全评估。

2.5 内部入侵防范

针对数据库主机的入侵防范,腾讯云已经从多个角度进行处理:

  • 入侵检测系统可以起到防范针对数据库主机的入侵行为;

  • 部署漏洞扫描并定期进行系统安全性检测;

  • 部署终端安全管理系统,开启补丁分发功能模块及时进行系统补丁升级;

  • 操作系统的安装遵循最小安装的原则,仅安装需要的组件和应用程序,关闭多余服务等;

  • 另外根据系统类型进行其它安全配置的加固处理。

2.6 备份与恢复

腾讯云数据库默认提供数据的备份与恢复功能。全量备份文件默认每天凌晨备份,留存 7 天(后续会提供自动备份、备份时长可选、COS 备份服务等功能);xlog 文件会在用户进行操作时自动备份,留存 7 天。备份文件可以在控制台-【实例管理】-【备份管理】中进行下载,如下图所示(全量备份文件在红色框的备份列表中,增量备份所需的 xlog 文件在绿色框的 xlog 列表中)。通过全量备份文件与 xlog 可以进行数据的恢复,详情见 在云服务器上恢复 PostgreSQL 的数据 文档。
www.ksyuwei.cn

2.7 客体安全重用

若客户退还设备或故障更换设备,腾讯云将及时清除剩余信息,从而保证用户的鉴别信息、文件、目录、数据库记录等敏感信息所在的存储空间(内存、硬盘)被及时释放或再分配给其他用户前得到完全清除。

2.8 抗抵赖

腾讯云内部运维人员登录系统,均通过双因素认证和抗抵赖方案,相关人员均签订了保密协议。

www.ksyuwei.cn

www.ksyuwei.cn

www.ksyuwei.cnwww.ksyuwei.cn

www.ksyuwei.cn


www.ksyuwei.cn

www.ksyuwei.cn

为什么没有插入数据,但已用存储空间会增加?

由于 PostgreSQL 的 MVCC 机制:

  1. 被 DELETE 的行并不会直接物理删除。

  2. Update 的行是通过插入新行实现的,过期数据也不会直接物理删除。因此,即使没有插入数据也会存在存储数据量增加的情况。

当前云数据库已默认开启 autovacuum 配置参数,内核会自动回收过期数据,因此已用存储空间会在系统回收过期数据后自动释放出来。用户也可以手动执行 VACUUM 命令来回收过期数据(执行该命令后存储空间统计并不会立即下降,而是会把这些过期数据回收并标记为可重复利用)。如果想完全清理数据,可考虑使用带参数的 VACUUM FULL 命令(该命令会锁表,强烈建议只在维护期间使用)。
VACUUM 命令使用请参见 PostgreSQL 官方文档。

为什么 CPU 利用率会超过100%?

PostgreSQL 默认使用闲时超用的策略,即允许您的业务抢占一部分额外的空闲的CPU资源。因此,当您的实例超过默认给您分配的 CPU 核数时,您的 CPU 利用率监控视图会显示超过100%,这个是正常的。
若您的 CPU 负载长期高于60%,则建议您尽快升级数据库。

为什么磁盘占用空间大于实际数据量?

更新导致 xlog 日志剧增,系统来不及归档和删除,占用了磁盘空间。或者查询操作含有大数据量的排序、连接等操作,处理过程中产生临时表并溢出到磁盘,短时间内造成大量空间占用。

如何开启或使用插件?

腾讯云 PostgreSQL 已支持大部分常用插件,可直接使用。而部分插件开启需要超级管理员权限,可到腾讯云控制台开启。或联系腾讯工作人员说明实例 ID 和插件名称开启。

PostgreSQL 重启需要注意什么?

  • 由于数据库本身对于业务的重要性,我们建议您谨慎重启,重启前尽量提前断开服务器与数据库连接,并停写数据。

  • 一般运行重启操作后需要十几秒到几分钟时间,重启期间实例将无法正常提供服务。

  • 重启数据库有几率失败,这是正常现象,如果重启时间超过10分钟建议 提交工单 咨询。

  • 重启实例不会改变实例的物理特性,因此实例的公网 IP、内网 IP、存储的任何数据都不会改变。

  • 重启后,业务需要重连数据库,请确保您的业务有重连机制。


  • 名称: 云数据库TencentDBforPostgreSQL
  • 关键词: 云数据库PostgreSQL,关系型数据库,开源数据库,腾讯云