华为云用户手册

  • 约束和限制 逻辑集群的创建、扩容和缩容必须以环为单位,最少3个物理节点,DN的主备从必须在同一环所包含的物理节点内。 逻辑集群切换期间,如果原物理集群有数据,则会进行锁集群操作。用户可执行增删改查等简单DML语句,但执行操作数据库对象等复杂DDL语句会阻塞业务出现报错,请谨慎操作。 逻辑集群不支持单独备份和恢复。 逻辑集群不支持单独升级。 物理集群转换为逻辑集群模式之后不支持回退到物理集群。 逻辑集群模式下,只能创建逻辑集群,不支持创建普通的NodeGroup,逻辑集群内部也不支持创建子NodeGroup。 逻辑集群的OM操作(创建、删除、编辑、扩容、缩容、重启)不支持并行执行。 由于公共数据库对象(除系统表之外的表、外表和视图)会分布在物理集群所有节点,当某个逻辑集群节点重启后,其他逻辑集群对这些公共数据库对象进行的DDL操作将会中断。 在逻辑集群模式下,由于每个DN只包含所属逻辑集群下的表,而自定义函数要在所有DN上创建,因此创建的函数体中不能使用%type引用表字段类型。 在逻辑集群模式下,WITH RECURSIVE语句不支持下推。 在逻辑集群模式下,只有在相同逻辑集群下支持交换分区,不同逻辑集群下的分区表和普通表不支持交换分区。 在逻辑集群模式下,创建函数时如果函数参数或返回值有表类型,这些表类型必须属于同一个逻辑集群。 在逻辑集群模式下,通过CREATE TABLE ... LIKE方式创建外表时,源表和要创建的外表必须是在同一个逻辑集群中。 在逻辑集群模式下,不支持创建Schema同时创建表语句,即CREATE SCHEMA ... CREATE TABLE语句,用户需要首先创建Schema,再创建表到该Schema下。 逻辑集群不支持一主多备,逻辑集群只在主备从的部署形态下生效。 某个逻辑集群用户不能访问另一个逻辑集群用户创建的全局临时表。
  • 权限说明 在逻辑集群模式下: 逻辑集群创建权限(CREATE ON NODE GROUP)允许授予任何用户/角色,创建权限后可在对应的逻辑集群上进行创建表等相关操作。 如果创建的表指定的schema是某个用户私有schema(即该schema和用户同名且schema的owner是该用户),则新创建的表会将owner自动变更为该用户,不需要进行关联逻辑集群操作。 和逻辑集群关联的用户在创建表时不一定指定to group,如果没有指定to group子句,用户创建的表在用户关联的逻辑集群上;支持变更用户关联的逻辑集群。 如果用户没有关联逻辑集群,该用户创建表时会将表创建到default_storage_nodegroup指定的逻辑集群上;如果default_storage_nodegroup为installation,则将表创建到第一个逻辑集群中。在逻辑集群模式下,将oid最小的逻辑集群设置为第一个逻辑集群。通常用户没有显示设置default_storage_nodegroup的时候,默认值为installation。 DWS 3.0版本支持创建只读逻辑集群,如果用户关联到只读逻辑集群,只能在只读逻辑集群上创建会话级临时表(本地临时表和volatile临时表,不包括全局临时表);该用户如果创建其他常规表和外表,要遵循没有关联逻辑集群的用户建表规则,即表会创建到default_storage_nodegroup指定的逻辑集群上,如果default_storage_nodegroup是installation,则将表创建到第一个逻辑集群中。 系统管理员可以通过ALTER ROLE命令为每个用户设置默认的default_storage_nodegroup,具体语法参考ALTER ROLE。 建表规则 用户表在没有指定to group时,如果设置了default_storage_nodegroup参数,则会将表创建到指定的逻辑集群中。 如果default_storage_nodegroup参数设置为installation时,则会将表创建到第一个逻辑集群中(即所有逻辑集群中oid最小的一个)。 允许修改表的owner为任何用户,但对表进行操作时,需要检查对应的schema和nodegroup权限。 系统管理员可以关联到特定逻辑集群,并在多个逻辑集群中创建表。 系统管理员如果关联了逻辑集群,那么创建表时如果未指定to group,那么会默认创建到关联的逻辑集群中;如果指定了to group,则可将表创建到指定的逻辑集群中。 系统管理员如果没有关联逻辑集群,没有指定to group,则创建在由default_storage_nodegroup参数指定的逻辑集群中,详情参见建表规则。 允许将系统管理员权限授予关联了逻辑集群的用户,但同样遵循建表规则。 非表对象(schema/sequence/function/trigger等)的访问不再检查逻辑集群权限。 系统中的资源池必须关联到特定逻辑集群。 在一个逻辑集群下可以创建多个资源池,同一个资源池不能属于多个逻辑集群。 由于资源池定义了资源使用量,因此关联特定资源池的逻辑集群用户发起的作业将受到该资源池的资源约束。 逻辑集群下不需要创建负载组来定义并发作业的数量。因此,逻辑集群模式不再支持负载组。 逻辑集群删除时只删除表、外表,资源池对象,其他对象不会删除。 如果有对象依赖逻辑集群下的表(部分依赖表的sequence/function/triggers)同样也会删除。 逻辑集群删除过程会取消用户关联关系,删除已有的父子租户关系,该集群用户将会绑定默认的installation nodegroup,关联全局默认资源池。 逻辑集群用户如果有创建数据库权限也可创建数据库。
  • 应用场景 场景一:将不同资源要求的数据隔离 图3 基于不同资源要求划分逻辑集群 如上图所示,不同资源要求的数据就分开存放到不同逻辑集群中,同时不同逻辑集群之间也支持互访,在保证资源隔离的基础上也可以保证功能不受影响。 T1和T2表主要用于大批量数据计算,并生成报表数据(比如银行跑批)。这个过程由于需要大批量导入和大数据查询,所以对节点的内存和IO资源消耗比较高,且耗时比较长,但这类查询对实时性要求不高,因此可以将这些数据划分到一个独立的逻辑集群中。 T3和T4表包含了一些计算数据和实时数据,主要用于业务点查和实时查询,这类查询要求实时性高,为避免其他高负载操作影响,可以将这些数据划分到独立的逻辑集群中。 T5和T6表主要用于大并发OLTP类操作,数据更新非常频繁,对IO非常敏感,为了避免大数据查询对其影响,可以将这类表划分到独立的逻辑集群中。 场景二:不同业务要求的数据隔离,扩展数据集群多租户的能力 图4 逻辑集群多业务数据和多租户管理 大规模数据库集群往往同时包含很多业务的数据,不同业务有不同的数据表,为了对不同业务进行资源隔离,可以通过创建多租户来实现。将不同业务用户分配给不同租户,以便减少业务之间资源竞争。但随着业务规模不断扩大,集群系统中的业务数目越来越多,通过划分多租户来管理越来越难以控制资源竞争。由于每个表都会分布在数据库集群的所有DN节点上,因此每次数据表操作都可能会涉及所有DN节点,这会导致网络压力增大和系统资源消耗,单纯通过扩大集群规模也很难解决。所以可通过划分多个逻辑集群解决业务数量扩大问题,如上图所示。 通过划分独立的逻辑集群,将新增的业务分配到独立的逻辑集群上,这样新增业务对原有业务的影响会很小。而原有逻辑集群中的业务规模如果扩大,也可以通过对原有逻辑集群扩容来解决。 逻辑集群不适合将多个独立的数据库系统合并在一起管理,独立的数据库系统往往对独立运维要求很高,需要能够单独管理、监控、备份和升级,同时集群之间要求故障隔离,逻辑集群无法做到独立运维和完全的故障隔离。
  • 相关GUC参数设置 SQL诊断指标采集的相关GUC参数如下,具体请参见《 数据仓库 服务开发指南》中“GUC参数”章节: enable_resource_track 取值范围:布尔型 默认值:on DMS期望值:on(仅供参考) 作用:控制是否开启资源实时监控功能。 仅开启该参数,但没有正确配置其他相关联GUC参数,将不能记录实时资源消耗情况。 resource_track_cost 取值范围:整型,-1~INT_MAX 默认值:0 DMS期望值:0(仅供参考) 作用:设置对当前会话的语句进行资源监控的最小执行代价,该参数只有当参数enable_resource_track为on时才有效。 当该值设置过小,会导致更多的语句被记录,引起记录膨胀,记录过程也会影响集群性能。 resource_track_level 取值范围:枚举类型 默认值:query DMS期望值:query(仅供参考) 作用:设置当前会话的资源监控的等级;该参数只有当参数enable_resource_track为on时才有效。 设置operator级别的资源监控会显著影响性能。 resource_track_duration 取值范围:整型,0~INT_MAX,单位为秒(s) 默认值:60 DMS期望值:0(仅供参考) 作用:设置资源监控实时视图中记录的语句执行结束后进行历史信息转存的最小执行时间。即,只有当执行时间超过该时间的语句才会被记入到历史视图中。该参数只有当enable_resource_track为on时才有效。 当该值设置的过小,会导致内核语句转存的批处理机制失效,对内核性能产生影响。 topsql_retention_time 取值范围:整型,0~3650,单位为天 默认值:30 DMS期望值:14(仅供参考) 作用:视图pgxc_wlm_session_info数据老化时间。 该时间设置为0时表示不会老化,这会导致存储膨胀。 enable_resource_record 取值范围:布尔型 默认值:on DMS期望值:on(仅供参考) 作用:是否开启资源监控记录归档功能;开启时,对于history视图(GS_WLM_SESSION_HISTORY和GS_WLM_OPERATOR_HISTORY)中的记录,每隔3分钟会分别被归档到相应的info视图(GS_WLM_SESSION_INFO和GS_WLM_OPERATOR_INFO),归档后history视图中的记录会被清除。 开启该功能时建议同时设置合适的topsql_retention_time参数值配置老化时间。否则,将会引起GS_WLM_SESSION_INFO或GS_WLM_OPERATOR_INFO表的数据膨胀。
  • 概览 数据库智能运维(DMS)是一个为 GaussDB (DWS)数据库提供多维度监控服务的系统,为用户数据库的快速、稳定运行提供保驾护航的能力。该功能对业务数据库所使用磁盘、网络、OS指标数据,集群运行关键性能指标数据进行收集、监控、分析。通过综合收集到的多种类型指标,对数据库主机、实例及业务SQL进行诊断,及时暴露数据库中关键故障及性能问题,指导用户进行优化解决。 8.1.1.200及以上版本支持数据库监控功能。 实时数仓(单机部署)暂不支持DMS功能。 DMS与Cloud Eye监控的数据源不同,采集数据库的大小为该数据库使用的全部磁盘空间,会包含膨胀表的数据。
  • 查看已使用的连接数 使用SQL客户端工具连接集群中的数据库。 支持查看如表2所示的连接数场景。 除了创建的时候用双引号引起的数据库和用户名称外,以下命令中用到的数据库名称和用户名称,其中包含的英文字母必须使用小写。 表2 查看连接数介绍 描述 命令 查看指定用户的会话连接数上限。 执行如下命令查看连接到指定用户dbadmin的会话连接数上限。 1 SELECT ROLNAME,ROLCONNLIMIT FROM PG_ROLES WHERE ROLNAME='dbadmin'; 查询结果类似如下信息,其中“-1”表示没有对用户dbadmin设置连接数的限制。 rolname | rolconnlimit ----------+-------------- dwsadmin | -1 (1 row) 查看指定用户已使用的会话连接数。 执行如下命令查看指定用户dbadmin已使用的会话连接数。 1 SELECT COUNT(*) FROM V$SESSION WHERE USERNAME='dbadmin'; 查询结果类似如下信息,其中,“1”表示dbadmin已使用的会话连接数。 count ------- 1 (1 row) 查看指定数据库的会话连接数上限。 执行如下命令查看连接到指定数据库gaussdb的会话连接数上限。 1 SELECT DATNAME,DATCONNLIMIT FROM PG_DATABASE WHERE DATNAME='gaussdb'; 查询结果类似如下信息,其中“-1”表示没有对数据库gaussdb设置连接数的限制。 datname | datconnlimit ----------+-------------- gaussdb | -1 (1 row) 查看指定数据库已使用的会话连接数。 执行如下命令查看指定数据库gaussdb上已使用的会话连接数。 1 SELECT COUNT(*) FROM PG_STAT_ACTIVITY WHERE DATNAME='gaussdb'; 查询结果类似如下信息,其中,“1”表示数据库gaussdb上已使用的会话连接数。 count ------- 1 (1 row) 查看所有用户已使用会话连接数。 执行如下命令查看所有用户已使用的会话连接数。 1 2 3 4 5 SELECT COUNT(*) FROM PG_STAT_ACTIVITY; count ------- 10 (1 row)
  • 查看最大连接数 方式一:集群创建成功后,用户可在GaussDB(DWS)管理控制台上单击指定集群名称,切换至“参数修改”模块查看数据库参数max_connections的取值。 方式二:使用SQL客户端工具连接集群中的数据库后,通过SQL命令的方式查看数据库参数max_connections的取值。 1 SHOW max_connections; 界面显示的结果与以下信息类似,表示数据库默认支持的最大连接数为200。 max_connections ----------------- 200 (1 row)
  • 支持的连接数规格 集群支持的连接数与集群节点规格有关: 表1 支持连接数规格 参数 参数描述 CN连接数 DN连接数 max_connections 允许和数据库连接的最大并发连接数。 800 max(VCPU核数/单节点DN数量*120+24, 5000) max_pool_size CN的连接池与其它某个CN/DN的最大连接数。 max_prepared_transactions 设置可以同时处于预备状态的事务的最大数。 CN及DN概述详情请参见集群逻辑架构。
  • 使用OBS数据源 GaussDB(DWS)使用外表方式访问OBS上的数据。委托方式与非委托方式,在外表上体现出来的差异仅在于指定了不同的SERVER。 对于非委托方式,控制台提供的SERVER包含access_key和secret_access_key参数,分别对应OBS访问协议的AK和SK值。 对于委托方式,控制台提供的SERVER包含access_key、secret_access_key和security_token参数,分别对应OBS访问协议的临时AK、临时SK和 统一身份认证 服务 IAM 中临时安全凭证的SecurityToken值。 在创建好OBS委托和OBS数据源之后,用户从控制台获得相应的包含委托信息的SERVER,假设OBS数据源名称为obs_server。用户创建和使用外表与非委托方式无差异。关于如何使用OBS数据源,具体请参见从OBS导入数据。 如下示例为某普通用户jim通过外表读取OBS上的数据。 参见以上步骤创建OBS数据源,名称为obs_server。 使用系统管理员dbadmin连接数据库,创建普通用户,并授权该普通用户使用OBS server和OBS外表权限。 其中{Password}替换为用户实际密码,obs_server替换成实际的OBS数据源名称。 1 2 3 CREATE USER jim PASSWORD '{Password}'; ALTER USER jim USEFT; GRANT USAGE ON FOREIGN SERVER obs_server TO jim; 使用普通用户jim连接数据库,建立OBS外表customer_address,不包含分区列。 以下命令中,obs_server替换为上面实际创建的OBS数据源名称。目录/user/obs/region_orc11_64stripe1/替换为实际数据文件存放的OBS目录,user表示用户的OBS桶名称。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 CREATE FOREIGN TABLE customer_address ( ca_address_sk integer not null, ca_address_id char(16) not null, ca_street_number char(10) , ca_street_name varchar(60) , ca_street_type char(15) , ca_suite_number char(10) , ca_city varchar(60) , ca_county varchar(30) , ca_state char(2) , ca_zip char(10) , ca_country varchar(20) , ca_gmt_offset decimal(36,33) , ca_location_type char(20) ) SERVER obs_server OPTIONS ( FOLDERNAME '/user/obs/region_orc11_64stripe1/', FORMAT 'ORC', ENCODING 'utf8', TOTALROWS '20' ) DISTRIBUTE BY roundrobin; 通过外表查询OBS上的数据。 1 2 3 4 5 SELECT COUNT(*) FROM customer_address; count ------- 20 (1row)
  • 创建OBS委托 操作场景 创建OBS数据源前需要用户提前创建好授权给GaussDB(DWS)具有OBS OperateAccess或OBS Administrator权限的委托。 操作步骤 鼠标移动至页面右上角账号,单击“统一身份认证”,进入统一身份认证服务页面。 在左侧导航栏单击“委托”,在委托页面右上角单击“创建委托”。 创建委托时委托类型选择“云服务”,云服务选择“DWS”。 单击“下一步”,对委托授予OBS服务的“OBS OperateAccess”或“OBS Administrator”权限。 单击“下一步”,选择授权资源范围为“所有资源”或需要访问的资源,然后确认无误后提交。
  • 使用流程 从 MRS 导入数据到集群流程如下: 前提条件 创建一个MRS集群,具体操作步骤请参见购买自定义集群。 创建一个HDFS外表,外表通过外部服务器的接口,从MRS集群查询数据。 具体操作步骤请参见《数据仓库服务数据迁移与同步》中从MRS导入数据到集群章节。 同一个网络下可以有多个MRS数据源, 但是GaussDB(DWS)集群每次只能和一个MRS集群建立连接。 在GaussDB(DWS) 集群创建一个MRS数据源连接,具体操作步骤请参见创建MRS数据源连接。 使用MRS数据源导入数据到集群,具体操作请参见使用MRS数据源。 (可选)当MRS集群的HDFS配置发生变更时,在GaussDB(DWS)服务中,需要执行MRS数据源配置的更新操作,详情请参见更新MRS数据源配置。
  • MRS集群简介 MapReduce服务 (MapReduce Service,简称MRS)是一个基于开源Hadoop生态环境而运行的大数据集群,对外提供大容量数据的存储和分析能力,可解决用户的数据存储和处理需求。有关MRS服务的详细信息,请参考《MapReduce服务用户指南》。 用户可以将海量业务数据,存储在MRS的分析集群,即使用Hive/Spark组件保存。Hive/Spark的数据文件则保存在HDFS中。GaussDB(DWS) 支持在相同网络中,配置一个GaussDB(DWS) 集群连接到MRS集群,然后将数据从HDFS中的文件读取到GaussDB(DWS) 。 实时数仓(单机部署)暂不支持从MRS导入数据。
  • 约束与限制 资源发放时默认CN数量为3,用户可以根据实际发放节点数量调整CN数量,范围为2~20。 增删CN节点过程中不允许执行其他运维操作。 增加CN过程会消耗大量的CPU和IO资源,因此会对用户作业性能影响较大,用户应该尽可能在停止业务情况下或业务轻载的情况下执行增加CN操作。 增加CN节点时发生故障且回滚失败,可以重试增加CN操作。删除CN节点不支持回滚。 增加CN失败只能重试增加CN,其他运维操作不允许执行;删除CN失败,只能重试删除CN,其他运维操作不允许执行。 删除CN节点过程中如果有DDL操作,例如创建schema,function等,这些DDL可能会因为找不到被删除的CN节点而报错,业务重试即可成功。 删除CN节点过程中,如果只有一个节点异常,只能删除这个异常的节点;如果有两个及以上节点异常,不能删除CN节点,需要先处理恢复异常的节点后,才能删除CN节点。
  • 创建逻辑集群关联用户并实现跨逻辑查询数据 以系统管理员连接数据库,执行以下SQL语句查询原业务表name。 验证转换后,业务数据查询正常。 1 SELECT * FROM name; 执行以下语句创建u1关联逻辑集群lc1,u2关联逻辑集群lc2。 1 2 CREATE USER u1 NODE GROUP "lc1" PASSWORD '{password}'; CREATE USER u2 NODE GROUP "lc2" PASSWORD '{password}'; 以用户u1登录数据库,创建新表u1.t1并插入两条数据,同时授权用户u2可以访问该表。 1 2 3 4 CREATE TABLE u1.t1 (id int, name varchar(20)); INSERT INTO u1.t1 VALUES (1,'joy'),(2,'lily'); GRANT USAGE ON SCHEMA u1 TO u2; GRANT SELECT ON TABLE u1.t1 TO u2; 以用户u2登录数据库,查询原业务表t1数据,提示无权访问逻辑集群lc1。结果表明,即使用户u1已经授权了u2可以访问该表,但是由于这张表在不同的逻辑集群,所以仍然无法访问,证明逻辑集群间数据隔离。 1 SELECT * FROM u1.t1; 切回系统管理员dbadmin窗口,将逻辑集群lc1的访问权限授予用户u2。 1 GRANT USAGE ON NODE GROUP lc1 TO u2; 再次切到用户u2窗口,查询表t1成功。结果验证绑定了逻辑集群lc2的用户可以跨逻辑集群查询到原业务表t1。实现逻辑集群间的数据共享。 1 SELECT * FROM u1.t1;
  • 场景介绍 大规模数据库集群通常会同时包含很多业务数据,不同业务有不同的数据表,可以通过资源管理功能创建多个资源池来实现不同业务的资源隔离。GaussDB(DWS)支持将不同业务用户分配给不同资源池,以便减少业务之间资源(CPU资源、内存资源、IO资源和存储资源)竞争。 但随着业务规模不断扩大,集群系统中的业务数目越来越多,通过划分多个资源池来管理越来越难以控制资源竞争。由于GaussDB(DWS)的分布式架构,业务数据被分散存储在多个节点上即每个表都会分布在数据库集群的所有DN节点上,因此每次数据表操作都可能会涉及所有DN节点,导致网络压力增大和系统资源大量消耗,仅通过扩大集群规模也很难解决,GaussDB(DWS)建议用户划分多个逻辑集群来解决业务数量扩大带来的网络压力和资源消耗问题。 通过划分独立的逻辑集群,将新增的业务分配到独立的逻辑集群上,这样新增业务对原有业务的影响会很小。而原有逻辑集群中的业务规模如果扩大,也可以通过对原有逻辑集群扩容来解决。 如图1所示,假设某企业原有业务数据表都在原物理集群dws-demo(绿色部分),切换到逻辑集群lc1(蓝色部分)后,物理集群再通过扩容方式,新增一套新的逻辑集群lc2,原有业务数据表统一切换到逻辑集群lc1,新的业务数据表统一写入到逻辑集群lc2,实现新老业务的数据隔离。而新的逻辑集群lc2关联的用户u2,通过授权可以跨逻辑集群访问逻辑集群lc1的表。 集群规模:从原始的物理集群3节点,扩容到6节点并拆分成2套逻辑集群。 业务隔离:新、老业务数据隔离在不同逻辑集群中。
  • 拓扑图专业名词解释 表1 集群结构描述 名称 描述 说明 ELB 弹性负载均衡(Elastic Load Balance,简称ELB)是将访问流量根据分配策略分发到后端多台服务器的流量分发控制服务。 用户使用客户端连接GaussDB(DWS)集群时,如果用户仅连接一个CN节点地址,通过该CN节点内网IP或弹性公网IP连接时,只能连接到固定的CN节点上,存在CN单点问题。如果通过内网 域名 或公网域名连接,域名解析服务会对每个客户端随机选择一个内网/公网IP地址,其解析机制并不能保证负载均衡,同样也存在CN单点问题。因此引入了弹性负载均衡服务(Elastic Load Balance,下称ELB)解决集群访问的单点问题。详情请参见为GaussDB(DWS)集群绑定和解绑弹性负载均衡。 EIP 弹性公网IP(Elastic IP,简称EIP)提供独立的公网IP资源,包括公网IP地址与公网出口带宽服务。 可以与弹性云服务器、裸金属服务器、虚拟IP、弹性负载均衡、NAT网关等资源灵活地绑定及解绑。 Ring 安全环,集群内部的故障隔离域,主要作用是故障隔离,环内主机出现故障,故障不会扩散到环外。 如果环内某一单节点故障,所有DN节点在环内都有副本,数据不会丢失。 例如Server1发生故障后,DN1的备节点在Server2上,DN2的备节点在Server3上,DN3的备节点在Server3上,每个Server运行4个主DN,环内的各主机性能仍然保证均衡。 整个集群可以承受的主机故障数量范围为1~安全环的数量。 说明: 集群按照安全环节点数量的倍数进行扩容,也就是以环为最小单位进行扩容。 表2 节点IP描述 名称 描述 说明 Manage IP 数据仓库节点与管理面连接通信的IP。 主要用于管理面命令下发,以及节点状态、监控信息上报。 Traffic IP 数据仓库节点对外开放的IP。 该IP用于绑定EIP、ELB或直接通过VPC内部进行连接。 Internal IP 数据仓库集群内部数据通信IP。 - Internalmgnt IP 数据仓库集群内部管理命令在节点之间通信IP。 - 表3 节点进程描述 名称 描述 说明 CMS 集群管理模块(Cluster Manager)。管理和监控分布式系统中各个功能单元和物理资源的运行情况,确保整个系统的稳定运行。 CMS为该模块中的CM Server。 CM由CM Agent、OM Monitor和CM Server组成。 CM Agent:负责监控所在主机上主备GTM、CN、主备DN的运行状态并将状态上报给CM Server。同时负责执行CM Server下发的仲裁指令。集群的每台主机上均有CM Agent进程。 OM Monitor:看护CM Agent的定时任务,其唯一的任务是在CM Agent停止的情况下将CM Agent重启。如果CM Agent重启不了,则整个主机不可用,需要人工干预。 说明: CM Agent重启的情况很少发生,如果出现可能是因为系统资源不够用导致无法启动新进程。 CM Server:根据CM Agent上报的实例状态判定当前状态是否正常,是否需要修复,并下发指令给CM Agent执行。 GaussDB(DWS)提供了CM Server的主备实例方案,以保证集群管理系统本身的高可用性。正常情况下,CM Agent连接主CM Server,在主CM Server发生故障的情况下,备CM Server会主动升为主CM Server,避免出现CM Server单点故障。 GTM 全局事务管理器(Global Transaction Manager),负责生成和维护全局事务ID、事务快照、时间戳等全局唯一的信息。 整个集群只有一组GTM:主、备GTM各一个。 CN 协调节点(Coordinator)。负责接收来自应用的访问请求,并向客户端返回执行结果;负责分解任务,并调度任务分片在各DN上并行执行。 集群中,CN有多个并且CN的角色是对等的(执行DML语句时连接到任何一个CN都可以得到一致的结果)。只需要在CN和应用程序之间增加一个负载均衡器,使得CN对应用是透明的。CN故障时,由负载均衡自动路由连接到另外一个CN。 当前分布式事务框架下无法避免CN之间的互连,为了减少GTM上线程过多导致负载过大,建议CN配置数目≤10个。 CCN 中心协调节点(Central Coordinator)。 GaussDB(DWS)通过CCN(Central Coordinator )负责集群内的资源全局负载控制,以实现自适应的动态负载管理。CM在第一次集群启动时,通过集群部署形式,选择编号最小的CN作为CCN。若CCN故障之后,由CM选择新的CCN进行替换。 DN 数据节点(Datanode)。负责存储业务数据(支持行存、列存、混合存储)、执行数据查询任务以及向CN返回执行结果。 在集群中,DN有多个。每个DN存储了一部分数据。如果DN无高可用方案,则故障时会导致该实例上的数据无法访问。
  • 拓扑展示逻辑 节点拓扑整体示意图如上所示,其中按照图中标注的顺序解释如下 : 集群所绑定的ELB的公网IP地址(若绑定的ELB没有绑定弹性IP则显示为服务地址)。 集群所绑定的EIP的IP地址。 搜索分类,可以按照“IP地址”或“节点名称”进行精确搜索。 该框表示集群内所有的Ring环。 该框表示Ring环,一行为一个Ring环,该Ring环内的每个图标表示其内的一个节点,如果创建的集群Ring环大于等于3,可查看CN分散部署情况。 节点以图标的形式进行表示,图标右上角为该节点的类型,暂只显示“CN”和“DN”两种类型(如果节点中有CN进程,则图标为CN;如果节点内没有CN进程,则显示DN图标)。 当鼠标悬停在节点图标上时,展示节点详细信息,包括节点名称、节点状态、节点的不同IP地址、节点进程。
  • 概述 在使用集群过程中,当用户的业务量过大,则需要更多的资源(CPU、内存、磁盘等)来支撑庞大的业务量,如果用户当前使用的集群资源不足,则需要新建集群,或将当前集群删除后创建一个资源更多的集群,这样不仅消耗成本,整个流程也会十分耗时。而且如果用户创建的集群自身资源较多,但业务量并没有那么多的情况下,会导致资源冗余,成本过高的出现。 因此“弹性变更规格”功能应运而生,相比于扩容节点而言,该功能更适合阶段性峰值或只对计算能力(CPU、内存)变化有诉求的业务场景,在业务峰值来临之前您可以通过弹性变更规格快速提升集群计算能力,在业务峰值过后再快速的将集群配置降低,做到最大程度的节约成本。支持的变更规格列表请参照表支持变更的规格列表。 基于E CS 弹性云服务器底层基础能力,升降目标集群虚拟机节点的CPU、内存这两种资源配置,如下图所示: 弹性变更规格整个流程需要停止集群,所以需要用户合理安排变更时间窗口,防止集群停止影响业务。 在实际变更过程中,所有节点的变更并行执行,所以不会由于节点过多而造成变更时间变长,整个变更时间在5~10分钟左右,请耐心等待。 图1 弹性变更原理图 弹性变更规格仅8.1.1.300及以上集群版本支持,历史版本需要联系技术支持人员升级使用。 当前仅支持SSD云盘形态的标准数仓或实时数仓集群。
  • 支持弹性变更的规格列表 表1 支持变更的规格列表 当前规格名称 目标规格名称 dwsk2.xlarge dwsk2.2xlarge, dwsk2.4xlarge,dwsk2.12xlarge,dwsk2.8xlarge dwsk2.2xlarge dwsk2.12xlarge,dwsk2.8xlarge,dwsk2.4xlarge dwsk2.4xlarge dwsk2.2xlarge,dwsk2.8xlarge,dwsk2.12xlarge dwsk2.8xlarge dwsk2.2xlarge,dwsk2.4xlarge,dwsk2.12xlarge dwsk2.12xlarge dwsk2.2xlarge,dwsk2.4xlarge,dwsk2.8xlarge dwsk2.h.12xlarge.4.kc1 dwsk2.h.xlarge.4.kc1,dwsk2.h.2xlarge.4.kc1,dwsk2.h.4xlarge.4.kc1,dwsk2.h.8xlarge.4.kc1 dwsk2.h.2xlarge.4.kc1 dwsk2.h.8xlarge.4.kc1,dwsk2.h.12xlarge.4.kc1,dwsk2.h.xlarge.4.kc1,dwsk2.h.4xlarge.4.kc1 dwsk2.h.4xlarge.4.kc1 dwsk2.h.8xlarge.4.kc1,dwsk2.h.12xlarge.4.kc1,dwsk2.h.xlarge.4.kc1,dwsk2.h.2xlarge.4.kc1 dwsk2.h.8xlarge.4.kc1 dwsk2.h.xlarge.4.kc1,dwsk2.h.2xlarge.4.kc1,dwsk2.h.4xlarge.4.kc1,dwsk2.h.12xlarge.4.kc1 dwsk2.h.xlarge.4.kc1 dwsk2.h.2xlarge.4.kc1,dwsk2.h.4xlarge.4.kc1,dwsk2.h.8xlarge.4.kc1,dwsk2.h.12xlarge.4.kc1 dwsk2.h1.12xlarge.4.kc1 dwsk2.h1.4xlarge.4.kc1,dwsk2.h1.8xlarge.4.kc1,dwsk2.h1.2xlarge.4.kc1 dwsk2.h1.2xlarge.4.kc1 dwsk2.h1.4xlarge.4.kc1,dwsk2.h1.8xlarge.4.kc1,dwsk2.h1.12xlarge.4.kc1 dwsk2.h1.4xlarge.4.kc1 dwsk2.h1.8xlarge.4.kc1,dwsk2.h1.12xlarge.4.kc1,dwsk2.h1.2xlarge.4.kc1 dwsk2.h1.8xlarge.4.kc1 dwsk2.h1.4xlarge.4.kc1,dwsk2.h1.12xlarge.4.kc1,dwsk2.h1.2xlarge.4.kc1 dwsk2.h1.xlarge.2.kc1 dwsk2.h1.2xlarge.4.kc1,dwsk2.h1.4xlarge.4.kc1,dwsk2.h1.8xlarge.4.kc1,dwsk2.h1.12xlarge.4.kc1 dwsx2.xlarge dwsx2.2xlarge,dwsx2.4xlarge,dwsx2.8xlarge,dwsx2.16xlarge dwsx2.2xlarge dwsx2.4xlarge,dwsx2.8xlarge,dwsx2.16xlarge dwsx2.4xlarge dwsx2.2xlarge,dwsx2.8xlarge,dwsx2.16xlarge dwsx2.8xlarge dwsx2.2xlarge,dwsx2.4xlarge,dwsx2.16xlarge dwsx2.16xlarge dwsx2.2xlarge,dwsx2.4xlarge,dwsx2.8xlarge dwsx2.xlarge.m7 dwsx2.2xlarge.m7,dwsx2.4xlarge.m7,dwsx2.8xlarge.m7,dwsx2.16xlarge.m7 dwsx2.2xlarge.m7 dwsx2.4xlarge.m7,dwsx2.8xlarge.m7,dwsx2.16xlarge.m7 dwsx2.4xlarge.m7 dwsx2.2xlarge.m7,dwsx2.8xlarge.m7,dwsx2.16xlarge.m7 dwsx2.8xlarge.m7 dwsx2.2xlarge.m7,dwsx2.4xlarge.m7,dwsx2.16xlarge.m7 dwsx2.16xlarge.m7 dwsx2.2xlarge.m7,dwsx2.4xlarge.m7,dwsx2.8xlarge.m7 dwsx2.xlarge.m7n dwsx2.2xlarge.m7n,dwsx2.8xlarge.m7n,dwsx2.16xlarge.m7n dwsx2.2xlarge.m7n dwsx2.8xlarge.m7n,dwsx2.16xlarge.m7n dwsx2.8xlarge.m7n dwsx2.2xlarge.m7n,dwsx2.16xlarge.m7n dwsx2.16xlarge.m7n dwsx2.2xlarge.m7n,dwsx2.8xlarge.m7n dwsx2.h.xlarge.4.c6 dwsx2.h.2xlarge.4.c6,dwsx2.h.4xlarge.4.c6,dwsx2.h.8xlarge.4.c6,dwsx2.h.16xlarge.4.c6 dwsx2.h.2xlarge.4.c6 dwsx2.h.4xlarge.4.c6,dwsx2.h.8xlarge.4.c6,dwsx2.h.16xlarge.4.c6 dwsx2.h.4xlarge.4.c6 dwsx2.h.8xlarge.4.c6,dwsx2.h.16xlarge.4.c6,dwsx2.h.2xlarge.4.c6 dwsx2.h.8xlarge.4.c6 dwsx2.h.4xlarge.4.c6,dwsx2.h.16xlarge.4.c6,dwsx2.h.2xlarge.4.c6 dwsx2.h.16xlarge.4.c6 dwsx2.h.2xlarge.4.c6,dwsx2.h.4xlarge.4.c6,dwsx2.h.8xlarge.4.c6 dwsx2.h.xlarge.4.c7 dwsx2.h.4xlarge.4.c7,dwsx2.h.8xlarge.4.c7,dwsx2.h.16xlarge.4.c7,dwsx2.h.2xlarge.4.c7 dwsx2.h.2xlarge.4.c7 dwsx2.h.4xlarge.4.c7,dwsx2.h.8xlarge.4.c7,dwsx2.h.16xlarge.4.c7 dwsx2.h.4xlarge.4.c7 dwsx2.h.2xlarge.4.c7,dwsx2.h.8xlarge.4.c7,dwsx2.h.16xlarge.4.c7 dwsx2.h.8xlarge.4.c7 dwsx2.h.16xlarge.4.c7,dwsx2.h.2xlarge.4.c7,dwsx2.h.4xlarge.4.c7 dwsx2.h.16xlarge.4.c7 dwsx2.h.8xlarge.4.c7,dwsx2.h.xlarge.4.c7,dwsx2.h.2xlarge.4.c7,dwsx2.h.4xlarge.4.c7 dwsx2.h.xlarge.4.c7n dwsx2.h.2xlarge.4.c7n,dwsx2.h.4xlarge.4.c7n,dwsx2.h.8xlarge.4.c7n,dwsx2.h.16xlarge.4.c7n dwsx2.h.2xlarge.4.c7n dwsx2.h.4xlarge.4.c7n,dwsx2.h.8xlarge.4.c7n,dwsx2.h.16xlarge.4.c7n dwsx2.h.4xlarge.4.c7n dwsx2.h.2xlarge.4.c7n,dwsx2.h.8xlarge.4.c7n,dwsx2.h.16xlarge.4.c7n dwsx2.h.8xlarge.4.c7n dwsx2.h.16xlarge.4.c7n,dwsx2.h.2xlarge.4.c7n,dwsx2.h.4xlarge.4.c7n dwsx2.h.16xlarge.4.c7n dwsx2.h.4xlarge.4.c7n,dwsx2.h.8xlarge.4.c7n,dwsx2.h.2xlarge.4.c7n dwsx2.h1.xlarge.2.c6 dwsx2.h1.8xlarge.4.c6,dwsx2.h1.16xlarge.4.c6,dwsx2.h1.2xlarge.4.c6,dwsx2.h1.4xlarge.4.c6 dwsx2.h1.2xlarge.4.c6 dwsx2.h1.4xlarge.4.c6,dwsx2.h1.8xlarge.4.c6,dwsx2.h1.16xlarge.4.c6 dwsx2.h1.4xlarge.4.c6 dwsx2.h1.2xlarge.4.c6,dwsx2.h1.8xlarge.4.c6,dwsx2.h1.16xlarge.4.c6 dwsx2.h1.8xlarge.4.c6 dwsx2.h1.16xlarge.4.c6,dwsx2.h1.4xlarge.4.c6,dwsx2.h1.2xlarge.4.c6 dwsx2.h1.16xlarge.4.c6 dwsx2.h1.4xlarge.4.c6,dwsx2.h1.2xlarge.4.c6,dwsx2.h1.8xlarge.4.c6 dwsx2.h1.xlarge.2.c7 dwsx2.h1.4xlarge.4.c7,dwsx2.h1.8xlarge.4.c7,dwsx2.h1.16xlarge.4.c7,dwsx2.h1.2xlarge.4.c7 dwsx2.h1.16xlarge.4.c7 dwsx2.h1.4xlarge.4.c7,dwsx2.h1.8xlarge.4.c7,dwsx2.h1.2xlarge.4.c7 dwsx2.h1.2xlarge.4.c7 dwsx2.h1.4xlarge.4.c7,dwsx2.h1.8xlarge.4.c7,dwsx2.h1.16xlarge.4.c7 dwsx2.h1.4xlarge.4.c7 dwsx2.h1.2xlarge.4.c7,dwsx2.h1.8xlarge.4.c7,dwsx2.h1.16xlarge.4.c7 dwsx2.h1.8xlarge.4.c7 dwsx2.h1.4xlarge.4.c7,dwsx2.h1.2xlarge.4.c7,dwsx2.h1.16xlarge.4.c7 dwsx2.h1.xlarge.2.c7n dwsx2.h1.2xlarge.4.c7n,dwsx2.h1.4xlarge.4.c7n,dwsx2.h1.8xlarge.4.c7n,dwsx2.h1.16xlarge.4.c7n dwsx2.h1.2xlarge.4.c7n dwsx2.h1.16xlarge.4.c7n,dwsx2.h1.4xlarge.4.c7n,dwsx2.h1.8xlarge.4.c7n dwsx2.h1.4xlarge.4.c7n dwsx2.h1.8xlarge.4.c7n,dwsx2.h1.16xlarge.4.c7n,dwsx2.h1.2xlarge.4.c7n dwsx2.h1.8xlarge.4.c7n dwsx2.h1.4xlarge.4.c7n,dwsx2.h1.16xlarge.4.c7n,dwsx2.h1.2xlarge.4.c7n dwsx2.h1.16xlarge.4.c7n dwsx2.h1.2xlarge.4.c7n,dwsx2.h1.4xlarge.4.c7n,dwsx2.h1.8xlarge.4.c7n dwsx2.rt.xlarge.m7 dwsx2.rt.2xlarge.m7,dwsx2.rt.4xlarge.m7,dwsx2.rt.8xlarge.m7,dwsx2.rt.16xlarge.m7 dwsx2.rt.2xlarge.m7 dwsx2.rt.4xlarge.m7,dwsx2.rt.8xlarge.m7,dwsx2.rt.16xlarge.m7 dwsx2.rt.4xlarge.m7 dwsx2.rt.2xlarge.m7,dwsx2.rt.8xlarge.m7,dwsx2.rt.16xlarge.m7 dwsx2.rt.8xlarge.m7 dwsx2.rt.2xlarge.m7,dwsx2.rt.4xlarge.m7,dwsx2.rt.16xlarge.m7 dwsx2.rt.16xlarge.m7 dwsx2.rt.2xlarge.m7,dwsx2.rt.4xlarge.m7,dwsx2.rt.8xlarge.m7 dwsk2.rt.xlarge.km1 dwsk2.rt.2xlarge.km1,dwsk2.rt.4xlarge.km1,dwsk2.rt.8xlarge.km1,dwsk2.rt.12xlarge.km1 dwsk2.rt.2xlarge.km1 dwsk2.rt.4xlarge.km1,dwsk2.rt.8xlarge.km1,dwsk2.rt.12xlarge.km1 dwsk2.rt.4xlarge.km1 dwsk2.rt.2xlarge.km1,dwsk2.rt.8xlarge.km1,dwsk2.rt.12xlarge.km1 dwsk2.rt.8xlarge.km1 dwsk2.rt.2xlarge.km1,dwsk2.rt.4xlarge.km1,dwsk2.rt.12xlarge.km1 dwsk2.rt.12xlarge.km1 dwsk2.rt.2xlarge.km1,dwsk2.rt.4xlarge.km1,dwsk2.rt.8xlarge.km1 dwsx2.rt.xlarge.m7n dwsx2.rt.2xlarge.m7n,dwsx2.rt.8xlarge.m7n,dwsx2.rt.16xlarge.m7n dwsx2.rt.2xlarge.m7n dwsx2.rt.8xlarge.m7n,dwsx2.rt.16xlarge.m7n dwsx2.rt.8xlarge.m7n dwsx2.rt.2xlarge.m7n,dwsx2.rt.16xlarge.m7n dwsx2.rt.16xlarge.m7n dwsx2.rt.2xlarge.m7n,dwsx2.rt.8xlarge.m7n
  • 实时查询 在“实时查询”这一栏您可以根据选择的指定时间段浏览集群中正在运行的所有查询信息,可单击列表右上方的设置按钮勾选需要在列表中展示的指标信息。指标包括: 查询ID、用户名称、应用名称、数据库名称、资源池、提交时间、阻塞时间(ms)、执行时间(ms)、最小cpu时间(ms)、最大cpu时间(ms)、CPU时间(ms)、CPU时间倾斜(%)、dn下盘信息、dn上下盘的最小数据量(mb)、dn上下盘的最大数据量(mb)、平均下盘量(MB)、dn间下盘倾斜率、查询语句、接入CN、客户端IP、快慢车道、查询状态、会话ID、排队状态、作业类型、任务名称、任务实例、TCP端口、是否等待、预估总执行时间(ms)、预估剩余时间(ms)、cgroup、dn最小内存峰值(mb)、dn最大内存峰值(mb)、内存使用平均值(mb)、各dn内存使用倾斜率、预估使用内存(mb)、dn最小执行时间(ms)、dn最大执行时间(ms)、dn平均执行时间(ms)、各dn的执行时间倾斜率、告警、dn每秒平均io峰值(列存是次/s,行存是万次/s)、dn间的io倾斜率、语句运行状态、语句属性。 其中查询状态包含以下状态: idle:后台正在等待新的客户端命令。 active:后台正在执行查询。 idle in transaction:后端在事务中,但事务中没有语句在执行。 idle in transaction (aborted):后端在事务中,但事务中有语句执行失败。 fastpath function call:后端正在执行一个fast-path函数。 单击查询ID可以显示查询监控详情。但当查询ID为0时,表示此查询出现异常,不支持单击显示详情与终止查询功能。 若用户需要终止查询,单击“终止查询”按钮,确认是否终止查询。 新增细粒度权限控制功能,只有配置了操作权限的用户才能使用终止查询按钮。只读权限用户登录后终止查询按钮为灰色。 快慢车道根据执行计划中cost进行计算,优化器估算内存大于32MB进入慢车道,反之为快车道。
  • 实时会话 在“实时会话”这一栏您可以浏览到正在运行中的所有会话实时信息,可单击列表右上方的设置按钮勾选需要在列表中展示的指标信息。指标包括: 会话ID、用户名称、会话用时、应用名称、QueryBand、客户端IP、接入CN、会话状态、开始时间、锁模式、锁持有状态、锁定对象、查询SQL、锁等待、当前查询时长、当前查询开始时间。 其中会话状态包含以下状态: idle:后台正在等待新的客户端命令。 active:后台正在执行查询。 idle in transaction:后端在事务中,但事务中没有语句在执行。 idle in transaction (aborted):后端在事务中,但事务中有语句执行失败。 fastpath function call:后端正在执行一个fast-path函数。 单击会话ID可以显示当前会话上的查询,详情参见实时查询监控详情。 用户若需要终止会话,单击“终止会话”按钮,确认是否终止会话。 用户若需要将会话状态为“idle”的空闲会话全部终止,单击“一键清理空闲会话”按钮,确认是否终止当前集群的全部空闲会话。 新增细粒度权限控制功能,只有配置了操作权限的用户才能使用终止会话按钮。只读权限用户登录后终止会话按钮为灰色。
  • 前提条件 查询监控中用户查看数据前需要设置相关GUC参数,若没有设置的情况下,可能会导致查询监控中的实时查询或历史查询不可用。但如果设置也可能会导致集群性能下降,所以用户需权衡相关参数配置。相关GUC参数推荐配置如下,修改参数操作请参见修改GaussDB(DWS)集群GUC参数,具体参数说明请参见相关GUC参数设置。 表1 GUC参数推荐配置 GUC参数 CN建议设置值 DN建议设置值 max_active_statements 10 10 enable_resource_track on on resource_track_level query query resource_track_cost 0 0 resource_track_duration 10 10 enable_resource_record on on session_statistics_memory 1000MB 1000MB
  • 实例管理概述 数据迁移功能采用独立集群的方式为用户提供安全可靠的数据迁移服务,各集群之间相互隔离,不可互相访问。其中实例管理通过购买GDS-Kafka实例帮助用户创建、管理集群。GDS-Kafka的工作方式是从Kafka中消耗数据并缓存,当达到设置好的时间或数据量之后,通过COPY写入GaussDB(DWS)临时表,再从临时表进行插入或更新操作。 Kafka的消息生产端必须按照一定的格式要求进行数据生产,其中消息格式由“kafka.source.event.type”配置参数指定。当前支持的消息格式详见GDS-Kafka支持的消息格式。 GDS-Kafka支持直接insert(仅限无主键表)和merge覆盖更新两种入库模式,您可以根据DWS目标表的类型进行灵活配置,直接insert模式由于不涉及更新在性能上要更优一些。其中入库模式由“app.insert.directly”配置参数和有无主键共同决定,详见GDS-Kafka入库模式。 GDS-kafka只支持目标表表名和字段全小写。 GDS-Kafka的删除是根据扩展字段中的pos进行历史删除,如果入库数据中有delete操作,则必须使用扩展字段。
  • GDS-Kafka入库模式 GDS-Kafka的数据入库都是先将数据copy至临时表,然后再根据客户的使用场景以及目标表有无主键进行merge或者insert,详见下表: 表3 GDS-Kafka入库模式 入库操作 app.insert.directly 是否主键表 入库模式 insert true(仅支持无主键表) 否 使用insert select从临时表写入到目标表。 false 是 根据主键从临时表merge到目标表。 否 使用insert select从临时表写入到目标表。 delete true(仅支持无主键表) 否 使用insert select从临时表写入到目标表。 false 说明: delete操作支持标记删除,通过配置app.del.flag参数可以指定删除标记字段,如果配置了标记删除字段,则会通过将删除字段设置为1来标记删除的记录。 是 如果设置了delflag字段,则会根据主键进行匹配merge,如果匹配到主键并且目标表中记录的pos小于临时表记录的pos,则会将delflag字段置为1,否则将插入一条新的记录。 如果没有设置delflag字段,则会根据主键进行匹配,如果匹配到记录并且目标表中记录的pos小于临时表记录的pos,则会将目标表中匹配到的记录删除。 否 如果设置了delflag字段,则会使用临时表中记录的所有字段与目标表进行匹配merge,如果匹配到记录并且目标表中记录的pos小于临时表记录的pos,则会将delflag字段值置为1,否则将插入一条新的记录。 如果没有设置delflag字段,则会使用临时表中记录的所有字段与目标表进行匹配,如果匹配到记录并且目标表中记录的pos小于临时表记录的pos,则会将目标表中匹配到的记录删除。 update true(仅支持无主键表) 否 使用insert+select从临时表写入到目标表。 false 说明: update操作会被拆分,将before或者beforeImage中的消息拆分为delete操作,将after或者afterImage中的消息拆分为insert操作,然后再按照insert和delete的行为进行入库处理。 是 相当于有主键表的insert+delete操作。 否 相当于无主键表的insert+delete操作。
  • 操作步骤 登录GaussDB(DWS)管理控制台。 在集群列表中单击需要访问“资源管理”页面的集群名称。 进入“基本信息”页面,左导航栏单击“资源管理”。 切换至“schema空间管理”模块,切换需要查看的数据库。 在需要修改空间限额模式的所在行操作列,单击“编辑”按钮,修改合适的空间限额。 单击“确定”提交。 空间限额仅对普通用户有效,数据库系统管理员用户不受限制(因此当显示已用空间等于空间限额时,真实使用空间可能已超出设置的值)。 单DN限额=总限额/DN节点数,所以设置值可能与最终显示值存在细微差异。
  • 空间管理简介 存储资源无节制的使用可能导致磁盘满,进而导致集群异常、业务中断。磁盘满问题具有业务恢复难度大、恢复时间长的特点,通过引入数据库只读,极大概率降低了磁盘满问题的发生,但是数据库只读同样会导致业务中断,影响业务连续性。为解决数据库只读问题,GaussDB(DWS)提供了多维度的存储资源管理能力,一方面在schema维度实现了schema空间管理,用于限制schema使用的永久空间大小;一方面在用户维度实现了永久空间、临时空间和算子空间管理,防止单用户业务异常导致数据库只读。 schema维度:schema空间管理模块可查询集群下数据库和模式空间信息,并支持修改模式空间总值。 用户维度:用户空间管理用于限定不同用户可以使用的空间限额,防止用户使用存储空间过大导致业务执行受阻。GaussDB(DWS)通过在创建用户时指定空间大小的方式实现对存储资源的管理,支持管理的存储空间类型包括: 永久表存储空间(PREM SPACE) 用于限制用户创建的永久表(非临时表)占用的空间限额。 临时表存储空间(TEMP SPACE) 用于限制用户创建的临时表占用的空间限额。 算子落盘空间(SPILL SPACE) 查询执行过程中,如果实际使用内存大于估算内存,则查询可能产生落盘,将这种查询执行过程中落盘占用的存储空间称为算子落盘空间。用户算子落盘空间管理用于限制用户查询执行过程中算子落盘占用的空间限额。 该特性仅8.1.1及以上集群版本支持。 GaussDB(DWS)管控面目前仅支持模式空间管理。
  • 操作场景 用户需要查看集群过去某个时刻的快照数据时,必须先恢复快照到新集群。 恢复快照到新集群时,恢复时长是由快照备份的数据量所决定的。如果快照备份的数据量大,恢复就比较慢。如果快照备份的数据量小,恢复就相对比较快。 自动快照是增量备份,在恢复快照时,GaussDB(DWS)会将最近一次的全量备份到本次快照之间的所有快照一起用于恢复集群。自动快照的备份频率是可以设置的,如果一周只备份一次,当增量数据量较大时,就会出现备份慢的情况,因此,建议适当地增加备份频率。 恢复快照到新集群的功能目前仅支持备份设备为OBS的快照。 恢复快照时默认创建一个与原始集群规格相同、节点数也相同的新集群。 当前恢复到新集群操作可保证原业务不中断。 使用冷热表后,不支持使用快照将冷数据恢复到新集群。 暂不支持细粒度恢复绝对表空间或相对表空间下的表。 不支持恢复逻辑集群与资源池到新集群。
  • 开启敏感操作保护 操作保护默认关闭,您可以参考以下步骤开启操作保护。 登录GaussDB(DWS)管理控制台。 在“控制台”页面,鼠标移动至右上方的用户名,在下拉列表中单击“安全设置”。 在“安全设置”页面中,切换至“敏感操作”页签,单击“操作保护”区域的“立即启用”。 图1 敏感操作 在“操作保护设置”页面中,选择“开启”,单击“确定”后,开启操作保护。 用户如果进行敏感操作,将进入“操作保护”页面,选择认证方式,包括邮箱、手机和虚拟MFA三种认证方式。 如果用户只绑定了手机,则认证方式只能选择手机。 如果用户只绑定了邮箱,则认证方式只能选择邮件。 如果用户未绑定邮箱、手机和虚拟MFA,进行敏感操作时,系统将提示用户绑定邮箱、手机或虚拟MFA。 如需修改验证手机号、邮件地址,请在账户中心修改。详情请参见IAM基本信息。 当您开启操作保护,在进行敏感操作时,系统会先进行敏感操作保护。 例如在您进行删除集群操作时,会弹出敏感操作保护验证框,需要选择一种验证方式进行验证,避免误操作带来的风险和损失。
  • 资源管理计划简介 资源管理计划功能是GaussDB(DWS)为客户提供的资源管理高级特性,客户可以通过创建资源管理计划,向计划中添加多个时间阶段,并为每个阶段配置不同的资源配比。当启动计划时,计划就会按照配置在不同的时间段自动切换资源配置。如果客户在不同的时间段运行不同的业务,而这些业务又会占用不同比重的资源,使用资源管理计划功能可以很好的帮助客户实现不同时间段的资源配置自动切换。 资源管理计划支持8.1.0.100及以上集群版本。
  • 缩容对系统的影响 缩容前,需关闭创建了临时表的客户端连接,因为在缩容过程中及缩容成功之前创建的临时表将会失效,操作临时表也会失败。但是缩容后创建的临时表不受影响。 在执行缩容操作后,集群会进行一次自动快照,快照创建成功后进行集群缩容,若用户不想自动创建快照,可以在缩容界面选择取消自动备份功能。 缩容前,需确保倾斜率不超过10%,脏页率没有硬性指标,但对于50G以上的大表,建议倾斜率不要超过20%~30%。 正在缩容的集群禁用重启集群、扩容集群、创建快照、节点管理、智能运维、资源管理、参数修改、安全设置、日志服务、重置数据库管理员密码和删除集群的功能。 离线缩容过程中,应该停止所有业务或运行少量查询语句。表重分布期间会对表加共享锁,所有插入、更新、删除操作和表DDL操作都会长时间阻塞,会出现等锁超时情况。一旦表重分布完成后方可正常访问。在重分布执行过程中,应当避免执行超过20分钟的查询(在重分布执行时申请写锁的默认时间为20分钟)。否则可能导致重分布出现等待加锁超时失败的问题。 在线缩容过程中,表重分布期间用户可以对该表执行插入、更新、删除等操作,但重分布过程仍然会短时间阻塞用户的数据更新操作,会影响用户语句的执行性能。缩容重分布过程会消耗大量的CPU和IO资源,因此会对用户作业性能影响较大,应该尽可能在停止业务或业务轻载的情况下执行缩容重分布。 在线缩容删除节点的瞬间,如果有DDL语句正在执行,例如创建schema或function并发执行,这些DDL可能因为DN不存在而报错,用户重试即可成功。 如果集群缩容失败,数据库不会在后台自动执行缩容回滚操作,此时数据库所有运维操作不可用,需要用户在管理控制台页面上单击缩容按钮来重新执行数据库缩容操作。 在云原生9.0.2版本缩容场景下,新集群的bucket数量不满足条件:每个DN分配的bucket数量在[3, 20]之间时,系统会触发调整bucket的缩容。bucket数量可以通过GUC参数table_buckets查看。 此bucket缩容目前仅支持离线模式,使用方式与现有缩容相同,触发修改bucket的缩容过程为系统自动判断和执行。 触发过程集群会重启,关闭所有连接,重启会花费数分钟。 重启完毕后,数据库可以读,但不允许写,直到数据重分布结束。
共100000条