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