cube.js 学习(四)cube.js cube 说明】的更多相关文章

一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.js 的包管理器 npm,是全球最大的开源库生态系统. 能方便地搭建响应速度快.易于扩展的网络应用,Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的实时应用. 官网:https://nodejs.org/en/中文:https://cnode…
可以对 Sea.js 进行配置,让模块编写.开发调试更方便. seajs.config seajs.config(options) 用来进行配置的方法. seajs.config({ // 别名配置 alias: { 'es5-safe': 'gallery/es5-safe/0.9.3/es5-safe', 'json': 'gallery/json/1.0.2/json', 'jquery': 'jquery/jquery/1.10.1/jquery' }, // 路径配置 paths: {…
尽管cube.js 包含了一个doc 站点,但是资料不是很全,同时如果查看了cube github 代码中的一些demo的话,发现还是很不错的 但是一些实践没有在文档展现出来,还好我们可以从cube 的产品网站找点有意义的东西 参考网站 https://statsbot.co/docs 比如一些好的实践 动态union table 的 https://statsbot.co/docs/dynamically-union-tables 如何处理子查询的 https://statsbot.co/do…
这个是一个简单的demo,使用gitbase+cube 分析git 仓库代码 需求 我们平时使用的gitlab,或者gogs 等git 仓库管理工具,有自己的管理强项,但是对于分析上可能就不是那么强大了 这个就需要我们进行git 代码文件级别的分析了,可选的工具很多gitstats 就是一个不错的选择,但是大部分是基于 单仓库管理的,gitbase 则不同,给予我们提供了大批量的分析能力 环境准备 gitbase 安装 参考官方文档,直接二进制文件就可以了 cube.js 这个我们可以通过全局安…
  cube.js 对于measure以及dimension 提供了丰富的数据类型,基本满足我们常见应用的开发,同时对于不同类型也提供了 格式化的操作 measure类型 number 格式 purchasesRatio: { sql: `${purchases} / ${count} * 100.0`, type: `number`, format: `percent` } count 格式 numerOfUsers: { type: `count`, // optional drillMem…
  cube.js 也支持join, 参考格式 joins: { TargetCubeName: { relationship: `belongsTo` || `hasMany` || `hasOne`, sql: `SQL ON clause` } } 一个简单demo cube("Authors", { joins: { Books: { relationship: `hasMany`, sql: `${Authors}.id = ${Books}.author_id` } } }…
cube.js的 data schema 类似graphql 的type 定义,但是cube.js 的data schema 更偏向于dsl, 其中抽象了进行数据分析应用开发中的东西,自己提炼了measures , dimensions,cube 说明 cube 这个是用来进行实体,或者说是数据库表管理的 measures 说简单点就是聚合类的操作,但是这个是由cube.js 自动帮我们生成代码的,我们只需要定义 dimensions 实际上就是我们关注的详细数据列信息(一般体现为数据库表的定义…
cube.js 是目前看到从设计以及理念上很不错的数据分析事件,graphql2chartjs 是hasura graphql-engine 团队开发 的一个类库基于graphql,以下做一些比较 cube.js 组件更丰富(backend,frontend),graphql2chartjs 就是一个类库,只是封装了一些图标的处理 cube.js 支持的数据库比较多,graphql2chartjs 只是pg(当然和hasura 的graphql-engine有关系) 都是支持实时数据展示的,但是…
我们可以使用cube的pre-aggregation 加速数据的查询,以下为一张来自官方的pre-aggregation 架构 参考架构图 pre-aggregation schema preAggregations: { amountByCreated: { type: `rollup`, measureReferences: [amount], timeDimensionReference: createdAt, granularity: `month` } } 参考资料 https://c…
segments 是你需要查询的数据的子集,实际上filter 也可以做类似的事情,但是,目前这个设计估计是为了更好的数据 查询吧,同时在操作界面上我们也可以看出来 参考格式 segments: { sfUsers: { sql: `location = 'San Francisco'` } } 参考资料 https://cube.dev/docs/segments        …