用户配置数据的方法及装置制造方法及图纸

技术编号:8489810 阅读:188 留言:0更新日期:2013-03-28 11:21
本发明专利技术公开了一种用户配置数据的方法及装置。该方法包括:根据用户对配置数据的操作,在编辑表中相应的配置数据条目下保存操作用户名和操作类型,在编辑表中的数据存在冲突的情况下,对编辑表中的冲突数据进行处理,在编辑表中的数据无冲突的情况下,将编辑表的表名和相应的操作用户名保存在预先设置的增量表中;在用户提交配置数据时,根据该用户的操作用户名以及增量表获取相应的编辑表,并将该编辑表中记录的该用户修改后的配置数据提交到在线表,其中,在线表用于保存生效的配置数据。

【技术实现步骤摘要】
用户配置数据的方法及装置
本专利技术涉及移动通讯领域,特别是涉及一种用户配置数据的方法及装置。
技术介绍
目前,在数据配置管理系统中,将每套逻辑完整的数据定义为一个数据集合,传统的数据配置过程采取的是对整个数据集合加锁的方式来保证多用户之间数据操作的互斥性,因此不支持多用户同时操作同一个数据集合,并且对于同一个表的多用户修改无法做出区分。在现有技术中,对于每个用户的修改没有进行缓存,导致各个用户修改的数据交织在一起,如果不对数据集合加锁,则一个用户的数据配置提交时,会将所有用户的修改都提交生效。随着数据配置系统的中需要配置的数据不断增多,在实际应用中,一个数据集合的数据通常都是通过多人协作的方式完成配置的。单用户的配置方式在初始配置时会影响数据配置的效率,在后续运维时各用户间的配置会互相影响,可能会造成当前用户不希望提交生效的数据被另一个用户提交生效。同时,现有数据系统在数据提交时才对数据进行冲突检查,而由多用户进行轮番修改后的数据会导致无法确切判断数据应该以冲突中的哪一方数据为准。目前,对于多用户同时配置数据的方案主要是采用数据分区来实现,用户通过编辑不同的数据库表,在数据提交生效时和其他用户的修改进行数据冲突检查。但是,通过上述技术方案,在多用户同时配置数据时,多用户不能够同时配置同一个数据集合,此外,在数据编辑时不能够进行实时的冲突检查,并且不能够以指定用户为单位进行独立的数据提交和独立的数据回滚。
技术实现思路
本专利技术提供一种用户配置数据的方法及装置,以解决现有技术中在用户配置数据时多用户不能够同时配置同一个数据集合,在数据编辑时不能够进行实时的冲突检查,并且不能够以指定用户为单位进行独立的数据提交的问题。本专利技术提供一种用户配置数据的方法,包括:根据用户对配置数据的操作,在编辑表中相应的配置数据条目下保存操作用户名和操作类型,在编辑表中的数据存在冲突的情况下,对编辑表中的冲突数据进行处理,在编辑表中的数据无冲突的情况下,将编辑表的表名和相应的操作用户名保存在预先设置的增量表中;在用户提交配置数据时,根据该用户的操作用户名以及增量表获取相应的编辑表,并将该编辑表中记录的该用户修改后的配置数据提交到在线表,其中,在线表用于保存生效的配置数据。本专利技术还提供了一种用户配置数据的装置,包括:第一保存模块,用于根据用户对配置数据的操作,在编辑表中相应的配置数据条目下保存操作用户名和操作类型;数据冲突模块,用于在编辑表中的数据存在冲突的情况下,对编辑表中的冲突数据进行处理;第二保存模块,用于在编辑表中的数据无冲突的情况下,将编辑表的表名和相应的操作用户名保存在预先设置的增量表中;数据提交模块,用于在用户提交配置数据时,根据该用户的操作用户名以及增量表获取相应的编辑表,并将该编辑表中记录的该用户修改后的配置数据提交到在线表,其中,在线表用于保存生效的配置数据。本专利技术有益效果如下:通过将数据库配置表设计为在线表和编辑表两套表,其中,在线表和现有的数据配置表完全一致,编辑表的表结构完全以现有的数据配置表的表结构为基础进行改造,根据在线表、编辑表以及增量表记录的信息来控制多用户配置数据的按用户生效和按用户回滚流程,解决了现有技术中在用户配置数据时多用户不能够同时配置同一个数据集合,在数据编辑时不能够进行实时的冲突检查,并且不能够以指定用户为单位进行独立的数据提交的问题,能够在多用户配置数据时进行实时的数据冲突检查,同时,由于记录了每个用户的操作信息,可以支持按用户进行数据的独立生效和按用户进行数据的独立回滚,可以起到实时自动备份数据的功能。附图说明图1是本专利技术实施例的用户配置数据的方法的流程图;图2是本专利技术实施例的在线表编辑表增量表的关系示意图;图3是本专利技术实施例的用户配置数据的方法的详细处理流程图;图4是本专利技术实施例的数据冲突检查的流程图;图5是本专利技术实施例的用户配置数据的装置的结构示意图。具体实施方式为了解决现有技术中在用户配置数据时多用户不能够同时配置同一个数据集合,在数据编辑时不能够进行实时的冲突检查,并且不能够以指定用户为单位进行独立的数据提交的问题,本专利技术提供了一种用户配置数据的方法及装置,根据数据配置表的表结构在数据库中生成两套表,一套是存储真实生效的在线数据的在线表(以下用O表来表示);一套是存储用户离线编辑过程数据的编辑表(以下用E表来表示)。在每个E表中增加操作用户名(CURRENT_USER)属性列,用于表示当前修改该记录的用户;在每个E表中还增加了操作类型(OP)属性列,用于表示用户对该记录所做的操作,此外,本专利技术实施例的技术方案还维护一张增量表(以下用D表表示)来存储用户操作信息,其中,用户操作信息包括操作用户(CURRENT_USER)和E表的表名(TABLENAME)。通过O表、E表和D表记录的信息来控制多用户配置数据的按用户生效和按用户回滚流程。以下结合附图以及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不限定本专利技术。方法实施例根据本专利技术的实施例,提供了一种用户配置数据的方法,以下首先对本专利技术实施例中数据库表结构的设计进行详细的说明:对于所有的数据配置表在数据库中设计为两套表:一套是存储真实生效的在线数据的在线表(O表),O表不提供给用户进行操作;一套是存储用户离线编辑过程数据的编辑表(E表),用户只能直接操作E表的数据。O表和E表的表结构差异在于每个E表中会增加两个属性列用来保存用户操作过程信息:一列是操作用户名(CURRENT_USER)属性列,用于存储操作该记录的用户名;另一列是操作类型(OP)属性列,用于存储用户对该记录所做的操作类型。对于OP属性列,只存在三种操作类型:增加(用A表示),修改(用M表示),删除(用D表示)。除了数据配置表外,还需要维护一张增量表(D表),来存储已经在E表中编辑而未提交生效的操作信息,包括操作用户名(CURRENT_USER)和E表的表名(TABLENAME)。图1是本专利技术实施例的用户配置数据的方法的流程图,如图1所示,根据本专利技术实施例的用户配置数据的方法包括如下处理:步骤101,根据用户对配置数据的操作,在E表中相应的配置数据条目下保存操作用户名和操作类型,在E表中的数据存在冲突的情况下,对E表中的冲突数据进行处理,在E表中的数据无冲突的情况下,将E表的表名和相应的操作用户名保存在预先设置的D表中;优选地,操作类型包括:增加(A)、修改(M)、以及删除(D)。在步骤101中,对E表中的冲突数据进行处理具体包括如下处理:在同一用户对用一条配置数据条目进行多次操作导致数据冲突的情况下,如果先对某一条配置数据条目执行增加操作,随后对该条配置数据条目进行修改操作,则将修改的属性同步到E表中相应的配置数据条目下,并将其操作类型设置为增加;如果先对某一条配置数据条目执行增加操作,随后对该条配置数据条目进行删除操作,则直接删除E表中相应的配置数据条目;如果先后对某一条配置数据条目执行修改操作,则将E表中相应的配置数据条目下的操作类型设置为修改;如果先对某一条配置数据条目执行修改操作,随后对该条配置数据条目进行删除操作,则将E表中相应的配置数据条目下的操作类型设置为删除;如果先对某一条配置数据条目执行删除操本文档来自技高网...
用户配置数据的方法及装置

