TDengine 边云协同数据同步实战:边缘推送/云端拉取 × 数据订阅/数据查询 四种方案的选择与配置指南
TDengine 边云协同数据同步实战边缘推送/云端拉取 × 数据订阅/数据查询 四种方案的选择与配置指南【免费下载链接】tdengineTDengine is an open source, high-performance, cloud native time-series database optimized for Internet of Things (IoT), Connected Cars, Industrial IoT and DevOps.项目地址: https://gitcode.com/taosdata/tdengineTDengine 提供从边缘节点到云端节点的自动化数据同步能力支持边缘推送、云端拉取两种数据流向每种流向又都可以通过数据订阅或数据查询两条技术路线实现。本文以 TDengine 的边云协同Edge–Cloud Synchronization为主题完整介绍四种同步方案的适用场景、基于 taosExplorer 的零代码配置步骤与基于 taosx 命令行的推拉实现并结合仓库源码与组件文档解析 DSN 格式、订阅选项等底层细节帮助你为实际生产环境选择并落地正确的同步架构。为什么需要边云协同在工业互联网场景中边缘设备只用于处理局部数据决策者无法仅凭边缘设备采集的信息形成对整个系统的全局认知。因此边缘设备需要把数据上报给云计算平台公有云或私有云在云端完成数据的汇聚与信息融合从而获得全局洞察。这种边云协同架构已成为支撑工业互联网发展的重要支柱。具体到 TDengine 的应用场景边缘侧主要对生产线上的某几项数据例如某个车间的实时生产数据进行监控和告警对实时性要求较高但数据量不一定大——一个生产车间的监测点数量通常从几千到几万个不等。中心侧计算资源充足有能力把边缘侧数据汇聚起来进行分析计算。数据库层面的要求数据必须能够逐级上报并且支持有选择地上报。在整体数据量非常大的场景下必须有选择地同步——例如边缘侧每秒采集一次的原始记录上报到中心侧时降采样为每分钟一次既大幅减少数据量又保留用于长期分析与预测的关键信息。在传统工业数据采集流程中数据从工业逻辑控制器PLC采集后进入 Historian 工业实时库再支撑业务应用这类系统多采用主备架构、不易水平扩展、严重依赖 Windows 生态相对封闭。TDengine 的边云协同方案用统一的数据模型和实时订阅能力取代了这类传统链路。TDengine 边云协同解决方案TDengine 企业版提供完整的边云协同能力关键特性包括高效数据同步支持高吞吐的数据同步保证数据在边缘侧和云端之间快速、稳定地传输。多数据源对接兼容 AVEVA PI System、OPC-UA、OPC-DA、MQTT 等多种外部数据源实现广泛接入与整合见 零代码数据接入。灵活配置同步规则提供可配置的同步规则按实际需求自定义数据同步的策略和方式。断线续传与重新订阅确保网络不稳定或中断时数据同步的连续性和完整性。历史数据迁移支持历史数据迁移便于升级或更换系统时无缝迁移。其中数据订阅功能为订阅方提供了极大的灵活性可以订阅一个数据库、一张超级表甚至是一个带筛选条件的查询语句从而实现选择性的数据同步将真正关心的数据包括离线数据和乱序数据从一个集群同步到另一个集群。注边云协同的数据同步组件 taosX 是 TDengine 企业版的核心组件详见 taosX 参考文档使用前需要安装 TDengine 企业版软件包。如何选择同步方式TDengine 支持边缘节点主动向云端推送数据也支持云端从边缘节点拉取数据两种方向均可使用数据订阅或数据查询。启用边云同步前应根据环境特征确定合适的组合环境特征推荐方案边缘节点较少且云端可以直接访问边缘节点云端拉取Cloud Pull边缘节点较多或不允许从外部访问边缘节点边缘推送Edge Push要求近实时同步数据订阅Subscription要求定期或按需同步数据查询Querying由此得到四种组合边缘推送 数据订阅、边缘推送 数据查询、云端拉取 数据订阅、云端拉取 数据查询。下文逐一给出操作步骤。方案一边缘推送 数据订阅该方案通过边缘节点 taosExplorer 的数据复制功能把指定数据库实时推送到云端全程零代码、无需在边缘节点开放入站端口适合边缘节点数量多的场景。操作步骤如下在云端节点创建用于接收边缘数据的数据库。在浏览器中打开边缘节点的 taosExplorer。在左侧主菜单中选择管理Management。打开数据复制Data Replication标签页点击新增数据复制Add New Replication。选择要同步到云端的数据库。在目标 DSNTarget DSN字段中输入云端节点的 DSN。点击确认Confirm。完成配置后边缘节点会把指定数据库的数据推送到指定云端节点。可以重复该流程以同步更多数据库或将数据同步到多个云端节点。目标 DSN 使用标准 DSN 格式典型写法形如taosws://root:taosdatacloud-ip:6041/cloud-db其中ws表示通过 REST/WebSocket 方式访问详见后文 DSN 格式详解。方案二边缘推送 数据查询该方案在边缘节点上以命令行方式运行 taosx把数据从边缘节点查询后写入云端适合定期或按需同步、且需要在边缘侧脚本化执行的场景。操作步骤在云端节点创建用于接收边缘数据的数据库。在边缘节点打开终端。执行以下命令将数据推送到云端taosx run -f taos://edge-user:edge-passwordedge-ip:edge-port/edge-db -t taos://cloud-user:cloud-passwordcloud-ip:cloud-port/cloud-db -v其中-f指定数据源Source DSN-t指定写入目标Sink DSN-v开启 info 级别日志-vv对应 debug-vvv对应 trace。例如以下命令使用默认用户名和密码把192.0.2.1:6030上边缘节点的sync_test数据库同步到198.51.100.1:6030上云端节点的edge_data数据库taosx run -f taos://root:taosdata192.0.2.1:6030/sync_test -t taos://root:taosdata198.51.100.1:6030/edge_data -v更多 taosx 数据迁移用法历史数据、实时数据、指定表与时间范围等见 taosx 参考文档中的Migrating Data from Older Versions一节。延伸用 taosx 细化同步范围在边缘推送 数据查询方案中可以通过 Source DSN 的参数精细控制同步对象# 仅同步指定超级表 taosx run \ -f taos://root:taosdatalocalhost:6030/db1?stablesmeters \ -t taos:///db2 -v # 仅同步指定子表或普通表支持 {stable}.{table} 与直接表名 taosx run \ -f taos://root:taosdatalocalhost:6030/db1?tablesmeters.d0,d1,table1 \ -t taos:///db2 -v # 同步指定时间范围RFC3339 时间格式注意时区 taosx run -f taos:///db1?start2022-10-10T00:00:00Z -t taos:///db2 -v # 实时模式同步最近 5 分钟数据并持续同步新数据interval1s 为轮询间隔excursion500ms 允许的乱序延迟 taosx run \ -f taos:///db1?moderealtimerestro5minterval1sexcursion500ms \ -t taos:///db2 -v # 历史数据 实时数据 taosx run -f taos:///db1?modeall -t taos:///db2 -v上述示例均来自 taosx 参考文档。方案三云端拉取 数据订阅该方案在云端 taosExplorer 中创建TDengine 数据订阅任务由云端主动订阅边缘节点的数据库适合边缘节点数量少、云端可以直连边缘节点的近实时同步场景。操作步骤在浏览器中打开边缘节点的 taosExplorer。在左侧主菜单中选择主题Topics。在列表中找到要同步到云端的数据库在获取 DSNGet DSN列点击复制Copy保存该 DSN 备用。打开云端节点的 taosExplorer。在左侧主菜单中选择数据写入Data In。打开数据写入任务Data In Task标签页点击新增数据源Add Source。输入任务名称。在类型Type下拉列表中选择TDengine 数据订阅TDengine Data Subscription。在目标Target下拉列表中选择接收边缘数据的数据库如果没有合适的数据库点击创建数据库Create Database。在连接配置Connection Configuration中把之前复制的 DSN 粘贴到Topic DSN字段。点击检查连通性Check Connection确认云端可以访问边缘节点。在订阅选项Subscribe Options的Client ID字段中输入唯一标识并按需配置其他选项可保留默认值。点击提交Submit。任务提交后云端会订阅边缘节点的指定数据库并把数据写入云端目标数据库。可以重复该流程从更多边缘数据库或节点同步数据。延伸订阅任务的配置细节结合 TDengine 数据订阅数据源文档订阅任务的关键选项含义如下订阅起始位置可选择从最早earliest或最新latest数据开始订阅默认从最早开始。超时时间支持ms毫秒、s秒、m分钟、h小时、d天、M月、y年等单位。订阅组 IDgroup.id任意字符串用于标识订阅组最大长度 192不指定时使用随机生成的组 ID。Client ID任意字符串用于标识客户端最大长度 192。同步已落盘数据启用后可以同步已写入 TSDB 时间序列数据存储文件的数据即不在 WAL 中的数据禁用则只同步尚未落盘保存在 WAL 中的数据。同步表删除操作/同步数据删除操作启用后会把对应的删除操作同步到目标数据库。压缩启用 WebSocket 压缩以降低网络带宽占用。从 DSN 角度Topic DSN 还支持以下高级用法多 Topic多个 Topic 名称用逗号分隔例如tmqws://root:taosdatalocalhost:6041/topic1,topic2,topic3。直接用库名/超级表名/子表名代替 Topic 名例如tmqws://root:taosdatalocalhost:6041/db1,db2,db3此时无需提前创建 TopictaosX 会自动识别并在源集群创建订阅 Topic。显式指定 group.id在 FROM DSN 中通过group.id参数显式指定订阅组 ID。方案四云端拉取 数据查询该方案在云端 taosExplorer 中创建TDengine 查询任务由云端通过查询方式拉取边缘节点数据库的数据适合定期或按需同步的场景。操作步骤打开云端节点的 taosExplorer。在左侧主菜单中选择数据写入Data In。打开数据写入任务Data In Task标签页点击新增数据源Add Source。输入任务名称。在类型Type下拉列表中选择TDengine 查询TDengine Query。在目标Target下拉列表中选择接收边缘数据的数据库如果没有合适的数据库点击创建数据库Create Database。在连接配置Connection Configuration中填写协议Protocol选择WS。主机Host边缘节点 taosAdapter 实例的 IP 地址或主机名。端口Port边缘节点 taosAdapter 实例的端口号。数据库Database边缘节点上要同步的数据库。在认证Authentication中填写用户名Username边缘节点上有权访问目标数据库的用户名。密码Password该用户在边缘节点的密码。点击检查连通性Check Connection确认云端可以访问边缘节点。按需配置其他选项可保留默认值点击提交Submit。任务提交后云端会查询边缘节点的指定数据库并把数据写入云端目标数据库。可以重复该流程以从更多边缘数据库或节点同步数据。延伸查询任务的工作方式结合 TDengine 查询数据源文档taosX 通过查询源集群并把结果写入目标数据库来完成迁移它以子表在某时间段内的数据为基本查询单元分批把待迁移数据写入目标数据库。查询任务支持三种迁移模式history历史模式迁移指定时间范围内的数据未指定时间范围时迁移截至任务创建时的全部数据任务完成后停止。realtime实时模式从任务创建时刻开始持续同步新数据任务持续运行直到手动停止。both两者模式先按 history 模式执行再转入 realtime 模式。每种模式下都可以指定是否迁移表结构选择always会在迁移数据前把表结构同步到目标数据库子表数量多时耗时较长如果确认目标数据库已有与源库相同的表结构建议选择none以节省时间。任务运行期间会把进度信息保存到磁盘因此暂停后重启或异常自动恢复时不会从头开始。DSN 格式详解两种边缘推送 数据查询/订阅方案都依赖 DSN 描述数据源。taosx 的 DSN 采用 URL 风格格式见 taosx 参考文档driver[protocol]://[[username:password]host:port][/object][?p1v1[p2v2]]各部分含义如下部分说明driver数据源驱动如taos查询接口取数、tmq数据订阅取数、local、pi、opc、mqtt、kafka、influxdb、csv、parquet等protocol协议修饰符如wstaos/tmq 驱动经 REST/WebSocket 取数不加ws则使用原生连接此时 taosx 需安装在服务器上、ua/daopc 驱动的 OPC-UA/OPC-DAusername:password数据源的用户名和密码host:port数据源地址与端口object具体数据对象TDengine 的数据库、超级表、表本地备份文件路径或其他数据源服务器中的数据库paramsDSN 查询参数?之后以分隔示例tmqws://root:taosdatalocalhost:6030/db1?timeoutnever表示通过 WebSocket 订阅本地 6030 端口上db1数据库的 Topic。由此可以理解前文四种方案中 DSN 的语义边缘推送 数据订阅云端目标 DSN 使用taos或taosws驱动表示云端作为写入目标。边缘推送 数据查询-f指向边缘节点源-t指向云端节点目标均使用taos驱动。云端拉取 数据订阅Topic DSN 使用tmqws驱动表示从边缘节点通过数据订阅取数。云端拉取 数据查询通过 WS 协议连接边缘节点 taosAdapter由查询任务驱动。另外在不同版本之间使用原生连接迁移时需要在 DSN 中指定libraryPath例如taos:///db1?libraryPath./libtaos.so。边云协同架构实例与优势下图展示了一个具体的生产车间实例中如何在 TDengine 企业版中落地边云协同架构生产车间的设备产生实时数据存储在部署于边缘侧的 TDengine分厂级 TDengine 订阅车间 TDengine 的数据可由数据分析师设置订阅规则例如降采样、只同步超过阈值的数据集团侧 TDengine 再订阅各分厂数据完成集团维度的数据汇聚后即可进行下一步分析和处理。该实现思路的优势包括零代码不需要编写一行代码只在边缘侧和云端做简单配置即可。自动化程度高数据跨区同步自动化程度大幅提高错误率降低。无需数据缓存减少批量发送避免流量高峰阻塞带宽。规则可配置通过订阅方式同步数据简单、灵活、实时性高。数据模型统一边云均采用 TDengine数据模型完全一致降低数据治理难度。对制造业企业而言传统离线数据同步方式往往造成资源浪费和带宽阻塞风险TDengine 企业版的数据实时同步配合可配置规则避免了定期传输大数据量带来的这些问题。当所有数据汇聚到一个系统后还能利用第三方 AI 分析工具进行异常监测、实时告警并为产能、成本、设备维护等提供更精准的预测助力传统产业数字化转型。小结流向选择边缘节点多或不允许入站访问时用边缘推送云端可直连边缘时用云端拉取。技术路线选择近实时同步用数据订阅taosExplorer 的数据复制/数据订阅任务或tmq驱动 DSN定期或按需同步用数据查询taosxrun命令或 taosExplorer 的TDengine 查询任务。四种方案全部支持零代码配置且 taosx 命令行模式提供stables、tables、start、mode、restro、interval、excursion等参数可进一步精细化控制同步范围与行为。更深入的信息可继续阅读taosx 参考文档、TDengine 数据订阅数据源、TDengine 查询数据源。【免费下载链接】tdengineTDengine is an open source, high-performance, cloud native time-series database optimized for Internet of Things (IoT), Connected Cars, Industrial IoT and DevOps.项目地址: https://gitcode.com/taosdata/tdengine创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Ciphey A* 搜索算法重写方案:基于解码器专属节点的定向搜索实现指南

