数据堆栈——基础知识
任何数据堆栈的目标是:
帮助公司领导者在正确的时间做出正确的决策。
这也是构建人工智能模型的必要路径,该模型需要在监督案例中进行训练或在非监督案例中进行计算。然后,该模型可以通过辅助和提醒人们风险和后果来用于人类决策。
归根结底,目标仍然是做出最佳决策并按照正确的顺序采取适当的(再)行动。
TDS vs MDS
技术和数据法规的发展从根本上改变了数据堆栈的架构方式,在2014年之后(云数据仓库的出现),出现了我们今天所称的现代数据堆栈(Modern Data Stack,MDS)或数据平台(Data Platform,DP),以区别于传统数据堆栈(Traditional Data Stack,TDS)。
传统数据堆栈(Traditional Data Stack,TDS)
主要由以下五个组成部分构成:
-
数据导入(Ingestion):将数据源(例如SaaS应用程序的API或文件)导入系统并进行转换。
-
数据存储(Storage):将转换后的数据复制到持久性解决方案中。
-
数据准备(Prepare):组织、聚合、去重和整理数据。
-
商业智能(BI):通过商业智能解决方案查询和可视化数据。
-
人工智能(AI):通过人工智能解决方案从数据中学习和建模。
-
反应式学习与迭代(RELT):根据提供的洞察力做出反应,并将其作为新的数据源或更新现有的数据源。
真实案例:电子商务(2015年的传统数据堆栈)
公司A通过其电子商务应用程序销售鞋子。他们有不同的数据来源。我们只关注其中几个:
- 电子商务数据(失败的订单、产品目录)
- CRM(联系人、客户互动、电子邮件统计)
- 领导层需要评估客户互动对失败订单的影响。
数据负责人(或业务分析师)应该定义关键指标及其计算方式,以便易于理解、富有洞察力且可操作。 他们需要数据负责人通过交叉数据源(例如,通过互动来分析失败订单,通过产品来分析销售情况)来准备数据。 一旦转换和聚合完成,数据应该可以通过商业智能解决方案(例如Looker、Tableau、Power BI等)访问,并以仪表盘中的清晰图表形式进行可视化。 现在,领导层只想获得最近30天的结果。
随着时间变化,数据负责人必须重新进行处理和聚合。 现在,领导层希望整个数据堆栈在进军欧盟市场之前符合GDPR要求。
数据治理必须能够过滤包含个人身份信息(PII)或其他敏感数据的所有数据,如果用户没有访问权限,该功能可以称为RLS(角色级安全性)。仅在商业智能工具或可视化工具上实现此功能是不够的,应该在数据流程中实现这一功能。
TDS Pros & Cons
缺点:
- 刚性:传统数据堆栈依赖于无法轻松扩展的基础设施,当公司需要处理更多的数据并且数据规模增长时,可能会面临扩展困难。
- 脆弱复杂性:对某个部分进行小的更改可能会导致其他许多部分发生故障,整个系统的稳定性容易受到影响。
- 速度慢:处理更多数据意味着计算结果需要花费更长的时间,可能需要几个小时甚至几天才能得到结果。
- 劳动密集型:许多任务需要手动完成,这增加了错误的可能性,同时也增加了时间和人力的消耗。
- 合规性:传统数据堆栈难以满足不断变化的数据规则和合规性要求,尤其是对于使用Excel表格等工具的情况。
MDS vs MDS as a Service
在2015年左右,出现了一种数据的圣杯:一种技术能够在云端实现几乎无限的规模和计算能力。其中最令人惊喜的是,数据专业人员可以继续使用接近标准的SQL语言,学习曲线较低。
最重要的影响在于数据处理方式的改变。
将数据的抽取加载(EL)与转换(T)分离意味着某些工具和技术可以负责抽取和加载(EL),而其他工具可以处理转换逻辑(T)。一方面,出现了一些出色的云提供商用于EL(如Airbyte、Fivetran、Hevo),提供了现成的连接器;另一方面,还出现了能够减轻转换过程中痛苦的创新工具(如DBT)。
MDS能够大大节省时间和金钱。与传统数据堆栈解决方案(主要部署在本地)相比,云计算和存储成本的低廉和不断下降进一步增加了现代数据堆栈的成本节约。
那么,在2022年数据驱动思维的非技术部分呢?
- 数据文化:什么是数据驱动型组织?公司的数据成熟度是否只是技术技能和技术堆栈的累加?
- 流程:从目标(KPI、仪表盘)出发,思考数据领域,而不是孤立的数据存储。采用DataOps视角。
- 自助服务:思考通过现有解决方案获得的所有收益,使非数据工程师能够在几小时或几天内开始获取洞察力(参见下面的MDS即服务)。
- 法律合规:MDS还降低了法律风险,因为它提供了更灵活和准确的方式来遵守不断变化的数据法规。公司部分将更多的法律和安全责任委托给云服务提供商。
下面的示例显示了专用于隐私的数据堆栈的一部分:
上述MDS架构中还有一个缺失的部分,也是最重要且具有挑战性的部分:数据治理的实施和配置。
为什么在构建MDS时,数据治理是最具挑战性的部分(远超其他部分):
- 这个堆栈中的许多应用程序实现了不同的治理系统(冗余)。
- 许多应用程序以不兼容的方式管理安全性。
- 这个堆栈中的许多应用程序拥有自己的用户界面和用户体验,掌握它们所有的学习曲线很长。 你将面临许多故障点,而每一个故障点都可能破坏宝贵洞察力的传递,并错过机会。
- 堆栈中的冗余和功能缺口使得难以获得预期的结果。
- 随着法律限制的不断变化,几乎无法达到合规要求。
总而言之,整合好的工具并不意味着你会得到一个良好的堆栈和预期的结果。这仍然是一个复杂的事情。它需要像数据工程师和其他高级专业知识和数据成熟度等稀缺的人力资源。
你需要应对高总拥有成本,并且集成多个不兼容的部分会产生许多配置冗余。
在某些子应用程序之间,治理、协作和安全性有时是不可能的,这取决于你的堆栈,如果你没有尝试过多种组合,并建立一个抽象底层异构性的统一应用程序层。
这就是现代数据堆栈作为服务可以提供帮助的地方。
MDSaaS
公司不再希望承载服务器,除非这是他们的核心业务和使命。出于这个原因,基础设施即服务(IaaS)像平台即服务(PaaS)和软件即服务(SaaS)一样改变了游戏规则。自2021年以来,现代数据堆栈即服务(MDSaaS)或“托管的MDS”也在市场上证明了其效率,越来越多的公司开始采用。
当您想进行快速概念验证(POC)时,挑战内部的现代数据堆栈(MDS)或者需要处理大量数据管道以超过繁忙的MDS团队的负荷时,您可以在MDSaaS上在几小时或几天内进行设置。
您还有一些工作要做:
结论
在竞争激烈的商业环境中,为了以正确的速度适应新信息,传统的数据堆栈并不是一个理想的解决方案。现代数据堆栈自然而然地取而代之,因为它在技术上具备了优势(可扩展性、自动化、可观察性、标准化),而且相比传统数据堆栈,用更少的努力可以获得更多。
然而,建立和管理现代数据堆栈仍然是一个复杂的系统。决策者可能会问自己一个合理的问题:“在2022年,拥有和管理MDS是否符合我们的核心使命?”。
如果答案是否定的,或者您对当前的传统数据堆栈或现代数据堆栈不满意,那么可以尝试一些MDSaaS提供商,例如Selfr.io、CanvasApp、Octolis、5x.io或Serenytics。您将会发现这些全能应用程序独有的功能,如实时协作、无代码/低代码、从开始到结束的完整血统等。
在接下来的文章中,我们将更深入地探讨MDS的治理和交付两个支柱。
欢迎留言以改进本文。本文旨在教育目的,专为非数据专家而撰写,请毫不犹豫地分享。