GaussDB(DWS)数据库-集群管理篇


集群创建与删除

  1. 集群选型
    • 产品类型:云数仓、标准数仓、IoT数仓、实时数仓
      • 云数仓: 高性价比,支持冷热数据分析,存储、计算弹性伸缩,并按需、按量计价。适用于“库、仓、市、湖”一体化的融合分析业务,适合50节点以内的中小型数据仓库。
      • 标准数仓:高性能、高扩展、高可用、易运维的企业级数据仓库,支持2048节点、20PB级超大规模数据分析能力。适用于大型企业数仓,上云后体验不变。
      • IoT数仓:在标准数仓基础上,提供高效的时序计算和IoT分析能力,支持实时和历史数据关联。适用于物联网、IoT等实时分析场景。
      • 实时数仓:在大规模数据查询和分析能力基础上,提供高并发、高性能、低时延的事务处理能力。适用于HTAP混合负载场景,“一库两用,生产即分析”,支持单机部署和集群部署两种部署方式。
    • 选择好产品类型后,用户可以根据数据量、业务负载以及性能需求,选择能够支撑业务应用的集群规格和节点数量,CPU数和内存越大,数量越多,存储与计算能力越强。
    • 刚开始使用DWS服务时,用户也可以先创建一个规格较小的集群,今后随着数据量和业务负载的变化,再自由扩展而不中断业务。
  2. 增删CN:
    • 当用户的集群创建后,实际需要的CN数量会随着业务需求而发生变化,因此管理CN节点功能的实现,使用户可以根据实际需求动态调整集群的CN数量
    • 集群创建时默认的CN数量为3,用户可以根据实际发放节点数量,调整CN数量,范围为2~20
  3. 删除集群:
    • 当用户不再需要使用某个集群时,可以删除该集群。删除的集群无法恢复,同时集群中的用户数据、自动快照也会自动删除,而且无法再访问。删除集群时不会删除手动快照。
    • 如果集群绑定了弹性IP,建议用户勾选“释放与集群绑定的弹性IP”,将待删除集群的弹性IP资源释放。如果选择不释放,弹性IP将保留,用户可以将该弹性IP绑定到其他DWS集群或者云资源上使用,该弹性IP将仍然按照虚拟私有云(VPC)服务的弹性公网IP计费规则进行计费。

