Greenplum-表空间笔记

2024-02-22 22:58
文章标签 笔记 空间 greenplum

本文主要是介绍Greenplum-表空间笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

                                                                                        Greenplum表空间

环境:http://blog.csdn.net/sunziyue/article/details/49026913

Greenplum创建表空间时,需要指定filespace。filespace是服务器上指定文件目录的集合,需要提前利用gp提供的命令gpfilespace创建好。

表空间基于文件空间filespace,一个filespace可以创建多个表空间。

1创建表空间语法

test=# \h create tablespace;

Command:     CREATE TABLESPACE

Description: define a new tablespace

Syntax:

CREATE TABLESPACE tablespace_name [OWNER username] FILESPACE filespace_name

2gpfilespace大致用法

gpfilespace [<connection_option> ...] [-l <logfile_directory>]

            [-o [<output_fs_config_file>]]

gpfilespace [<connection_option> ...] [-l <logfile_directory>]

            -c <fs_config_file>

gpfilespace movetempfilespace {<filespace_name>|default}

gpfilespace movetransfilespace {<filespace_name>|default}

gpfilespace --showtempfilespace

gpfilespace --showtransfilespace

gpfilespace -v | -?

[gpadmin@master1 bin]$ ./gpfilespace --showtempfilespace

Error: unable to import module: No module named gppylib

解决:记得环境变量

[gpadmin@master1 bin]$

source  /usr/local/greenplum-db/greenplum_path.sh

3创建新的文件空间

初次安装好gp默认相关

test=# \l

                  List of databases

   Name    |  Owner  | Encoding |  Access privileges 

-----------+---------+----------+---------------------

 postgres  | gpadmin | UTF8     |

 test    | gpadmin | UTF8     |

 template0 | gpadmin | UTF8     | =c/gpadmin : gpadmin=CTc/gpadmin

 template1 | gpadmin | UTF8     | =c/gpadmin : gpadmin=CTc/gpadmin

test=# \du

                       List of roles

 Role name |            Attributes             | Member of

-----------+-----------------------------------+-----------

 gpadmin   | Superuser, Create role, Create DB |

test=# select * from pg_tablespace;

spcname|spcowner|spclocation | spcacl | spcprilocations | spcmirlocations | spcfsoid

pg_default | 10 |            |        |                 |                 |     3052

pg_global  | 10 |            |        |                 |                 |     3052

test=# select * from pg_filespace;

  fsname   | fsowner

-----------+---------

 pg_system |      10

test=# select * from pg_filespace_entry;

 fsefsoid | fsedbid |      fselocation      

----------+---------+------------------------

     3052 |       1 | /gpmaster/gpseg-1

     3052 |       2 | /gpdata/primary/gpseg0

     3052 |       3 | /gpdata/primary/gpseg1

test=# select spcname, fsname,fsedbid,fselocation FROM pg_tablespace pgts, pg_filespace pgfs,pg_filespace_entry pgfse WHERE pgts.spcfsoid=pgfse.fsefsoid AND pgfse.fsefsoid=pgfs.oid ORDER BY 1,3;

  spcname   |  fsname   | fsedbid |      fselocation      

------------+-----------+---------+------------------------

 pg_default | pg_system |       1 | /gpmaster/gpseg-1

 pg_default | pg_system |       2 | /gpdata/primary/gpseg0

 pg_default | pg_system |       3 | /gpdata/primary/gpseg1

 pg_global  | pg_system |       1 | /gpmaster/gpseg-1

 pg_global  | pg_system |       2 | /gpdata/primary/gpseg0

 pg_global  | pg_system |       3 | /gpdata/primary/gpseg1

3.1生成文件空间配置文件

[gpadmin@master1 ~]$ source /usr/local/greenplum-db/greenplum_path.sh

[gpadmin@master1~]$ gpfilespace  -o  /gpmaster/gpfilespace_config_1

[gpadmin@master1 ~]$ gpfilespace  -o  /gpmaster/gpfilespace_config_1

> tbtest   // filespace名称

Checking your configuration:

Your system has 2 hosts with 1 primary and 0 mirror segments per host.

Your system has 1 hosts with 0 primary and 0 mirror segments per host.

Configuring hosts: [slave1, slave2]

Please specify 1 locations for the primary segments, one per line:

