在greenplum运行过程中,Segement很有可能因为压力大出现不可用的情况,

主备Segement发现了切换,或是主备Segement网络断开,数据不同步了。在

默认情况下,如果GreenPlum4.X版本中,有一个Segment失败了,数据库还是会

正常运行的,如果是主Segemnt失败了,则切换到备Segment上,这样必须对Segment

是否正常加以监控,一般有以下两种监控方法:

1、检查gp_segment_configuration以确定是否有Segment处于down的状态,或者查看

gp_configuration_history以观察最近数据库是否发生了切换。

select * from gp_segment_configuration where status='d' or mode <>'s';

2、Segemnt已经卡住了,但是Master没有感知到Segment失败,这时候,首先就是要监控

当前运行的SQL是有否超过很长时间的。其次就是要在Greenplum中建立一张心跳表,这张

心跳表至少要在每个Segement都有一条记录,然后不断去更新表中的所有记录,当发现

这个SQL超过一定时间都没执行完,就要发出告警。

操作步骤如下:

1)创建临时表,插入10000条数据

create table xdual_temp

as

select generate_series(1,10000) id

distributed by (id);

2)建立心跳表,2个字段,第二个字段是timestamp类型的,每次心跳检测数据都会更新

create table xdual (id int,update_time timestamp(0))

distibuted by (id);

3)向心跳表中每个Segment中插入一条数据

insert into xdual(id,update_time)

select id,now() from

(select id,row_number() over(partition by gp_segment_id order by id) rn

from xdual_temp) t;

4)心跳检测

运行update xdual set update_time=now();

只要这个SQL运行正常,就代表每一个Segment都是正常的。

Greenplum 监控segment是否正常的更多相关文章

  1. Greenplum failed segment的恢复方法

    [前记] Segment检测及故障切换机制GP Master首先会检测Primary状态,如果Primary不可连通,那么将会检测Mirror状态,Primary/Mirror状态总共有4种:1. P ...

  2. Greenplum failed segment的恢复方法--primary与mirror都可修复

    当在使用greenplum过程中有不当的操作时,可能会出现segment节点宕掉的情况(比如在greenplum运行的过程中停掉其中几台segment节点的服务器),通过下面的方法可以恢复segmen ...

  3. [原]Greenplum failed segment的恢复方法

    当在使用greenplum过程中有不当的操作时,可能会出现segment节点宕掉的情况(比如在greenplum运行的过程中停掉其中几台segment节点的服务器),通过下面的方法可以恢复segmen ...

  4. GreenPlum安装greenplum-cc-web监控

    一. GreenPlum集群安装环境 由虚拟机搭建的一台master两台segment. 二.安装前准备 1) 所需安装包 GreenPlum监控安装包: greenplum-cc-web-3.0.2 ...

  5. Greenplum数仓监控解决方案(开源版本)

    Greenplum监控解决方案 基于Prometheus+Grafana+greenplum_exporter+node_exporter实现 关联图 一.基本概念 1.Prometheus ​ Pr ...

  6. GreenPlum 大数据平台--安装

    1. 环境准备 01, 安装包准备: Greenplum :  >>>>链接地址 Pgadmin客户端 :  >>>链接地址 greenplum-cc-web ...

  7. GreenPlum 最佳实践

    数据模型 Greenplum数据库是一种shared nothing的分析型MPP数据库.这种模型与高度规范化的/事务型的SMP数据库有显著区别.Greenplum数据库使用非规范化的模式设计会工作得 ...

  8. Greenplum实战之查询优化

    本文主要分为三部分: GP优化需要准备的一些关于优化之外的知识,包括清空缓存.性能监控.执行计划分析. 具体优化措施,从以下四个方面考虑: 表.字段 sql GP配置.服务器配置 硬件及节点资源 GP ...

  9. Greenplum 在Linux下的安装

    1.实验环境 1.1.硬件环境 Oracle VM VirtualBox虚拟机软件:三台Linux虚拟机:Centos 6.5:数据库:greenplum-db-4.3.9.1-build-1-rhe ...

随机推荐

  1. ~json库的使用

    一.json简介 json全称"JavaScript Object Notation"(JavaScript对象表示法)它是一种基于文本,独立于语言的轻量级数据交换格式.易于让人阅 ...

  2. 1144: 零起点学算法51——数组中删数(C语言)

    题目: 题目来源WUSTOJ 源代码: #include<stdio.h> int main() { int n, m, i, a[20]; while (scanf("%d&q ...

  3. fatfs系统的移植

    integer.h   FATFS的数据类型定义(一般不需要更改,其他的文件都需要引用这个文件的内容) ffcon.h FATFS的配置文件,配置项的各个参数都需要在这里修改 一个细致的讲解fatfs ...

  4. 最简容器动手小实践——FC坦克大战游戏容器化

    FC 经典力作相信大家一点也不陌生.童年时期最频繁的操作莫过于跳关,在 果断跳到最后一关之后,一般都是以惨败告终,所以还是一关一关的过原始积累才能笑到最后.这款游戏的经典就在于双人配合,守家吃装备.也 ...

  5. 【转】Java中File常用的方法汇总

    创建:createNewFile()在指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false.mkdir() 在指定位置创建一个单级文件夹.mkdirs() 在指定位置创建 ...

  6. vue 做的tabBar组件

    效果如下 调用 <tabbar :selected='selected'></tabbar> 组件 <template> <div class='tabbar ...

  7. OpenStack kilo版(8) 部署cinder

    直接将cinder服务和块设备都部署在controller节点上 在controller节点添加一块100G的块设备/dev/sdb 配置数据库 (root@localhost) [(none)]&g ...

  8. C# - 常见问题整理

    关于循环和try{}..catch{}的嵌套使用 foreach(var item in items) { try { try{ } catch(Exception ex) { throw; // 将 ...

  9. Flutter——消息框(Fluttertoast)

    引入依赖: dependencies: fluttertoast: ^3.1.3 import 'package:flutter/material.dart'; import 'package:flu ...

  10. Flutter——TabBar组件(顶部Tab切换组件)

    TabBar组件的常用属性: 属性 描述 tabs 显示的标签内容,一般使用 Tab 对象,也可以是其他的Widget  controller TabController 对象 isScrollabl ...