谷歌云购买地址:点击购买

有很多文章将谷歌云提供商(GCP)与亚马逊云服务(AWS)进行比较,但这篇文章并不想要做比较。

作者主要是一个AWS用户,但最近一直使用GCP工作,尽管AWS更加成熟并拥有许多服务,但GCP有一些服务和一些优势,使其成为某些用例的更好提供者。而本文则简要总结了GCP相对于AWS的优势。

本文将重点介绍GCP优于AWS的地方以及作者认为GCP可能是更好选择的用例。

网络协议栈

网络协议栈是GCP的一大亮点,它使用Google的全球超低延迟内部网络。GCP使用全球代号为Andromeda的软件定义网络(SDN),可提供令人难以置信的性能,特别是针对低延迟的微服务和大数据处理。

GCP中的虚拟私有云(VPC)是全球性的,如果你选择的话,你可以在不同的区域中定义它们,整个网络都是软件定义的,具有很大的灵活性。你的负载均衡器在边缘位置工作,提供全球负载均衡和自动扩展。

借助GCP,你可以非常轻松地使用Geo分布式数据构建一个全球基础架构。这对于其他云提供商来说非常困难。

开发者经验

虽然我主要是AWS用户,但作为开发者,我必须承认我更喜欢使用GCP工作。它的cli很棒,它是一致的、快速的且容易使用。你也可以轻松访问alpha和beta特性。

GCP的控制台体验可能是所有云提供商中最好的,尤其是拥有云脚本(cloud shell),你可以从浏览器直接获得终端,并从浏览器安全地连接到虚拟机(VM),而无需设置任何SSH密钥,这非常完美!

GCP VM的启动速度非常快,比AWS快得多,这使得横向扩展特别敏感。它的定价很公道,你可以自定义所需的CPU和RAM数量,这样非常方便! GCP几乎允许所有实例类型连接GPU。这可以将任何标准或自定义实例转换为支持机器学习(ML)的VM。

借助Cloud Identity,GCP的身份管理工作得非常出色。它与G suite集成并提供单点登录(SSO),因此无需使用其他云提供商非常流行的解决方案(如OneLogin)。

最后,大多数服务都提供模拟器。这非常好,我可以立刻使用笔记本电脑测试所有应用程序,而无需使用任何第三方工具或复杂的集成。

Pub/Sub(发布/订阅)

AWS提供了许多用于消息传递的服务,例如SQS,SNS,Kinesis,Event Bridge,Kafka等,而GCP仅提供Pub/Sub。说实话,你不需要其他任何东西,它是一项非常好且便宜的服务,可用于从数据流到微服务的各种用例。这是一项全球服务,可以扩展来处理大量的数据,而且速度非常快。

Pub/Sub非常容易集成和使用,它支持许多客户端和协议。它还为消费者提供两种模式:push和pull。最重要的是它非常划算,也完全没有服务器!

数据库

Google特别关注数据,他们非常擅长管理和扩展大数据,为每个用例提供灵活的解决方案。

尤其是他们提供的3种解决方案,我认为这是其他竞争对手没有的,而这些就是大数据解决方案。公司与其他云提供商一起正在建立数据湖,将大量数据存储到S3之类的廉价存储中来提高成本效益。他们在电子医疗记录(EMR)上使用像Spark这样的传统框架来处理它并对其进行优化,以便能够使用Parquet这样的格式从S3查询它。

维护数据湖非常复杂,特别是在数据经常发生变化的情况下。这可能会变得难以管理,最终成本会升高。如果我们可以将大数据存储在可扩展且经济划算的数据库中,那不是很好吗?这样会容易得多。GCP有一些不错的选择。虽然对象存储一直很便宜,但只要这3个解决方案不太庞大,它们就可以用于大数据。

Big Table(大表)

Big Table是一个完全托管的NoSQL数据库。可以将其与AWS DynamoDB进行比较,但它们有所不同。DynamoDB是一种NoSQL,可以扩展以处理数百万个事务,但每个项只能存储400Kb,其目标不是处理大数据。

另一方面,Big Table是千万亿字节级的数据库。它提供一致的10ms以下的延迟,因此非常快速可靠,也易于扩展并且经济划算。

Big Query(大查询)

BigQuery是GCP的黄金产品,由于它是一个很大的产品,因此很难解释它到底是什么。它定义为:一个无服务器、高度可扩展且经济划算的云数据仓库,旨在帮助你快速做出明智的决策,以便你轻松地进行业务转型。

