数据准备指南,让孪生项目起跑即领先 | 数字孪生实战训练营·Web篇

22 阅读17分钟

讲师:新一——易知微技术专家

今天来聊一个所有数字孪生项目都绕不开、但又常常被轻视的环节——数据准备

构建一个数字孪生项目,就像盖一座摩天大楼。顶层的是一些交互和展示,中层是一些治理和算法,而数据,就是埋在地下的地基和管线。平时没有多少人会注意到它,但它的深度、坚固度和通畅度,直接决定了你的大楼能盖多高、能住多少人,甚至能屹立多久。

本文不会花太多时间讲地面的建筑有多美,而是要拿起工具,深入地下去学习如何去勘探土质——比如分析数据如何导致项目问题,如何去设计稳固的地基(从战略上进行数据准备),如何处理好材料(常见数据类型怎么处理),如何铺设水电煤气网络(数据传输),以及如何让效率最大化(性能优化关键技巧)。

为了解决这些真实难题,易知微「数字孪生实战训练营」首次完整公开一线交付团队的方法论与实战路径,带你系统拆解一个数字孪生项目从0到1的全过程。训练营所有课程均已完结,如需了解更多可访问 易知微官网 进入专属群聊~(里面有内部项目干货与完整课件视频)

当你的地下工程做得无比扎实之后,你的数字孪生大厦不仅能快速起跑,更能一路领先、稳稳地屹立。

1. 糟糕的数据准备,是怎么把一个项目拖垮的

咱们先来看看,糟糕的数据准备是如何让项目陷入泥潭的。

大部分的项目问题,根源都在数据准备阶段,主要体现在四个方面:

①响应慢

用户点开一个页面,模型加载要1分钟,数据刷新又要半分钟。这个时候就不是考验技术了,而是考验用户的耐心了。体验差,项目价值就低,客户认可度就低。

②总延期

开发到一半,发现数据结构非常混乱,很多数据缺失,很多接口没有,或者说业务部门又提供了新格式的数据。开发团队就不得不停下手中的活,重新做一轮评估和处理,工期就这样不断被拉长。

③常返工

数据缺失还好说,可以补。最怕的是推倒重来。比如数据源整个变了,接入层要完全重写;或者之前的协议要整个换掉,那之前所有对接好的就白费了。每一行重写的代码,都是成本。

④成本严重超支

上面说的那些问题最终都会反映到成本上。所以,数据的问题绝不是小问题,它直接决定了项目的生死和成败。

那我们应该怎么做呢?从数据准备最早期对应的战略思路来准备起来。

2. 战略先行:两种思路

数据准备没有绝对的好坏之分,关键看你的场景。大概有两种思路方向:数据驱动业务驱动

2.1. 数据驱动

适用于手里有大量历史数据,但业务目标还相对模糊的时候。比如我们有一整套IoT设备的历史数据,想看看这些数据能做什么。

优势:能更充分地应用现有的资产。

风险:容易陷入数据的沼泽——数据非常多,列得非常满,但是很乱,你不知道到底要看什么,最终怎么产生业务价值也是乱的。

2.2. 业务驱动

从业务层面直接驱动。比如我就要做一个实时的监控看板,那我就围绕这个明确的需求去采集相应数据:有哪些传感器的数据、有哪些统计数据、有哪些报表数据,设备和场景的联动是什么样的。根据业务需求去采集和接入对应数据,如果有数据缺失甚至设备缺失,就根据这些来做补充。

优势:效率高,冗余少。

前提:要有相当清晰明确的业务需求。

最佳实践:双线并行融合,做一个互补。

战略定了,我们再来看看战术。

3. 战术拆解:常见数据类型处理要点

数字孪生项目会处理多种多样的数据,它们也有各种各样的脾气。

3.1. 文本类型的数据

通常用在一些指标、趋势上面。

来源:直接从数据库取,或者通过API来取。

处理要点

  • 保证时效性和一致性。不能数据很久没更新,或者同一个指标在不同地方显示的值不一致。
  • 避免脏数据。比如数值结果是空的,或者有一些未定义的内容在里面,就会导致显示紊乱。如果涉及到趋势求和计算,脏数据也会出问题。

