如今,典型公司的每个部门都在处理数据。这些部门使用的每个工具也是如此。无论你是在处理广告活动、产品分析工具还是崩溃日志工具,有一点是明确的:你有很多可操作的数据需要深入挖掘。
但是,当你每个数据集都存储在不同的工具中时,你会怎么做?如果数据都集中在一个地方,你就可以将它们结合起来,运行 SQL,并构建仪表板,这岂不是更简单吗?
我们将讨论在同一个地方整合所有数据的最常见方法,并从成本、工程资源和通用性等方面评估每种方法。
将所有数据集中在一起的最常见方法
数据仓库是一个专门用于分析目的的数据库。您的产品不会直接使用它,但您的业务可以使用它来构建所有查询和仪表板。仓库允许您在不查询产品数据库的情况下进行快速分析,这可能会使您的产品变慢。常用的数据仓库示例包括Redshift(AWS的一部分)、BigQuery(谷歌云的一部分)和Snowflake。
直接集成
许多工具提供与数据仓库或BI工具的直接集成。例如,Mixpanel有一个“数据管道”插件,允许您轻松地将所有数据导出到您选择的仓库。客户数据平台工具Segment将数据仓库作为您发送所有捕获数据的可能目的地。因此,如果您想要将来自多个工具的数据集中到一个地方,首先检查这些工具是否提供了与您的仓库或BI工具的内置集成。
直接集成通常速度很快,成本也不高(一些工具免费提供),但缺点是它们不太灵活。只有一小部分工具提供此类集成,所以如果所需的工具没有提供,您可能就无计可施。
ETL工具
从多个来源合并数据一直是公司多年的需求,这也导致了大量时间和金钱的投入,这就是为什么近年来我们有了整整一类工具专门用来以无代码的方式处理这一需求。这些工具通常被称为“ETL工具”;一些示例包括Fivetran、Hevo和Stitch。
ETL工具为“来源”和“目的地”提供了一套预构建的集成。正如其名称所示,“来源”是指任何数据源,如营销分析工具或产品分析工具。而“目的地”是指数据将从来源存储的地方,通常是数据仓库。
ETL工具的优点是它们无需编写代码。您通常可以在几分钟内设置一个管道,然后监控管道的性能。ETL工具为您节省了大量时间和资源,并且其管道始终是高质量的。缺点是如果您的数据量很大,它们的成本可能会很高。但对于大多数初创公司来说,您每月只需花费大约200-300美元即可使用ETL工具。它们的另一个限制是选择:您只能使用支持的数据源和目的地。因此,在决定使用ETL工具之前,请检查它们的集成列表,以确保您的工具受到支持。
总结一下,ETL工具需要的工程资源很少,而且通常非常灵活。它们的唯一缺点是数据量大时成本较高。
自定义脚本
最后但同样重要的是,我们有一种最经过时间考验的方法来移动数据:自定义脚本。几乎每个工具都提供了一个可以用于导出/导入数据的API。因此,如果您的工具没有提供自己的集成,也没有被您选择的ETL工具覆盖,那么您始终可以编写一个脚本,通过其API将数据导出到您选择的目的地。
通常这些类型的脚本是用Python或JavaScript编写的,并设置为定期运行。其频率取决于您的需求,通常是每天。
自定义脚本是在所有选项中最灵活且成本最低的,但从您直接支付以使系统运行的角度来看,它们需要最多的工程资源。这看起来可能是一个有吸引力的权衡,但根据我的经验,团队往往会低估构建和维护脚本所涉及的工作。因此,只有当您有工程团队的能力并且已经尝试了上述其他选项时,才应采取这种方法。
您应该选择哪种方法?
如何解决此问题取决于您的数据来源、工程资源和财务资源。在许多情况下,公司最终会使用上述所有方法的组合。但在开始使用任何这些方法之前,请确保检查相关数据源是否适合您选择的方法:它们与您的ETL工具有集成吗?它们提供良好的API吗?另外,请确保您有实施该解决方案的资源。