AlanWei / blog

Personal Blog
242 stars 22 forks source link

Snowflake 与数据云(Data Cloud) #11

Open AlanWei opened 4 years ago

AlanWei commented 4 years ago

关注美股的朋友们最近应该都注意到了一家大热的 IPO 公司,那就是 Snowflake。作为云计算领域一只新进的独角兽,Snowflake 在资本市场受到了前所未有的追捧,其中最耀眼的标签就是『股神』巴菲特的加持。要知道老巴可是在 1956 年福特 IPO 后就再也没有参与过新股的发售,这次却通过伯克希尔公司购买了 700 万股的 Snowflake,按照发行价来算市值 8.4 亿美金,而按照截止十月十三日的收盘价计算,这 700 万股的 Snowflake 价值已经飙升到了 17 亿美金,翻了一倍不止。

Snowflake 到底是一家什么样的公司能够让声称『不懂科技股』的巴菲特都为它破戒呢?让我们看看能不能从 Snowflake 的招股书中找到一些蛛丝马迹。

在招股书的第一页,Snowflake 的 slogon 是 MOBILIZING THE WORLD'S DATA,让世界上的数据流通起来。这个口号很好地诠释了云计算对于大数据行业的意义,那就是当所有的数据都存储在云端时,困扰传统企业的数据孤岛(data silos)问题也就不存在了,甚至还能够进一步打破企业之间甚至行业之间的数据壁垒,让各行各业间的数据都流通起来。为了实现这样一个美好的愿景,Snowflake 定义了在云原生(cloud native)时代数据系统的 3 个阶段,即 2014 年的云上数据仓库,亮点是超越本地数仓的强大性能;2019 年的云上数据平台,亮点是数据任务和用户的弹性可扩展;以及 2020 年的数据云,亮点是实现数据的网络效应。

Snowflake 还从以下 8 个方面对比了自身与传统数据技术之间的优势。

  1. 传统数据技术不能支持今天动态且多样化的数据需求。原因是传统的数据技术普遍对半结构化数据(semi-structured data)的支持并不十分完善,也很难以一种统一的方式来存储多种多样的数据。而 Snowflake 则通过通用数据集(common data set)的方式解决了不同类型数据的存储问题,极大地提升了系统的稳定性和灵活性。这点可以简单总结为对不同类型的数据做归一化处理

  2. 传统数据技术不能支持海量的数据存储和查询。这点很好理解,也是云和本地之间最本质的区别,那就是从理论上来讲,本地的资源是有限的而云是无限的。Snowflake 可以根据客户在不同阶段的需要来提供相应的数据服务。

  3. 传统数据技术不能同时支持众多不同的使用场景和用户。在不同场景下数仓的调优很多时候都是一个取舍的问题,而云端的 Snowflake 则可以动态地调度资源来平衡不同用户和不同场景下对资源的需求,为所有用户提供具有一致性的用户体验。

  4. 传统数据技术在建设价格方面非常不友好。这点也是云服务的优势,那就是可以帮企业省去整个数据基础设施建设以及后续维护和调优的成本。在此基础上,Snowflake 还能够做到在查询时只访问需要用的数据,从而进一步替企业节省成本。

  5. 传统数据技术的使用门槛很高。这一点相信做过大数据相关开发的朋友们都深有体会,不仅搭建一套完善的大数据系统的技术门槛很高,在使用时对分析师等非技术人员的门槛也很高。Snowflake 提供了一套简单易用的查询语言并在此基础上做到了按需收费,即用多少付多少的模型,帮助企业降低在使用过程中的成本。

  6. 传统数据技术的维护成本很高。这点上面也提到过,不过另一个角度是 Snowflake 作为 DaaS(Data as a Service)的提供商,一切产品都是可以直接使用的服务,服务本身的升级迭代和企业的使用是完全隔离的。

  7. 传统数据技术不能支持跨地区、跨云服务(AWS,Azure,Alibaba Cloud 等)的数据分发和共享。这点是 Snowflake 非常有意思的一个设计,那就是 Snowflake 本身也是架设在云计算平台之上的一个 DaaS,底层打通了 AWS,Azure 等这些基础平台的存储和算力资源,一方面降低了已经在使用如 Redshift 或 Azure SQL 等数仓服务用户的迁移成本,另一方面也让它所承诺的数据云变成了真正意义上的公有云(public cloud),在这个基础上实现跨地区的数据分发自然也是不在话下。

  8. 传统数据技术不能支持数据分享。虽然现在已经是 2020 年,但确实很多企业内部包括企业之间的数据分享还停留在复制一份线下的数据,以 excel 或 csv 的形式进行分享。这其中当然存在着许多数据安全和管控的问题,但其实这么多年以来一直也没有公司试图去站在一个更高的纬度上去解决这个问题,直到 Snowflake。受益于数据云的概念,所有数据在 Snowflake 上都可以保证有且只有一份单一的来源并安全地分享给第三方。

看到这里,相信各位都对于 Snowflake 正在做以及想要做的事情有了一个更深的了解。在这里我想提 2 个从 Snowflake 身上看到的趋势。

一是 IaaS 和 SaaS 之间的分野正在越来越清晰,IaaS 服务的核心价值是用云的方式来实现对资源/算力的解放,而 SaaS 服务的核心价值是降低各种企业能力的进入门槛。虽然目前各大云平台都不满足于只做 IaaS,但 SaaS 的确是一个过于广阔的领域,很难出现一家或几家企业垄断了整个 SaaS 市场。尤其是在各个垂直 SaaS 领域蓬勃发展的今天,像 Snowflake 这样垂直领域的佼佼者层出不穷,这也促使各大云平台去更加积极地思考自己的定位以及未来几年的业务打法。另一方面,Snowflake 也给很多新兴的 SaaS 公司提供了一个新的思路,那就是如何借助现有的云平台去打造一家真正意义上云原生的 SaaS 公司。Snowflake 很好地实践了不要重复造轮子这样一个工程界的理念,不重头来做数仓的基础设施建设而是把重心放在如何让数仓更易用,这也是 SaaS 能够给客户(企业)提供的最大价值所在,即将许多原先只有巨头才能具备的能力以服务的形式和按需收费的模式,提供给中小型企业。

二是数据相关的 SaaS 正在成为新的蓝海。在 IM、文档、视频会议等传统的 SaaS 服务积极抢占市场的同时,更加专业及垂直的企业服务也在逐渐成长为下一个 SaaS 领域的增长点,数据当然是其中非常重要的一部分。不同于传统的类似于像 Oracle 等公司直接卖数据库的模式,新一代的数据 SaaS 公司更多地将目光投向了 DaaS,大家所售卖的不再是一个性能更好的数据库,而是一整套解决企业使用数据的解决方案。在这个解决方案中,有数据库,有数据查询服务,有数据分享服务,也有数据分析服务等等。相信在未来的市场竞争中,各家公司竞争的将不仅仅是谁的数据库更快或更便宜,而是谁能提供真正帮助企业解决经营问题的一揽子解决方案。