挑战: Bunny 是一家使计费和 RevOps 变得更简单的 SaaS 公司,遇到了一个问题。他们想要提供一流的 analytics,但从头开始构建 analytics 平台将既困难又耗时。他们需要一个可以部署到他们的服务器上、清晰展示数据的工具,并且不需要与其他数据库同步数据。
解决方案: 他们选择了 Metabase,因为 Metabase 以他们想要的方式展示数据,并且他们能够在自己的服务器上运行 Metabase。Bunny 使用 Metabase 的功能来控制谁可以看到什么数据,并使嵌入式图表和仪表板看起来像他们自己的品牌。
结果: 通过在他们的 SaaS 产品中嵌入 Metabase,Bunny 能够向客户提供出色的 analytics(内置隐私和定制),同时同时使他们的技术团队能够专注于使他们的产品独一无二。
"Metabase 为我们的产品提供了关键组件,它为我们的客户提供直观的 analytics,同时允许我们的工程团队能够专注于我们业务的核心其他方面。"托马斯·佩德森
CEO 及联合创始人
Bunny将Metabase嵌入其SaaS应用中,为客户提供面向客户的分析。作为第二次创业的SaaS创始人,Bunny团队已经知道,自己构建分析引擎不值得花费精力。他们已经清楚地知道想要向客户展示哪些分析。他们也知道,希望工程师专注于产品开发,并寻找购买解决方案。在选定供应商之前,他们已经决定提供各种仪表板,这使得选择过程变得容易得多。Bunny的一位工程师评估了他们已知并有一定经验的解决方案以及一些新进入者,其中包括Metabase。
“我们选择Metabase是因为我们可以在自己的服务器上部署它,并且可视化选项涵盖了我们的需求,无论是功能还是外观。” —— 汤姆说。
Bunny团队特别不想将数据同步到另一个供应商的数据库,原因包括延迟、带宽、数据隐私和数据模式迁移挑战。Metabase直接部署在他们AWS服务器上,这为他们提供了他们所寻找的性能和灵活性。
Bunny在AWS/Postgres上托管他们的服务,分为两个不同的分片;一个用于开发者,一个用于生产。没有独立的ETL工具,因为所有数据都是在客户注册或销售人员创建交易和订阅时直接在Bunny中创建的。Metabase在单独的只读Postgres副本上运行,以将分析查询与事务性工作负载分开。
Bunny团队依靠Metabase中的数据权限来控制每个租户在Metabase中可以看到什么。Bunny为所有记录盖章一个tenant_id
,当某人通过SAML登录Metabase时,应用程序会传递这个ID。这个ID告诉Metabase每个客户可以探索哪些数据。
Bunny还将其Metabase进行白标处理,以匹配自己的用户界面,包括自定义颜色、徽标等。
在构建SaaS产品时,关于构建什么和购买什么有很多权衡。Bunny希望能够为客户提供世界级的分析,而不必在构建和维护那些永远不会与Metabase这样的最佳产品相匹配的分析功能上投入大量的工程资源。通过嵌入Metabase,Bunny现在可以将工程资源集中在改进其核心产品上,以在竞争中脱颖而出。