点击蓝色“有关SQL”关注我哟
加个“星标”,天天与6000人一起快乐成长
《Snowflake Elastic Data Warehouse》被称为近些年最重要的分布式数据库论文,我也是最近才拿到。过去很多年了,现在拿出来读一读,还是对我们理解未来的数据仓库走向,有十分重要的意义。
我在免费的知识星球《玩SQL的朋友们》开了这个帖子的长文分享,有兴趣的朋友可以来一看,或跟帖,或补充,都欢迎。
下面是几段摘录:
For one thing, they have been designed for fixed resources and are thus unable to leverage the cloud's elasticity.
For another thing, their dependence on complex ETL pipelines and physical tuning is at odds with the ex-ibility and freshness requirements of the cloud's new types of semi-structured data and rapidly evolving workloads.
对于文中所说的第一点,数据量的增长有可能今天还是很正常的,第二天来个热点事件,就把数据库撑爆。是可以理解的。比如微博,每到有热点,我们能很明显的感觉得到。所以针对这种情况的数据爆量,如果没有很好的分流方式来计算,一般系统是撑不住的。此时利用云计算,随时扩容扩带宽,在一定程度上能解决。
第二点,其中的半结构化数据其实我觉得有些牵强。任何业务数据,必须有模型支撑。这样在数据最终计算时,才能得到精确的算法处理。如果投喂的是垃圾数据,那么出来的也是垃圾结果。即使在ETL前道不处理,在执行统计计算这样的后道加工程序中,还要重新来一遍数据清洗,免不掉的。
Snowflake提及的几大特性,倒是可以留意下。这些特性其实就是各类传统数据仓库遇到的痛点问题。
1 SaaS 应用:
前几天还写过 SaaS 的应用工具(软件),比如阿里的钉钉,腾讯的企业微信。
原本的企业开发自己的ERP,HR,CRM系统都需要从硬件到软件全链搭建。一旦自建的服务器坏了,就需要更换;一旦自建的软件出了问题,就需要打补丁,或者重新安装。而这一切都需要企业养一个IT团队来实施。
SaaS出来之后,很多自建的软件都可以由供应商提供了。中小企业自建软硬件的需求就降低了。大部分这些不重要的业务,都可以丢给SaaS供应商去做。比如HR,CRM.
设想下,原本的数据仓库要自建数据库和数据中心,还要有软件开发团队。现在服务器和数据库软件都由供应商提供了,客户软件开发只需获取一个数据库连接即可,重点放在业务逻辑实现上。
如果通用软件供应商可以把业务逻辑也抽象出来,那么原本需要数仓的客户,其实只要购买SaaS授权就可以用了。所以这会是数据库的一大发展方向
2 结构化与半结构化
数据在这个时代确实多样化了起来,不仅仅是形式变多了,最重要的是数据量超大。组织好的文本数据,比如关系型数据库的二维表不再是唯一要处理的对象,Json,Xml等这些半结构化的数据开始要进入应用。小数据量的时候,SQL能搞定,大数据量的时候,SQL接口依然要发挥势能优势。
底层要能容纳这些格式多样的数据,对每个数据库供应商都是个挑战。
3 存储的扩容
处理热点问题时,数据量的爆发不能用传统数据库组数据仓库的方式,搭建ETL来处理。我们一般给传统数据库搭上10T标配,有可能在互联网应用中,1天就能干翻。所以传统的 E-L-T可能 要改成 L-E-L-T. 也就是在数据获取的前道,就直接入了数据仓库,而不再经过OLTP.之后再在Snowflake本地做ETL微调。
LELT为什么能解决这样的洪流问题?这就是云端的好处。
一切都是自动配额的。后端有数千台计算机等着分配任务,只要系统发出明确的需求口令。这对应用编程也提出更高要求,必须要发出请求资源再分配的命令。
以下就是云计算的一个动态扩容案例:
在6月29日的云栖大会·成都峰会上,新浪微博首席技术官刘子正分享道:“今年春节,微博使用了阿里云的计算服务,至少减少了对1400台服务器的购买,支撑了用户182亿次阅读量和8亿次红包领取。”
猴年除夕,微博通过阿里云的VPC服务,搭建起了一个社交媒体云混合架构。运用到这一历经双11全球规模考验的混合云,微博可以结合实时数据对预估峰值进行动态调整。除夕当晚,微博利用云服务器ECS和CDN,实现了从提前扩容到实时扩容的服务器升级,大幅度提升图片和视频的打开速度。此外,在除夕流量高峰过去后,又将计算资源快速释放掉,避免了高峰期后的闲置浪费。
4 安全
端到端加密。这就不用说了,安全无小事。Snowflake现在是依托 Amazon 的AWS发挥作用,承诺不会将数据暴露给云平台。虽说如此,但我很难相信,国内的企业会有多少有胆量,将自己的数据全盘交给SaaS供应商?
以上是个开头,更多详细的解读,我们放在知识星球。期待你的加入
--完--
往期精彩:
本号精华合集(二)
如何写好 5000 行的 SQL 代码
如何提高阅读 SQL 源代码的快感
数据工程师必须掌握的7个大数据实战项目
零基础 SQL 数据库小白,从入门到精通的学习路线与书单