开发工具 Headless Analytics stack?

hooopo · 2021年03月20日 · 最后由 coderliu 回复于 2021年03月21日 · 588 次阅读

什么是 Headless CMS

Headless CMS 是最近很流行的一个概念,是前后端分离浪潮的一个产物,一般配合 JAMStack 一起,可以快速搭建 WEB 应用。典型代表是 Strapi 和 GraphCMS。特点是灵活,低耦合,配合各种开源组件和云服务可以有巨大的想象空间。

什么是 Headless Analytics

其实并没有 Headless Analytics 这个概念。但和 Headless CMS 与 JAMStack 的流行有着相似的地方,我觉得把这种趋势的 BI 技术栈,MPP Database or SQL-MR(bigquery、clickhouse、presto) + self service BI(metabase、chartio、cubejs)称为 Headless Analytics 是很恰当。

前面提到,促成 Headless CMS 和 JAMStack 流行的两个因素是前后端分离和云服务设施的普及。

那么,Headless Analytics 流行的几个因素:

  • SQL 成为数据分析领域的第一语言,大数据领域的组件无论底层实现是什么,都会提供 SQL 接口,比如各种 SQL on hadoop、SQL on HDFS,甚至 SQL on kafka。还有一些坚持造自己的查询语言的组件,比如 elastic 和 influxdb,不过这都成为了永久的遗留问题。
  • 分析型数据库的扩展能力和性能有了很大提升,像 bigquery、clickhouse、greenplum、timescaledb 等开源产品和云服务的数据处理能力足够强大,在 PB 级数据量,Ad Hoc 查询也可以秒级响应,不需要像传统数仓预聚合之类的方案,也不需要很重的 ETL。ELT 和 Data Lake 成为新的趋势。
  • Self Service BI 开源项目和云服务的流行,由于 SQL 的标准化接口和普及,才有了像 metabase、superset、chartio、mode analytics、cubejs 等开源和商业的自助式 BI 可视化工具的流行。SQL 作为统一的接口功不可没。

Hypercable Analytics

最近在做一个项目 Hypercable ,用 timescaledb 和 openresty 实现一个开源的 Google Analytics,基本上复制了 GA 的大部分功能。但最近想法有些变化,打算做成一个 Headless Web Analytics 集成工具,就是存储可以自由切换,可视化部分也可以由用户自己选择,Hypercable 只提供行为数据收集和 Data Model 定义的工作,当然对于没有耐心去定制的用户,Hypercable 还会提供默认的存储和 UI,只不过是以插件或 SaaS 的形式。

理论上,GA + BigQuery + datastudio 也是类似的效果,不过使用谷歌这套的特点就是贵,并且运营商锁定,并不是所有人都能用谷歌云。

ref: https://hypercable.caitou.org/blog/Hypercable%20for%20Headless%20Web%20Analytics%20Stacks

所以就是 snowplow 是吧。。。

cqcn1991 回复

相似度很高

高产似母猪😉

需要 登录 后方可回复, 如果你还没有账号请 注册新账号