揭秘 IFTTT 每天处理几十亿事件数据的基础结构
揭秘 IFTTT 每天处理几十亿事件数据的基础结构 数据对于IFTTT至关重要。我们的 BD 和营销团队依靠数据来做出关键的业务决策。产品团队依靠数据来测试来了解用户是如何时候我的产品的,以做产品决策。数据团队本身依靠数据建立产品,比如Recipe推荐系统和垃圾邮件检测工具。此外,我们的合作伙伴依靠数据来实时获取Channels的性能。 因为数据对于IFTTT如此关键,并且我们的服务每天处理几十亿事件,所以我们的数据基础设施必须具有高可扩展性、可用性的和弹性,以便跟上产品的快速迭代。在这篇文章中我们将带你浏览数据基础设施和架构,也会分享一些我们在构建和操作数据的收获。 数据来源 在IFTTT有三种数据来源,对于理解用户的行为和Channels的效率至关重要。 第一,在 AWS RDS 有一个 MySQL 集群,用来维护应用的基本内容的当前状态,比如用户、Channels和Recipes,包括他们的关系。IFTTT.com 和移动应用靠 Rails 应用支撑。获得数据并导出到S3,每天用AWS Data Pipline导入到Redshift。 接下来,像用户与 IFTTT 产品的交互数据...