greenplum理论知识——笔记

集群有两种角色:单master和多segment

—— master:中心节点,存储所有的元数据,包括database、schema、table等全局性的信息;sql解析、优化、生成执行计划,把sql语句分发给所有segment;监控segment节点,管理他们主从切换;简单一句话说就是master只负责执行计划生成、分发、收集结果,数据字典管理,不承担数据的处理,存放等

—— segment:计算和存储节点(就好比各个小数据库),执行master分发推送过来的sql语句(注:是所有节点一起执行),然后所有的segment节点把执行结果返回给master,再由master统一返回到客户端。
注:访问只会访问到master上面,不会与segment直接交互!

对于数据安全方面greenplum已经有了对应的保障机制:
—— master:有一个standby备用节点,当注节点异常的时候可以手动切换到standby master节点上;如果给他配一个VIP(virtual IP)。可以通过keepalived实现自动的秒级异常切换。

—— segment:每个segment都有两个节点(如果配置文件都去掉注释的话),一个primary,一个mirror,正常集群工作状态下mirror备份对应primary的数据(类似MySQL主从):

—— primary:集群默认优先使用该节点工作。
—— mirror:当对应的primary节点出现问题不能工作时,对应的mirror节点会自动切换顶替上primary工作。

猜你喜欢

转载自blog.csdn.net/weixin_44466805/article/details/89456754