Greenplum内核机制
文章平均质量分 92
深入浅出Greenplum内核
Greenplum中文社区
Greenplum 是全球首个开源、多云大数据分析平台,被广泛运用于大规模商业智能和分析中,具有极高的稳定性,大量数百节点集群为全球2000强企业生产系统提供服务。被Gartner于2019年列为全球十大经典和实时数据分析产品中唯一开源数据库。
展开
-
当谈起Greenplum 7时,我们在谈什么?之内核篇
...原创 2021-04-13 17:30:00 · 430 阅读 · 0 评论 -
Postgresql可串行化快照隔离浅析
引 言 ...原创 2020-11-17 17:30:00 · 950 阅读 · 0 评论 -
终于把分布式事务讲明白了!
了解更多Greenplum相关内容,欢迎访问Greenplum中文社区网站 《深入浅出Greenplum内核》系列直播已经进行到第七场。错过活动的小伙...原创 2020-11-06 17:30:00 · 1247 阅读 · 0 评论 -
分布式数据库的高可用实现,Greenplum是如何做到的
什么是高可用 ...原创 2019-07-03 18:30:00 · 510 阅读 · 0 评论 -
Greenplum内核优化实战:手把手教你提升数倍SELECT性能
Greenplum是世界领先的开源MPP数据库,Greenplum 6的混合负载HTAP性能有了大幅度的提升(详情参看之前的博文: Greenplum 6...原创 2019-06-28 15:00:00 · 369 阅读 · 0 评论 -
Postgres索引那些事
...原创 2019-04-16 11:40:00 · 297 阅读 · 0 评论 -
PostgreSQL 自旋锁浅析
什么是自旋锁 ...原创 2019-02-15 13:43:00 · 265 阅读 · 0 评论 -
《PostgreSQL技术内幕-查询优化深度探索》节选之《查询树》
...原创 2018-09-07 14:04:00 · 701 阅读 · 0 评论 -
深入剖析查询优化技术内幕之概述篇
...原创 2018-07-25 12:16:00 · 383 阅读 · 0 评论 -
大数据云平台 Greenplum:多租户篇
Greenplum 是最出色的开源MPP数据库,经过15年的发展,从数据仓库发展成了云时代的理想大数据平台。1. 什么是多租户多租户指一套系统能够支撑多个租户。一个租户通常是具有相似访问模式和权限的一组用户,典型的租户是同一个组织或者公司的若干用户。要实现多租户,首先需要考虑的是数据层面的多租户。数据层的多租户模型对上层服务和应用的多租户实现有突出影响。本文重点介绍数据层多租户及Greenplum数据库对各种多租户模型的支持。权衡不同的多租户实现方式时,需要考虑如下因素:扩展性:租户数量级别原创 2020-05-19 14:54:52 · 710 阅读 · 0 评论 -
「揭秘GP」Greenplum 数据加载之外部表
外部表是greenplum的一种数据表,它与普通表不同的地方是:外部表是用来访问存储在greenplum数据库之外的数据。如普通表一样,可使用SQL对外部表进行查询和插入操作。外部表主要用于Greenplum数据的导入及导出。本文按照以下顺序介绍外部表:外部表创建和使用,外部表读写实现机制,外部数据转换,外部表的查询计划,外部表的事务,使用可读外部表加载数据。一 外部表创建和使用Greenplum数据库在创建一个外部表时,需要声明外部数据的LOCATION和FORMAT。LOCATION指定外部数据原创 2020-05-12 16:50:47 · 1917 阅读 · 0 评论 -
「揭秘GP」Greenplum 的高可用
什么是高可用高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间。假设系统一直能够提供服务,我们说系统的可用性是100%,很多公司的高可用目标是4个9,也就是99.99%,这就意味着,系统的年停机时间为0.876个小时。如何做到高可用高可用系统最大的劲敌就是单点故障。任何一个单点故障都是不可避免的,如果系统是单点架构的,当单点出现故障则会导致系统不可用。所以,实现高可用的本质就是冗余。冗余部署服务,当单点出现故障后,原创 2020-05-12 14:12:20 · 861 阅读 · 0 评论 -
Greenplum架构最详解读(内含视频)
引言4月17日,我们和阿里云合作,举行了《Greenplum内核揭秘》系列直播的第一场《架构解读》。在本次活动中,来自Greenplum全球总监杨瑜介绍了一些包括数据库、数据库管理系统、关系型数据库、关系模型等基本概念;详细解读了Greenplum的整体架构、存储管理、索引、查询执行、事务与日志等内容;直播室里气氛热烈,大家都纷纷表示,此次活动演讲内容干货满满,收获多多。没有参加活动的小伙伴也不要气馁,这篇文章帮你牢固掌握本次直播的所有要点。读完别忘了前往askGP上测一测你的学习成果哦!很高兴为大原创 2020-05-11 16:40:44 · 2242 阅读 · 0 评论 -
新鲜出炉的PGCon2020演讲回顾 ①——全局死锁检测器
5月26日,一年一度的PG开发者大会PGCon2020如约而至。与往年不同的是,受疫情的影响,今年的PGCon采取了线上会议的方式,虽然没有了面对面的交流,但在组织者Dan Langille等的精心安排下,会议有了更广泛的受众,干货满满。来自Greenplum原厂的Greenplum内核工程师 Hubert Zhang(张桓)与Asim Praveen合作发表了演讲《Distributed Snapshot and Global Deadlock Detector》。在演讲中Hubert通过理论结合实例的原创 2020-06-11 16:00:28 · 431 阅读 · 0 评论 -
【重磅】Greenplum内核升级至PostgreSQL 12,众多新特性惊喜不断
了解更多Greenplum技术干货,欢迎访问Greenplum中文社区网站Greenplum 基于 PostgreSQL,但针对大数据的场景和用户对性能的极致追求开发了大量的特性和做了极致甚至苛刻的优化。此外,Greenplum紧密拥抱Postgres社区,以敏捷的方式快速升级Postgres内核。2005年研发之初,Greenplum的内核版本是PostgreSQL 8,在2017年发布的Greenplum 5之前一直是PostgreSQL 8.2版本。2015年Greenplum完成了开源,启.原创 2020-09-25 13:39:44 · 1145 阅读 · 4 评论 -
Greenplum MVCC并发控制:严格的一致性与极致的性能
了解更多Greenplum技术干货,欢迎访问Greenplum中文社区网站2020的夏天已经接近尾声,《深入浅出Greenplum内核》系列直播也已经成功举办了五场活动,内容覆盖了Greenplum架构、执行引擎、查询优化、B树索引(均插入之前的总结文章链接),相关视频可前往B站的Greenplum中文社区频道进行回顾观看。8月28日,Greenplum原厂内核研发陈金豹从优缺点、实现细节、和空间重用三个角度深度揭秘了Greenplum的MVCC并发控制。本文将带领我们回顾精华内容。MVCC,全称.原创 2020-09-03 17:10:47 · 934 阅读 · 1 评论 -
带你认识PostgreSQL检索神器——Brin Index
引言Greenplum是一款强大而稳定的企业级分布式数据库。虽然基于 PostgreSQL,但Greenplum针对大数据的场景和用户对性能的极致追求开发了大量的特性和做了极致甚至苛刻的优化。此外,Greenplum紧密拥抱Postgres社区,以敏捷的方式快速升级Postgres内核。在Postgres 9.5的内核中,Postgres引入了一种全新的索引类型,名为Brin Index,本文将详细介绍Brin Index的内部实现以及性能表现。01 什么是Brin IndexBrin全称Block原创 2020-07-24 19:03:26 · 648 阅读 · 0 评论 -
Greenplum数据分布和分区策略
Greenplum是一个大规模并行处理数据库,它由一个master和多个segment组成,其数据按照设定的分布策略分布于各个segment上。数据表的单个行会被分配到一个或多个segment上,但是有这么多的segment,它到底会被分到哪个或哪些segment上呢?分布策略会告诉我们。分布策略在Greenplum 5中,有2种分布策略:哈希分布随机分布在Greenpl...原创 2020-03-12 11:10:13 · 3681 阅读 · 0 评论 -
全面解读PostgreSQL和Greenplum的Hash Join
2019年10月15日,Pivotal中国研发中心副总经理兼Greenplum中文社区发起人姚延栋出席了于意大利举行的PostgreSQL Conference Europe并发表了精彩的演讲《How does Hash Join work in PostgreSQL and its derivates》。本文根据演讲内容整理而成,供大家学习交流。今天我将详细介绍PostgreSQL...原创 2020-03-11 13:56:43 · 1696 阅读 · 1 评论 -
Greenplum执行器位图——让查询更有效
为了让查询更加有效,Greenplum引入了索引,但是索引在一些应用场景上也会有访问性能、过滤条件限制等问题,而位图和基于位图的访问很好的解决了这一问题。今天我们通过这篇文章提前来看一下Greenplum执行器的奥秘。为什么需要位图扫描首先来看一个普通的查询SELECT sid FROM student WHERE enroll_year = 2017 OR enroll_year = 2018 OR enroll_year = 2019;执行上面查询时,Greenplum最简单的方式可以采用对原创 2020-05-22 18:00:31 · 344 阅读 · 0 评论 -
「实战系列」Greenplum内核优化,手把手教你提升数倍SELECT性能
Greenplum是世界领先的开源MPP数据库,Greenplum 6的混合负载HTAP性能有了大幅度的提升,已经可以满足大部分OLTP应用场景。这个过程非一日之功,也涉及到系统的各个层面的优化和重构,本文将手把手的示范如何分析发现瓶颈,以及如何优化内核提升性能,揭秘MPP数据库内核调优,鼓励欢迎更多人在社区里参与这类工作。环境设置本文的例子采用分支6.0.0-beta.1。测试环境是GCP的...原创 2020-04-30 20:09:32 · 1096 阅读 · 0 评论 -
让你的数据库飞起来!Greenplum查询优化解析
6月19日,Greenplum原厂内核研发郭峰和大家直播分享了《深入浅出Greenplum内核》系列直播的第三期《Greenplum内核揭秘之查询优化》。没有参加活动的小伙伴也不用失望,我们已经将视频上传至Greenplum中文社区B站频道,通过点击这里即可观看。本文概括了文章的精华内容,欢迎留言交流。直播视频(腾讯频道)https://v.qq.com/x/page/i3107m0gi47.html本文将主要包括两大部分,第一部分是查询优化器的介绍,第二部分是查询优化的具体处理过程,整个过程将被分为原创 2020-07-02 17:36:13 · 1631 阅读 · 0 评论 -
Greenplum查询优化器如何消除外连接揭秘
Greenplum经过多年打磨,以性能卓越,速度快胜任不同类型的查询场景。Greenplum之所以查询跑得块,不仅是因为拥有极致优化的执行引擎和节点间网际传输,更依赖于查询处理的大脑中枢:查询优化器。Greenplum查询优化器功能丰富,结构庞杂,优化的点和用到的技术非常多。本章限于篇幅,只对查询优化器其中一小块消除外连接进行简单介绍,6月19日的直播活动《Greenplum内核揭秘之查询优化》将对查询优化器进行更为详细的解说,欢迎大家的参与!连接类型讲解外连接之前,不得不先讲讲什么是内连接(INNER原创 2020-06-19 17:30:39 · 572 阅读 · 0 评论 -
Greenplum 分布式数据库内核揭秘(下篇)
点击查看Greenplum 分布式数据库内核揭秘(上篇)1. 分布式执行器现在有了分布式数据存储机制,也生成了分布式查询计划,下一步是如何在集群里执行分布式计划,最终返回结果给用户。Greenplum 执行器相关概念先看一个 SQL 例子及其计划:test=# CREATE TABLE students (id int, name text) DISTRIBUTED BY (id); test=# CREATE TABLE classes(id int, classname text, st原创 2020-05-30 15:37:41 · 1495 阅读 · 0 评论 -
Greenplum 分布式数据库内核揭秘(上篇)
Greenplum 是最成熟的开源分布式分析型数据库(2019年8月发布的 Greenplum 6 之OLTP性能大幅提升,成为了一款真正的HTAP数据库,评测数据将于近期发布),Gartner 2019 最新评测显示 Greenplum 在经典数据分析领域位列全球第三,在实时数据分析领域位列并列第四。两个领域中前十名中唯一一款开源数据库产品。这意味着如果选择一款基于开源的产品,前十名中别无选择,唯此一款。Gartner 报告详情。那么 Greenplum 分布式数据库是如何炼成?众所周知 Greenpl原创 2020-05-28 15:00:58 · 1051 阅读 · 0 评论 -
听说它是层级数据的处理“神器”!
了解更多Greenplum技术干货,欢迎访问Greenplum中文社区网站递归CTE是Greenplum中一个非常强大的功能,它使得Greenplum具有了处理层级数据和图数据的能力。那么,什么是递归CTE呢?递归CTE的名字中虽然包含CTE,但它们的功能,用法和实现都有很大的不同。什么是递归CTECTE的全称是Common Table Expression,也被称为With语句。CTE更加侧重于SQL的易读性,可以将其看作是一种生命周期更短的临时表,在父查询中可以像引用临时表一样,引用CTE。.原创 2020-11-04 15:03:02 · 341 阅读 · 0 评论 -
万字长文,助你掌握数据库排序算法
了解更多Greenplum技术干货,欢迎访问Greenplum中文社区网站引言在《深入浅出Greenplum内核》系列直播的第六场中,Greenplum内核研发张桓为大家详细介绍了Greenplum排序算法,相关视频已上传Greenplum中文社区B站频道。相关PPT请点击链接前往Greenplum中文社区网站(cn.greenplum.org)的下载页面获取。现在让我们通过这篇“万字长文”回顾一下活动精华吧!排序在数据库执行器中扮演了重要的角色,除了显示的ORDER BY语句,数据库的聚集、窗.原创 2020-11-02 13:20:06 · 1235 阅读 · 0 评论 -
巧用复合索引,优化查询性能
了解更多Greenplum技术干货,欢迎访问Greenplum中文社区网站复合索引,也称作多字段索引,是指建立在表的多个字段上的索引,它是数据库系统中广泛支持的索引使用方式,Greenplum也不例外。在之前的文章中,我们已经介绍了Greenplum的默认索引——B树索引。本文将对Greenplum中的复合索引以及相关的最佳实践进行简要介绍。《深入浅出Greenplum内核》系列直播正在进行中,本周五Greenplum原厂内核研发张桓将为大家介绍Greenplum排序算法,欢迎关注。建立测试数据.原创 2020-09-25 16:19:45 · 581 阅读 · 1 评论 -
带你了解Greenplum的锁管理机制
了解更多Greenplum技术干货,欢迎访问Greenplum中文社区网站引言数据库系统有多种实现并发控制的机制,而锁作为其中一种实现方式,具有非常重要的作用。在这篇文章中,我们将介绍Greenplum中的锁管理机制是如何实现的。本周五(8月28日)的《深入浅出Greenplum内核》第六场活动中,来自Greenplum原厂的内核研发将深度揭秘MVCC并发控制的其他内容,尽请关注。01 锁管理概述在Greenplum实现中,针对不同的场景和目的定义了三种锁,分别是自旋锁(Spinlocks)、轻.原创 2020-08-28 17:40:10 · 1149 阅读 · 0 评论 -
带你了解可重定位Postgres
作为Greenplum Release Engineering团队的工程师,最近有机会深入探讨Postgres的构建系统。Greenplum Server基于Postgres,并从上游继承了构建系统。gp-releng团队正在创建可重定位版本的Greenplum Server,这使我们开始研究如何进行可重定位的Postgres版本。本文提到的可重定位(Relocated)指在不重新编译安装Postgres的情况下,改变原有安装路径后,程序依然可以正常运行,并且不需要设置LD_LIBRARY_PATH就能使原创 2020-08-18 12:01:04 · 348 阅读 · 0 评论 -
要懂Greenplum索引,心里得有B树!
7月24日,Greenplum原厂内核研发马洪旭和大家直播分享了《深入浅出Greenplum内核》系列直播的第四期《Greenplum内核揭秘之B树索引》。相关视频已上传至Greenplum中文社区B站频道,戳这里即可观看。本文概括了文章的精华内容,欢迎大家给我们留言交流。索引是数据库中的重要组件,而B树则是最常见的索引数据结构,同时它也是Greenplum中的默认索引类型。今天我将给大家详细介绍B树索引。本文将涵盖B树的基础知识、B树的存储结构、操作算法、并发控制,相关系统表等知识。B树的基本知识首原创 2020-07-31 11:26:22 · 659 阅读 · 0 评论