3.2. 图片、音视频相关数据

根据项目需求会有不同,比如报警的声音,或者监控设备拍下的预警、告警时的照片和视频。

来源:通过摄像头、麦克风采集得来,一般是直接的文件。

处理要点

  • 平衡清晰度和加载速度。动态压缩或者分级加载——比如很小的显示窗口,没必要用最大分辨率去展示,根据展示需求来确定,避免初期加载挤占带宽。
  • 提前确认有没有加密需求,或者解码兼容性问题。有些环境对安全性要求比较高,如果前期没做好准备,后期对接可能要花更多时间,导致工期往后拖。

3.3. 视频流

基本上都是现场的实时监控。

来源:直接通过监控设备或监控平台获取。

需要注意的重点

  • 在Web端没办法直接播放RTSP协议的视频流。如果只提供了RTSP,就要考虑搭建转流服务器,或者使用监控平台厂商的插件/SDK来播放。
  • 常规的视频流一般用HLS或FLV格式做展示。
  • 评估带宽和延迟要求。不同格式、不同协议,延迟不一样。RTSP确实是实时的,但Web端没法直接播,转流后会有一定延迟,这个要提前考虑。
  • 看你要播放多少路。一路两路带宽基本没问题,一次性播放30路,同时播放需要的带宽就非常高,需要提前做综合考量。前期不考虑,后期发现卡了再增加带宽,一方面增加审批时间,万一审批不下来,整个业务可能就卡在这里。

3.4. 地理空间数据

跟地图直接相关,比如地图瓦片、经纬度数据,还有倾斜摄影(无人机飞出来的数据)。

来源:地图服务获取,或者无人机航拍。

两个非常重要的点

第一,网络环境要提前确认。

  • 纯外网SaaS环境倒没什么问题,基本上公开数据都能用。
  • 但如果是在内网使用,和外网隔离、独立部署,那么瓦片数据和矢量数据在外网是实时获取的,不能直接拿到内网用。这种情况下,需要提前把瓦片或矢量数据下载下来,放到本地。

第二,坐标系要统一。

  • 比如一个地图的瓦片是基于WGS84制作的,但从另一个系统获取的点位和路径数据是CGCS2000坐标系下的,叠在一起就会发现错位。甚至还有其他坐标系的数据,各种各样的对不上。
  • 所以每次获取数据,一定要确认坐标系是什么,然后做对应转换,才能在地图上准确定位。

3.5. 几何模型

园区、建筑、设备等现实中存在的物体,要进行几何构建,在三维场景中呈现。

来源:大部分通过建模软件建成。即使从其他地方购买或者AI生成,最终也要到建模软件里走一趟。AI生成的模型通常不太适合直接使用,大部分情况还要做处理。

处理要点

轻量化处理:Web端通常有加载压力,需要直接拉取所有模型。要把面数做简化,或者做LOD(细节层次)分级。不然的话,AI生成的模型面数非常多——即使一个非常简单的方块,AI生成后面数可能好几万,而建模软件直接建可能就几个面。上下限差距非常大,使用前一定要注意轻量化。

格式兼容性:通用格式一般是glTF或FBX。Web端通常更倾向于用glTF,所以数据归集时尽量都选择glTF格式。

4. 数据接入与传输设计之道

数据的传输通常有两个方向:轮询(拉数据)和订阅(接收推送)。

4.1. 通信模式选择

轮询更适合历史数据,更新频率比较低(半小时、一小时、一天两天甚至更久)。比如各类统计数据、报表数据,像当月销售额、销售额趋势等。

订阅更适合实时数据,一秒钟都等不了,一旦数据变化,下一个瞬间就要拿到新的。比如传感器的实时读数、设备状态、姿态、告警数据。

4.2. 传输方式对比

HTTP / REST API:适用于中低频查询、控制指令下发。这里要特别提醒:很多实践会用非常高的频率去查询,想实现类似实时的效果,比如每0.5秒查一次。这样会给服务器造成极大压力。一个页面几十个指标,每个都每秒查一次,如果只有一个人打开还好,但如果是10个、20个、100个人同时打开,服务器可能直接崩掉,扛不住并发。这种方式只能应急,尽量规避。

