Greenplum(以下简称GP)是基于PostgreSQL的MPP数据库。在使用方式和语法上和PostgreSQL基本一致,而PostgreSQL与MySQL在使用上还是有一些差异。本文在操作层面列举了一些最基本的差异,让MySQL用户能够快速上手GP。
gpstart工具来启动一个已经由gpinitsystem工具初始化好但已经被gpstop工具停止的Greenplum数据库系统
本节主要从gp数据备份和恢复角度深入学习gp数据库。定期执行备份能确保在数据损坏或者系统失效发生时能恢复数据或者重建Greenplum数据库系统。用户还可以使用备份从一个Greenplum数据库系统迁移数据到另一个。
(1)查看master与segment的状态与配置 # 概要信息 gpstate # 配置详细信息 gpstate -s
本节提供了Greenplum数据库的一个高层次的系统要求和功能概述。它包含以下主题:
Greenplum数据库支持并行和非并行方法来备份和还原数据库。并行操作可扩展,而与系统中段的数量无关,因为段主机各自将数据同时写入本地磁盘存储中。对于非并行备份和还原操作,必须通过网络将数据从网段发送到主服务器,主服务器将所有数据写入其存储中。除了将I/O限制在一台主机之外,非并行备份还要求主服务器具有足够的本地磁盘存储空间来存储整个数据库。
在后备Master主机上,移动或者移除数据目录gpseg-1。这个例子移动该目录:
Greenplum数据库会从存储在PostgreSQL内部的一个时区集合种选择一个时区使用。PostgreSQL中存储的可用时区 全部取自于Internet Assigned Numbers Authority (IANA) 时区数据库,一旦PostgreSQL的IANA数据库发生 改变,Greenplum数据库也会随之更新它的可用时区列表。
目录 1、Greenplum 基本查询信息 1.1、Greenplum 常用查询 1.2、Greenplum 触发器,锁,类型等相关信息 1.3、Greenplum 故障检测相关的信息 1.4、Greenplum 分布式事务有关信息 1.5、 Greenplum segment 有关信息 1.6、Greenplum 数据文件状态有关信息 1.7、Greenplum 有关储存的信息 2、Greenplum 插件相关信息 3、Greenplum 分区表的相关信息 4、Greenplum 资源队
要保持一个Greenplum数据库系统高效运行,必须对数据库定期清理过期数据并且更新表统计信息, 这样查询优化器才能有准确的信息。
目录 gp_toolkit 说明 1、表膨胀相关查询 2、表倾斜的相关信息 3、锁查询相关的信息 4、日志查询相关的信息 5、资源队列相关查询信息 6、查看磁盘上(database,schema,table,indexs,view)等的占用大小的相关信息 7、用户使用的工作空间大小信息 8、查看用户创建的信息(数据库,schema,表,索引,函数,视图)等信息 9、系统中维护的ID信息 10、系统查用的查询信息 11、系统中常用查询的函数 gp_toolkit 说明 Greenplum数据库提供了一个名为g
本文描述问题及解决方法同样适用于 腾讯云 云数据仓库 PostgreSQL(CDWPG)。
Pivotal Greenplum Command Center(以下简称gpcc)是为Greenplum大数据平台开发的数据库监控管理工具,可以从各个度量监控gp系统运行健康程度,也可以为DBA们提供简单的gp集群管理手段。对gp使用者来说是非常给力的工具! gpcc特性总览
当PostgreSQL的后台进程Postgres接收到查询语句后,首先将其传递给查询分析模块,进行词法、语法和语义分析。若是功能性命令(例如建表、创建用户、备份等)则将其分配到功能性命令处理模块;对于查询命(SELECT/INSERT/DELETE/UPDATE)则要为其构建查询树(Query结构体),然后交给查询重写模块。
参考资料:https://blog.csdn.net/kygoal/article/details/75041851
行式数据库是按照行存储的,行存储就是各行放入连续的物理位置,就行我们平时写字一样,一行一行的写,读取的时候也是一行一行的读取。像SQL server,Oracle,mysql等传统的关系型数据库都属于行式数据库范畴。
12.2 gptransfer命令使用 12.2.1 gptransfer 介绍 详细请查看官网介绍: https://gpdb.docs.pivotal.io/510/utility_guide/admin_utilities/gptransfer.html 或查看中文文档: https://gp-docs-cn.github.io/docs/admin_guide/managing/gptransfer.html 12.2.2 gptransfer 命令参数介绍 gptransfer参数详细介绍请查看:
一个表空间可以让多个数据库使用;而一个数据库可以使用多个表空间。属于"多对多"的关系。
Greenplum基于数据库管理系统(DBMS)提供给请求者信息的速率来衡量数据库性能。
Greenplum数据的配置文件postgresql.conf位于数据库实例的数据目录之下。
gptransfer会为每个源Segment设置一个命名管道和一个gpfdist进程。这是用于最优数据传输率的配置并且被称为Fast模式。
本文描述问题及解决方法基于 腾讯云数据仓库 TCHouse-P( Tencent Cloud House-P,TCHouse-P )。
Greenplum(以下简称GP)支持多种数据导入方法,比如GP自带的gpfdist,通过gpfdist+外部表的形式将远端服务器上的数据并行导入到GP中,再比如GP自带的COPY命令,能够将本地的数据按照一定格式导入到GP中。除此之外,还有一些比较优秀的第三方导入工具,本文主要介绍DataX。
编辑网卡信息 vi /etc/sysconfig/network-scripts/ifcfg-eno1677984
使用EF框架遇到并发时,一般采取乐观并发控制。 1支持并发检验 为支持并发检验,需要对实体进行额外的设置。默认情况下是不支持并发检验的。有以下两种方式: 方式名称 说明 时间戳注解/行版本 使用TimestampAttribute特性,实体的属性必须是byte数组类型 非时间戳注解 使用ConcurrencyCheckAttribute Fluent API 使用StringPropertyConfiguration.IsConcurrencyT
Snova是腾讯云上的一款数仓产品,兼容Greenplum 开源数据仓库,是一种基于 MPP(大规模并行处理)架构的数仓服务。
https://gpdb.docs.pivotal.io/510/utility_guide/admin_utilities/gptransfer.html
为进程分配内存的百分比,默认是50,vm.overcommit_memory = 2 的情况下生效
Master实例的pg_hba.conf文件控制对Greenplum数据库系统的客户端访问及认证。
想要一个数据库长久健康的运行,离不开完备的运维工作,切忌只运而不维。针对Greenplum分布式数据库,集群由大量服务器组成,对运维人员或DBA,不仅要关注数据库本身,还要注意集群中各硬件的状况,及时发现并处理问题。本篇介绍权限与角色管理、数据导入导出、性能优化、例行监控、例行维护、推荐的监控与维护任务六方面常规工作内容,目标是满足Greenplum系统维护、使用等方面的要求,保证提供稳定高效的数据库服务。
Greenplum 元数据信息 Greenplum 元数据信息 1、 获取集群中数据库信息 1.1 集群中的创建的数据库信息 1.2 查看每个数据库的储存大小 1.3 查看集群中hostname 1.4 查看集群数据库的版本信息 1.5 查看集群master与segment安装的信息 2、 查看数据库下schema信息 2.1 查看数据库下创建的schema信息 2.2 查看数据库下每个schema的大小 3、 查看schema下表的信息 3.1 查看schema下的表的清单
当Greenplum数据库高可用性被启用时,有两种类型的Segment:主Segment和镜像Segment,每个主Segment都有一个对应的镜像Segment。主Segment从Master接收请求来对该Segment的数据库做更改并且接着把那些更改复制到对应的镜像。如果主Segment变成不可用,数据库请求会被转移到镜像Segment。
2、Master 把查询计划分发到Segment,分发模式有两种分别是Parallel和Targeted
Greenplum支持行储存(HEAP储存)与列(append-only)储存,对于AO存储,虽然是appendonly,但实际上GP是支持DELETE和UPDATE的,被删除或更新的行,通过visimap来标记记录的可见性和是否已删除。AO存储是块级组织,当一个块内的数据大部分都被删除或更新掉时,扫描它浪费的成本实际上是很高的。而PostgreSQL是通过HOT技术以及autovacuum来避免或减少垃圾的。但是Greenplum没有自动回收的worker进程,所以需要人为的触发。接下来就分析AO表与HEAP表的问题以及如何解答,执行空间的释放有3中方法分别是:
https://gp-docs-cn.github.io/docs/admin_guide/managing/backup-gpcrondump.html
gpinitsystem 的日志文件。默认路径为 ~/gpAdmin/gpinitsystem_***
4.2.4 查看所有segment是否可达,确保QD(query dispatching)正常 16
在创建外部表定义时,必须指定文件格式和文件位置 三种用来访问外部表数据源的协议:gpfdist, gpfdists和gphdfs
无需修改实体和配置,在MySql中使用和SqlServer一致的并发控制。修改RowVersion类型不可取,修改为Timestamp更不可行。Sql Server的RowVersion生成一串唯一的二进制保证Row的版本,无关TimeStamp,更无论TimeStamp的精度问题。使用MySql触发器只能解决uuid的插入的默认值和更新的随机值,由于MySql的自身为了防止无限递归的策略,它的触发器无法在当前表的触发器中更新当前表,所以触发器无法实现更新在SqlServer中由数据库生成的RowVersion字段的值。所以MySql中的RowVersion只能由应用程序赋值。
如果说Hive是离线数仓的代表,那么Greenplum就是MPP数据库的代表。在离线数仓的年代,以Hive为核心的数据仓库席卷数据仓库市场,几乎成为了离线数仓的代名词。但是Hive的查询能力非常弱,通常需要其它计算引擎辅助才能完成OLAP查询。
3、参数不是调的越大越好,参数调的太大也会可能会导致共享内存不足,会导致启动失败。
3、database is in recovery mode / is starting up 5
在已经安装的 Greenplum DB ,给 master 节点添加 standby master 节点 。
1、获取集群中数据库信息 1.1 集群中的创建的数据库信息 select datname from pg_database where datname not in ('template1','template0','postgres'); 1.2 查看每个数据库的储存大小 select pg_size_pretty(pg_database_size('databases')) as databasesize, 'databases' as databasename databases : 数据库信息 2
个人觉得GP目前比较尴尬。性能比Presto稍差点,唯品会已经把GP改用Presto替换看了。另外数仓/数据集市方面还有性能强悍的HAWQ ,支持更大数据规模Hadoop。
https://network.pivotal.io/products/vmware-tanzu-greenplum#/releases/1163282/file_groups/9837
领取专属 10元无门槛券
手把手带您无忧上云