程序员

[Snowflake核心技术解读系列一]架构设计

作者:admin 2021-04-14 我要评论

背景 2020年9月16日 Snowflake成功IPO 交易首日市场估值达到704亿美元 募集资金34亿美元。Snowflake成为迄今为止规模最大的软件IPO 市值最高突破1200亿美元。Sno...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

背景 2020年9月16日 Snowflake成功IPO 交易首日市场估值达到704亿美元 募集资金34亿美元。Snowflake成为迄今为止规模最大的软件IPO 市值最高突破1200亿美元。Snowflake提供基于云的数据存储和分析服务 一般被称为 数据仓库即服务 它允许企业用户使用基于云的硬件和软件来存储和分析数据。Snowflake自2014年起在亚马逊S3上运行 自2018年起在微软Azure上运行 自2019年起在谷歌云平台上运行 其Snowflake Data Exchange允许客户发现、交换和安全地共享数据。[维基百科]


Snowflake取得了巨大的商业成功 技术是如何支撑起它的千亿美元市值呢 它技术强在哪 OLAP内核技术爱好者浙川为大家倾情解读Snowflake的核心技术原理。本文为该系列一。

概览

Snowflake是完全基于云构建、充分利用云特性的企业级SaaS数据仓库产品 它不仅具有灵活性 即买即用 、高安全性、极致扩展性和弹性等特点 而且支持多租户、事务、标准SQL语法和半结构化、非结构化数据。Snowflake在2015年开始上线使用 如今发展成支持每天运行数百万条查询的PB级云原生数据仓库。

image.png

图 1 整体架构

整体架构

图1展示了Snowflake的整体架构。Snowflake设计的最终目的是为用户提供高易用性、高可操作性 以及高可靠性 基于这样的前提 Snowflake的内核组件的设计都具有高可靠、高可扩展的特性。组件是互相独立的 组件之间通过RESTful接口进行通信。Snowflake内核组件从底向上可以分为三个层面

1 数据存储。Snowflake的数据存储是构建在Amazon S3存储服务至上 主要用来存储表数据和查询结果。

2 虚拟仓库。虚拟仓库构建在Amazon EC2虚拟机组成的弹性集群之上 负责执行用户的查询请求。

3 云服务组件。云服务组件是Snowflake的大脑 它包括并发访问控制、基础设施管理优化器、事务管理、安全管理、元数据管理 其中元数据包含schema信息、表信息、权限认证信息、秘钥、统计信息等。

本篇文章为开胃菜 先从Snowflake架构设计切入 有个总体的了解。接下来会陆续推出几篇系列文章 讲解包括Snowflake重要的云原生技术及其它的创新之处 云服务组件 面向云的各自特性。


注 译文来自 https://www.snowflake.com/resource/sigmod-2016-paper-snowflake-elastic-data-warehouse/


随时欢迎技术圈的小伙伴们过来交流^_^

AnalyticDB详情见 产品详情

AnalyticDB产品试用 产品试用

AnalyticDB知乎公众号 云原生数据仓库

AnalyticDB开发者社区公众号 云原生数据仓库

AnalyticDB开发者钉钉群 23128105

image



本文转自网络,原文链接:https://developer.aliyun.com/article/783545

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 四两拨千斤——你不知道的VScode编码Ty

    四两拨千斤——你不知道的VScode编码Ty

  • 我是如何在 Vue 项目中做代码分割的

    我是如何在 Vue 项目中做代码分割的

  • position:sticky 粘性定位的几种巧妙应

    position:sticky 粘性定位的几种巧妙应

  • 从零到一搭建React组件库

    从零到一搭建React组件库

腾讯云代理商
海外云服务器