目录
GP安装整体原则 2
平衡: 2
高可用: 2
部署方案: 3
Master和standby master分机部署 3
Primary segment于mirror segment分机部署 3
Segment mirroring方案 3
Group mirroring 3
Spread mirroring 4
Group+spread mirroring 4
同一主机segment个数怎么决定 4
Cpu\core数据 4
查询并发数 4
查询复杂度 4
单机primary segment总数不能过多 4
硬件选型 5
Master节点 5
网卡 5
内存 5
磁盘: 5
CPU 5
经验总结 5
存储规划 6
磁盘可用空间 6
文件系统开销 6
性能因素 6
用户数据空间及临时空间 6
用户数据容量 6
数据库用户数据=原始用户数据*1.4 6
系统数据容量 7
Catalog 7
Write ahead log 7
Database log文件 7
集群配置 7
数据库性能受短板限制
在性能、容量、成本上进行平衡
软硬件方面进行冗余(备份)
Group mirroring
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200508154936449.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L05laWdoYm9yX0w=,size_16,color_FFFFFF,t_70)
4个segment host节点,每个节点上两个segment两个mirror(平衡原则)
Host1 的primary 的mirror在host2上
缺点:如果host1挂掉,host2流量翻倍
Spread mirroring
Host1的primary mirror在host2和host3上
Host1挂掉之后,其余三台任何一个挂掉均不可用
Group+spread mirroring
Pivotal Supported Greenplum必须部署Mirror Segment
Cpu\core数据
查询并发数
查询复杂度
高复杂度 高并发数下,降低segment数目
单机primary segment总数不能过多
争抢集群资源,效果不好
网卡
2块万兆网卡内部互联
1-2块千兆网卡带外管理及接入客户网络
内存
DDR 64G以上,推荐256
磁盘:
6块 600G\900G 10K RPM SAS盘
采用raid5或者raid10
单独预留hotspare盘
1块raid卡 cache1GB以上 掉电保护(1块raid只能带16块盘)
不存储用户数据,只存储元数据,负载较轻
磁盘数不要过多,否则raid卡和网络会变为短板
CPU
2路8核以上
主频2.5GHZ以上
经验总结
磁盘故障最常见
分析型查询 SAS>SATA
高并发小IO查询:优先SSD或者NVMe
Raid卡一定带CACHE功能
硬件实时监控
预留灾备机器
原始磁盘容量:raw_capacity = disk_capacity * number_of_disks
文件系统格式 (10%)
Raid级别:raid5 10% raid10 50%
Formatted_disk_space = (raw_capacity * 0.9)/2
磁盘容量保持70%最佳
Usable_disk_space=formatted_disk_space*0.7
用户数据容量U 临时空间容量u/3
With mirror: usable_disk_space=(2*U)+U/3
Without mirror:usable_disk_space=u+u/3
数据库用户数据=原始用户数据*1.4
Page开销
每32KB的page需要20字节header开销
Tuple开销
每个heap tuple需要24字节header开销
每个AO tuple需要4字节header开销
Attribute开销
类型有关
Index开销
Btree索引与唯一值数目有关
Catalog
每个segment约300MB
Write ahead log
WAL分为多个64MB的段文件
段文件数据最多为2checkpoint_segment+1(默认checkpiont_segment=8)
美格尔segment上WAL最多(28+1)*64MB = 1088MB
Database log文件
Log rotation机制
系统要求
系统设置
禁用selinux
建议禁用firewall
操作系统参数设置
文件数、用户数等
打通各机器网络
I/O设置
Xfs挂载选项
设置blockdev预读尺寸
设置磁盘IO调度器为deadline
其他设置
数据库管理员账户 gpadmin
系统时钟同步 NTP
集群安装
RPM安装
所有节点上安装RPM
用户创建GPADMIN
用户设置节点间无密码ssh访问
Binary安装
只在master上安装 运行gpseginstall
Gpseinstall负责
集群间拷贝binary
创建gpadmin
设置节点间无密码ssh访问
集群验证
硬件性能验证
Gpcheckperf
网络性能
磁盘IO
内存带宽
集群初始化
配置文件
数据目录
Pg-hba.conf
环境变量
可选组件安装
Procedural language
Pl\java
Pl\python
Pl\R
Pl\perl
Machine learning
Madlib
Geospatial
postgis
gppkg
gp包管理器
集群间安装GP extension及其依赖库
集群间扩容