赞
踩
GaussDB是华为开发的一种分布式关系型数据库管理系统。GaussDB支持主备集群和分片集群两种部署模式,它们在功能和架构上有一些区别。
华为GaussDB相比PostgreSQL做了哪些内核优化?
主备集群是传统的数据库高可用架构,包括一个主节点和一个或多个备节点。主节点处理所有的写操作和大部分的读操作,而备节点用于冗余和故障恢复。主备集群的特点包括:
cm_ctl query -Cvipd gs_om -t status --detail > a.txt [omm@gaussdb-b0e95ed4-cm-0 ~]$ cat a.txt [ CMServer State ] node node_ip instance state --------------------------------------------------------------------------- 1 245.0.1.49 245.0.1.49 1 /data/cluster/data/cm/cm_server Primary 2 245.0.0.104 245.0.0.104 2 /data/cluster/data/cm/cm_server Standby 3 245.0.1.52 245.0.1.52 3 /data/cluster/data/cm/cm_server Standby [ ETCD State ] node node_ip instance state ------------------------------------------------------------------------- 1 245.0.1.49 245.0.1.49 7001 /data/cluster/data/etcd StateFollower 2 245.0.0.104 245.0.0.104 7002 /data/cluster/data/etcd StateLeader 3 245.0.1.52 245.0.1.52 7003 /data/cluster/data/etcd StateFollower [ Cluster State ] cluster_state : Normal redistributing : No balanced : No current_az : AZ_ALL [ Datanode State ] node node_ip instance state | node node_ip instance state | node node_ip instance state ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------- 4 245.0.0.2 245.0.0.2 6001 /data/cluster/data/dn/gaussdb-b0e95ed4-dn0-0 P Standby Normal | 5 245.0.1.135 245.0.1.135 6002 /data/cluster/data/dn/gaussdb-b0e95ed4-dn0-1 S Primary Normal | 6 245.0.1.61 245.0.1.61 6003 /data/cluster/data/dn/gaussdb-b0e95ed4-dn0-2 S Standby Normal
su - omm
gsql -d postgres -p 42000 -r
\x
select * from pg_stat_replication;
select * from pg_replication_slots;
分片集群是为了应对大规模数据和高并发负载而设计的解决方案。它将数据分散存储在多个节点上,每个节点称为一个分片,每个分片都是一个独立的数据库实例。分片集群的特点包括:
GaussDB(for openGauss)是分布式架构,数据分布在各个DN上,设计好的数据分布策略是分布式数据库设计中最关键的环节。
cm_ctl query -Cvipd [ CMServer State ] node node_ip instance state ------------------------------------------------------------------------------- AZ1 1 245.0.1.46 245.0.1.46 1 /data/cluster/data/cm/cm_server Standby AZ1 2 245.0.0.120 245.0.0.120 2 /data/cluster/data/cm/cm_server Standby AZ1 3 245.0.3.43 245.0.3.43 3 /data/cluster/data/cm/cm_server Primary [ ETCD State ] node node_ip instance state ----------------------------------------------------------------------------- AZ1 1 245.0.1.46 245.0.1.46 7001 /data/cluster/data/etcd StateFollower AZ1 2 245.0.0.120 245.0.0.120 7002 /data/cluster/data/etcd StateFollower AZ1 3 245.0.3.43 245.0.3.43 7003 /data/cluster/data/etcd StateLeader [ Cluster State ] cluster_state : Normal redistributing : No balanced : No current_az : AZ_ALL [ Coordinator State ] node node_ip instance state ------------------------------------------------------------------------------------------- AZ1 7 245.0.0.57 245.0.0.57 5001 /data/cluster/data/cn/gaussdb_cadcaebf_cn_0 Normal AZ1 8 245.0.1.6 245.0.1.6 5002 /data/cluster/data/cn/gaussdb_cadcaebf_cn_1 Normal AZ1 9 245.0.3.67 245.0.3.67 5003 /data/cluster/data/cn/gaussdb_cadcaebf_cn_2 Normal [ Central Coordinator State ] node node_ip instance state ------------------------------------------------------------------------------------------- AZ1 7 245.0.0.57 245.0.0.57 5001 /data/cluster/data/cn/gaussdb_cadcaebf_cn_0 Normal [ GTM State ] node node_ip instance state sync_state ----------------------------------------------------------------------------------------------------------------------------- AZ1 4 245.0.1.83 245.0.1.83 1001 /data/cluster/data/gtm/gaussdb_cadcaebf_gtm_0 P Standby Connection ok Sync AZ1 5 245.0.0.102 245.0.0.102 1002 /data/cluster/data/gtm/gaussdb-cadcaebf-gtm-1 S Standby Connection ok Sync AZ1 6 245.0.3.112 245.0.3.112 1003 /data/cluster/data/gtm/gaussdb-cadcaebf-gtm-2 S Primary Connection ok Sync [ Datanode State ] node node_ip instance state | node node_ip instance state | node node_ip instance state ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ AZ1 10 245.0.1.56 245.0.1.56 6001 /data/cluster/data/dn/gaussdb-cadcaebf-dn0-0 P Standby Normal | AZ1 11 245.0.0.118 245.0.0.118 6002 /data/cluster/data/dn/gaussdb-cadcaebf-dn0-1 S Standby Normal | AZ1 12 245.0.3.90 245.0.3.90 6003 /data/cluster/data/dn/gaussdb-cadcaebf-dn0-2 S Primary Normal AZ1 13 245.0.1.138 245.0.1.138 6004 /data/cluster/data/dn/gaussdb-cadcaebf-dn1-0 P Standby Normal | AZ1 14 245.0.0.59 245.0.0.59 6005 /data/cluster/data/dn/gaussdb-cadcaebf-dn1-1 S Primary Normal | AZ1 15 245.0.3.10 245.0.3.10 6006 /data/cluster/data/dn/gaussdb-cadcaebf-dn1-2 S Standby Normal ~
总结来说,主备集群适用于常规的高可用需求,提供数据冗余和故障恢复能力,而分片集群则适用于大规模数据和高并发负载的场景,提供水平扩展和分布式查询的能力。选择适合的架构取决于你的应用需求和规模。
gsql -d postgres -p 42000 --集中式是登录主dn
gsql -d postgres -p 42050 --分布式登录cn,直接登录dn报错
CMServer State(CM服务器状态):
ETCD State(ETCD状态):
Cluster State(集群状态):
Coordinator State(协调器状态):
Central Coordinator State(中心协调器状态):
GTM State(全局事务管理器状态):
综上所述,ETCD State提供了ETCD实例的状态信息,CMServer State提供了CMServer实例的状态信息,Cluster State提供了集群的整体状态信息,Coordinator State提供了协调器实例的状态信息,Central Coordinator State提供了中心协调器实例的状态信息,而GTM State提供了GTM实例的状态信息。这些状态信息对于了解集群的运行状况和各个组件的状态非常重要。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。