【数据架构】面向初创公司的现代数据堆栈

简介: 【数据架构】面向初创公司的现代数据堆栈

“为工作使用正确的工具!”

这句话一开始听起来很简单,但在实际方面实施起来却非常复杂。

早期的初创公司发现很难选择生态系统中可用的各种工具,因为它们的数据将如何演变是非常不可预测的。

需要现代数据堆栈

在过去 10 年中,软件行业在以下方面有所增长:

  • 计算能力:AWS、Google Cloud 等公共云提供商以标准市场成本提供巨大的计算能力。
  • 数据源:物联网生态系统、智能设备的兴起导致每天产生的数据量呈指数级增长。2020 年,地球上的每个人每秒产生约 1.7MB 的数据。
  • 业务利益相关者的数据素养:在原始软件行业,分析师过去常常手动挖掘 excel 电子表格,以获得有关数据的一些有价值的见解。如今,事实证明,许多 BI 工具在利用数据的力量和提供有价值的见解方面很有用,从而在业务利益相关者中培养了素养。
  • 数据项目中的开源采用:在过去的 10 年中,行业已经看到开源社区的巨大增长。许多很酷的数据工具(~Apache Airflow、DBT、Metabase)在开源社区中蓬勃发展和发展。

从传统 ETL 到现代 ELT 的转变

在这个现代时代,大多数企业都在利用数据驱动的解决方案,我们看到了从原始的遗留 ETL 架构向 ELT 架构的一致转变。

由于以下原因,现代 ELT 处理比传统 ETL 更受欢迎:

  • 便宜、实惠且高效的云存储和分析服务。
  • 传统 ETL 管道没有那么灵活,无法根据指数数据增长轻松适应。
  • 与传统 ETL 相比,现代 ELT 速度更快,因为在将数据加载到仓库之前不涉及严格的转换阶段。
  • 鉴于不需要用户定义的转换,ELT 工具非常擅长将源数据简单地插入目标系统,而用户的手动工作最少。
  • 分析师可以根据需要使用 DBT 等工具对仓库中的数据执行转换,而无需事先考虑洞察力和数据类型。

初创公司的采用策略

正如本博客前面提到的,初创公司很难预测数据的演变,他们将要应对。

因此,早期初创公司在为其数据堆栈选择工具时应考虑以下事项:

  • 其他初创公司和客户的高采用率和意识。
  • 这适合数据堆栈的 ELT 模型。
  • 数据库范式(例如结构化、地理空间、实体关系、搜索引擎),适合存储和查询其领域和市场产生的数据的要求。
  • 付费 SaaS 工具的等效开源替代品。

提取和加载

从所有事件源(如 Web、应用程序、后端服务)收集数据,并将它们发送到数据仓库。

  • 付费 SaaS 工具:Stitch、Fivetran
  • 免费和开源替代品:Singer、Meltano、Airbyte

数据仓库

组织所有数据的结构化、非易失性、单一事实来源,我们可以在其中存储和查询所有数据。

  • 付费:AWS Redshift、Google BigQuery、Snowflake
  • 免费和开源替代品:Apache Druid

转换和建模

使用文档从原始数据创建模型以更好地使用。

  • 付费:Dataform、DBT
  • 免费和开源替代品:Talend Open Studio、Apache NiFi

编排

用于执行和编排处理数据流的作业的软件。

  • 付费:Prefect.io
  • 免费和开源替代品:Apache Airflow、Dagster

可视化和分析

为了更好地了解和解释来自不同数据源的数据。

  • 付费:Tableau、Microsoft PowerBI、Grafana
  • 免费和开源替代品:Metabase、D3js、DyGraphs
相关文章
|
1月前
|
存储 SQL 关系型数据库
ClickHouse(02)ClickHouse架构设计介绍概述与ClickHouse数据分片设计
ClickHouse的核心架构包括执行过程和数据存储两部分。执行过程涉及Parser与Interpreter解析SQL,通过Column、DataType、Block、Functions和Storage模块处理数据。Column是内存中列的表示,Field处理单个值,DataType负责序列化和反序列化,Block是内存中表的子集,Block Streams处理数据流。Storage代表表,使用不同的引擎如StorageMergeTree。数据存储基于分片和副本,1个分片由多个副本组成,每个节点只能拥有1个分片。
185 0
ClickHouse(02)ClickHouse架构设计介绍概述与ClickHouse数据分片设计
|
1月前
|
缓存 安全 API
【亿级数据专题】「高并发架构」盘点本年度探索对外服务的百万请求量的API网关设计实现
公司对外开放的OpenAPI-Server服务,作为核心内部系统与外部系统之间的重要通讯枢纽,每天处理数百万次的API调用、亿级别的消息推送以及TB/PB级别的数据同步。经过多年流量的持续增长,该服务体系依然稳固可靠,展现出强大的负载能力。
96 9
【亿级数据专题】「高并发架构」盘点本年度探索对外服务的百万请求量的API网关设计实现
|
9月前
|
存储 SQL 关系型数据库
TiDB亿级数据亚秒响应查询整体架构
TiDB亿级数据亚秒响应查询整体架构
700 0
|
9月前
|
供应链 架构师 数据库
架构师带你搞明白微服务进阶场景实战:服务之间的数据依赖问题
数据同步 上面讲解了数据一致性的解决方案,这一篇来讲讲服务之间的数据依赖问题,还是先来说说具体的业务场景。 业务场景:如何解决微服务之间的数据依赖问题 在某个供应链系统中,存在商品、订单、采购这3个服务,它们的主数据部分结构表如下。
架构师带你搞明白微服务进阶场景实战:服务之间的数据依赖问题
|
10天前
|
存储 关系型数据库 数据库
数据的反规范化架构
【6月更文挑战第13天】 本文介绍数据库设计包括规范化和反规范化。优化设计和应用规范化规则确保高效且准确的数据存储。
32 2
数据的反规范化架构
|
17天前
网络编程中的互联网协议 , IP地址 , 域名 , 端口 , 架构 , 网页数据请求 , 响应码
网络编程中的互联网协议 , IP地址 , 域名 , 端口 , 架构 , 网页数据请求 , 响应码
|
4天前
|
机器学习/深度学习 数据采集 人工智能
【机器学习】CLIP模型在有限计算资源下的性能探究:从数据、架构到训练策略
【机器学习】CLIP模型在有限计算资源下的性能探究:从数据、架构到训练策略
11 0
|
18天前
|
存储 缓存 NoSQL
了解Redis,第一弹,什么是RedisRedis主要适用于分布式系统,用来用缓存,存储数据,在内存中存储那么为什么说是分布式呢?什么叫分布式什么是单机架构微服务架构微服务的本质
了解Redis,第一弹,什么是RedisRedis主要适用于分布式系统,用来用缓存,存储数据,在内存中存储那么为什么说是分布式呢?什么叫分布式什么是单机架构微服务架构微服务的本质
|
1月前
|
存储 设计模式 测试技术
了解三层架构:表示层、业务逻辑层、数据访问层
了解三层架构:表示层、业务逻辑层、数据访问层
780 0
|
1月前
|
机器学习/深度学习 语音技术 网络架构
【视频】LSTM神经网络架构和原理及其在Python中的预测应用|数据分享
【视频】LSTM神经网络架构和原理及其在Python中的预测应用|数据分享

热门文章

最新文章