盘点 Greenplum 数据库的十大特点

2023年 8月 12日 74.9k 0

01 开放源代码

Greenplum数据库于2015年由Pivotal公司开源,遵循Apache Licence 2.0协议,官方网站为:

Home

代码托管在GitHub上,链接为:

https://github.com/greenplum-db/gpdb

开放源码一方面可以为数据库用户和开发人员提供Greenplum数据库源码级的实现参考,另一方面可以吸引更多的数据库开发者参与到Greenplum社区维护中。

02 高扩展性

Greenplum数据库采用大规模无共享架构,将多台服务器组装成强大的计算平台,实现高效的海量并行运算。Greenplum数据库可以支持1000个以上的集群,管理的数据规模从TB级到PB级,可以满足多数企业的数据处理需求。

03 高查询性能

Greenplum的高性能不仅来自高效的并行处理框架,还有查询引擎的优化。Greenplum数据库除了支持基于PostgreSQL的查询优化之外,还专门开发了一个新的查询优化器ORCA。

ORCA是一款自顶向下的基于Cascades框架的查询优化器,目前已经成为企业版Greenplum数据库的默认优化器。相比基于PostgreSQL的查询优化器,ORCA查询优化器能使部分查询的性能提升10~1000倍。

04 高可用

Greenplum提供多级容错机制,确保整个系统的高可用性。Master节点通过Standby Master节点进行备份,每个数据节点的Primary Segment实例分别配置一个Mirror Segment实例作为备份,同时确保同一组Primary Segment实例和Mirror Segment实例不在同一物理机上,从而降低因为宕机而导致数据丢失的风险。

05 高效资源管理

Greenplum提供了高效的资源管理机制,根据用户的业务逻辑将资源合理地分配给查询任务,避免查询任务因查询资源不足而得不到响应。

Greenplum资源管理主要包括对并发查询数量的限制,查询执行时内存、CPU资源使用的限制等。Greenplum数据库提供了资源队列(Resource Queue)和资源组(Resource Group)两种资源管理方式,一般使用场景下采用默认配置即可。

06 多态存储

用户可以根据数据热度或者访问模式的不同使用不同的存储方式,以获得更好的查询性能。用户可以为一张表按照一定的规则(比如日期、月份)创建分区表,一张表的各个子分区表可以使用不同的物理存储方式。

支持的存储方式包括:

行存储,数据以行的形式存储在数据页里,适合频繁更新的查询;

列存储,数据以列的形式存储在数据页里,适合OLAP分析型查询;

外部表,数据保存在其他文件系中,如HDFS、S3,数据库只保留元数据信息。

07 生态完整

Greenplum数据库拥有完善的SQL标准支持,包括SQL92、SQL99、SQL2003以及OLAP扩展,是对SQL标准支持好的开源商用数据库系统之一。同时,由于Greenplum数据库基于PostgreSQL,因此也继承了PostgreSQL对于JDBC、ODBC、C、Python API等接口的支持。

08 高效数据加载

Greenplum还有一个非常神奇的功能——GPload并行加载数据,即允许数据从多个文件系统通过多个主机上的多个网卡加载数据,从而达到非常高的数据传输率。笔者曾经在3个节点的集群上并行加载50GB、2亿行记录的数据,仅用时90s。

此外,Greenplum数据库可以读取和写入多种类型的外部数据源,包括文本文件、XML文件、S3平台文件、Gemfire、Web服务器以及Hadoop生态系统中的HDFS、Hive、HBase、Kafka、Spark等,同时支持数据压缩以及字符集间的自动转换。

09 数据分析功能

Greenplum数据库支持各种过程化编程语言,包括PL/PostgreSQL、PL/R、PL/Python、PL/Java、PL/Perl等语言扩展。在数据分析方面,通过Greenplum数据库的MADlib扩展模块,用户可以很方便地利用MPP架构完成大规模并行分析。

10 良好的监控管理和运维体验

Greenplum数据库提供基于Web的可视化工具—Greenplum Command Center(简称GPCC)。GPCC可以监控Greenplum数据库系统的性能、集群健康状态、查询执行及系统资源使用情况,如图2-4所示。

▲图2-4 Greenplum数据库资源监控中心界面

————————————————本文来源:https://blog.csdn.net/zw0Pi8G5C1x/article/details/122374725

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论