Ciphey A* 搜索算法重写方案:基于解码器专属节点的定向搜索实现指南

Ciphey A* 搜索算法重写方案:基于解码器专属节点的定向搜索实现指南 【免费下载链接】Ciphey ⚡ Automatically decrypt encryptions without knowing the key or cipher, decode encodings, and crack hashes ⚡ 项目地址: https://gitcode.com/gh_mirrors/ci/Ci…

2026/9/22 1:55:00 阅读更多 →
文华主图买卖指标源码拆解:逻辑、陷阱与实战应用

文华主图买卖指标源码拆解:逻辑、陷阱与实战应用

简介:面向期货、股票技术分析者及文华财经软件用户的指标源码文档,聚焦主图买卖信号识别,帮助交易者判断趋势方向、关键支撑阻力位与进出场时机。文档以文字说明结合可复制的文华公式源码,覆盖趋势线、阻力线、支撑线、中线、准备…

2026/9/22 1:57:25 阅读更多 →
Spring MVC 跨域(CORS)源码深度解析:从 @CrossOrigin 到 DefaultCorsProcessor 的完整链路

Spring MVC 跨域(CORS)源码深度解析:从 @CrossOrigin 到 DefaultCorsProcessor 的完整链路

Spring MVC 跨域(CORS)源码深度解析:从 CrossOrigin 到 DefaultCorsProcessor 的完整链路 【免费下载链接】source-code-hunter 😱 从源码层面,剖析挖掘互联网行业主流技术的底层实现原理,为广大开发者 “提…

