Crest 文档
用户指南

数据集

Crest 数据集操作手册,覆盖数据表、SQL、Excel/CSV、API、多表关联、字段管理、计算字段、分组字段、预览、同步和血缘检查。

数据集是 Crest 的分析模型。数据源负责连接数据,数据集负责把数据整理成业务用户能理解、能拖拽分析的字段体系。后续图表、仪表盘和数据大屏都基于数据集取数。

入口:顶部菜单选择“数据准备”,进入“数据集”。

数据集列表

列表页用于管理数据模型。新建前选择保存目录;使用前确认数据集类型、最近编辑时间和创建人;删除、移动、重命名前先确认下游血缘。数据集不是临时查询,而是后续图表和大屏长期复用的模型。

先认识页面

数据集页面由资源树、数据集列表和详情预览组成。日常使用时,先在左侧文件夹定位资源,再在右侧查看数据集名称、类型、更新时间和操作入口。

区域作用使用建议
左侧资源树按文件夹组织数据集按业务主题划分,例如“经营分析”“项目交付”“客户运营”
数据集列表展示当前目录下的数据集重点看名称、创建人、最近编辑时间
新建入口创建表模式、SQL 模式或其他来源的数据集新建前先确认数据源已经测试通过
操作列编辑、复制、移动、删除、同步、预览等删除前必须检查下游使用关系
详情预览查看数据预览、字段结构和基本信息保存后用这里做第一轮验收

选中数据集后,先查看数据预览。预览不只是确认“有没有数据”,还要检查日期范围、数值单位、维度取值和空值是否符合业务口径。

数据集数据预览

数据预览适合做“样例验收”。例如销售类数据要看日期、区域、订单数、金额;研发类数据要看阶段、项目、负责人、需求数和耗时。预览里出现空白、乱码或明显异常值时,先回到数据源或 SQL 处理,不应直接交给图表使用。

再切到结构页,检查字段是否被正确识别为维度或指标。字段分类错误会影响后续图表配置效率。

数据集结构预览

结构页决定业务用户如何使用字段。维度通常用于分组和筛选,指标用于求和、平均、计数。字段名应尽量使用业务语言,例如“需求数”“销售额”“负责人”,不建议保留 req_cntamt 这类数据库缩写。

支持哪些创建方式

Crest 的数据集可以从不同来源创建。首次建模建议先用单表或视图创建;需要统一口径、过滤和关联时,再使用 SQL 或多表建模。

创建方式适用场景关键检查
数据表/视图数据源里已有整理好的表或视图字段是否完整,数据预览是否正常
自定义 SQL需要过滤、聚合、关联、改字段名SQL 是否可维护,字段别名是否清晰
Excel/CSV 数据源临时台账、目标值、映射表文件格式是否规范,字段是否稳定
API 数据源外部系统接口数据分页、鉴权和返回结构是否稳定
多表关联不写 SQL 的情况下组合多张表关联字段、关联方式和重复数据
跨源关联多个数据源之间组合分析性能、字段口径和数据刷新时点

建模原则

能在数据仓库或数据库视图里固化的口径,优先在上游固化;只在 Crest 数据集中处理报表层需要灵活调整的字段、别名、计算和轻量关联。

选择方式时,可以按以下顺序判断:

  1. 如果数据库里已经有宽表或视图,优先用“数据表/视图”。这是维护成本较低的方式。
  2. 如果只需要筛选、改字段名、轻量聚合,可以用“自定义 SQL”。
  3. 如果数据来自人工台账、目标值或映射表,先创建 Excel/CSV 数据源,再基于它建数据集。
  4. 如果数据来自接口,先在 API 数据源中把接口配置成 API 表,再基于 API 表建数据集。
  5. 如果要把事实表和维表组合起来,使用多表关联。确认主表粒度后再关联维表。
  6. 如果两个来源不在同一个数据源中,才考虑跨源关联;正式页面使用前必须做性能和口径验证。

示例:做“需求流动与交付效率”大屏时,阶段快照适合用数据表或 SQL;人员目标值可能来自 Excel;供应商 SLA 可能来自 API;最终在数据集中整理成“日期、阶段、需求数、负责人、项目、耗时”等字段。

