1. 场景描述

greenplum集群部署好后,软件老王在实际使用过程中碰到一些问题,简单记录下,希望能帮到有需要的朋友。

2 .解决方案

2.1 gpcc监控地址

说明:非常重要,greenplum集群监控,可以监控数据库集群使用情况,包括cpu、内存、硬盘,执行情况等。

http://192.168.85.158:28080
gpmon
gpmon

2.2 典型创建表

软件老王说明:

(1)WITH (appendonly=true, compresslevel=5)表明是只在后面新增数据,压缩比是5级(1-10);

(2)DISTRIBUTED BY (laowang),分布键,按照这个字段分布到各个segement服务器;

(3)PARTITION ,按时间分区。

CREATE TABLE "public"."t_ruanjianlaowang" (
"laowang" text,
"timestamp" text,
)
WITH (appendonly=true, compresslevel=5)
DISTRIBUTED BY (laowang)
PARTITION BY RANGE(timestamp)
(
PARTITION t_ruanjianlaowang_20170701 START ('2017-06-01 00:00:00'::timestamp without time zone) END ('2017-07-01 00:00:00'::timestamp without time zone),
PARTITION t_ruanjianlaowang_20170801 START ('2017-07-01 00:00:00'::timestamp without time zone) END ('2017-08-01 00:00:00'::timestamp without time zone)
)

2.3 创建测试表,测试分页数据是否重复

说明:创建测试表,测试分页数据是否重复

--创建测试表
create table test_ischongfu2 as select * from t_ruanjianlawoang limit 1 offset 0; --插入数据
insert into test_ischongfu2 select * from t_ruanjianlawoang limit 1000 offset 0;
insert into test_ischongfu2 select * from t_ruanjianlawoang limit 1000 offset 1001;
insert into test_ischongfu2 select * from t_ruanjianlawoang limit 1000 offset 2001;
insert into test_ischongfu2 select * from t_ruanjianlawoang limit 1000 offset 3001;
insert into test_ischongfu2 select * from t_ruanjianlawoang limit 1000 offset 4001;

2.4 创建外部表

软件老王说明:

创建外部表,速度超级快,10万数据,几秒就完成了。

CREATE EXTERNAL TABLE t_ex_ruanjianlaowang (
laowang1 double precision,
laowang2 double precision,
laowang3 varchar(100)
) location ('gpfdist://192.168.85.158:8081/d.csv') format 'csv' (DELIMITER ',');

2.5 删除外部表

说明:spark导入数据后,会生成很多外部表垃圾数据,也可以批量删除下。

drop external table spark_3f59d3ff03a55cd3_3d9d854163f8f07a_driver_73   ;
drop external table spark_3f59d3ff03a55cd3_3d9d854163f8f07a_driver_72 ;
drop external table spark_3f59d3ff03a55cd3_3d9d854163f8f07a_driver_60

2.6 正常建表

说明:

不分区,5级压缩,分布键为laowang1。

CREATE TABLE t_ruanjianlaowang(
laowang1 double precision,
laowang2 double precision
)
WITH (appendonly=true,orientation=column,compresstype=zlib,COMPRESSLEVEL=5)
distributed by (laowang1);

2.7 greenplum创建资源队列

说明:集群共享的时候,对greenplum集群资源进行分配。

----新增插入role
create role gpinsertrole with login password 'gpinsertrole';
--权限控制感觉有问题,直接在navcat上更改为超级管理员可能会快点
GRANT ALL PRIVILEGES ON DATABASE "db_ruanjianlawoang" TO gpinsertrole; create resource queue q_pginsert with (ACTIVE_STATEMENTS=10,MEMORY_LIMIT='2000MB',PRIORITY=HIGH,COST_OVERCOMMIT=true,MIN_COST=100,MAX_COST=10000);
alter role gpinsertrole resource queue q_pginsert;

2.8 有关是否走索引

大批量插入数据后,有时候会不走索引,需要操作下。

Greenplum中的vacuum和analyze

vacuum t_ruanjianlaowang;

I’m 「软件老王」,如果觉得还可以的话,关注下呗,后续更新秒知!欢迎讨论区、同名公众号留言交流!

