Greeplum 系列(八) 数据维护
Greeplum 系列(八) 数据维护
一、事务管理
begin(start transaction) # 开始事务
savepoint # 保存事务回滚点
rollback # 回滚事务
end(commit) # 结束事务
二、回收空间和分析
(1) 过期记录来源
- 事务ID管理:在每个数据库每2百万个事务的时候,对每张表执行VACUUM是很有必要的。
- 系统目录维护:大量的CREATE和DROP命令会导致系统表的迅速膨胀,以至于影响系统性能。
- MVCC事务并发模型:已经删除或者更新的记录仍然占据着磁盘空间。
- 如果数据库有大量的更新和删除操作,将会产生大量的过期记录。
所以需要定期的运行 VACUUM 命令可以删除过期记录,回收空间。
vacuum tb01;
vacuum full; # 回收所有过期记录,但是耗时长,生产环境中不建议使用
(2) 配置子空间映射
过期的记录会被存放在叫做自由空间映射的地方,超出自由映射空间的过期记录所占用的空间无法回收(除非删除表);
自由映射空间的设置参数(一般不用配制):max_fsm_pages、max_fsm_relations
(3) 查询优化器
GP 使用基于成本的查询优化器,使用 analyze 命令收集查询优化器需要的统计信息,可以和 vaccum 一起使用。
vaccum analyze tb_cp_02;
三、日常重建索引
- 对于 B-tree 索引,新重建的索引比存在较多更新的索引更快
- 重建索引可以回收过期的空间
- 在 GP 中,删除索引然后创建通常比 REINDEX 更快
- 当更新数据时,Bitmap 索引不会被更新
四、管理 GPDB 日志文件
(1) 数据库服务日志文件
GP 在 Master 和所有 Segment 实例上开启了日志文件按天滚动,服务器日志文件存放在每个实例数据目录的 pg_log 目录下。格式:gpdb-YYYY-MM-DD_TIME.csv
通过 gplogfilter 工具来查找匹配指定标准的日志数据
gplogfilter –n 3
gplogfilter + gpssh 工具组合在所有 segment 节点进行查找
gpssh –f seg_host_file
=> gplogfilter –n 3 /data/primary/*/pg_log/gpdb*.csv
(2) 程序日志文件
缺省位于 ~/gpAdminLogs 目录下。命令方式:<script_name>_.log。日志记录的格式:
<timestamp>:<utility>:<host>:<user>:[INFO|WARN|FATAL]:<message>
五、系统数据字典
所有的系统数据字典存放在 pg_catalog 模式下,标准的 PostgreSQL 系统数据字典为pg_*
GP特有的字典目录:
gp_configuration
gp_distribution_policy
gp_distributed_log
gp_id
gp_version_at_initdb
gp_master_mirroring
gp_pgdatabase
在 psql 中列出所有的系统字典:\dtS
在 psql 中列出所有的系统视图:\dvS
每天用心记录一点点。内容也许不重要,但习惯很重要!
Greeplum 系列(八) 数据维护的更多相关文章
- 学习ASP.NET Core Blazor编程系列八——数据校验
学习ASP.NET Core Blazor编程系列一--综述 学习ASP.NET Core Blazor编程系列二--第一个Blazor应用程序(上) 学习ASP.NET Core Blazor编程系 ...
- Docker系列八: 数据卷
什么是数据卷 生成环境中使用docker的过程中,往往需要对数据进行持久化,或者需要多个容器之间进行数据共享,这个就涉及到了容器数据管理 容器中管理数据主要有两种方式: 数据卷:容器内数据之间映射到本 ...
- Greeplum 系列(四) 数据的装载与卸裁
Greeplum 系列(四) 数据的装载与卸裁 装载数据有以下种方法: insert copy 外部表 gpload 下面以 member_delta 表为例分别介绍这四种方法. create tab ...
- Greeplum 系列(三) 基本用法
Greeplum 系列(三) 基本用法 <PostgreSQL 教程>:https://www.yiibai.com/postgresql 一.Greeplum 登陆与创建 1.1 登陆 ...
- 在 Apache 上使用网络安全服务(NSS)实现 HTTPS--RHCE 系列(八)
在 Apache 上使用网络安全服务(NSS)实现 HTTPS--RHCE 系列(八) 发布:linux培训 来源:Linux认证 时间:2015-12-21 15:26 分享到: 达内lin ...
- SQL Server 2008空间数据应用系列八:基于Bing Maps(Silverlight)的空间数据存储
原文:SQL Server 2008空间数据应用系列八:基于Bing Maps(Silverlight)的空间数据存储 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft S ...
- C语言高速入门系列(八)
C语言高速入门系列(八) C语言位运算与文件 本章引言: 在不知不觉中我们的C高速入门系列已经慢慢地接近尾声了,而在这一节中,我们会对 C语言中的位运算和文件进行解析,相信这两章对于一些人来说是陌生的 ...
- Greeplum 系列(一) Greenplum 架构
Greeplum 系列(一) Greenplum 架构 Greenplum 可进行海量并行处理 (Massively Parallel Processing) 一.Greenplum 体系架构 Gre ...
- Greeplum 系列(六) 备份与恢复
Greeplum 系列(六) 备份与恢复 http://www.dbdream.com.cn/category/greenplum/ 先介绍几个命令查看 Greenplum 集群状态: # 1. 查看 ...
随机推荐
- Luogu2435 染色【状压qwq】【轮廓线DP】
LINK 题目大意 有一个 n 行 m 列的格点图,你需要给每个点上染上 k 种颜色中的一种,要求没有两个相邻点颜色相同.给定第一行与最后一行的染色,试求总染色方案数. 思路 暴力预处理状态暴力转移可 ...
- MacBook下java环境的搭建
在Mac下搭建JAVA环境: 1.下载并安装JDK: 下载最新的JDK,傻瓜式安装,一直下一步就OK了. 2.配置环境变量: 在终端中输入 sudo vim ~/.bash_profile ,打开 . ...
- 《DSP using MATLAB》Problem 2.15
代码: %% ------------------------------------------------------------------------ %% Output Info about ...
- 机器学习 ----Tensorflow
机器学习笔记4-Tensorflow线性模型示例及TensorBoard的使用 机器学习笔记3-Tensorflow简介 机器学习笔记2 – sklearn之iris数据集 机器学习笔记1 - Hel ...
- 每日一条 git 命令行:git clone https://xxxxx.git -b 12.0 --depth 1
每日一条 git 命令行:git clone https://xxxxx.git -b 12.0 --depth 1 -b 12.0:分支 12.0 --depth 1:depth 克隆深度,1 为最 ...
- (转)powerdesigner 生成sql脚本使用的设置
本文转载自:http://blog.163.com/lizhihaoo@126/blog/static/103121661201036171115/ 1. 生成sql脚本的时候,提示"con ...
- [html][javascript] 正则匹配示例
var str="akdlfaklhello 1234klfd1441ksalfd9000kals8998j2345fd;lsa"; var reg = new RegExp(/( ...
- linux shell 修改文本 sed
linux shell 修改文本echo [root@DSI tmp]# echo 'yhqt1 test1' > test1.txt [root@DSI tmp]# cat test1.txt ...
- 线程的等待方法:join
其实多线程最复杂的地方在于不同线程间的同步问题,这其中会涉及到先后执行问题.共享变量问题等.这篇文章我们主要来开个头,看一下join方法. using System; using System.Thr ...
- 新建网站与新建Asp.Net Web 应用程序的区别
.net网站和应用程序区别,网站是动态执行的不用编译,他只依赖于自己的文档本身,甚至你用aspx里直接写jsp代码都可以,其实网站可以说只是在.net平台中打开的文档,相当于最初的记事本编码,他并不需 ...