[发明专利]一种实时协作在线电子表格的数据同步协议及方法在审
申请号: | 202010008049.7 | 申请日: | 2020-01-06 |
公开(公告)号: | CN111126022A | 公开(公告)日: | 2020-05-08 |
发明(设计)人: | 陈加贝;陈霈霖;张本富 | 申请(专利权)人: | 深圳维格智数科技有限公司 |
主分类号: | G06F40/18 | 分类号: | G06F40/18;G06F16/178;G06F16/11 |
代理公司: | 广州市红荔专利代理有限公司 44214 | 代理人: | 王贤义 |
地址: | 518000 广东省深圳市福田区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实时 协作 在线 电子表格 数据 同步 协议 方法 | ||
本发明公开并提供了一种方便快捷、效率高效、成本低廉的实时协作在线电子表格的数据同步协议及方法。本发明中的实时协作在线电子表格的数据同步协议包括用于修改在线表格的快照的JSON格式数据的操作命令队列,所述操作命令队列包括由操作命令组所组成的数组,所述操作命令队列的数组中依次包括数据路径符、命令符以及内容符,所述命令符包括删除符、插入符以及替换符,通过编写数据路径、命令符以及内容符,对在线表格的快照进行指定修改。本发明适用于实时协作在线电子表格的数据同步领域。
技术领域
本发明涉及一种实时协作在线电子表格的数据同步协议及方法。
背景技术
实时协作在线电子表格是一项复杂的工程,首先电子表格本身需要使用非常复杂的数据结构来存储各项相关功能。其中最基础的是由行和列组成的二维数据结构,通过行号和列号我们可以确定一个单元格的数据位置。单元格也有单元格相关的数据结构,比如字符串/数组。同时额外功能的数据结构,例如筛选设置/排序设置等等。本质上,在线表格的所有功能都是在对在线表格底层的数据结构进行修改,同时还需要将这些修改同步到服务端和其他参与协作的客户端。
在线表格开发中的常见的做法和普通web应用一样。针对每一个功能去开发一个api。比如需要修改一个单元格的内容,就会开发一个api叫 setCell 同时定义好一个专门修改单元格数据的传输数据结构。同理那如果要加一个增加行的功能,就要加一个addRow的api。期间要进行api设计,技术评审,技术开发,前端后端联调等一系列过程。
可以看到,按照传统web应用的开发方式,每次api的设计都是一个耗时耗力的过程,而一个成熟的在线表格应用的功能是以成百上千的来计算的。这里面有难以想象的时间都被消耗在了api的设计上。同时高的复杂度也带来了软件稳定性的问题,bug率居高不下,人力维护成本高企。
发明内容
本发明所要解决的技术问题是克服现有技术的不足,提供了一种方便快捷、效率高效、成本低廉的实时协作在线电子表格的数据同步协议及方法。
本发明中的实时协作在线电子表格的数据同步协议包括用于修改在线表格的快照的JSON 格式数据的操作命令队列,所述操作命令队列包括由操作命令组所组成的数组,所述操作命令队列的数组中依次包括数据路径符、命令符以及内容符,所述命令符包括删除符、插入符以及替换符,通过编写数据路径、命令符以及内容符,对在线表格的快照进行指定修改。
所述路径符为PATH,是快照根部到元素的访问路径的数组,所述命令符为COMMAND,描述了将要进行的动作,所述内容符为CONTENT,其包含了实际的数据内容,所述删除符为delete, 所述插入符为insert,所述替换符为replace。
本发明中通过上述数据同步协议来实现的数据同步协议方法,包括以下步骤:
A.取得所需要修改的表格的快照数据;
B.通过所述操作命令队列构造路径符、命令符、内容符,对快照的JSON 格式数据进行修改;
C.将步骤B所得的操作命令队列的解析逻辑在客户端和服务端分别实现一遍;
D.发送步骤B所得的操作命令队列,实现数据同步。
本发明的有益效果在于:本发明能够以一种通用的方式对电子表格文档内容的改变进行描述,无需对具体的功能项的去定义相关的 api,而是直接从数据结构的角度出发,去描述针对具体数据路经的数据变动,来达到修改数据的目的。从而能够灵活的应对需求变化,去掉了 api 开发的时间,大大降低实时协作系统的开发难度,提高系统的稳定性和开发效率。
附图说明
图1为说明路径符、命令符以及内容符之间的关系以及作用的举例图示;
图2为删除符、插入符以及替换符的作用以及例子展示表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳维格智数科技有限公司,未经深圳维格智数科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010008049.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种粘性实时数据协同通信系统及方法
- 下一篇:一种天然防污涂料及其使用方法