每天,成千上万的开发人员使用 Netlify 部署网站,这意味着数百万的访客和页面浏览量。这意味着每天有数十亿个数据点流入我们的数据仓库,我们会对数据进行大量筛选以监控正在发生的事情。
但是,我们不应该只使用数据来告诉我们正在发生什么(这本身就很有价值),如果我们能够让数据为我们服务,从而创造更多价值,那又怎么样?
例如,我们收集有关新开发人员何时部署其第一个网站的信息。我们庆祝每个用户 Web 开发旅程的这一部分!跟踪这个数据点很棒,但我们可以通过使用该数据点来定位这些新用户并分享其他资源来支持他们的 Web 开发旅程,从而增加价值。
但是如何做到呢?传统上,很难将这种类型的数据从数据仓库转移到其他 SaaS 工具中,例如我们用于通信和销售的 HubSpot 或 Salesforce。通常,您需要工程师构建数据管道来使用云存储和 API 端点移动这些数据,当您添加管道监控、错误处理和不断变化的项目要求时,所有这些都会迅速增加大量的工程开销!
这就是为什么我们与Census合作来自动化我们数据堆栈的这一部分,通常称为“反向 ETL”或“操作分析”。使用 Census,我们设置了指向数据仓库中的表和目标 SaaS 服务中的对象的同步。一旦我们选择了想要更新的目标字段,然后选择了一个频率(同步可以从连续运行到每周一次),就完成了。Census 从那里开始,现在我们将最新的用户信息流式传输到我们的其他工具中,我们可以从这些流式数据点设置自动化工作流程。这意味着新开发人员在部署他们的第一个网站时会收到我们的电子邮件!
为了减少各方的负担,我们决定,对于我们想要更新的每个目 波兰电报号码数据库 标对象,我们应该只有一个同步,该同步从数据仓库中的一个表(使用dbt建模)中提取。这意味着如果您要更新 HubSpot 联系人对象上的多个字段,则所有这些都应该由从数据仓库中的一个表中提取的一个同步来处理。
在这个例子中,我们将该表命名pub_hubspot_contacts为表明它是一个发布表,用于 HubSpot 的联系人对象。
我们还利用 dbt Exposures 将所有同步到单个目的地的表组合在一起 - 这使我们能够轻松地一步监控和测试这些表。
Netlify 数据团队的数据管道
尽管我们每天启动几次生产运行,但我们已将同步设置为每小时运行一次!Census 的定价模型基于连接器数量,而不是同步数量,因此,当我们无法始终确定生产运行何时结束时,我们发现每小时方法更为可靠。这种方法意味着我们的目标服务将始终在生产运行结束后一小时内拥有更新的数据,并且即使我们提高频率或有多个作业计划,数据仍将保持不变。
在设置人口普查时,我们尝试了几种不同的方法,并决定采用一致的方式来设置同步
-
- Posts: 242
- Joined: Sun Dec 22, 2024 4:05 am