Turnilo数据立方体配置:打造个性化数据分析模型
【免费下载链接】turniloBusiness intelligence, data exploration and visualization web application for Druid, formerly known as Swiv and Pivot项目地址: https://gitcode.com/gh_mirrors/tu/turnilo
Turnilo是一款功能强大的商业智能和数据可视化Web应用,专为Druid设计,前身是Swiv和Pivot。通过数据立方体配置,用户可以自定义维度、度量和聚合规则,构建符合业务需求的个性化数据分析模型。本文将详细介绍Turnilo数据立方体的核心配置方法,帮助新手快速掌握数据模型定制技巧。
数据立方体基础配置:打造个性化分析框架
数据立方体是Turnilo的核心概念,通过dataCubes配置项定义。基础属性决定了数据立方体在UI中的展示方式和默认行为,以下是关键配置项:
- name:内部标识名称,URL安全字符串,建议保持稳定以避免链接失效
- title:用户可见名称,可随时修改不影响功能
- description:Markdown格式描述,支持"Show more"折叠效果(使用
---分隔) - clusterName:所属集群名称,"native"表示文件数据源
- source:Druid数据源名称,支持多个数据源组合(Union Data Source)
基础配置示例:
dataCubes: - name: sales_data title: 销售数据分析 description: 包含2020-2023年销售数据,支持按地区、产品类别分析 clusterName: druid_prod source: sales_events defaultTimezone: Asia/Shanghai defaultDuration: P7D # 默认显示7天数据维度定制:构建多维度分析视角
维度是数据分析的基础,决定了数据可以从哪些角度进行拆分和过滤。Turnilo支持丰富的维度配置选项,满足复杂分析需求。
基本维度配置
每个维度可配置以下核心属性:
- name:唯一标识,URL安全字符串
- title:UI显示名称
- formula:Plywood表达式,支持复杂数据转换
- kind:数据类型(string/boolean/number/time)
- granularities:时间维度的5级粒度设置,如
['PT1H', 'P1D', 'P1W', 'P1M', 'P1Y']
高级维度应用
1. 派生维度创建
通过公式创建计算维度,例如从URL中提取版本号:
dimensions: - name: resource_version title: 资源版本 formula: $resourceName.extract('(\d+\.\d+\.\d+)')2. 布尔维度定义
创建条件过滤维度,快速筛选关注数据:
dimensions: - name: high_value_users title: 高价值用户 formula: $revenue > 1000 or $order_count > 53. 维度分组管理
将相关维度组织成组,提升UI体验:
dimensions: - name: user_info title: 用户信息 dimensions: - name: age title: 年龄 type: NUMBER - name: gender title: 性别度量配置:定义关键业务指标
度量是数据分析的核心指标,Turnilo支持基础聚合和复杂计算度量,满足各类分析需求。
基础度量属性
- name:唯一标识名称
- title:UI显示标题
- formula:聚合表达式,默认
$main.sum($name) - format:数值格式,如"0,0.00 $"表示货币格式
- units:单位说明,如"元"、"次"
高级度量应用
1. 比率计算
创建转化率、CPM等比率指标:
measures: - name: cpm title: 千次展示成本 formula: $main.sum($revenue) / $main.sum($impressions) * 1000 format: "0.00 $" units: CPM2. 条件聚合
针对特定条件计算度量,如仅统计美国地区收入:
measures: - name: usa_revenue title: 美国地区收入 formula: $main.filter($country == 'United States').sum($revenue)3. 度量分组
将相关度量组织成组,便于用户选择:
measures: - name: engagement title: 用户参与度 measures: - name: page_views title: 页面浏览量 - name: session_duration title: 会话时长数据刷新规则:确保分析时效性
刷新规则控制Turnilo如何获取数据源的最新数据时间,根据数据更新频率选择合适策略:
- query:适合批处理数据,每分钟查询最新时间维度值
- realtime:适合实时数据,直接使用当前时间
- fixed:适合静态数据,使用固定时间点
配置示例:
refreshRule: rule: query # 对于fixed规则需添加: # time: "2023-12-31T23:59:59Z"实用配置技巧:提升分析效率
属性覆盖(Attribute Overrides)
修复Turnilo自动检测的数据类型问题,如将字符串维度标记为数值类型:
attributeOverrides: - name: age type: NUMBER自定义转换与聚合
通过JavaScript定义复杂数据转换和聚合逻辑,扩展分析能力:
options: customTransforms: stringFun: extractionFn: type: javascript function: function(x) { return x.toUpperCase(); }数据立方体示例展示
上图展示了配置完成的数据立方体在Turnilo中的实际效果,用户可以通过拖拽维度和度量,快速生成各类可视化图表,支持实时交互分析。
配置文件位置与管理
Turnilo数据立方体配置通常在项目根目录的config-examples.yaml文件中定义,也可通过独立配置文件管理。详细配置说明可参考项目文档:docs/configuration-datacubes.md
通过灵活配置数据立方体,Turnilo可以完美适配各类业务场景,帮助用户从复杂数据中快速挖掘有价值的 insights。无论是简单的指标监控还是深度的多维分析,合理的数据模型设计都是提升分析效率的关键。
【免费下载链接】turniloBusiness intelligence, data exploration and visualization web application for Druid, formerly known as Swiv and Pivot项目地址: https://gitcode.com/gh_mirrors/tu/turnilo
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考