共计 4734 个字符,预计需要花费 12 分钟才能阅读完成。
导读:从最初的 Greenplum 开始,到现在已经超过 15 年的验证,我们一直是 Greenplum 的用户。多年来,随着我们对产品和支持的信心不断增强,它已逐渐成为 VLDB 的默认平台。希望本文讲述的这些原因能解除大家的困惑。
本文翻译自 VLDB Co-founder Paul Johnson 发布于 Linkedin 上的《Why Greenplum Is The Best…Of The Rest》,原文链接:
https://www.linkedin.com/pulse/why-greenplum-bestof-rest-paul-johnson/?from=groupmessage&isappinstalled=0。
面向数据仓库领域的数据库众多,带头进入这一领域的老大哥是上世纪 80 年代创立的 Teradata。
早在 20 世纪 80 年代,Teradata 公司在市场上推出了与其公司同名的分析型数据库,当时大体量的数据还在用 Terabyte(TB)表示。那时,确切的说是在 Teradata DBC1012 上运行查询。这张图片是我 1988 年刚开始接触 Teradata 时的参考卡片。
早在 20 世纪 80 年代,Teradata 公司在市场上推出了与其公司同名的分析型数据库,当时大体量的数据还在用 Terabyte(TB)表示。那时,确切的说是在 Teradata DBC1012 上运行查询。这张图片是我 1988 年刚开始接触 Teradata 时的参考卡片。
在过去的几年中,数据仓库领域已经大大升温。现在有比之前更多的选择。Teradata 可能仍然是市场领导者,但并非每个人都需要 Teradata。
那么,如果 Teradata 仍然是市场上的老大哥,那么其余的呢?
在这里,我们要告诉那些一直在关注该领域的人,我们很久以来一直是 Greenplum 的死忠粉。
出于“推崇共享”(显然共享很重要)的价值观,我们展开阐述“VLDB 团队”成为 Greenplum 粉丝的十大原因。
1. Greenplum“可以在任何地方构建”,而不仅仅在云上构建
传统数据仓库系统针对本地物理硬件进行了优化。这并不奇怪,因为旧系统要早于 AWS,Azure 和 Google 等公有云的出现。
相比之下,Redshift,BigQuery 和 Snowflake 等“现代数据仓库系统”是“仅运行在云上”的。这些现代数据仓库系统都不支持非云环境部署。Redshift 仅适用于 AWS,BigQuery 仅适用于 Google。用户的选择并不多 – 要么选择数据库要么选择平台,但不能两者都选。
Greenplum 则是“可以在任何地方构建”的数据仓库。Greenplum 可以在物理硬件、VMWare 私有云和 AWS 或 Azure 或 Google 等公有云平台上运行。为了跟上时代前沿,还支持 Kubernetes(K8S)部署。
只要您选择的平台支持 Linux,就可以使用 Greenplum。
2. Greenplum 是 MPP 架构
公认的是,通用 SMP 数据库(例如 Oracle,SQL Server 和 MySQL)无法一直扩展以满足数据仓库系统的需求。
与通用 SMP 数据库不同,Greenplum 部署为“大规模并行处理”(MPP)体系结构的群集。与 SMP 体系不同,MPP 体系结构是线性的可扩展的,因此可以不断地添加更多的计算、存储或网络带宽资源。
多亏了 Teradata 的朋友,MPP 架构在现实世界中已有 30 年的成功记录。
Greenplum 的可扩展 MPP 体系结构使您可以从单个节点开始,根据需要扩展集群,以满足不断变化的容量、吞吐量和性能需求。
借助经过验证的 MPP 架构,您始终可以扩展 Greenplum 集群以满足您的确切要求。
3. Greenplum 是并行的 Postgres 数据库
数据仓库通常是现代企业中的关键报告、查询分析和决策支持系统。所以将此类活动赋予一个具有明确可追踪记录的系统是至关重要的。
Greenplum 是一个“大规模并行 Postgres”系统,并且是“唯一”的开源 MPP 数据仓库系统。
Postgres 数据库拥有 30 年的历史,被誉为“世界上最先进的开源数据库”。
诸如 Greenplum 和 Netezza(RIP)的并行 Postgres 数据库已有 15 年的历史,并且已经证明了基于 Postgres 构建 MPP 平台的优势。
Greenplum 最初是在 2005 年从 Postgres 分拆出来的,从那时开始,Greenplum 的内核一直保持在较老版本(Postgres 8.2)。自从 2015 年开源以来,Greenplum 研发团队明显加快了合并 Postgres 新版本代码的速度,目标是在 2020 年合并到当前最新版本的 Postgres。
在所有并行 Postgres 数据库系统中,Greenplum 是唯一具有详细近期开发路线图的数据库,可实现最新最完整的 Postgres 代码整合并合理利用 Postgres 全球开源社区开发的新功能来完善自己。
4. Greenplum 后面有 Pivotal 公司背书
Greenplum 数据库软件的核心是“开源”的。该软件主要由 Pivotal 开发和推广。与 VMWare、RSA 和 EMC 等技术行业巨头一样,Pivotal 也是 Dell Technologies 集团公司的一部分。
与 Linux /RedHat 的模式类似,Pivotal 对 Greenplum 提供付费支持。
Pivotal 支持的 Greenplum 版本还包括其他增值组件,例如 Greenplum 命令中心(GPCC,一款优秀的监控和运维工具)。
Greenplum 拥有 Pivotal 公司这个强力后台。企业级支持可用于开源 Greenplum 数据库。互相促进。
5. 无评估许可费用
“概念验证”项目或 POC 通常是证明任何新技术选型价值的重要步骤。数据仓库系统也不例外。
Pivotal 的许可模式允许用户在 POC 期间免费使用 Greenplum 数据库。
这期间,您可以在选择的基础架构上评估 Greenplum 的功能和性能,而无需支付任何软件许可费用。
免费的评估许可证意味着您无需过多担心许可时间或 POC 功能阉割等问题,Greenplum 的价值也可以迅速得到体现。
6. 简单的基于 CPU 内核的定价
传统数据仓库系统通常要求购买完整的硬件 / 软件 / 存储堆栈。传统方法可能会涉及大量的前期资本支出(“CapEx”)。
现代的纯云数据仓库系统通常按使用量或“现收现付”(PAYG)定价。尽管 PAYG 模型避免了前期资本支出,但基于消耗的模型可能会导致不可预测且不受限制的运营支出(OpEx)。
Pivotal 对于 Greenplum 的授权是一种简单的基于 CPU 内核的定价授权方式。Pivotal 的基于计算的订阅模型不需要预先的资本支出,并且避免了不可预测和不受限制的运营支出的风险,而现代纯云产品通常就是这种情况。
同样使用简单的基于 CPU 内核的定价授权方式,客户或者在内部部署 Greenplum 或者通过公共云进行部署 – 两种方式都没有进一步的成本投入。
7. Greenplum 在 SQL 上运行
自 20 世纪 70 年代以来,关系型数据库管理系统(RDBMS)和结构化查询语言(SQL)的组合一直是数据管理领域的基础。
从运行 SQLite 的嵌入式系统到 PB 规模的数据仓库集群,数据管理世界仍在 SQL 上运行,这是不争的事实。这不太可能在短时间发生改变(这件事,有人可以告诉 Hadoop 的粉丝吗?)。
作为一个 Postgres 集群系统,Greenplum 在 SQL 上运行。在外界看来,它就像一台单独的 Postgres 数据库一样。
无须学习新的编程语言;无须增加新的 ETL 开发人员、BI 开发人员或最终用户培训计划;无需购买新的 BI 工具。
Greenplum 在 SQL 上运行,这就是您所需要的。你们都已经了解 SQL 了,对吧?
8. 涵盖了数据科学领域
SQL 非常适合传统的数据仓库场景,例如 ELT 样式的 ETL、KPI 报告、BI 工具和最终用户查询,但是那些令人讨厌的新型“数据科学”场景呢?
好消息是,Greenplum 还通过 R、Python 和 Madlib 覆盖了数据科学领域。
Greenplum 支持存储过程语言 PL/Python 和 PL/R。
Python 和 R 均可用于创建用户定义函数(UDF),以提供可扩展的数据库内数据科学能力。
Apache Madlib 是一个开源的数学、统计和机器学习库,可与 Greenplum 一起使用,以处理结构化和非结构化数据,以提供可扩展的数据库内分析能力。
可以使用 Madlib 开发基于 SQL 的算法,而无需将 Greenplum 的数据传输到别的工具再进行数据科学算法处理。
集成了 Python、R 和 SQL 的 Madlib 库可用于在 Greenplum 数据库内开发和部署数据科学应用程序,而无需额外费用支出。
9. Gartner 高度评价 Greenplum
数十年来,技术行业对分析师的评价深信不疑。Gartner 几乎可以肯定是技术领域中最具影响力的分析公司。
Gartner 于 2019 年 3 月 19 日发布的“传统数据仓库”用户用例中,对比列出了主要的数据仓库产品 / 服务供应商所处的位置。
毫不奇怪,Teradata 以 3.73 分(满分 5 分)排名第一。Pivotal Greenplum 的得分为 3.49,排名第三,仅次于 Oracle Exadata,它的得分为 3.54,排名第二。
根据 Gartner 的调查,Greenplum 的排名高于 SAP HANA(3.35)、Google BigQuery(3.27)、IBM DB2(3.22)、Snowflake(3.22)、Amazon Redshift(3.16)和 Microsoft Azure SQL 数据仓库(3.15)。
考虑到传统数据仓库用例积累时间较长,也许不足为奇,相比之下,Hadoop 供应商(MapR,Hortonworks 和 Cloudera)的得分都低于 3.0。
Gartner 在“传统数据仓库”用例中对 Greenplum 给予了很高的评价。除非您需要 Oracle Exadata 系统(现在谁还需要呢?),否则只有 Teradata 配处于 Greenplum 前列。
10. 最适合生产的系统
“一切工作都可以在 PowerPoint 完成”这一事实可能是技术行业中的一个大问题。不仅如此!
POC 通常是在购买产品之前验证技术的潜在风险点。POC 的顺利完成无疑可以增加信心,但是要确保数据仓库技术可以应付“鼎盛”时期的生产状态,仍然需要翻越巨大的鸿沟。
在 VLDB 团队中,我们推崇“用行动展示给我,不要只动嘴”的法则。我们也确实如推崇的法则那样挑剔!
使用 Greenplum 来应对其长期业务负载的用户包括摩根士丹利和 Conversant Media。
摩根士丹利的 Greenplum 生产环境由数百台服务器组成,并支持 20PB 的原始数据(压缩后 10PB)。类似的规模,Conversant 的 Greenplum 系统单表规模已经达到上亿亿…行 (特别特别多)。
为什么这件事这么重要?像 MorganStanley 和 Conversant 这样的最终用户可以提供给您强有力的证据,证明 Greenplum 已经有能力应对您苛刻的生产中的工作负荷。
就像那个男人说的:
“无论我们想出什么用例,以及想出什么方式来更好地理解用户,Greenplum 都可以做到这一点。”
——Conversant 负责数据仓库的副总裁 John Conley
Greenplum 摘要
这样已经足够证明了 – 就数据仓库平台而言,这是我们认为 Greenplum 是和其他相比最佳的十大理由。
从最初的 Greenplum 开始,到现在已经超过 15 年的验证,我们一直是 Greenplum 的用户。多年来,随着我们对产品和支持的信心不断增强,它已逐渐成为 VLDB 的默认平台。希望本文讲述的这些原因能解除大家的困惑。