集群监控管理

  1. 节点监控:提供针对当前DWS中所有节点的资源使用情况明细
    • 概览:包含节点资源一览图
      • 内容:cpu资源使用率,内存资源使用率,数据盘的平均资源使用率,磁盘IO,TCP协议重传率,网络IO
    • 磁盘分页:提供细粒度的磁盘使用情况,说明节点各个磁盘及对应功能(数据盘,日志盘,系统盘)
      • 内容:磁盘容量,读速率,写速率,磁盘IO等待时间,磁盘IO服务时间,磁盘IOPS指标。
    • 网络分页:提供节点网卡的详细信息
      • 内容:展示名称,网卡状态,接收丢包数,接收速率,发送速率
    • 节点所有页面都可以通过“监控”列查看过去1小时,3小时,12小时,24小时,7天,15天的各个指标变化。
  2. 性能监控:提供集群,数据库,节点三个维度相关指标过去一个月的变化趋势,并提供了监控面板供指标集中展示。
    • 集群维度的监控指标,包括CPU,内存,磁盘IO,网络IO,集群状态,集群中异常CN数量,SQL堆积数量。
    • 数据库维度提供了活跃会话数,插入行数,删除行数,修改行数。
    • 节点维度提供了所有节点相关资源使用情况,并支持对比不同节点的变化趋势。
    • 集群监控支持查看时间: 过去1小时、3小时、12小时、24小时,7天查看时间,支持自定义时间范围。
    • 数据库监控支持查看时间:过去1小时,3小时,12小时,24小时。
  3. 实时查询:提供了当前系统中的会话和SQL执行情况,并提供了针对会话和查询的查杀功能。
    • 实时会话支持查看会话的执行时间,对应的应用名称,接入CN,锁持有状态,锁定对象可以用来排查系统中的长会话或者锁争抢问题。
    • 实时查询提供了细粒度的查询相关资源使用情况,比如CPU,内存,IO,资源池,查询的排队状态等
    • 会话和查询都支持根据某一条件查杀问题会话或查询。
    • 会话:
      • 实时会话可以根据多条件过滤查看,当前系统中存在的锁持有的会话,当出现锁争抢是可以根据锁定对象,快速排查相关的执行SQL
      • 实时会话主要是根据pg_stat_activity和pg_locks信息汇聚上报获取。实时会话默认是启用状态。
    • 查询:
      • 实时查询当前仅支持8.1.2以上集群使用,默认不打开,打开需要配置guc参数:enable_resource_track 需要配置为on,resource_track_cost需要根据需求配置,如果配置为0,对所有语句进行监控。
      • 实时查询主要的是根据pg_session_wlmstat和gs_wlm_session_statistics信息汇聚上报获取。
  4. 资源池监控:主要反应集群资源池信息,包括CPU使用率,磁盘使用率,内存,语句并发等,可以实时反应集群资源池运行情况。
  5. SQL诊断:
    • 针对已经执行完成的查询中,存在告警信息的SQL进行集中展示。
    • SQL诊断对于异常的查询会同步提供SQL语句和执行计划,还有语句的资源使用情况。
    • SQL诊断依赖历史查询功能,默认不打开,打开需要配置GUC参数。
    • 历史查询功能主要是根据pgxc_wlm_session_info信息采集上报获取。
  6. SQL探针
    • SQL探针工具,支持一键执行和定时执行两种探针任务等功能,并可以针对超时的探针SQL提供告警上报信息。
  7. 表诊断:提供了集群中数据表,关键运行状态的统计数据和诊断工具。包括:
    • 表倾斜率:对于集群中数据表统计信息进行监控分析,展示倾斜率高于5%并且表大小TOP 50的表信息。
      • 造成表倾斜率高的原因为不合理的分布列选择,将引发算子计算/数据下盘倾斜严重,导致不同的DN的处理压力不同,影响业务性能,并容易造成单DN磁盘使用率过高。
      • 用户可以通过查询表倾斜率,根据表的大小和倾斜率,对倾斜严重的表重新选择分布列,其中8.1.0及以上集群版本,可以直接通过alter table 语法进行调整表。
    • 表脏页率:对于集群中数据表统计信息进行监控分析,展示脏页率高于50%并且表大小TOP 50的表信息。
      • 对于数据表的DML操作将影响数据表数据,导致存在无用的脏数据,过多的脏数据将占据磁盘空间,影响集群可用容量。用户可以通过查询表的脏页率,根据表的大小和脏页率,对较大表和脏页率过高的表进行处理。
      • 对于脏页率高的表,可以通过手动执行vacuum full操作回收表空间,或者通过“智能运维”操作时执行vacuum full操作。
    • DDL审核:DDL审核是SQL审核范畴,为了避免不合理的DDL设计影响实际业务运行,该工具会对DDL元数据进行规范性检测,方便用户对潜在的表定义问题提前感知,其结果也可作为性能问题定位的参考数据之一。
      • DDL审核对于审核不通过的数据表,可以通过详情页面查看问题。
  8. 告警管理
    • 包含:查看告警规则,告警规则配置,告警信息订阅功能
    • 告警规则可以提供过去一周的告警信息统计和告警信息明细,方便用户自行查看租户下的告警。该特性除了以默认值的形式提供一套DWS告警最近实践外,还允许用户根据自己的业务特点,个性化修改告警阈值。
    • 告警管理通过消息通知服务(Simple Message Notification,SMN)发送DWS告警通知,用户可订阅告警启用通知。
    • 告警规则配置:
      • 当前支持11种告警规则的配置。告警支持启停,只对部分集群生效。当前告警规则是诊断整个租户的告警规则生效。资源类有CPU,磁盘innode,磁盘使用率,磁盘I/O时延。业务类有语句堆积告警,语句下盘量过大告警,vacuum full 执行过长告警,资源池队列阻塞告警。工具类有SQL探针执行耗时超阈值。
    • dws监控系统使用典型场景:
      • 磁盘使用率高:配置节点数据盘使用率告警,根据实际需要配置阈值,如果发现该告警上报,则进一步排查系统的磁盘使用情况。
      • 磁盘只读问题:当发现数据盘使用率高,先查看“工具/表诊断/表脏页率”,对于脏页率较高的表数据,可以通过vacuum full做清理。如果清理之后可以解决,则可以通过配置智能运维,定位执行vacuum full。如果清理之后磁盘使用率还是较高,则需要重新评估当前系统的规格是否符合业务要求。