WebSocket:适用于高频双向的实时数据推送。每个连接都要维护住,是长连接。如果连接过多,对服务器的压力也比较大。要根据实际需要综合使用,没那么多的实时指标就别都用WebSocket。

MQTT:一般用于IoT设备直接上报数据。常规用法是数据上报到服务器或物联网平台做记录、清洗、使用。特殊情况下,如果只是想看当前状态,也可以直接订阅MQTT,避开中间环节,更方便一点。

直连数据库:适用于快速原型或内部工具。生产环境要慎重使用。这种方式会导致数据库压力比较大,安全性也差一些。如果要用,一定要注意:单独的直连数据库账户只能有只读权限,绝不能有写入权限,否则安全风险很大。另外并发情况下,多用户大批量使用,每个连接都去查一遍数据库,数据库压力非常大,可能造成阻塞,甚至把数据库打爆。经过合理规划、根据用户数和并发频率判断可以使用,但一定要慎重。

4.3. 数据格式规范与使用要求

数据格式主要分为指标类与图表表格类两种。

指标类数据多为单个数值,部分场景包含标题、单位等信息,所有指标节点均采用 JSON 格式,接口返回形式需匹配实际业务情况:仅数值动态、标题与单位固定不变的场景,可使用仅返回数值的单一格式;标题、单位不统一或需动态切换单位(如数值小用元、数值大用万元)的复杂指标,需采用包含完整字段信息的集合格式。同时,页面内更新频率一致的指标应合并获取,避免单指标独立请求降低响应速度。

图表、表格类数据通常成组存储,轴表、对比类图表需数组、集合型数据,包含类目、数值及时间趋势信息,表格类数据按行列数量对应组数呈现。

4.4. 数据协作模式

通过 API 接口获取数据时,以接口文档为协作依据,由接口开发人员提供完整的指标文档与接口文档,明确各接口入参、返参规则,保障协作顺畅;

采用数据库直接查询方式时,需完成数据展现形式的思维转换,数据库以行列形式存储,JSON 数组首个对象对应表格首行,字段对应表格列。

4.5. 小型项目轻量化数据接入方案

小型项目无需配齐全流程开发人员,仅项目经理与设计师即可借助易知微 EasyV 产品完成数据接入:一是利用可视化数据库查询功能,无需 SQL 语句即可操作,多表数据可通过拖拽关联字段(如 ad code)实现合并,满足多表数据联动展示需求;

二是通过 AI 调试功能处理复杂字段,输入字段精简等需求即可自动生成处理代码;

三是无数据库时可使用内置数据填报功能,自定义数据结构后以表单分享收集数据,提交后自动生成数据表,且填报数据同样支持 AI 处理。

5. 性能优化:让项目快起来、稳起来的关键技巧

下面分享几个让项目快起来、稳起来的技巧。

5.1. 计算向后端下沉

永远记住:不要让前端做重型计算。前端负责展示,复杂的计算和数据处理尽量在后端完成。数字孪生项目前端负载已经很高了,再加上重型计算,压力更大。后端处理还能减少传输数据量,提高安全性,高并发下优势更明显。

5.2. 批量传输和分片

把多个频率相同的指标请求合并,减少HTTP请求次数,提高效率。

对大数据的加载要做分片。举个例子:表格里有个详情弹窗,千万不要一次性把所有弹窗的详情都请求过来。要拆开——列表数据里只存关键ID,点击弹窗时用ID去查对应详情。不然一次性拉1万条数据,用户只看其中两条,加载时间全是浪费。

5.3. 多层次细节(LOD)加载

对模型和地图尤其重要。距离远时加载低模,距离近时再加载高清模型。智能调度能有效减轻渲染压力。如果第一次就加载所有高清地图,可能要等20分钟,体验很差,而且最高层级时其实也看不清。按需调度是非常有效的策略。

5.4. 缓存

空间换时间。静态资源、不常变的数据做好缓存。简单的数据放localStorage,大型数据放IndexedDB。每次打开先从缓存取数据,占用本地空间,但减少加载时间,降低服务器压力,提升体验。