基于数据表创建数据集

表模式适合大多数入门场景。只要数据源里有可用表或视图,就可以把它拖入建模区,然后管理字段并保存。

新建表模式数据集

这张图展示的是数据表模式的新建入口。左侧选数据源和表,中间是建模区,右侧是字段和预览。首次使用时,建议优先拖入一张已经整理好的视图,初始阶段不宜配置复杂多表关联。

点击新建数据集

在数据集列表页点击“新建”,选择数据集保存目录。名称建议使用业务语言,例如“日销售趋势”“项目交付明细”“客户活跃统计”。

选择数据源

在左侧选择已经测试通过的数据源。看不到数据源时,先检查数据源权限和当前文件夹。

选择表或视图

在表列表中找到目标表,将表拖入中间建模区。首次建模优先选择已经整理好的视图,初始阶段不宜拖入大量原始明细表。

检查字段分类

日期、地区、部门、产品、客户通常作为维度;金额、数量、时长、比率通常作为指标。字段分类可以调整。

预览数据

点击预览,确认能返回数据。重点检查日期范围、金额单位、空值、重复行和异常值。

保存

保存前填写清晰名称,放入正确文件夹。保存后回到详情页检查预览和结构。

编辑器中间是建模区,左侧是数据源表,右侧是字段和预览。单表模式下,建模区只需要放一张表或一个视图。

数据集表模式编辑器

编辑器里最重要的是“建模区”和“字段区”。建模区决定数据来源,字段区决定后续图表可使用的字段。保存前要切换到预览,检查真实返回的数据,确认不只是完成了字段拖拽。

表模式保存前检查:

  1. 表名或视图名是否选对。
  2. 字段中文名是否清楚。
  3. 维度和指标是否分组正确。
  4. 日期字段是否能按时间排序。
  5. 金额字段是否含税、是否折扣后、单位是否统一。
  6. 预览数据是否能对上业务样例。

基于 SQL 创建数据集

SQL 模式适合需要先处理数据再交给图表使用的场景,例如合并多个字段、过滤无效记录、做轻量聚合、给字段起业务别名。

在编辑器中选择自定义 SQL 后,输入查询语句并运行。SQL 运行成功后,Crest 会根据返回结果识别字段。下图展示的是从表模式切到 SQL 模式后的入口:左侧仍然选择数据源,中间写 SQL,右侧查看字段和预览。

SQL 数据集入口

入口图展示的是从普通表模式切到 SQL 模式的位置。第一次使用时,先确认左侧选中了正确数据源,再打开 SQL 输入区。SQL 模式仍然依赖数据源权限;如果当前账号看不到数据源,SQL 编辑器也无法读取表。

SQL 数据集编辑

SQL 编辑区不适合堆叠复杂业务逻辑。这里适合做轻量过滤、字段改名、简单聚合和多表查询。正式项目里,复杂且多人复用的口径建议放到数仓视图或公共模型中,数据集 SQL 只保留报表层必要逻辑。

这张图适合对照操作:左侧负责选表和查看字段,中间写 SQL,右侧或下方查看运行结果。编写 SQL 时不建议一次写入过多复杂逻辑,可先 select 少量字段并 limit 100,确认能运行后再补过滤、聚合和别名。

SQL 编辑窗口

SQL 编辑窗口顶部有“运行、参数设置、系统变量、保存”等入口。写完 SQL 后先点运行,确认下方运行结果;需要让 SQL 接收外部条件时,再配置参数。未运行成功的 SQL 不应直接保存,否则后续图表无法获取字段。

SQL 创建建议按这个顺序做:

先写最小查询

只选择要给图表使用的字段,并加上少量行数限制,例如 limit 100。确认字段能返回,再继续加工。

给字段起业务别名

req_cntavg_days 这类技术字段改成“需求数”“平均耗时”。后续业务用户拖字段时更容易理解。

加过滤条件

过滤测试数据、无效状态、删除标记或不需要的历史范围。过滤条件要写得能被别人读懂。

运行并看结果

点击运行,检查返回列、样例数据和字段类型。运行失败时先修正 SQL,不要保存。

保存为数据集