2026/9/20 23:52:57 阅读更多 →

最新新闻

艺龙旅行网机票查询源码拆解:避坑指南与面试通关

艺龙旅行网机票查询源码拆解:避坑指南与面试通关

艺龙旅行网机票查询源码拆解:避坑指南与面试通关 面试被问“艺龙旅行网机票查询怎么实现的”,你张口就来“爬虫抓数据”?HR直接摇头。 别慌,这不是让你去黑盒测试,而是考察你对高并发、数据一致性及容错机制的理解。…

2026/9/22 1:57:03 阅读更多 →
3个面试坑:纳米手机镀膜性能优化全解析

3个面试坑:纳米手机镀膜性能优化全解析

3个面试坑:纳米手机镀膜性能优化全解析 面试被问“纳米手机镀膜”原理,你张口就卡壳?别慌,这题看似物理,实则考察的是你对 性能优化 底层逻辑的理解。很多后端或算法工程师因为不懂硬件微观结构,答非所问,直接凉凉。…

2026/9/22 1:57:03 阅读更多 →
篮球场上的五个位置保姆级教程

篮球场上的五个位置保姆级教程

篮球场上的五个位置保姆级教程 看了一堆教程还是不会写项目?这是很多开发者的通病。别急,这篇 篮球场上的五个位置 保姆级教程,带你从源码角度拆解核心逻辑。我们不看空泛的理论,直接上手代码,把“位置”这个抽象概念,变成可运行的工程实践。…

