【问题标题】:Create dashboard on Firebase Database for various metrics在 Firebase 数据库上为各种指标创建仪表板
【发布时间】:2019-02-28 22:46:07
【问题描述】:

我在 firebase 数据库表中有 events,其中每个事件都有某些字段。其中一个字段是event_type。我想要实现的是能够以图形的形式可视化,每种类型每天有多少事件发生?

如何在 firebase 数据库中执行类似操作?

第一季度。是否可以直接在 firebase 中执行此操作?

第二季度。我是否需要将数据移动到其他数据源(如大查询)并在那里设置仪表板?

【问题讨论】:

    标签: firebase firebase-realtime-database google-bigquery


    【解决方案1】:

    绝对可以直接在 Firebase 实时数据库上创建包含聚合数据的仪表板。但是你必须采取与例如不同的方法。大查询。

    使用关系数据库,您将通过运行聚合查询来创建仪表板。例如,要显示每种类型的事件数量,您将运行 SELECT type, COUNT(*) FROM events GROUP BY type 之类的内容。

    Firebase 实时数据库(以及大多数 NoSQL 数据库)没有这样的 GROUP BY 操作,而不是 COUNT() 方法。因此,这意味着您必须将所有数据加载到仪表板中,并在那里对其进行分组/计数,这非常昂贵。这就是为什么在 NoSQL 数据库上,您通常会为数据库中的每种类型保留一个运行计数,并在每次写入操作时更新它。虽然这会给每个写入操作带来开销,但当您执行此操作时,仪表板本身会突然变得非常简单。有关简单计数器的示例,请参阅function-samples repo

    只有在您预先知道要在仪表板中显示哪些计数器(和其他聚合)时,这种方法才有效。如果不是这样,许多开发人员会使用实时数据库的夜间备份将数据提取到另一个更适合探索性查询的系统,例如 BigQuery。

    任何一种方法都可以正常工作。正确的方法取决于您的确切用例(例如,您是否知道仪表板中所需的确切数据,还是您仍在弄清楚?)以及您最熟悉的内容。

    【讨论】:

    • 谢谢弗兰克。我知道确切的数据。我启用了 firebase 数据库的备份(将数据移动到 BigQuery)。它在谷歌存储中创建了一个 json.gz 文件。是否可以使用这些夜间备份来创建仪表板(可能使用 BigQuery?)
    • 是的,这是可能的。试一试,如果您遇到困难,请发布一个问题,说明您尝试了什么以及出了什么问题。
    猜你喜欢
    • 2016-11-22
    • 2023-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-13
    • 1970-01-01
    • 2017-07-31
    相关资源
    最近更新 更多