GaussDB怎么样

了解云数据库 GaussDB

  • 超高可用

    支持跨机房、同城、异地、多活高可用,支持分布式强一致,数据0丢失

    支持跨机房、同城、异地、多活高可用,支持分布式强一致,数据0丢失

  • 卓越性能

    极致性能和准线性扩展,PB级存储和1000+节点,企业级负载下性能卓越

    极致性能和准线性扩展,PB级存储和1000+节点,企业级负载下性能卓越

  • 安全开放

    核心代码拥有100%知识产权,单机主备开源,打造openGauss开放生态

    核心代码拥有100%知识产权,单机主备开源,打造openGauss开放生态

  • 企业级特性

    智能诊断,索引推荐等丰富的企业级特性,有效提升客户开发运维效率

    智能诊断,索引推荐等丰富的企业级特性,有效提升客户开发运维效率

高斯数据库搭建

常用概念

实例

GaussDB的最小管理单元是实例,一个实例代表了一个独立运行的数据库。用户可以在控制台创建和管理GaussDB实例。实例的状态、规格、存储类型、版本。

实例版本

GaussDB目前支持1.4、2.0、2.3版本。其中,2.0版本为白名单开放。如需配置白名单权限,您可以在管理控制台右上角,选择工单 > 新建工单,提交开通白名单的申请。

实例类型

GaussDB支持分布式版和主备版实例。分布式形态能够支撑较大的数据量,且提供了横向扩展的能力,可以通过扩容的方式提高实例的数据容量和并发能力。主备版适用于数据量较小,且长期来看数据不会大幅度增长,但是对数据的可靠性,以及业务的可用性有一定诉求的场景。

实例规格

数据库实例各种规格(vCPU个数、内存(GB))请参考数据库实例规格。

CN

Coordinator Node,负责数据库系统元数据存储、查询任务的分解和部分执行,以及将DN中查询结果汇聚在一起。

DN

Data Node,和CN对应的概念。负责实际执行表数据的存储、查询操作。

自动备份

创建实例时,GaussDB服务默认开启自动备份策略,实例创建成功后,您可对其进行修改,GaussDB服务会根据您的配置,自动创建数据库实例的备份。

手动备份

手动备份是由用户启动的数据库实例的全量备份,它会一直保存,直到用户手动删除。

区域和可用区

我们用区域和可用区来描述数据中心的位置,您可以在特定的区域、可用区创建资源。

区域(Region):从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。

可用区(AZ,Availability Zone):一个AZ是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个实例。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。

目前,华为云已在全球多个地域开放云服务,您可以根据需求选择适合自己的区域和可用区。更多信息请参见华为云全球站点

项目

Project用于将OpenStack的资源(计算、存储和网络资源)进行分组和隔离。Project可以是一个部门或者一个项目组。一个帐户中可以创建多个Project。

快速入门

操作步骤

表1 相关操作及参考手册

相关操作
参考章节

登录管理控制台

登录管理控制台

创建实例

购买实例

连接实例

根据业务场景选择连接方式:

使用客户端连接实例

使用驱动连接实例

GaussDB数据库搭建开发设计原则

GaussDB数据库搭建开发设计原则

本开发设计建议原则约定GaussDB开发过程中应当遵守的设计规范,输出高效的业务SQL代码

本开发设计建议约定GaussDB开发过程中应当遵守的设计规范,输出高效的业务SQL代码

  • 为什么要遵守GaussDB数据库搭建开发设计原则?

    用户应当遵守GaussDB开发设计规则,能够保证业务的高效运行;违反这些规则,将导致业务性能的大幅下降或某些业务逻辑错误。在GaussDB开发过程中客户需要注意的细则。用于标识容易导致客户理解错误的知识点(实际上遵守SQL标准的SQL行为),或者程序中潜在的客户不易感知的默认行为。

  • 对象命名原则

    GaussDB开发过程中,数据库对象命名需要满足约束:非时序表长度不超过63个字节,时序表长度不超过53个字符,以字母或下划线开头,中间字符可以是字母、数字、下划线、$、#。避免使用保留或者非保留关键字命名数据库对象。同时避免使用双引号括起来的字符串来定义数据库对象名称,除非需要限制数据库对象名称的大小写。数据库对象名称大小写敏感会使定位问题难度增加。

  • 对象设计原则

    GaussDB开发中可以使用Database和Schema实现业务的隔离,区别在于Database的隔离更加彻底,各个Database之间共享资源极少,可实现连接隔离、权限隔离等,Database之间无法直接互访。Schema隔离的方式共用资源较多,可以通过grant与revoke语法便捷地控制不同用户对各Schema及其下属对象的权限。从便捷性和资源共享效率上考虑,推荐使用Schema进行业务隔离。建议系统管理员创建Schema和Database,再赋予相关用户对应的权限。

  • 表设计原则

    GaussDB是分布式架构。数据分布在各个DN上。总体上讲,GaussDB开发良好的表设计需要遵循以下原则:

    1、将表数据均匀分布在各个DN上。

    2、将表的扫描压力均匀分散在各个DN上。

    3、减少需要扫描的数据量。通过分区表的剪枝机制可以大幅减少数据的扫描量。

    4、尽量减少随机I/O。通过聚簇/局部聚簇可以实现热数据的连续存储,将随机I/O转换为连续I/O,从而减少扫描的I/O代价。

    5、尽量避免数据shuffle。

  • 字段设计原则

    GaussDB开发在字段设计时,基于查询效率的考虑,一般遵循以下原则:

    1、尽量使用高效数据类型:择数值类型时,在满足业务精度的情况下,选择数据类型的优先级从高到低依次为整数、浮点数、NUMERIC。

    2、当多个表存在逻辑关系时,表示同一含义的字段应该使用相同的数据类型。

    3、对于字符串数据,建议使用变长字符串数据类型,并指定最大长度。请务必确保指定的最大长度大于需要存储的最大字符数,避免超出最大长度时出现字符截断现象。除非明确知道数据类型为固定长度字符串,否则,不建议使用CHAR(n)、BPCHAR(n)、NCHAR(n)、CHARACTER(n)。

GaussDB数据库搭建

快速使用GaussDB

  • 收起 展开
    购买GaussDB 收起 展开

    GaussDB支持“按需计费”和“包年/包月”计费方式购买。您可以根据业务需要定制相应计算能力和存储空间的GaussDB实例。

  • 收起 展开
    使用客户端连接实例 收起 展开

    GaussDB提供使用内网、公网和数据管理服务(Data Admin Service,简称DAS)的连接方式。

  • 收起 展开
    使用驱动连接实例 收起 展开

    GaussDB支持使用JDBC、ODBC等驱动连接实例。

  • 收起 展开

    GaussDB具备企业级复杂事务混合负载能力,同时支持分布式事务,同城跨AZ部署,数据0丢失,支持1000+扩展能力,PB级海量存储等特性。