DolphinDB 库表创建向导:时序数据规划实践

本页为一篇介绍 DolphinDB 库表创建向导与时序数据规划实践的文章,并包含作者与发布日期等基础信息。

Source: https://dolphindb.cn/blogs/147

What this page covers

技能认证特训营第二期报名活动

页面顶部包含培训营开营提示与限时报名链接入口。

DolphinDB 库表创建向导:时序数据规划实践

文章页展示标题与作者、日期等基础信息。

时序数据规划背景与用户痛点

介绍时序数据应用与时序数据库的重要性,并说明用户在数据规划中常见的两类问题。

库表创建向导总体方案(物联网与金融场景)

DolphinDB 针对物联网与金融两类场景提供库表创建向导,可收集信息并生成建库建表脚本。

物联网场景向导概述

说明物联网数据类型(时序/非时序)、一库一表设计偏好,以及简易版与进阶版向导面向的不同用户群体。

物联网向导(简易版)流程与规则

简易版通过表单引导填写并生成脚本,隐藏部分配置,并包含引擎选择、列配置方式与常用筛选列规则。

物联网向导(进阶版)流程与高阶配置

进阶版在基础信息之外开放高阶配置项,包括存储引擎、并发写入、分区列、数据时间列、常用筛选列与重复数据处理策略。

金融场景向导概述与流程

阐述金融交易数据分析场景中日增量与标的重要性,并给出向导的三个步骤与分支路径。

金融场景:建库信息

列出金融场景在现有库或新建库路径下的建库信息填写步骤与存储引擎选项。

金融场景:建表信息与规则

列出金融场景建表信息填写步骤,包括列配置、时间列/标的列/分区列/常用筛选列的约束条件及示例界面引用。

总结

重申向导面向金融与物联网两类常见场景,通过表单收集信息生成脚本以降低数据规划与建表门槛。

Facts Index

