Snowflake  VS  BigQuery — 两个云数据仓库的对比

Snowflake VS BigQuery — 两个云数据仓库的对比

现在,各种新型数据仓库解决方案层出不穷,想跟上的难度越来越大。

选择最佳数据仓库,满足运营需求及目标,是业务战略的重要组成部分。不幸的是,许多公司仍然受困于做出决策。

除此之外,将数据仓库投入实施可能也会很困难。但是,一旦完成了数据仓库的开发,丰厚的投资回报可能会随之而来,同时,你也会更加了解数据。

Snowflake 和 Google BigQuery 是成熟、强大的云数据仓库巨头,数千家公司的使用反馈都非常好。但哪一个平台更适合你呢?

这个问题很难直接回答,但我们可以比较一下两者。如果你想了解更多数据分析相关内容,可以阅读以下这些文章:
2021 Data Engineer求职必备技能
Google Product Analyst 面经详解
数据可观察性:数据工程师的求职新重点
虚拟现实中的数据可视化

# 云数据仓库(Cloud Data Warehouse)介绍 #

对于那些不熟悉数据仓库是什么的人,我们在这里快速介绍一下。

数据仓库自20世纪80 年代就已经存在了。从那时起,数据仓库的概念发生了巨大的变化和演变。商界出现了越来越多的挑战,环境也变得愈发复杂,在这样的背景下,数据仓库转变为一门独立学科,从而出现了更高超的技术和更严格的商业惯例。

最初,数据仓库是帮助公司维护可访问的分析数据源,以便回答商业问题。到现在为止,这一点仍然非常重要。然而,越来越多的终端用户想要以更加简便的方式,大规模访问公司信息,进而进行数据报告和分析。

此外,云端仓库的用户已经从专业开发人员大规模扩展至任何会使用 Tableau 或 Power-BI 的人。

数据仓库收集和存储来自不同来源(包括公司内部和外部来源)的各种信息。这些仓库会收集经过处理的原始数据,以便为你的业务查询快速提供答案,帮助你在预测和预算方面做出明智的决策。

通过收集公司各个方面的数据—从人力资源(HR)、到销售、再到营销,数据仓库减少了人工分析处理的工作量。Snowflake 和 BigQuery 就是企业级数据仓库的两个典型示例,这两个数据仓库非常强大,适用于任何规模的公司。

现如今,几乎所有大中型企业都有某种形式的数据仓库。专家估计,不到五年,数据仓库的市场需求还将翻番,产业价值将增至 300 亿美元。

如果你的公司准备投资数据仓库,或需要在当前供应商的基础上进行升级,那么你需要找到最佳和最具成本效益的服务来满足你的需求。

# BigQuery 背景介绍 #

谷歌旗下的BigQuery,是一个完全托管式、具有高度扩展性的无服务器数据仓库,特点是执行快速、反应敏捷,同时具备机器学习能力。

该平台发布于 2011 年底。无服务器架构让它能够大规模并快速执行任务,以惊人的速度跨大型数据库,提供 SQL 分析。

但BigQuery确实存在一些小问题,比如要用他们的 SQL 版本,不过他们最近修复了这个问题。

此外,BigQuery还多次进行了功能升级、性能增强,并且提高了协议安全性,增强了可靠性,这些操作让它在整体上更易于操作,更容易收集更深层次的见解。

# Snowflake背景介绍 #

Snowflake成立于2012年,两年后正式上线。Snowflake是一家基于云计算的数据仓库公司,总部位于蒙大拿州博兹曼(Bozeman,Montana)。因为创始人对冬季运动的热爱,所以将公司命名为Snowflake。

Snowflake 帮助企业使用存储在云中的硬件和软件,从而存储和分析公司数据。自2014年起,Snowflake可在Amazon S3上运行;自2018年起,可在Microsoft Azure上运行;自2019年起,可在Google上运行。公司通过完善和构建基于云的数据平台,被誉为数据仓库行业的复兴。

这就是Snowflake的独特之处。实际上,Snowflake更像是 AWS 或其他云服务的转售商,它在其他云服务上开发了“云优先”数据仓库(所以,谷歌无论如何都是盈利的)

# Snowflake VS. BigQuery #

Snowflake 与 BigQuery 之间的主要区别包括:

性能:独立的第三方进行的研究表明,Snowflake 的性能明显优于 BigQuery。然而,这种评估并不全面。在某些情况下,BigQuery 的性能优于 Snowflake。

事实上,很多性能取决于你是如何设计数据的。如果你是要对数十亿行数据进行查询,那么你就得吃点苦头了。这种查询要么很贵,要么很慢。

易用性:Snowflake 和 BigQuery 在易用性方面的得分都很高;不过,我个人认为Snowflake 更简单。

Snowflake的用户界面非常简洁,功能也很出色,提高了分析师和数据工程师的易用性。

安全性:Snowflake 和 BigQuery 都具有强大的安全特性,可保护敏感数据的完整性和机密性。此外,它们都完全符合所有行业特定标准。

# 体系架构 #

BigQuery 没有服务器,使用了大规模并行处理 (MPP) 的架构,因此不存在设置或配置问题,能独立执行存储和计算任务,增强查询功能。

Snowflake 建立在具有多集群共享数据架构(Multicluster Shared Data Architecture)结构的混合架构上,独立运行计算、数据存储和客户端服务,运行速度更快,性能更好,多个用户可并发工作负载。Snowflake 的存储架构可运行结构化和半结构化数据。

# 可扩展性 #

数据库的可扩展性能支持你数据库的横向或纵向扩展,能在不影响性能的情况下储存更多数据。

随着数据量不断增长或查询更加复杂,Snowflake 和 Bigquery 都提供了扩展方面的选项。使用 Snowflake,用户可根据需要扩大或缩小规模,并支付实际使用的资源。另一方面,BigQuery 是“无服务器”的,可以独立扩展,而且所有扩展问题都可自动处理。

这使得 BigQuery 非常灵活。BigQuery可以快速且无缝扩展值任意大小,同时具备高效益。你只需支付实际使用的资源,而非合同中列出的特定资源。

# 性能 #

另外一个重要的比较方面是性能。Snowflake 和 BigQuery 要如何实现叠加?

在 2019 年的一系列测试中,技术博主发现,通过比较多项指标,Snowflake 解决方案的表现始终优于 BigQuery。

测试使用了行业认可的标准 TPC-DS 数据集,该数据集被认为是虚拟电子商务数据的“通用决策支持系统”,全程共对30 TB的数据集进行了 103 次测试 。

Snowflake 在 5,793 秒内完成了所有查询,而 BigQuery 用了 37,283 秒。

当然,这并不意味着Snowflake在所有情况下都更快。例如,BigQuery 在涉及查找性能最佳和性能最差的项目(以净利润衡量)的查询上就优于 Snowflake。

Snowflake 和 BigQuery 当前处于不活跃状态,并且在持续开发中,会定期添加新功能,增强其性能。这两个平台的当前和最新发展,可能会改变未来哪个数据仓库的性能更好的计算方式。

# 成本 #

成本是许多公司会认真考虑的问题。尽管你不应该为了成本而牺牲性能,但有时你可能不得不选择更便宜的选项。

定价模型(Pricing Model):当涉及到云计算时,公司往往很难定价,因为云计算通常涉及存储、计算等。下面是当前 Snowflake 与 BigQuery 的定价明细。

# 哪个平台更适合你?#

Snowflake 和 BigQuery 数据仓库的解决方案中功能都非常丰富,到现在为止已帮助各类型和规模的企业改进其 BI 和分析工作流。

尽管在存储方面, BigQuery 可能比 Snowflake 便宜,但 BigQuery 的计算定价模型本质上非常复杂,同时,和 Snowflake 采用的时间模型有很大区别。此外,Snowflake 的性能通常优于 BigQuery。

最终,决定权还是在你手里。你需要根据具体情况选择最适合自己公司的解决方案。

感谢你的阅读!你还可以订阅我们的YouTube频道,观看大量数据科学相关公开课:https://www.youtube.com/channel/UCa8NLpvi70mHVsW4J_x9OeQ;在LinkedIn上关注我们,扩展你的人际网络!https://www.linkedin.com/company/dataapplab/

原文作者:SeattleDataGuy
翻译作者:Lia
美工编辑:过儿
校对审稿:Jiawei Tong
原文链接:https://medium.com/coriers/snowflake-vs-bigquery-two-cloud-data-warehouses-of-many-3b6b4e00d608