集群备份恢复管理

  1. 快照:
    • 定义:快照是对DWS集群在某一时间点的一次全量数据和增量数据的备份,记录了当前数据库的数据以及集群的相关信息,其中包括节点数量、节点规格和管理员用户名称等。快照创建方式包括手动创建快照和自动创建快照。
    • 备份:创建快照会将生成的备份文件存储到指定的备份介质中。华为云支持备份介质包括OBS(Object Storage Service)、SFS(Scalable File Service)
    • DWS提供免费的快照存储空间,免费容量等于集群储存空间,当快照数据存储空间超过免费空间大小时,超过部分按照OBS的计费规则进行计费。
    • 手动快照要点:
      • 手动快照支持集群级全量快照和schema级快照
      • 快照级别支持“cluster”和“schema”。schema级别快照依赖版本细粒度备份的特性开关。
      • 集群名称可选择一个指定集群,只能选择可用状态的集群。
      • 手动快照创建成功后会一直保存,直到从控制台中将其删除(即使集群删除,手动快照也不会删除。)
    • 自动快照:
      • 集群级自动快照采用差异增量备份,第一次创建自动快照为全量备份,以后每间隔一段时间就会做一次全量备份,全量备份作为基础版本。两次全量备份之间都是做增量备份,增量备份记录基于前一次备份所发现的更改。
      • 集群创建时,自动快照默认处于启用状态。自动增量快照默认为每8小时一次,全量快照每周日执行一次,快照保留期可设置为1-31天,默认为3天。用户也可以根据自身需求设置自动快照策略。
      • 在策略列表中自动快照开关默认为开启状态,保留天数默认为3天。
      • 关闭自动快照后,自动删除历史自动快照。
      • 快照类型设置为全量快照时,快照策略可选一次性和周期性
      • 快照策略时间需要设置为UTC,同时需要考虑业务所在时区的时差
    • 快照恢复:
      • 使用增量快照恢复时,DWS会将最近一次的全量备份到本次快照之间的所有快照,一起用于恢复集群。
      • 恢复快照到新集群时,恢复时长是由快照备份的数据量所决定的。
      • 恢复快照时,参数支持重新定义。其他默认参数默认与快照中的备份信息保持一致。
      • 规格确认无误后,便可执行恢复。待新集群状态变为“可用”,表示快照已恢复成功。
      • 集群级恢复支持恢复到当前集群。
      • 细粒度表级恢复:支持恢复单表和多表操作,依赖细粒度备份和细粒度恢复的特性白名单

集群容灾管理

  1. 概述:广义上,容灾是一个系统工程,包括所有与业务连续性相关的内容。对于IT而言,容灾是提供一个能防止用户业务系统遭受各种灾难影响破坏的计算机系统。狭义的容灾是指建立两套或多套功能相同的IT系统,互相之间可以进行健康状态监视和功能切换,当主要站点因为意外(如火灾、地震、城市供电中断等)停止工作时,整个应用系统可以利用辅助站点快速恢复,并继续工作。
  2. 容灾目的:容灾的主要目的是,当自然或人为的原因,导致生产系统发生灾难时,能够尽可能地保证业务的连续性。
  3. 容灾和备份的区别 :
    • 容灾主要针对火灾、地震等重大自然灾害,因此生产站点和容灾站点之间,必须保证一定的安全距离;备份主要针对人为误操作、病毒感染、逻辑错误等因素,用于业务系统的数据恢复,数据备份一般是在同一数据中心进行。
    • 容灾系统不仅保护数据,更重要的目的在于业务的连续性;而数据备份系统只保护不同时间点版本数据的可恢复。一般首次备份为全量备份,所需的备份时间会比较长,而后续增量备份则在较短时间内就可完成。
    • 容灾的最高等级可实现RPO=0;备份可设置一天最多24个不同时间点的自动备份策略,后续可将数据恢复至不同的备份点。
    • 故障情况下(例如地震、火灾),容灾系统的切换时间可降低至几分钟;而备份系统的恢复时间可能几小时到几十小时。
  4. RPO和RTO:
    • RPO(Recovery Point Objective):即数据恢复点目标,主要指的是业务系统所能容忍的数据丢失量
    • RTO(Recovery Time Objective):即恢复时间目标,主要指的是所能容忍的业务停止服务的最长时间,也就是从灾难发生到业务系统恢复服务功能,所需要的最短时间周期。
  5. 双集群容灾:
    • 容灾原理:
      • 生产集群(原集群)周期性做Roach备份,备份文件被同步scp到灾备集群。灾备集群(新集群)周期性做Roach恢复,灾备集群执行恢复操作期间,需要停止集群,其余时间可对外提供查询服务。生产集群故障后,通过switchover/failover命令将灾备集群升主,业务由灾备集群接管。
    • 容灾能力:GaussDB内核已具备该能力,DWS管控面已集成该能力
    • 方案限制:
      • 两套集群节点数可以不同,但实例逻辑拓扑要一致,主要指总DN个数需要相同。
      • 当前支持集群级别的数据同步,也支持细粒度的容灾,但是细粒度容灾受限于白名单使用。
      • 要求灾备集群具有足够的磁盘空间,存放完整的全量备份集(通常要求是集群数据量的两倍以上)
    • 性能说明:
      • RPO和RTO主要取决于增量数据同步的性能,以及增量同步的周期间隔。对于典型的主、备集群部署场景(物理机、SAS盘、集群内万兆网卡、集群间千兆网卡),在1T/天的数据增速下(集群节点数在30个以上时),最小可达RPO 1小时,最小可达RTO 1小时。带宽不是瓶颈的情况下,增量数据同步的性能至少在 30 MB/S/DN.

