postgresql - 如何将显着性测试和相关性计算添加到 cube.js 流中?
问题描述
我们目前正在使用 cube.js 来实现其数据基础设施、查询和 API 功能。
但是,作为我们要求的一部分,我们需要执行统计计算,例如显着性检验和某些度量的相关性。在 cube.js 中是否有这样做的内置方法?
我们已经尝试通过从 cube.js 模式中的 sql 字段调用它来使用 PostgreSQL 中内置的相关函数,并且它可以工作(代码如下所示)但是还有其他选择吗?
measures: {
testCorrelation: {
title: 'Test Correlation',
sql: `corr(${CUBE}.col1,${CUBE}.col2)`,
type:`number`
}
}
对于显着性测试,我们还没有找到任何解决方案。
我们考虑创建一个 python 统计微服务,它将向 cubejs 服务器(也称为立方体客户端)发出请求,处理计算,然后将计算结果发送到 react 客户端。这个流程/架构会起作用吗?在这个领域是否做过类似的工作?
将不胜感激任何回应/想法。谢谢你。
解决方案
在 cube.js 中是否有这样做的内置方法?
不会,也可能不会。
Cube.js 提供了在度量中定义 SQL 的能力。有些任务可以在内置函数之上解决。另一部分可以在用户定义的过程/功能或安装的扩展之上完成。
对于显着性测试,我们还没有找到任何解决方案。
PostgreSQL 本身只内置了有限的统计功能,但 PL/R 扩展支持比您想要的更多的统计测试和其他功能。
我们考虑创建一个 python 统计微服务,它将向 cubejs 服务器(又名立方体客户端)发出请求
最好在数据库中进行聚合,因为:
- 您将无法使用预聚合
- 数据传输可能需要大量时间和内存
- 一些数据库可以使用列格式进行存储和 SIMD 执行。
谢谢
推荐阅读
- oracle - 在正常的 oracle 函数中:ORA-06531:引用未初始化的集合
- jmeter - 通过 Jmeter 每秒发送并发 http 请求
- wcf - Biztalk WCF 不会显示自定义行为
- angular-cli-v6 - --dev 选项在 Angular CLI 中不起作用
- php - Laravel 5.6 Storage::download file not found
- gcc - 使用带有 gcc 的 std::chrono 运算符 ""s
- vba - 保存名称为日期的 Excel
- drupal - 通过升级删除了添加到 Drupal 核心的自定义功能
- unity3d - unity 自定义地图显示不正确
- kubernetes - kubernetes 应用程序 pod 无法共享 pod emptydir 卷挂载到 daemonset fluentd pod