greenplum数据库常用操作的更多相关文章

  1. php模拟数据库常用操作效果

    test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...

  2. DBA必备:MySQL数据库常用操作和技巧

    DBA必备:MySQL数据库常用操作和技巧 2011-02-25 15:31 kaduo it168 字号:T | T MySQL数据库可以说是DBA们最常见和常用的数据库之一,为了方便大家使用,老M ...

  3. MySQL数据库常用操作和技巧

    MySQL数据库可以说是DBA们最常见和常用的数据库之一,MySQL的广泛应用,也使更多的人加入到学习它的行列之中.下面是老MySQL DBA总结的MySQL数据库最常见和最常使用的一些经验和技巧,分 ...

  4. Mysql数据库常用操作语句大全

    零.用户管理: 1.新建用户: >CREATE USER name IDENTIFIED BY 'ssapdrow'; 2.更改密码: >SET PASSWORD FOR name=PAS ...

  5. JDBC数据库常用操作(mysql)

    JDBC英文名称:JavaDataBaseConnectivity中文名称:java数据库连接简称:JDBCJDBC是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组 ...

  6. Mysql数据库常用操作整理

    0.说明 MySQL数据库是一个十分轻便的数据库管理系统,相比大型的数据库管理系统如Oracle,MySQL更拥有轻便.灵活.开发速度快的特色,更适用于中小型数据的存储与架构,被数以万计的网站采用.从 ...

  7. MySQL数据库 常用操作

    1:使用SHOW语句找出在服务器上当前存在什么数据库: mysql> SHOW DATABASES; 2:创建一个数据库MYSQLDATA mysql> CREATE DATABASE M ...

  8. Oracle 数据库常用操作语句大全

    一.Oracle数据库操作 1.创建数据库      create database databasename 2.删除数据库      drop database dbname 3.备份数据库 完全 ...

  9. Yii2框架 数据库常用操作

    通用: use yii\db\Query; $query = new Query(); 查询: Query: $rows = (new \yii\db\Query()) ->select(['c ...

随机推荐

  1. tar:file-changed-as-we-read-it报错处理

    在使用tar命令对Mysql的数据目录进行备份打包时出现如下报错: tar cvzf mysql.tgz mysql /bin/tar: /path/to/mysql: file changed as ...

  2. 创建git密钥

    前言 git使用https协议,每次pull,push都要输入密码,使用git协议,使用ssh秘钥,可以省去每次输密码 大概需要三个步骤: 一.本地生成密钥对: 二.设置github上的公钥: 三.修 ...

  3. Docker+Cmd+Cli+Git之前端工程化纪要(一)整体目标

    之前一版的工程化核心产物就是一个IDE,即利用python+node将webpack等技术将FE的开发.编译.部署上线等环境集成在sublime中,产出了一个核心工具.但随着长期的使用与技术栈的优化升 ...

  4. Python——urllib函数网络文件获取

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...

  5. mysql插入数据报错一二

    上周selenium+phantomjs+python3简单爬取一个网站,往数据库写数据遇到以下两个问题,记录一下: 报错一:Data truncated for column 'update_tim ...

  6. XXE学习(一)——XML基础

    XXE学习(一)——xml基础 一.XML简介 XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据 ...

  7. python2.7.6安装easy_install (windows 64 环境)

    1.复制以下代码保存到easy_install.py文件中(文件名可随意命名)并将该文件放到python的安装路径中(如:D:\Python27) #!/usr/bin/env python &quo ...

  8. Ubuntu pppoe宽带拨号相关问题

    因为可视化界面没有相关设置,因此采用终端命令的方法. 测试环境:Ubuntu 18.0.4 pppoe的配置:$ sudo pppoeconf 然后进入此界面进行一系列宽带拨号的设置. 联网:$ su ...

  9. JDBC概述及编程步骤详解

    目录 一.JDBC概述 二.JDBC编程步骤(以MySQL为例) 1.导入jar包 2.加载数据库驱动 3.通过DriverManager获得Connection对象 3.定义SQL语句 4.利用Co ...

  10. python读入写入中文名图片

    import os import cv2 import numpy as np # 读入中文命名图片 def cv_imread(in_path): cv_img = cv2.imdecode(np. ...