保存后回到数据集详情,检查预览和结构页,确认字段分类正确。

示例:

select
  order_date as `日期`,
  region_name as `区域`,
  city as `城市`,
  revenue as `销售额`
from v_daily_sales
limit 100

项目交付类示例可以写成:

select
  stat_date as `统计日期`,
  project_name as `项目`,
  stage_name as `需求阶段`,
  owner_name as `负责人`,
  req_count as `需求数`,
  avg_cycle_days as `平均周期天数`
from v_requirement_stage_daily
where stat_date >= date_sub(current_date, interval 90 day)
limit 500

这段 SQL 只是示例。真实项目应替换表名、字段名和日期范围;如果数据库不支持 date_sub 语法,要按对应数据库改写。重点是让返回字段直接服务图表:日期用于趋势,阶段用于分组,需求数用于统计,平均周期用于时效分析。

运行后先查看结果预览,确认字段、类型和示例数据都正确,再保存为数据集。

SQL 运行结果

运行结果页要重点看三件事:返回列名是否是业务名称,字段类型是否能被识别,样例数据是否符合预期。字段名和类型确认清楚后,后续图表配置会更顺畅。

运行结果验收可以按以下内容检查:

检查项检查方法不通过时的处理方式
字段名是否是“统计日期、项目、需求数”这类业务名称在 SQL 中补别名
日期是否能按时间排序,是否有空值在 SQL 中转换日期类型或过滤异常行
指标数值是否明显偏大或偏小检查聚合方式、关联关系和过滤条件
行数是否符合预期范围加日期过滤、项目过滤或检查源表
类型金额、数量、耗时是否识别为数值在 SQL 中做类型转换

SQL 编写建议:

建议原因
不使用 select *源表加字段后会影响数据集结构
给字段起业务别名图表里直接显示业务名称,减少二次改名
控制返回字段数量字段越少,图表配置越清晰
把过滤条件写清楚例如只保留有效订单、排除测试数据
避免在报表层写复杂业务逻辑复杂口径应进入数仓视图或公共 SQL
保存前运行预览防止 SQL 成功保存但字段不可用

如果 SQL 涉及参数、系统变量或动态条件,要在预览中测试不同值,不能只测试默认值。

多表和跨源建模

当一张表无法满足分析需求时,可以把事实表和维表组合成一个数据集。例如订单明细关联门店表、项目明细关联客户表。

多表建模仍然在表模式编辑器中完成。常见做法是先拖入事实表,再拖入维表,最后配置关联字段和关联方式。下面以“订单明细 + 门店维表”为例说明:订单明细负责金额和数量,门店维表负责区域、城市、门店等级等属性。

跨源建模入口

截图左上角的“单源/跨源”用于决定数据集是否可以选择多个数据源。单源适合大多数场景,性能和维护成本更可控;跨源适合多个系统之间做轻量关联。跨源建模前,先确认两个数据源的刷新时间、字段口径和数据量都能接受。

跨源并不是“能关联就应该关联”。如果数据量大、刷新频率高,建议先在数仓或数据库中加工成统一视图;如果只是把少量目标值、映射表或字典表补到主数据里,跨源会比较合适。

配置前先确认:

项目要确认什么
主表哪张表代表分析粒度,例如订单、工单、项目、流水
关联表哪张表补充属性,例如客户、门店、组织、区域
关联字段两边字段是否同一含义,是否存在空值
关联方式左关联、内关联等方式会影响数据范围
唯一性维表是否一对一,避免金额被重复放大
刷新时点跨源数据是否存在时间差

判断关联是否正确,可使用三个动作:

  1. 先只拖主表,预览行数和指标合计。
  2. 加入关联表后再次预览。
  3. 对比核心指标是否被放大或明显变小。

如果指标被放大,优先检查关联字段是否唯一。一对多关联是常见原因。

多表建模操作顺序:

先拖主表

主表代表分析粒度,例如订单、工单、需求或流水。先只用主表预览一次,记录行数和核心指标合计。

再拖关联表

关联表只补充属性,例如组织、门店、项目、客户。不应将两张事实表直接随意关联。

配置关联字段

选择两边含义一致的字段,例如 store_idstore_idproject_idproject_id

