【技术实现步骤摘要】
协同编辑过程中的数据处理方法、装置及电子设备
[0001]本专利技术涉及计算机处理
,尤其涉及一种协同编辑过程中的数据处理方法
、
装置
、
电子设备及计算机可读存储介质
。
技术介绍
[0002]协同编辑是近年来兴起的一种操作方式,主要应用于在线文档,编辑对象主要是文本类型的字符
。
目前的协同编辑系统主要应用操作转换
(Operation Transformation
,简称
OT)
算法或无冲突的复制数据类型
(Conflict
‑
Free Replicated Data Type
,简称
CRDT)
算法,目的是保留所有用户的操作
(Operation)(
如新增
、
删除
、
更新等
)
和过程数据,并解决多用户编辑时的冲突问题
。
[0003]其中,
OT
算法通过第三方中心服务器解决冲突问题来保证多端用户的一致性,主要的应用例如为
Google Doc、
腾讯文档等产品
。CRDT
算法通过双向链表的数据结构来保证并发冲突数据的最终一致性
。
具体地,基于
CRDT
算法为在文档中创建的每个字符分配一个唯一的标识符,并在删除字符时保留元数据;双向链表中的每一项都唯一地记录了每次用户操作所更新的数据,从而将 ...
【技术保护点】
【技术特征摘要】
1.
一种协同编辑过程中的数据处理方法,其特征在于,其应用于终端设备,包括:获取用户编辑的元宇宙场景
ID
;响应于检测到用户对所述元宇宙场景中的数字内容的编辑指定操作,锁定所述数字内容,并获取所述数字内容在所述元宇宙场景中的空间
ID
;在所述数字内容的锁定状态,获取用户对所述数字内容进行一次或多次编辑时产生的对象数据;按照用户编辑的时间顺序将每次编辑产生的对象数据顺次存储到提交队列中;响应于满足提交条件,按照先进先出方式将所述提交队列中的多个对象数据逐个序列化并组成结构化的内容数据;以及将所述结构化的内容数据及场景
ID、
空间
ID
和用户
ID
组合在一起作为编辑数据发送给服务端
。2.
根据权利要求1所述的数据处理方法,其特征在于,每个所述对象数据对应于一个编辑单位产生的数据,所述的编辑单位为数字内容的一个或多个自由度参数
、
一个或多个业务属性参数
、
一个或多个动画参数
。3.
根据权利要求1所述的数据处理方法,其特征在于,响应于用户创建的元宇宙场景,根据场景
ID
生成规则为所述元宇宙场景生成场景
ID
;或,响应于用户选择的已经存在的元宇宙场景,根据元宇宙场景与场景
ID
的对应关系获取用户编辑的元宇宙场景
ID。4.
根据权利要求1所述的数据处理方法,其特征在于,响应于用户在所述元宇宙场景分配的一个或多个空间范围,为每个空间范围创建空间
ID。5.
根据权利要求1所述的数据处理方法,其特征在于,在所述提交队列已满时确认满足提交条件;或者,在达到定时周期时确认满足提交条件;或者,在接收到用户对数字内容的编辑完成操作时确认满足提交条件
。6.
根据权利要求1所述的数据处理方法,其特征在于,在检测到用户对数字内容的编辑完成操作时,解除对所述数字内容的锁定
。7.
一种协同编辑过程中的数据处理方法,其特征在于,其应用于服务器,第一用户与多个第二用户协同编辑一个元宇宙场景,所述方法包括:在多个用户协同编辑一个元宇宙场景过程中,响应于接收到第一用户发送的编辑数据,从所述编辑数据中提取出内容数据,并确定所述元宇宙的场景
ID、
内容数据的空间
ID
及所述第一用户的用户
ID
;基于场景
ID、
空间
ID
及所述第一用户的用户
ID
查询数据存储树结构以确定目标叶子节点;按照时间顺序在所述目标叶子节点中记录对应当前编辑数据的编辑记录及基于前一编辑记录中的数据存储地址确定当前内容数据的存储地址;将所述当前内容数据存储在所述存储地址对应的存储区域;更新所述目标叶子节点
、
作为所述目标叶子节点的父节点的中间节点和根节点中存储的编辑记录数量;基于所述内容数据实现第一用户对数字内容的编辑,并向多个第二用户同步第一用户编辑完成的数字内容;其中,所述数据存储树结构包括一个根节点
、
一个或多个中间节点以及一个或多个叶
子节点,所述根节点为所述一个或多个中间节点的父节点,一个根节点对应一个元宇宙场景;每个所述中间节点对应于所述元宇宙场景中的一个子空间;每个叶子节点用于存储一个用户编辑一个子空间内的数字内容时产生的编辑记录及内容数据,与所述子空间对应的中间节点所述叶子节点的父节点;每个节点具有对应的节点
ID。8.
根据权利要求7所述的数据处理方法,其特征在于,查询数据存储树结构的步骤包括:遍历所有数据存储树结构的根节点,将根节点
ID
与所述元宇宙场景
ID
对应的根节点确定为目标根节点;遍历以所述目标根节点为父节点的中间节点,将中间节点
ID
与所述空间
ID
对应的中间节点确定为目标中间节点;以及遍历以所述目标中间节点为父节点的叶子节点,将叶子节点中的用户
ID
与所述第一用户的用户
ID
对应的叶子节点确定为目标叶子节点
。9.
根据权利要求8所述的数据处理方法,其特征在于,在遍历所有数据存储树结构的根节点时,响应于没有得到与所述元宇宙场景
ID
对应的根节点,新建与所述元宇宙场景对应的根节点,并作为目标根节点;基于所述空间
ID
创建以所述目标根节点为父节点的中间节点,并作为目标中间节点;基于所述第一用户的用户
ID
创建以所述目标中间节点为父节点的叶子节点,并确定为目标叶子节点
。10.
根据权利要求8所述的数据处理方法,其特征在于,在遍历以所述目标中间节点为父节点的叶子节点时,响应于没有得到与所述第一用户的用户
ID
对应的叶子节点,以所述目标中间节点为父节点建立叶子节点,并确定为目标叶子节点
。11.
根据权利要求8所述的数据处理方法,其特征在于,在遍历以所述目标中间节点为父节点的叶子节点时,在得到了叶子节点中的用户
ID
与所述第一用户的用户
ID
对应的第一叶子节点时进一步包括:获取所述第一叶子节点当前全部编辑记录对应的内容数据的存储量;对比所述第一叶子节点当前全部编辑记录对应的内容数据的存储量和存储阈值;响应于所述第一叶子节点当前全部编辑记录对应的内容数据的存储量小于所述存储阈值,将所述第一叶子节点确定为目标叶子节点;以及响应于所述第一叶子节点当前全部编辑记录对应的内容数据的存储量大于或等于所述存储阈值,新建对应所述用户
ID
的第二叶子节点并关联所述第一叶子节点和第二叶子节点;将所述第二叶子节点确定为目标叶子节点
。12.
...
【专利技术属性】
技术研发人员:刘真余,
申请(专利权)人:北京河图联合创新科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。