primary location 1> /newdata    //primary segments节点服务器目录名(2个节点都要创建)

Configuring hosts: [master1]

Enter a file system location for the master

master location> /newgpmaster  //master节点服务器目录名

20160413:00:22:10:012846 gpfilespace:master1:gpadmin-[INFO]:-Creating configuration file...

20160413:00:22:10:012846 gpfilespace:master1:gpadmin-[INFO]:-[created]

20160413:00:22:10:012846 gpfilespace:master1:gpadmin-[INFO]:-

To add this filespace to the database please run the command:

   gpfilespace --config /gpmaster/gpfilespace_config_1

//生成的配置文件/gpmaster/gpfilespace_config_1

3.2创建文件空间

[gpadmin@master1~]$gpfilespace --config  /gpmaster/gpfilespace_config_1

成功之后数据库中可以查询到

test=#select * from pg_filespace;

  fsname  | fsowner

-----------+---------

 pg_system |      10

 tbtest   |      10

4使用新的文件空间

4.1迁移系统的默认文件空间pg_system到新文件空间

迁移系统默认的表空间至新创建的文件空间,默认的文件空间目录建议不要删除:

[gpadmin@master1~]$ gpfilespace --showtransfilespace

[gpadmin@master1~]$ gpfilespace --showtempfilespace 

[gpadmin@master1~]$ gpfilespace  movetransfilespace  tbtest

[gpadmin@master1~]$ gpfilespace  movetempfilespace  tbtest

4.2数据库内创建新的表空间

表空间使用文件空间tbtest  

test=#create tablespace  newtbtest     filespacetbtest;

在指定表空间上创建对象:

test=#create table test(id int) tablespace newtbtest;

在会话级别设置默认表空间:

test=#set default_tablespace=newtbtest; 

在数据库级别修改默认表空间:

test=#alter database test set default_tablespace=newtbtest;


这篇关于Greenplum-表空间笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/736762

相关文章

Linux环境变量&&进程地址空间详解

《Linux环境变量&&进程地址空间详解》本文介绍了Linux环境变量、命令行参数、进程地址空间以及Linux内核进程调度队列的相关知识,环境变量是系统运行环境的参数,命令行参数用于传递给程序的参数,... 目录一、初步认识环境变量1.1常见的环境变量1.2环境变量的基本概念二、命令行参数2.1通过命令编程

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个

查看提交历史 —— Git 学习笔记 11

查看提交历史 查看提交历史 不带任何选项的git log-p选项--stat 选项--pretty=oneline选项--pretty=format选项git log常用选项列表参考资料 在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。 完成这个任务最简单而又有效的 工具是 git log 命令。 接下来的例子会用一个用于演示的 simplegit

记录每次更新到仓库 —— Git 学习笔记 10

记录每次更新到仓库 文章目录 文件的状态三个区域检查当前文件状态跟踪新文件取消跟踪(un-tracking)文件重新跟踪(re-tracking)文件暂存已修改文件忽略某些文件查看已暂存和未暂存的修改提交更新跳过暂存区删除文件移动文件参考资料 咱们接着很多天以前的 取得Git仓库 这篇文章继续说。 文件的状态 不管是通过哪种方法,现在我们已经有了一个仓库,并从这个仓

忽略某些文件 —— Git 学习笔记 05

忽略某些文件 忽略某些文件 通过.gitignore文件其他规则源如何选择规则源参考资料 对于某些文件,我们不希望把它们纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。通常它们都是些自动生成的文件,比如日志文件、编译过程中创建的临时文件等。 通过.gitignore文件 假设我们要忽略 lib.a 文件,那我们可以在 lib.a 所在目录下创建一个名为 .gi

取得 Git 仓库 —— Git 学习笔记 04

取得 Git 仓库 —— Git 学习笔记 04 我认为, Git 的学习分为两大块:一是工作区、索引、本地版本库之间的交互;二是本地版本库和远程版本库之间的交互。第一块是基础,第二块是难点。 下面,我们就围绕着第一部分内容来学习,先不考虑远程仓库,只考虑本地仓库。 怎样取得项目的 Git 仓库? 有两种取得 Git 项目仓库的方法。第一种是在本地创建一个新的仓库,第二种是把其他地方的某个