‧
阅读时间:7分钟
现代数据栈(更新至2021年)
Metabase 团队
‧ 阅读时间:7分钟
分享这篇文章
云、开源和SaaS商业模式已经改变了软件行业以及公司思考和构建产品的方式。今天,我们可以在比以前少得多的时间和成本下建立整个技术栈。这些转变为现代数据栈的兴起铺平了道路,也就不足为奇了。
现代数据栈是一套灵活的技术,帮助企业存储、管理和从数据中学习。通常,现代数据栈建立在云基础服务之上,并越来越多地包括低代码和无代码工具,这些工具赋予用户探索和使用数据的权力。
什么是数据栈?
“数据栈”这个术语源于“技术栈”,即软件工程师为了构建产品和服务而精心组合的不同技术的集合。虽然技术栈可能专注于各种用例,但数据栈是专门构建来支持数据的存储、管理和访问的。数据栈通常由寻求在战略决策中利用其数据的公司构建。
数据栈 vs. 数据平台 vs. 数据基础设施
- 数据栈:组织用于存储、管理和访问数据的技术的集合。通常这被共享为技术和服务列表,但特定栈背后的工作和理论要比简单格式所展示的更加复杂。
- 数据平台:将数据栈实施到基础设施中,即您的技术和服务如何相互连接。通常这被共享为抽象底层基础设施的图表,但显示了各个组件如何与其他组件协作。
- 数据基础设施:为数据栈提供动力的底层计算系统。它通常以图表的形式共享,但重点在于网络、硬件资源和底层API。
数据栈的发展趋势
三个主要变化在底层数据基础设施架构中铺平了通往现代数据栈的道路,并构成了其定义的基础。
1. 从本地到云的迁移
现代数据栈通常利用云托管存储在安全性、弹性方面的改进,更重要的是以极低的成本存储和处理大量数据。
2. 从ETL到ELT的转变
数据仓库过去一直是数据团队的巨大瓶颈。人们主要使用基于行的关系型数据库作为他们的数据仓库,由于相关数据分布在多个磁盘或服务器上,因此它对于数据分析工作负载的扩展性不好。即使有像Hadoop这样的技术,map-reduce作业仍需要数小时才能运行,并且编写和维护非常复杂。此外,由于传统数据仓库的处理能力有限,数据工程师通常在加载数据之前编写转换作业,导致术语ETL(提取-转换-加载)。现在,随着高性能云基于列的数据仓库的进步,数据工程师可以在几分钟内运行PB级查询。在现代数据栈中,他们可以在几分钟内配置并开始将数据加载到数据仓库中(ELT,提取-加载-转换),分析师不再需要依赖工程师转换数据。
3. 自助分析的出现以实现数据探索的民主化
无论公司规模大小,SQL知识限制人们在没有分析师帮助的情况下访问存储在数据库和仓库中的数据。例如,在一个传统的数据栈中,一个想要获取访问产品特定区域的客户列表的销售代表需要一位友好的工程师或分析师来“提取”数据。
公司已经认识到这个瓶颈,并使用像Metabase这样的商业智能工具来赋予其组织中每个人探索和从数据中找到答案的能力。现在,设计师可以了解其功能的用法,高管可以探索战略选择,销售代表可以完成销售,而无需依赖分析师。
现代数据栈的好处
模块化
因为现代数据栈由具有一般标准连接点的技术组成,团队可以根据其需求演变交换栈的部分。这有助于他们避免供应商锁定,并允许团队随着数据需求的成熟扩展其栈。
速度(操作和执行)
由于传统数据仓库处理能力的限制,流水线曾经需要数小时甚至数天才能运行。如今,借助现代数据堆栈及其弹性计算资源的访问,同样的工作可以在几分钟内完成。
此外,由于其组件的自包含特性,现代数据堆栈的设置和迭代速度要快得多。如今,一家初创公司可以在几小时内构建一个分析堆栈来跟踪其实验,而不需要编写一行代码——在传统堆栈中这项工作可能需要几天或几周。
成本
基于云的技术和数据存储通常比本地数据存储具有显著的成本节省。本地数据仓库需要支付100%的服务器使用费,并且扩展困难或成本高昂。使用Redshift、Snowflake和BigQuery等基于云的数据仓库,您只需为使用付费,并可以无缝扩展以处理大规模工作负载。
现代数据堆栈的组件
大多数团队将他们的数据堆栈组织成层,就像蛋糕一样。并非每个团队都需要覆盖每一层,但每一层都有其独特的角色,有助于构建完整的、美味的配方。
例如,一个试图验证几个实验的独立创始人可能不需要复杂的转换工具,但可能需要一个将他们的数据源连接到分析工具的方法。
数据源
这是您的数据来源:可以是您的生产数据库(例如PostgreSQL),Web服务器的日志,或任何您正在合作的产品(例如Stripe、Zendesk)的第三方应用程序。团队通常拥有多个数据源,所有数据源都流向集中式数据存储解决方案。
数据摄取
这是数据如何从数据源移动和标准化到您的数据存储。
这个领域的三大公司是:Fivetran、Stitchdata和Segment。
数据存储
这是从数据源收集并存储所有数据的地方。在成熟的数据堆栈中,它通常是一个数据仓库,但在早期阶段的公司可能只是数据库的只读副本。
这个领域的三大公司是:Snowflake、Amazon Redshift和Google BigQuery。
数据转换和建模
数据转换和建模有助于将不同的数据源打包成用户友好的模型,这样人们就可以探索这些组合集,而无需筛选原始数据并猜测它们代表什么。
这个领域的知名公司:dbt和Dataform。
数据分析
有时简化为“数据可视化”或“商业智能”,数据分析帮助用户探索并从他们的数据中找到见解。这通常涉及构建可视化或其他表示形式,并可能包括开发仪表板和其他监控工具。
现代数据分析包括帮助非技术用户探索数据而无需了解SQL的工具。这使他们免于依赖开发人员和分析师,并鼓励每个人探索和学习数据。
我们有些偏见,但我们认为Metabase是一个很好的选择。您可以在这里尝试它。
数据运营化
也称为“反向ETL”,数据运营化是将数据从数据仓库移动回第三方系统以实现数据运营的过程。例如,将客户数据从您的仓库同步到您的客户服务软件,以便您的前线代理更好地支持他们。
这个领域的知名公司:Census和Hightouch。
这篇文章只是冰山一角,但我们希望它能给您一个清晰的了解,了解构建和使用现代数据堆栈的特点和优势。
干杯,
Metabase 团队