【技术保护点】
一种用户配置数据的方法,其特征在于,包括:根据用户对配置数据的操作,在编辑表中相应的配置数据条目下保存操作用户名和操作类型,在所述编辑表中的数据存在冲突的情况下,对所述编辑表中的冲突数据进行处理,在所述编辑表中的数据无冲突的情况下,将所述编辑表的表名和相应的操作用户名保存在预先设置的增量表中;在用户提交配置数据时,根据该用户的操作用户名以及所述增量表获取相应的编辑表,并将该编辑表中记录的该用户修改后的配置数据提交到在线表,其中,所述在线表用于保存生效的配置数据。

【技术特征摘要】
1.一种用户配置数据的方法,其特征在于,包括:根据用户对配置数据的操作,在编辑表中相应的配置数据条目下保存操作用户名和操作类型,在所述编辑表中的数据存在冲突的情况下,对所述编辑表中的冲突数据进行处理,在所述编辑表中的数据无冲突的情况下,将所述编辑表的表名和相应的操作用户名保存在预先设置的增量表中;所述操作类型包括:增加、修改和删除;所述编辑表中的数据存在冲突的情况下,对所述编辑表中的冲突数据进行处理具体包括:在同一用户对用一条配置数据条目进行多次操作导致数据冲突的情况下,如果先对某一条配置数据条目执行增加操作,随后对该条配置数据条目进行修改操作,则将修改的属性同步到所述编辑表中相应的配置数据条目下,并将其操作类型设置为增加;如果先对某一条配置数据条目执行增加操作,随后对该条配置数据条目进行删除操作,则直接删除所述编辑表中相应的配置数据条目;如果先后对某一条配置数据条目执行修改操作,则将所述编辑表中相应的配置数据条目下的操作类型设置为修改;如果先对某一条配置数据条目执行修改操作,随后对该条配置数据条目进行删除操作,则将所述编辑表中相应的配置数据条目下的操作类型设置为删除;如果先对某一条配置数据条目执行删除操作,随后对该条配置数据条目进行增加操作,则比较已删除的配置数据条目与新增加的配置数据条目的不同并修改所述配置数据条目,将所述编辑表中相应的配置数据条目下的操作类型设置为修改;在不同用户对用一条配置数据条目进行先后进行多次操作导致数据冲突的情况下,提示后一个操作用户该条配置数据条目已经被其他操作用户编辑并且未提交生效;在不同用户对多条配置数据条目进行操作导致数据冲突的情况下,如果用户所修改的配置数据条目所引用的配置数据条目已经被其他用户删除,则提示该用户操作失败;如果用户所修改的配置数据条目所引用的配置数据条目是被其他用户新增加的且未提交生效,则提示该用户操作失败;如果用户删除被其他配置数据条目所引用的配置数据条目,且所述其他配置数据条目下的操作用户名为该用户、操作类型为删除,则将所述编辑表中该配置数据条目下的操作类型设置为删除,如果用户删除被其他配置数据条目所引用的配置数据条目,且所述其他配置数据条目下的操作用户名为空或其他用户,则提示该用户操作失败;在用户提交配置数据时,根据该用户的操作用户名以及所述增量表获取相应的编辑表,并将该编辑表中记录的该用户修改后的配置数据提交到在线表,其中,所述在线表用于保存生效的配置数据。2.如权利要求1所述的方法,其特征在于,在用户提交配置数据之前,所述方法还包括:在用户回滚配置数据时,根据该用户的操作用户名以及所述增量表获取相应的编辑表,根据在线表中的记录将该编辑表中相应的配置数据条目进行回滚。3.如权利要求2所述的方法,其特征在于,在用户回滚配置数据时,根据该用户的操作用户名以及所述增量表获取相应的编辑表,根据在线表中的记录将该编辑表中相应的配置数据条目进行回滚具体包括:在用户回滚配置数据时,获取发起数据回滚请求的用户的操作用户名;根据所述操作用户名在所述增量表中查找与所述操作用户名相对应的编辑表的表名;根据所述编辑表的表名获取相应的编辑表,在所述编辑表中获取操作用户名为该用户的配置数据条目,根据获取的所述配置数据条目下的操作类型所指示的操作以及所述在线表中的记录,将所述编辑表中相应的配置数据条目进行回滚。4.如权利要求1所述的方法,其特征在于,在用户提交配置数据时,根据该用户的操作用户名以及所述增量表获取相应的编辑表,并将该编辑表中记录的该用户修改后的配置数据提交到所述在线表具体包括:在用户提交配置数据时,获取发起数据提交请求的用户的操作用户名;根据所述操作用户名在所述增量表中查找与所述操作用户名相对应的编辑表的表名;根据所述编辑表的表名获取相应的编辑表,在所述编辑表中获取操作用户名为该用户的配置数据条目,并根据所述在线表中的记录获取操作用户名为其他用户的配置数据条目;根据所述编辑表中的所述操作类型所指示的操作,对获取的所述配置数据条目进行归并,并将归并后的配置数据提交到所述在线表。5.如权利要求1或2所述的方法,其特征在于,将该编辑表中记录的该用户修改后的配置数据提交到在线表之后,所述方法还包括:清空所述增量表中操作用户名为该用户的记录,删除相应的编辑表中操作...

【专利技术属性】
技术研发人员:王雅芳王婉菲汪星
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1