6. 破除几个经典误区

误区一:所有数据都要实时的。

不一定。要看业务需求。统计上个月的趋势、上个月的指标,是查询历史,完全没必要通过WebSocket实时拉最新值。所有数据都实时会极大增加开发和维护成本。要根据业务合理划分哪些实时、哪些历史。

误区二:数据库直连最快。

短期方便,长期灾难。可能导致数据库崩掉、数据安全性丢失。涉及数据库直连,前期一定要做好合理规划:多少人查询、账号权限怎么分配,安全性和负载都要考虑。

误区三:一次性把原始数据全取过来,后面想怎么统计都行。

问题很多:原始数据直接暴露,安全性差;一次性传输全部数据,体验慢;所有计算都在终端做,增加渲染端计算成本,导致卡顿。在任何项目里,都要提前规划好,才能实现更快的加载、更流畅的协作交付。

7. 总结 + 数据准备清单

核心思路

  • 数据准备不是纯技术环节——它需要技术参与,但更是业务和技术对齐的过程。前期第一步没做好,后面全是坑。

  • 数据阶段的错误,后期修复成本倍增,甚至大比例增加成本,一定要提前规避。

  • 轻量化处理是保证体验的前提——加载优化、请求合理规划,都是为了保证加载速度和体验。

  • 永远不要让前端做重型计算——前端压力已经很大了,再加重型计算,卡顿、加载慢会成为压倒骆驼的最后一根稻草。

  • 实时数据用推送(订阅),历史数据用查询(轮询)

数据准备清单(项目启动前,一个一个过)

  • 明确业务目标:决定数据范围和粒度。是设备级、厂区级还是零件级?月度数据还是天级数据?一定要清晰。
  • 评估数据源:数据源是否可用?数据质量怎么样?如果要实时的,有没有实时接口?
  • 统一坐标系和单位:WGS84的地图要匹配CGCS2000的数据,或者GCJ02(高德)坐标,互相能不能对齐?单位也要统一,接口返回千万单位,你按万来显示,差一个数量级,全错。
  • 设计传输架构:哪些用推(订阅),哪些用拉(轮询)?提前通过API网关设计好,哪些用HTTP接口,哪些用WebSocket,哪些用数据库连接。
  • 预计算和缓存:这是减轻实时压力的好手段,一定要前期规划好。后期再改就是大架构变更,甚至要推翻重来。
  • 测试性能边界:多少指标?并发多少?多少用户同时使用?数据量大了是什么场景?提前评估,不然后期一旦发生变化,可能就是全部推翻重做。

最后,现实世界从来都不是理想的。我们总会遇到数据质量差、各方协作难、资源不足的情况。但正是如此,提前的准备、提前的规划才显得尤为重要。这能给我们未来的实施,留出宝贵的余地。

希望今天的分享能让大家意识到数据准备的价值,掌握一些方法。让我们未来的项目,都能赢在起跑线上。

目前训练营课程已完结,完整内容与案例资料已整理开放:

Web篇下期文章预告:

《Web孪生最佳实践:从流程到技巧的全攻略》


易知微专注于AI+数字孪生与数据可视化领域,致力于将数据、业务与三维场景深度融合,构建 “数智视融合、虚实人联动” 的数字化应用体系。依托自研数字孪生引擎与低代码可视化平台,具备三维建模渲染、实时数据接入、仿真推演及业务联动等核心能力,已服务智慧城市、能源、水利、交通、园区等多个行业的数千家客户。

如果您有数据可视化、数字孪生或相关数智化项目需求,欢迎访问 易知微 联系专业客户顾问,获取专属解决方案与案例演示。

易知微基于多年在数字孪生及数据可视化领域丰富实践,沉淀了诸多经验成果,欢迎大家互相交流学习:

《数字孪生+AI:行业最佳实践白皮书》下载地址:easyv.cloud/references/…

《数字孪生视觉语言白皮书》下载地址:easyv.cloud/references/…

《数字孪生世界白皮书》下载地址:easyv.cloud/references/…

《数字孪生行业方案白皮书》下载地址:easyv.cloud/references/…

《港口数智化解决方案》下载地址:easyv.cloud/references/…