集群弹性伸缩管理

  1. 节点扩容:
    • 集群磁盘容量使用超过70%时进行扩容。
    • 在扩容配置中,默认配置将不使用在线扩容,并在扩容后自动进行离线重分布。
    • 如果使用在线扩容,默认将在扩容之后进行在线重分布操作。
    • 在线扩容以及在线重分布,相比离线模式对业务影响较小。在线重分布期间,用户可以对表执行插入、更新、删除,但重分布过程仍然会短时间阻塞用户的数据更新操作,会影响用户语句的执行性能。
    • 扩容重分布过程会消耗大量的CPU和IO资源,因此也会对用户作业性能影响较大,用户应该尽可能在停止业务情况下或业务轻载的情况下,执行扩容重分布。
  2. 如果用户的集群是EVS盘的云数仓类型,并且只是磁盘空间出现瓶颈,计算资源比较充足,用户可以通过磁盘扩容快速缓解存储资源不足的问题,磁盘扩容过程中无需暂停业务,并且不会造成CPU、内存等资源浪费。
  3. 节点缩容:当用户的计算或者存储资源冗余,超出业务需求时,可在控制台对已有集群进行缩容操作,以便节省成本。集群缩容时只能以安全环为单位减少集群节点的个数,比如用户的集群有9个节点,每3个节点为一个安全环,那么只能选择缩3个节点和6个节点。

集群资源管理

  1. 为解决用户资源隔离,以实现业务优先级,避免复杂业务阻塞资源,引入了资源池,每个资源池指定可以使用的CPU,内存、磁盘等大小,然后将用户与资源池关联,用户在使用时就只能使用该资源池可以使用的资源,以达到资源限制的目的。
  2. 创建资源池:
    用户可以对资源池进行创建、删除、修改(配置,异常规则,关联用户)等操作,队列的参数表示对该资源池的限制,其中CPU有配额和限额两个维度限制。配额:当多个资源池同时在一个CPU上执行时,各自使用时间比例。限额:限定该资源池可以运行的CPU数量。
  3. 创建资源管理计划:
    资源管理计划用于自动化的、周期性的对资产池中的资源进行变更,以便实现灵活的资源管理,如果有多个计划,只能生效一个。
  4. schema空间管控:
    模式空间管理,用于对模式空间大小的限额。

智能运维

  1. 概念:
    智能运维是DWS的常驻运维工具,可以帮助用户智能执行运维任务。智能运维会通过集群负载情况,选择合理时间窗、并发度完成用户指定的任务,在运维任务执行过程中,智能运维将时刻关注用户业务的变化,及时调整运维任务执行策略,以减轻对用户业务的影响。智能运维支持周期型和单次型任务的创建,执行时间窗可按照不同用户业务负载定制化。智能运维具备一定的高可用性,在集群异常的情况下,智能运维将重新执行失败的运维任务,若由于集群异常导致运维任务部分步骤无法完成,智能运维将尝试跳过失败的步骤,以节省用户运维时间窗的开销。
  2. 运维计划:
    用户可以对运维任务进行创建、删除和修改等操作。调度模式支持自动、指定目标和优先级模式。运维任务可支持单次型和周期型。周期时间窗时间设置为默认为本地时间,请您根据业务所在时区结合时差设置该项。同一天的时间段请不要重叠。
  3. 运维状态:
    在运维详情部分切换至运维状态模块。可查看运维任务运行的详细信息,状态包括:Waiting、Running、Finished和Canceled

基于公开来源信息, 学习资源来自华为云GaussDB(DWS)数据库官网


文章作者: 青山生柳
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 青山生柳 !
 上一篇
GaussDB(DWS)数据库-湖仓一体篇 GaussDB(DWS)数据库-湖仓一体篇
GaussDB(DWS)数据库-湖仓一体,主要介绍数据湖、湖格式和元数据服务。
2025-08-04
下一篇 
GaussDB(DWS)数据库-导入导出篇 GaussDB(DWS)数据库-导入导出篇
GaussDB(DWS)数据库-导入导出篇,主要介绍DWS数据仓库的主要的入库和出库的方式:外表、GDS、Flink。同时说明了DWS如何利用Flink来构建实时数仓,进而实现实时增量读和实时入库。
2025-08-03
  目录