选择关联方式

保留主表全部记录时用左关联;只保留两边都匹配的数据时用内关联。首次配置优先从左关联开始。

对比预览结果

加关联表后再次预览。如果核心指标突然变大,通常是维表不唯一;如果变小,通常是关联字段缺失或用了内关联。

跨源建模要更谨慎。不同数据源的刷新时点、字段口径和性能差异都会影响结果。正式页面如果依赖跨源数据,建议在上线前记录清楚:每个源的来源、刷新频率、异常处理责任人。

字段管理

字段管理决定图表是否易用。字段不仅要“能查”,还要让业务用户理解并正确使用。

字段属性说明示例
展示名称图表、筛选器中显示的名称“销售额”比 revenue 更适合业务用户
字段类型文本、数值、日期等日期字段识别错误会影响趋势图
维度分组、筛选、下钻字段日期、区域、城市、门店、产品
指标可聚合的数值字段销售额、订单数、客单价、毛利率
聚合方式求和、平均、计数、最大、最小订单数通常计数或求和,价格通常平均
描述字段口径说明关键指标必须写清楚来源和计算口径

常见错误:

  1. 金额字段被放到维度区,图表无法做求和。
  2. 日期字段被识别为文本,趋势图顺序异常。
  3. 文本 ID 被当成指标,出现无意义的求和。
  4. 字段改名后,没有同步检查已有图表标题和筛选器。

计算字段

计算字段用于在已有字段基础上生成新字段。适合处理轻量公式,例如毛利、毛利率、客单价、完成率。

计算字段

计算字段弹窗用于把已有字段组合成新字段。先输入字段名称,再写公式,最后保存并回到预览中抽样验证。公式字段如果要用于百分比,记得统一小数位和展示格式。

常见写法:

毛利 = 销售额 - 成本
毛利率 = 毛利 / 销售额
客单价 = 销售额 / 订单数
完成率 = 已完成数量 / 计划数量

配置建议:

  1. 计算字段名称使用业务口径,不使用公式缩写。
  2. 分母可能为 0 时要处理。
  3. 百分比字段统一小数位和展示格式。
  4. 金额字段明确是否含税、是否折扣后。
  5. 保存后在预览中抽样核对。

计算字段适合轻量处理。复杂逻辑、跨多张表的计算和需要复用的公共口径,建议沉淀到上游数据仓库或视图。

分组字段

分组字段用于把明细取值整理成业务分组。例如把城市归到区域、把客户等级归到 A/B/C、把金额区间归到“低/中/高”。

分组字段

分组字段弹窗用于把分散取值整理成业务分组。比如城市可以归到区域,金额可以分成区间,项目状态可以归并成“正常、风险、逾期”。配置完后一定检查“未分组值”,它过多通常说明规则不完整。

适合使用分组字段的场景:

场景示例
区间分析订单金额分为 0-100、100-500、500 以上
分类归并多个渠道归并为线上、线下、合作方
层级展示城市归到大区,门店归到片区
业务标签项目状态归到正常、风险、逾期

分组字段保存后,要在预览里检查每个分组是否有数据,尤其是“其他”分组是否异常偏大。

预览、同步和变更

数据集保存后,不建议直接交给用户使用。应先完成一次完整检查。

保存后检查清单:

  1. 数据预览能正常返回。
  2. 字段结构清晰,维度和指标分类正确。
  3. 关键指标抽样核对过。
  4. 字段名称没有数据库缩写。
  5. 计算字段和分组字段能返回正确结果。
  6. 权限范围符合使用对象。
  7. 如果开启缓存,同步时间和业务刷新频率一致。

源表字段变化后,数据集可能需要同步。常见变化包括新增字段、删除字段、字段改名、字段类型变化。同步后要检查下游图表是否仍能正常显示。

字段删除风险

数据集中已经被图表使用的字段,不应直接删除或改名。先查下游资源,再与页面负责人确认替代字段。

缓存、更新和定时任务

默认情况下,数据集可以采用直连方式读取源库。直连适合数据量较小、查询压力可控、源库稳定的场景。对于查询较重、源库不适合频繁访问,或需要固定刷新窗口的数据集,可以启用缓存,让 Crest 先把数据同步到缓存表,再由图表读取缓存结果。