最接近的AWS产品是Redshift和Redshift Spectrum。BigQuery是无服务器的,并且可以扩展来查询大量数据,它内置了ML和BI模型,可用于各种用例。我喜欢BigQuery的地方是你可以用它来做任何事情,可以存储日志或帐单信息。它具有比BigTable高的延迟,但也更便宜一些。

作为BI的数据仓库,Redshift可能更好,但对人工智能(AI)和机器学习(ML)来说, BigQuery更好。

Spanner

Cloud Spanner是针对区域和全球应用程序数据的完全托管,可扩展的关系数据库服务。我认为其他云提供商中没有与之类似的数据库。这是庞大的,但也是完全相关的。它使你可以大规模使用常规SQL并具有强大的一致性事务。

你还记得SQL与NoSQL之间的权衡吗?现在它们已经不存在了,你可以使用SQL并在全球范围内进行扩展,但是价格并不便宜。

ML/AI

Google拥有最好的机器学习平台。它为所有类型的用户和用例提供了工具。从用于深度学习的低级虚拟机到高级API,服务数量巨大。

借助SageMaker,AWS正在慢慢迎头追赶,并且已经非常接近GCP,但是GCP仍然提供了更新的和准确的工具集。它提供了专门用于深度学习,与Kubernetes和机器学习训练等更好集成的虚拟机。

Kubernetes

关于Kubernetes,没有什么可说的,与其他云提供商相比,GCP具有优势。 GCP比其他云提供商更便宜、更新、更快、更易于使用。由于其灵活性和价格优势,GKE可能是世界上最好的云服务。它允许轻松地从本地迁移到云。它安全并且易于设置,提供出色的自动缩放,很容易监视。

最好的是GCP赋予了Kubernetes权力,并提供了一个友好的生态系统来运行几乎所有工作负载,从微服务或数据流到大数据管道。Kubernetes生态系统非常庞大,所有这些工具都已在GCP中进行了验证和测试。

AWS更加专注于无服务器,而GCP专注于Kubernetes,这两种技术都很棒。

成本

一般来说,GCP比其他云提供商便宜,因为它始终取决于你使用的服务以及使用方式。如果你使用Kubernetes,就成本效率而言,GCP无疑是赢家。

在计算和存储成本方面,它也是显而易见的赢家。GCP提供了一种更好的方法来补贴长期使用,并且秒杀抢购的虚拟机则非常便宜。

在秒杀抢购虚拟机上运行的GKE群集的价格很难与之匹敌。

用例

AWS仍然是最好的云提供商,它具有比GCP更成熟的产品和更多的服务。它还拥有庞大的用户群和更好的支持。如果你有疑问,请使用AWS。亚马逊在追赶GCP 机器学习功能方面做得非常出色,还降低了某些服务的成本。但我仍然认为,对于以下某些用例,GCP可能是更好的选择:

机器学习,特别是深度学习或使用Kubernetes时。

归功于Pub/Sub和DataFlow大数据流处理。得益于网络协议栈,GCP的延迟降低了,管道运行速度更快且成本更低。对于批处理,两个提供者都同样出色。

分布式实时系统。如果你的微服务要求极低的延迟,则Google SDN + pub/sub是一个很好的解决方案。例如Go微服务+ gRPC运行得非常快。另外,Akka非常适合GCP。

Kubernetes。这是GCP的主要优势,如果你想要以低成本高效运行便携基础架构,GKE是一个很好的工具。对于无服务器,AWS可能是一个更好的选择。

全球大数据数据库。如果你不想使用数据湖,而又想大规模存储大数据,那么Spanner或Big Table是令人惊叹的数据库,它们可以使你的生活更加轻松。

简而言之,如果你想在Kubernetes上运行快速低延迟的微服务或你有大量数据,请考虑使用GCP。

最重要的资产,是开发者们

强烈建议你在两个平台上试用服务并开发小型概念验证模型(POC),以便在两个平台上获得经验。两家提供商都有免费套餐。不要只考虑来自咨询人士的报告,你需要自己做判断,并尝试这两种平台。

我个人喜欢Kubernetes,它使你的代码可跨平台移植,从而使它们之间的切换变得容易得多。

如果你是AWS用户,请先阅读平台概述,然后检查最佳实践。之后,请阅读适用于AWS专业人士的指南。

与AWS相比,GCP还非常易于保护和管理。最后看看GCP必须提供的所有服务,它正在迅速赶上。