透过 849亿市值的数仓 Snowflake,看数据库的未来

共 2098字,需浏览 5分钟

 ·

2021-01-11 14:55

点击蓝色“有关SQL”关注我哟

加个“星标”,天天与10000人一起快乐成长

图 | L


近些年,很多数据库公司上岸,MongoDB市值 216亿美金,Cloudera 市值 45亿美金。而其中最耀眼的,非 Snowflake莫属,849亿美金。

以上数据截止于2021.1.10

解释下,Snowflake 公司主要做数据仓库产品。早年我在华润做MES/ERP开发时,就隐约感到数据仓库将会是未来的热门方向,所以提前布了局,逼着自己在数仓方向投入了更多的精力。

说这个,我并不想要标榜自己多么有智慧,对未来的方向看得多通透。不,一点都不。这不过是老老实实打工人,应该有的一种职业感觉罢了。

最近看到各路股神又出来炫技。刚入股市第一年,就大几十万的进账,好像真的是看懂了产业,行业,公司的布局,妥妥的晋升股市操盘手,分分钟教人炒股,日进百万那种。

其实,就是目前的一种资本趋势,而这些所谓的股神,站在了这波风口上而已。只要你人没事,不死,以后这样的投机机会,海的多了去了。

放长远去看,遍地机会,某些大V夸起自己的预测,毫不嘴软。我想的是,但凡你会写点字儿,保持着一定专业敏感度,这些行业机会,一抬手就能砸中一大片。

就像我预测数据仓库是未来一样,不过是数据多了,一种必然的发展方向。无他,就是运气到了。如果你做汽车,肯定推电动车,你做生物医药,肯定预判流感疫苗是妥妥热门。

回顾数据库的发展历史,在数据库商业产品这么丰富的年代,Oracle, SQL Server, DB2, MySQL等等,还有大数据产品的围追堵截 Spark/Hive/HBase, 更有集成商 Cloudera/MapR/Amazon RedShift/GCP BigTable 这样的巨型平台,为什么会在数仓市场出现这么一匹黑马呢?


以上截图,出自阿里数据库大牛叶正盛的PPT. 后台回复 Snowflake,可得 Snowflake论文与叶总的这份PPT

看到这幅图,如果你胆子大点,肯定会预判单体的数据库平台,将来一定会受到云数据库的冲击。在2C领域,传统的关系型数据库一定没有空间,一是缺少对非结构化数据的支持,二是扩展受限。

拿 snowflake 论文的架构图一看,就明白:原本的单体数据库,哪怕是集群数据库,走的通常是 shared-disk 架构:

image

这类架构,虽然提供数据库强一致性,但锁独占问题会严重干扰并发;

然后大数据套件出来了,比如 Hadoop, 走了 shared-nothing 架构:

image

提供了分布式数据存储,分布式计算,但计算与存储最终还落脚在一台机器上。此时就会有计算倾斜,比如某台计算节点就弱鸡,严重拖慢了查询。

Snowflake 做了创新,计算资源与存储,严格区分开来:

image

比如10台计算节点和5台存储节点,而且某个用户可以随时启动更多计算节点,也可以关闭更多计算节点。这就使得计算弱鸡的节点,随时都可以被取代。

上图来自 snowflake 论文,后台回复 snowflake 即可下载

爱思考的朋友,看到这,可能会有个疑问,针对每个查询,都会开启不同数量的计算节点,怎么做到的?这对运维得有多大的挑战。

其实,这就是未来数据库的发展方向之一,云化,云原生。如果没有云计算的支持,肯定做不到这点。

市面上,云数据库也有很多,比如 Amazon 的 redshift, Microsoft SQL DW, Google 的BigTable, Spanner,国内也有很多巨头有自己的云数据库,阿里 PolarDB, ADB, 腾讯 TDSQL, 华为高斯数据库,为什么偏偏 snowflake 会获得这么多资本的青睐呢?

此时就要祭出第二张叶总的PPT:


细看不难发现,很多云数据库是有自家的云平台做支撑的。一旦你选定一个云平台提供的数据库,那再转别的供应商,就会有难度。

而 Snowflake 的优点在于,它把存储组件脱离了整个架构,可以部署在 Microsoft Azure 上,也可以使用 Amazon 的ECS,Google 的GCP,也来之不拒。并且数据在这些云提供商之间,无缝迁移。

让利于他人,最终获得了这些云平台的用户。

从数据库最本质的软件逻辑来分析,一条SQL的执行路径,有这么几步:编译,调优,执行,物理访问。把编译,调优,执行控制在核心,而物理访问外包出去,这就是 snowflake 当前的策略。从市场表现来看,目前运营非常成功!

文中略去很多细节的实现,有兴趣的伙伴,可以公众号后台回复 snowflake 来下载技术论文。



--完--





往期精彩:


本号精华合集(三)

如何写好 5000 行的 SQL 代码

如何提高阅读 SQL 源代码的快感

我在面试数据库工程师候选人时,常问的一些题

零基础 SQL 数据库小白,从入门到精通的学习路线与书单










浏览 46
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报