v1.5.7 起,MySQL 数据源支持数据集缓存。基于 MySQL 创建的数据集可选择直连读取或缓存读取;仪表盘和数据大屏通过该数据集取数时,也可读取缓存结果。

数据集缓存设置

缓存设置位于数据集编辑器左侧。图中“直连/缓存”决定查询路径,“增量/全量”决定每次更新的范围,“手动/定时”决定更新触发方式。设置完成后不能只保存,还要点击“立即更新”或等待定时任务执行,并检查状态。

这张图要按从上到下的顺序看:先决定直连还是缓存,再决定全量还是增量,最后决定手动还是定时。只设置“定时”但未完成首次同步时,仪表盘仍然无法读取缓存数据。

适用范围

当前版本的缓存能力面向 MySQL 数据源数据集。看不到“缓存”选项时,先确认数据源类型、部署版本、系统配置和当前账号权限。

缓存区域常用配置如下:

配置项说明建议
读取方式选择直连或缓存源库压力大、图表打开慢时优先评估缓存
更新方式全量或增量小表、维表用全量;大表、有递增字段时用增量
更新频率手动或定时临时数据用手动;正式看板按业务刷新节奏配置定时
增量字段判断新增数据的水位字段优先选择自增 ID、更新时间、业务流水时间
立即更新手动提交一次同步任务新建或改字段后先执行一次
缓存状态展示最近执行状态、缓存可用状态、源数据行数、缓存行数和一致性校验结果发布页面前必须确认缓存可用且校验结果符合预期

全量更新

全量更新会重新拉取数据集范围内的数据。它适合数据量不大、字段结构经常变化,或没有可靠增量字段的数据集。

操作步骤:

打开数据集编辑器

进入“数据准备 → 数据集”,选择目标数据集并进入编辑。

切换为缓存读取

在左侧配置区把“读取方式”选为“缓存”。如果页面没有该选项,说明当前数据集或数据源不支持缓存。

选择全量

在“更新方式”中选择“全量”。全量方式不需要增量字段。

设置更新频率

需要人工控制时选“手动”;需要固定刷新时选“定时”,再设置分钟、小时或天级间隔。

立即更新并验收

点击“立即更新”,等待状态变为可用。然后切到数据预览,抽查行数、日期范围和核心指标。

全量更新配置简单,但数据量越大,执行时间和源库压力越高。正式环境建议避开业务高峰,例如设置在凌晨或数据仓库批处理完成之后。

点击“立即更新”时,系统会先保存当前数据集和缓存配置,再提交同步任务。修改字段、过滤条件、更新方式或定时配置后,不需要先单独保存一次再更新,但仍应在任务结束后检查预览结果。

增量更新

增量更新只拉取水位字段之后的新数据,并定期做全量校准。它适合订单、日志、需求流转、工单、流水等持续增长的数据。

数据集缓存高级设置

高级设置用于控制缓存任务的稳定性。增量字段决定同步起点;全量刷新间隔用于定期校准缓存;超时时间防止任务长期挂起;更新后校验用于发现源端和缓存端差异。

高级设置不应随意跳过。增量字段选错时,常见问题不是任务失败,而是产生隐性漏数。比如需求状态会回写历史记录,只用创建时间做增量,就可能漏掉历史需求的状态变化;这种场景更适合用更新时间作为水位字段。

切换增量字段或更新方式时,系统会清理旧水位。下一次同步会按新配置重新计算水位,不会继续沿用旧字段的同步位置。变更前建议记录原字段、变更原因和首次同步结果,方便回溯。

增量更新要先选对水位字段。常见选择如下:

字段类型是否推荐说明
自增主键推荐数据持续新增且不会回写历史记录时适合
更新时间推荐适合会补录、修正状态或更新历史记录的数据
创建时间谨慎只能覆盖新增数据,覆盖不了历史记录修改
业务日期谨慎如果会补历史日期,容易漏数
文本编号不推荐排序和比较规则不稳定

增量配置步骤:

选择增量

在“更新方式”中选择“增量”。系统会尝试识别可用的增量字段。

确认增量字段