2026/9/22 1:57:03 阅读更多 →
我的大东西有点大你忍耐一下:性能优化保姆级教程

我的大东西有点大你忍耐一下:性能优化保姆级教程

我的大东西有点大你忍耐一下:性能优化保姆级教程 版本升级后 API 全变了,老代码跑不动,新接口看不懂,这才是开发者最头疼的时刻。别慌,这份 保姆级教程 专治各种“卡顿”与“报错”,带你从底层原理到实战代码,彻底搞懂性能优化的核心逻辑。…

2026/9/22 1:57:03 阅读更多 →
数字圆圈避坑指南:搞定版本API变更与新手实操

数字圆圈避坑指南:搞定版本API变更与新手实操

数字圆圈避坑指南:搞定版本API变更与新手实操 刚把项目里的图形渲染模块从旧版迁移到新版,结果一跑代码,满屏报错。以前那个简单的 drawCircle 方法,现在参数全变了,坐标系原点还挪了位置,连个文档都没更新。这种 版本升级后 API…

2026/9/22 1:57:03 阅读更多 →
可怕的真相怎么做?这份避坑指南救了你

可怕的真相怎么做?这份避坑指南救了你

可怕的真相怎么做?这份避坑指南救了你 你是不是也这样:语法背得滚瓜烂熟,LeetCode 刷题手速飞快,但一让你从零搭个项目,脑子直接死机? 别慌,这不仅是你的问题,更是绝大多数初学者的通病。 很多人以为编程是“背公式”,只要把 API…

2026/9/22 1:56:02 阅读更多 →

日新闻

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天 配置环境就卡半天?别怪机器慢,多半是你没选对工具链。在Java、Go或Python的项目现场, 手写实现…

2026/9/22 0:00:41 阅读更多 →
剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑 面试被问原理答不上来,是不是常态?别慌。很多开发者对着 GitHub 开源仓库里的代码发呆,看似简单实则暗藏玄机。今天这份【剑帝加点】速查手册,直接带你拆解核心实现,把面试必考的原理讲透。…

2026/9/22 0:00:41 阅读更多 →
手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优 复制来的代码跑不通不知道怎么调?别慌,这种“复制粘贴地狱”在开发圈太常见了。尤其是做 图片压缩网站…

2026/9/22 0:00:41 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/21 3:13:20 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/21 2:19:36 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/21 4:51:05 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/21 15:36:51 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/21 15:36:51 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →