如何将Superset连接到Google Analytics等外部API?

时间:2018-04-02 13:34:05

标签: google-analytics-api superset apache-superset

我愿意通过他们的API将Google Analytics和Google Search Console数据直接显示到Superset。

  1. 使用JSON直接查询Google AnalyticsAPI(而不是将结果存储到我的数据库中,然后将其显示到Superset中)并在Superset中显示结果
  2. 使用JSON直接查询Google Search Console API并在Superset中显示结果
  3. 直接查询其他令人惊叹的JSON API并在Superset中显示结果
  4. 我该怎么办?

    我找不到Google Analytics数据源。我找不到Google Search Console数据源。

    我找不到一种方法来显示从API检索的Superset数据,只显示存储在数据库中的数据。我必须遗漏一些东西,但我在与验证相关的文档中找不到任何内容。查询外部API。

    提前感谢您的帮助!

4 个答案:

答案 0 :(得分:1)

Superset无法直接查询外部数据API。 Superset必须与受支持的数据库或数据引擎(https://superset.incubator.apache.org/installation.html#database-dependencies)一起使用。这意味着您需要找到一种从API提取数据并将其存储在受支持的数据库/数据引擎中的方法。一些选项:

  • 构建一个小的Python管道,该管道将查询数据API,将数据展平为表格/关系形式,然后将该数据上传到受支持的数据源-https://superset.incubator.apache.org/installation.html#database-dependencies-并设置Superset,以便与该数据库/数据引擎对话。

  • 对于更强大的解决方案,您可能希望与devops /基础架构一起使用像Apache Airflow(https://airflow.apache.org/)这样的工作流调度程序来定期ping此API并将其存储在某些数据库中Superset可以与之交谈的一种。

  • 如果您想定期从流行的第三方API查询数据,我还建议您检出Meltano并了解有关Singer taps的更多信息。这些将处理一些繁重的工作,定期从API提取数据并将其存储在Postgres之类的数据库中。好消息是Google Analytics(分析)有一个Singer点击-https://github.com/singer-io/tap-google-analytics

无论哪种方式,Superset都只是数据库/数据引擎之上的一薄层。因此,无法绕开现实,您需要找到一种方法来从API中提取数据并将其存储在兼容的数据源中。

答案 1 :(得分:0)

  

我找不到Google Analytics数据源。我找不到Google Search Console数据源。

我想你已回答了自己的问题。我不知道Google Analytics的SQL界面。

答案 2 :(得分:0)

默认情况下没有这样的连接器。

建议的解决方案是将您的Google Analytics和Search Console数据存储在数据库中,您可以编写一个脚本,每4小时或任何时间间隔为您提取数据。

此外,您不应存储所有数据,只应存储您希望在报告中看到的维度/指标。

答案 3 :(得分:0)

Redash是该任务的Superset的替代方法,但它没有相同的功能。以下是这两种工具的集成比较列表:https://discuss.redash.io/t/a-comparison-of-redash-and-superset/1503

一种快速的替代方法是为第三方服务付费,例如:https://www.stitchdata.com/integrations/google-analytics/superset/