展开“更多设置”,选择自增 ID、更新时间或其他可靠水位字段。不要仅因为字段排在第一个就直接使用。

设置全量刷新间隔

增量任务建议保留周期性全量校准,例如每 24 小时做一次全量刷新,用来修正遗漏、补录和水位异常。

设置超时时间

根据数据量设置合理超时。任务经常超时,通常说明数据范围太大、SQL 太慢或源库连接不稳定。

开启更新后校验

勾选“更新后校验”。任务完成后对比源端和缓存端的行数或水位,便于发现缓存异常。

执行一次并查看状态

点击“立即更新”,确认行数、执行时间、缓存状态和校验结果正常。

定时更新

定时更新用于把数据集刷新节奏固定下来。它不等同于“越频繁越好”,刷新频率要和源数据产生频率、业务使用时间和系统承载能力匹配。

数据类型示例频率说明
经营日报、月报每天 1 次通常安排在数据仓库完成后
项目交付、需求流转每 30 分钟或每小时适合会议和日常运营看板
告警、值班监控5 到 15 分钟需要确认源库和查询引擎能承受
静态维表每天或手动组织、门店、产品字典不需要高频刷新

配置定时任务后,必须做两次检查:第一次看任务是否能按设置执行;第二次在下一个周期后回看缓存时间和页面数据是否更新。配置保存成功并不能证明任务长期稳定。

示例:项目周会每天上午 9 点查看交付大屏,可以把缓存定时设置在每天 8:30,前提是上游数仓在 8:00 前完成更新。如果上游 9:30 才更新,Crest 8:30 只能同步到旧数据,页面可展示但指标口径不准确。

定时配置建议写进数据集说明:

信息示例
刷新方式增量更新
增量字段更新时间
定时频率每天 08:30
上游完成时间每天 08:00 前
异常负责人数据平台值班人

缓存上线检查

正式把缓存数据集交给仪表盘或大屏使用前,按以下清单检查:

  1. 首次同步已成功,状态为缓存可用。
  2. 数据预览能返回缓存结果。
  3. 行数和源端样例一致,核心指标没有明显偏差。
  4. 增量字段选择正确,历史补录不会漏数。
  5. 定时频率和业务刷新时间一致。
  6. 更新后校验已开启,异常时有人处理。
  7. 下游图表已预览,不再读取旧字段或旧口径。

缓存状态中的“源数据与缓存一致”表示同步后的行数和校验结果符合当前配置;“数据一致性校验失败”表示源端与缓存端存在差异,需要查看任务日志、增量字段和源库变更。缓存失败时,先查看任务状态和最近一次日志,再检查源库连接、SQL、字段变化和任务超时。不建议反复点击“立即更新”,以免给源库带来额外压力。

删除前检查血缘

数据集通常被多个图表、仪表盘或数据大屏复用。删除前必须查看数据血缘,确认没有下游依赖,或已经完成替换。

数据血缘

处理顺序:

  1. 在数据血缘中搜索数据集名称。
  2. 查看下游图表、仪表盘和数据大屏。
  3. 与资源负责人确认是否仍在使用。
  4. 先替换或迁移下游图表。
  5. 再删除数据集。

常见问题

问题可能原因处理方法
新建时看不到数据源没有权限或数据源不在当前目录检查数据源授权和文件夹
预览为空过滤条件过严、源表无数据、权限限制先到数据源预览,再逐步去掉过滤
SQL 能运行但保存失败字段别名重复、字段类型无法识别检查字段别名和返回列
图表里字段找不到字段被删除、改名或未同步同步数据集后重新配置图表
指标合计偏大多表关联造成重复检查关联字段唯一性和关联方式
日期趋势排序错误日期被识别成文本在 SQL 或源表中转换为日期类型
普通用户看不到数据行权限、列权限或资源权限限制使用普通账号验证权限
看不到缓存配置数据源不是 MySQL、版本较旧或权限不足确认数据源类型、部署版本和账号权限
缓存同步失败数据源不可用、SQL 报错或权限变化先测试数据源,再查看同步日志
缓存校验失败源数据仍在变化、增量字段不合适或同步中断查看源数据行数、缓存行数、增量水位和任务日志