Entity Attribute Value Confidence
文章发布日期2025-02-12high
DolphinDB提供的功能/工具针对物联网场景和金融场景提供库表创建向导,可根据用户选择收集建库建表信息并生成库表创建脚本high
时序数据适用场景适用于现代社会的各类应用场景(如物联网数据采集、金融交易分析)medium
时序数据库存储方式/技术利用索引和压缩技术存储时序数据,以高效完成读取与写入medium
时序数据库用户数据规划常见痛点需要设计数据结构、存储方案、分区策略以实现查询优化medium
时序数据库规划问题问题1如何确定数据需求(理解业务需求、确定数据类型/结构/关系、定义粒度与范围;领域知识难以准确应用到数据规划)high
时序数据库规划问题问题2如何选择适当的数据存储方案并优化性能(选择技术、设计索引与分区策略、考虑数据量/访问模式/性能需求;业务用户理解难度大)high
物联网场景业务描述物联网设备传感器实时采集环境、设备和过程数据,用于预测性维护与优化分析medium
物联网场景数据设计推荐库表模式由于各项目数据结构与主键列名不同,一库一表设计更符合物联网业务需求medium
物联网数据类型分类分为时序数据与非时序数据两类high
时序数据(物联网语境)定义/特征严格时间增长的数据(例如测点采集的数据)high
非时序数据(物联网语境)定义/特征不随时间严格增长的数据(例如设备监控表存储设备ID、点位ID、阈值上下限与阈值更新时间;阈值更新时间间隔不定)high
物联网库表创建向导版本/类型提供简易版与进阶版high
物联网向导简易版主要面向用户对数据库不甚了解的用户(如领域业务专家)high
物联网向导进阶版主要面向用户对 DolphinDB 数据库领域知识相对了解的用户(如运维人员)high
物联网向导简易版设计特点隐藏部分存储/索引配置(如存储引擎、分区列),根据用户填写信息提供默认值以降低复杂度high
物联网向导简易版输出按界面表单提示填写信息即可生成库表创建脚本high
物联网向导简易版步骤包含输入库名、输入表名、选择是否为时序数据、选择日增或总数据量、输入测点数(时序)、列配置、选择常用筛选列high
物联网向导简易版数据量选择规则时序数据需选择日增数据量;非时序数据需选择总数据量high
物联网向导简易版测点数适用条件为时序数据时需要输入测点数high
物联网向导简易版存储引擎选择规则时序数据或总数据量大于200万的非时序数据使用TSDB引擎;总数据量小于200万的非时序数据使用OLAP引擎high
物联网场景列配置必要列需要一列用于存储测点信息high
物联网向导简易版列配置规则(按引擎/数据量)时序数据或总数据量大于200万的非时序数据:需要一列时间列与枚举列;其余情况下:需要一列枚举列high
列配置(物联网向导)支持方式支持手动输入、本地文件导入、服务器文件导入high
列配置-手动输入能力可手动添加列信息,包括列名、数据类型与备注信息high
列配置-本地文件导入能力可导入本地数据源文件并解析得到列与列类型high
列配置-服务器文件导入能力输入服务器上表格文件绝对路径以解析得到列与列类型high
常用筛选列(物联网向导)定义/作用查询中经常作为筛选条件的列;位置越靠前表示越重要;唯一值数量用于判断是否需要对数据降维high
物联网向导简易版常用筛选列规则(OLAP)总数据量小于200万的非时序数据使用OLAP引擎时,无需选择常用筛选列high
物联网向导简易版常用筛选列规则(TSDB)时序数据或总数据量大于200万的非时序数据使用TSDB引擎时:常用筛选列第一列需为时间列,第二列需为设备编号列high
脚本预览(物联网向导)用户操作生成脚本后可预览;可直接执行生成的脚本,也可复制脚本进行修改high
物联网向导进阶版提供的高级配置提供更多高级配置(如存储引擎、分区列、重复数据处理策略等);信息填写分为基本信息与高阶信息两步high
物联网向导进阶版高阶信息开放条件条件当存储数据为时序数据或总数据量大于200万的非时序数据时开放高阶信息high
非时序数据(物联网进阶版说明)补充说明物联网场景中非时序数据不一定没有时间信息(例如设备监控表含阈值更新时间但间隔不定)high
物联网向导进阶版高阶信息配置项1选择存储引擎:OLAP 或 TSDBhigh
物联网向导进阶版高阶信息配置项2选择是否允许并发写入同一分区high
允许并发写入同一分区定义/行为概述当一个事务写入多个分区且某分区被锁定冲突时,系统会完成其他分区写入,并对冲突分区尝试写入;具体写入方式在不同 server 版本有所差异high
允许并发写入同一分区(release 200及之前)实现方式数据节点计算涉及分区并向controller申请所有分区分布式锁;成功锁定的分区写入并在事务后释放锁;锁申请失败的分区sleep后重试直至完成;可能导致先提交请求饥饿、完成时间无保障high
允许并发写入同一分区(release 300及之后)实现方式数据节点将写入请求发送到controller;controller统一队列调度,分区可写则通知数据节点写入;一次写入可能被分为多个事务;若回滚可能导致写入只写入部分数据high
不允许并发写入同一分区行为一个事务写入多个分区时若某分区被锁定发生写入冲突,则该事务写入全部失败high
物联网向导进阶版高阶信息配置项3选择分区列;根据日增量、总数据量、测点等前置信息推荐分区列个数与数据类型high
物联网时序数据分区层数规则根据日增数据量判断分区层数high
物联网时序数据分区(1层)规则需要选择1个分区列,且仅能选择时间列high
物联网时序数据分区(2层)规则需要选择2个分区列:第一列为时间列,第二列为设备编号列high
物联网非时序数据分区规则需要选择1个分区列:设备编号列high
物联网向导进阶版高阶信息配置项4选择数据时间列(非必选)high
数据时间列(物联网进阶版)展示条件与用途当存储引擎为TSDB且为非时序数据时展示;当数据含时间信息时可将时间信息列作为数据时间列,该列也将作为sortColumns用于查询优化high
物联网向导进阶版高阶信息配置项5选择常用筛选列及其唯一值数量;常用筛选列也将作为sortColumns用于查询优化high
物联网进阶版常用筛选列引擎限制仅存储引擎为TSDB时才能选择常用筛选列;OLAP分区内不支持索引high
物联网进阶版常用筛选列数量与类型限制系统会推荐常用筛选列个数;选择数量不能少于推荐个数;仅能选择可枚举类型(STRING、SYMBOL、CHAR)high
物联网向导进阶版高阶信息配置项6选择重复数据处理策略(同分区中sortColumns值相同的数据)high
重复数据处理策略策略列表ALL(保留所有数据)、LAST(仅保留最新数据)、FIRST(仅保留第一条数据)high
物联网向导进阶版脚本生成生成后操作生成库表创建脚本后可直接执行;可返回上一步修改信息或复制脚本修改high
金融领域关键分析场景股票交易数据分析至关重要medium
DolphinDB(金融场景)能力描述能实时存储合处理股票、债券等市场数据,支持快速分析和决策low
金融场景建库建表规划重要因素日增量和标的对数据库建库建表至关重要high
日增量(金融场景)用途帮助预测未来存储需求、设计表结构与索引策略、优化查询性能medium
标的类型(金融场景)用途不同金融产品数据特征不同,设计数据库时需根据标的类型规划相应表结构和字段medium
金融场景库表创建向导支持路径可选择新建库表或基于现有库创建数据表high
金融场景库表创建向导主要步骤建库信息、建表信息、脚本生成三个步骤high
金融场景-建库信息步骤1选择是否使用现有库high
金融场景-建库信息步骤2(现有库场景)选择现有库high
金融场景-建库信息步骤3(新建库场景)输入新建库名high
金融场景-建库信息步骤4(新建库场景)选择日增量high
金融场景-建库信息步骤5(新建库场景)选择存储引擎:OLAP 或 TSDBhigh
金融场景建表信息步骤1输入新建表名high
金融场景建表信息-列配置与物联网相同的支持方式支持手动输入、本地文件导入、服务器文件导入high
金融场景表结构必须包含的列必须含有一列时间列,类型包括 DATE、DATETIME、TIMESTAMP、NANOTIMESTAMPhigh
金融场景建表信息步骤3(时间列选择)条件与要求新建库场景且总数据量大于200万时选择;需选择严格按时序增长排序的时间类型列(DATE、DATETIME、TIMESTAMP);将按此列对数据分区high
金融场景建表信息步骤4(标的列选择)条件与限制新建库场景且总数据量大于200万或日增量大于100万时选择;仅支持SYMBOL和STRING列;用于对数据分区(如股票ID、期货品种列)high
金融场景建表信息步骤5(分区列选择)条件与约束已有库场景且该库存在分区时选择;分区列数量与数据类型需与已有库分区信息一致high
金融场景常用筛选列数量限制数量不多于2列high
金融场景常用筛选列类型限制需为可枚举类型(如CHAR、STRING、SYMBOL等)high
金融场景脚本生成生成后操作点击【生成脚本】按钮生成库表创建脚本;脚本预览界面与物联网场景一致;可直接执行、返回上一步修改或复制修改high
库表创建向导(总体)覆盖场景覆盖金融与物联网两类时序数据库应用最广泛的场景medium
库表创建向导(总体)价值主张通过表单收集必要建库建表信息,使用户不需要了解过多数据库专业知识即可完成数据规划和库表创建medium
技能认证特训营第二期报名链接https://www.qingsuyun.com/h5/e/217471/5/high