Greenplum 编译安装和调试编译安装和调试 本文先介绍如何从源代码编译安装Greenplum、初始化Greenplum集群。然后介绍SQL在 Greenplum中的典型执行路径,最后介绍一些调试技巧。 源代码使用 Greenplum 开源社区最新源代码 6X_STABLE 分支: https://github.com/greenplum-db/gpdb,内核代码基于 PostgreSQL 9.4。目前(2019/04/23) 4。目前(2019/04/23) 主 干分支的代码基于 PostgreSQL 9.4。合并到 PostgreSQL 9.5 的工作也已经开始,有关最新工作 进展请参见:https://github.com/greenplum-db/gpdb-postgres-merge。 1. 从源代码编译 Greenplum Greenplum 目前官方支持 Redhat/Centos/SuSE/Ubuntu 有关更详细的信息请参考 README.macOS.md。 1.2 在 Redhat/Centos 系统上编译 本小节以 RHEL7 为例介绍如何编译Greenplum。 首先下载 Greenplum 源代码 $ git clone https://github.com/greenplum-db/gpdb Greenplum Database 编译和运行依赖于各种系统库和Python库。需要先安装这些依赖:0 码力 | 15 页 | 2.07 MB | 1 年前3
Greenplum 精粹文集postgresql 的 contrib 中的一些常用模块 Greenplum 提 供了编译后的模块开箱即用,如:oraface、postgis、pgcrypt 等, 对于其它模块,用户可以自行将 contrib 下的代码与 Greenplum 的 include 头文件编译后,将动态 so 库文件部署到所有节点就可进行测 试使用了。有些模块还是非常好用的,例如:oraface,基本上集成了 Oracle 常用的函数到 性能优势,我们强烈建议用户将库外的处理逻辑,部署到用 MPP 数 据库的 UDF 这种 In-Database 的方式来处理,你将获得意想不到的性 能和方便性;例如我们在某客户实现的数据转码、数据脱敏等,只需 要简单的改写原有代码后部署到 GP 中,通过并行计算获得数十倍性 能提高。 另外,GPTEXT(lucent 全文检索)、Apache Madlib(开源挖掘算法)、 SAS algorithm、R 都是通过 UDF 着社区的发展将推动 GreenplumMPP 数据库走向新的高速发展旅程。 (分享一下开源的直接好处,最近我们某用户的一个特殊需求,加载 数据中有回车等特殊字符,我们下载了 GP 外部表 gpfdist 源代码,不 到一天就轻松搞定问题) Greenplum 也正在积极的拥抱云计算,Cloud Foundry 的 PaaS 云平 台正在技术考虑把 Greenplum MPP 做为 DaaS 服务来提供,对于0 码力 | 64 页 | 2.73 MB | 1 年前3
完全兼容欧拉开源操作系统的 HTAP 数据平台 GreenplumGreenplum 环境适用性强与其开放性、真正开源、社区活跃有密不可分的关系,一方面 Greenplum 能够独立于专用 硬件加速提供高性能的纯软件数据平台,无需专用硬件,另外一方面包括核心代码在内的全部开源,社区人员或客户 可最大化自由利用和借鉴 Greenplum 的优秀功能的同时,又可以反哺及影响总体产品研发方向,可以加快产品创新, 基于此 Greenplum 有适用于多种环境的 数据平台 Greenplum 白皮书 9 白皮书 | 9 源代码在各种平台进行编译使用。作为能够独立于专用硬件加速提供高性能的纯软件数据平台,Greenplum 可根据 客户需求在任何位置运行。借助这种“不受限于基础架构”的方法,可以在本地不同的操作系统、不同的芯片环境或多 Greenplum 数据库与 Docker 容器交互,以在容器中执行用户定义函数 (UDF),这样方便数据科学家可以在不需要 DBA 帮助的情况自由使用数据分析,同时大大提高了安全性,Docker 容器确保用户代码无法访问源主机的文件系统。此外,容器启动时网络访问受限,无法连接回 Greenplum 数据库或 打开任何其他外部连接。 集成分析:改进后的全新分析接口 一直以来,客户都能在 Greenplum0 码力 | 17 页 | 2.04 MB | 1 年前3
Greenplum分布式事务和两阶段提交协议Logging,分布式事务:两阶段提交协议 Consistency 一致性 数据库系统必须保证事务的执行使得数据库 从一个一致性状态转移到另一个一致性状态。 (满足完整性约束) 实现对A、I、D三个属性的支持 Isolation 隔离性 多个事务并发地执行,对每个事务来说,它并 不会感知系统中有其他事务在同时执行。 多版本并发控制Multi-Version Concurrency Control、 “ACID”,自此,事务的ACID四个性质成为业内标准术语 8 Disk-Oriented DBMS Components 数据库管理系统组成图 Hector Garcia-Molina /Jeffrey D.Ullman/Jennifer Widom《数据库系统实现》 查询编译器/ 优化器 事务管理器 DDL编译器 执行引擎 日志和恢复 并发控制 索引/文件/ 记录管理器 缓冲区管理器 缓冲区 COMMIT_ONEPHASE QD 检查事务是否满足 一阶段提交 QE 满足一阶段提交的分布式事务: • 有写操作,参与者只有一个 • 只读事务 准备工作 从源代码开始:下载编译Greenplum源代码 全新的问答论坛0 码力 | 42 页 | 2.12 MB | 1 年前3
Greenplum Database 管理员指南 6.2.1出现无法正常工作的故障时,自动激活 Standby 来接管 Master 的任务。下面的流程图,是编者实现的 Master 和 Standby 自动切换的逻辑流程图, 可以供读者参考,不过,编者不方便公开实现的代码。 Greenplum Database 管理员指南 V6.2.1 版权所有:Esena(陈淼 +86 18616691889) 编写:陈淼 - 13 - Master 的连接数是有限的,缺省值为 restart_pgbouncer.sh ps ax|grep -w pgbouncer|grep -vw grep|awk '{system("kill -9 "$1)}' pgbouncer -v -R -d pgbouncer.ini 计算实例:Instance 在 GP 系统中,Instance 才是承担数据存储和查询处理的角色。用户数据表和相 应的索引都分布在 GP 'password'; =# SELECT rolpassword FROM pg_authid WHERE rolname = 'name1'; md5c3ac1a95fe4ba7cac352448ff1e5d6ec =# SELECT rolpassword FROM pg_authid WHERE rolname = 'name2'; sha2569fca82e96e5092248ec386090 码力 | 416 页 | 6.08 MB | 1 年前3
Greenplum 排序算法2(16) 2(16) 0 0 0 0 1(32) 1(32) 1(64) 0 0 0 IO次数:64 * 6 = 384 个基础顺串: 每个顺串平均6次移动 33 Knuth 5.4.2D多相归并排序算法 ● 1. 初始化阶段,N+1个缓冲区,其中N个为输入缓冲区和1个为输出缓冲区。其 中,每一个输入缓冲区包含若干个顺串,缓冲区顺串个数服从斐波纳切分布。 ● 2. 从每个输入缓冲区 ● 内排序 • 快速排序 • 堆排序 ● 外排序 • 生成尽可能大的顺串 • 高效比较多个顺串的最小值 • 减少IO次数 ● 多键排序 总结 准备工作 从源代码开始:下载编译Greenplum源代码 全新的问答论坛 https://cn.greenplum.org/askgp0 码力 | 52 页 | 2.05 MB | 1 年前3
Greenplum数据仓库UDW - UCloud中立云计算服务商/usr/lib64/psqlodbc.so Setup64 = /usr/lib64/libodbcpsqlS.so FileUsage = 1 3. 测试ODBC驱动是否安装成功 # odbcinst -q -d [PostgreSQL] 如果出现以上输出,代表在这台机器上已成功安装了PostgreSQL的ODBC驱动。 4. 编辑/etc/odbc.ini⽂件配置ODBC连接 快速上⼿ Greenplum数据仓库 bashrc 备注:/data/greenplum-client是greenplum-client的安装路径 4) 连接数据库 psql -h hostIP(或域名) –U username -d database -p port –W 1.2 udw(udpg)客⼾端⽅式访问(以Centos为例) 如果你选择的数据仓库类型是udpg、可以采⽤下⾯的⽅式访问 快速上⼿ Greenplum数据仓库 source ~/.bashrc 备注:/data/udw-client是udw-client的安装路径 4) 连接数据库 psql -h hostIP(或域名) –U username -d database -p port –W 快速上⼿ Greenplum数据仓库 UDW Copyright © 2012-2021 UCloud 优刻得 25/206 2.python客⼾端访问0 码力 | 206 页 | 5.35 MB | 1 年前3
Greenplum数据库架构分析及5.x新功能分享2008 标准,OLAP,JDBC/ODBC 支持ACID、分布式事务 分布式数据库:线性扩展,支持上百物理节点 企业级数据库:全球大客户超过 1000+ 安装集群 百万行源代码,超过10年的全球研发投入 开源数据库(greenplum.org),良性生态系统 5 Pivotal Confidential–Inter nal Use Only 5 © Copyright Segment 1D Segment 2A Segment 2B Segment 2C Segment 2D Segment 3A Segment 3B Segment 3C Segment 3D Segment 1A Segment 1B Segment 1C Segment 1D Segment 2A Segment 2B Segment 2C Segment 2D Segment 3A 3A Segment 3B Segment 3C Segment 3D Segment 1A Segment 1B Segment 1C Segment 1D Segment 2A Segment 2B Segment 2C Segment 2D Segment 3A Segment 3B Segment 3C Segment 3D 分布和分区 SELECT COUNT(*) FROM orders0 码力 | 44 页 | 8.35 MB | 1 年前3
Greenplum 6: 混合负载的理想数据平台Use Only Segment 1A Segment 1B Segment 1C Segment 1D Segment 2A Segment 2B Segment 2D Segment 3A Segment 3B Segment 2C Segment 3C Segment 3D 分区 SELECT COUNT(*) FROM orders WHERE order_date >= 表2017年十月份数据所在的分区C Segment 1A Segment 1B Segment 1C Segment 1D Segment 2A Segment 2B Segment 2C Segment 2D Segment 3A Segment 3B Segment 3C Segment 3D 15 Pivotal Confidential–Internal Use Only 递归查询 表‘SALES’ v1 in select distinct a.id,a.firstname,a.lastname,amount,tran_date,c.lat,c.lng,address,a.description,d.score from people a,transactions b,location c, (SELECT w.id, q.score FROM people w, gptext.search(TABLE(SELECT0 码力 | 52 页 | 4.48 MB | 1 年前3
Greenplum机器学习⼯具集和案例强大的灵活性、可扩展:PL/X、Extension、PXF、外部表机制 • 完善的标准支持:SQL、JDBC、ODBC • 集成数据平台:BI/DW、文本、GIS、图、图像、机器学习 • 开放源代码,持续大力投入 • 敏捷方法学:快速迭代、持续发布、质量内建 • 企业级稳定性,成熟生态系统 2017.thegiac.com Greenplum: 机器学习工具集 2017 数据编辑/整理理 之前 之后 性能提升 ● 181 ⾏行行代码 ● 75 分钟 ● 116 ⾏行行代码 ● 8 分钟 9.35x 特征编辑 ● 439 特征 ● 4,517 ⾏行行代码 ● 100 分钟 ● 934 特征 ● 1,438 ⾏行行代码 ● 30 分钟 多 495 个特征,快 3.33x 信息价值 在Greenplum上充分利用了MADlib 和PL/X X 在SAS和Excel上有很多⼿手动流程 ✓ 在Greenplum内部实现了了流程⾃自动 化 X 代码复杂冗余,很多数据类型 转换 ✓ 代码更更精简,更更便便于维护的代码 X 原始模型预测效果不不理理想 ✓ 新模型能够更更精准地预测⽬目标客 户 商业影响 2017.thegiac.com 用户案例例2 基于API日志的⾦金金融产品⽤用户分析0 码力 | 58 页 | 1.97 MB | 1 年前3
共 30 条
- 1
- 2
- 3













