分布式网络设备中同步数据的存储方法及系统的制作方法

文档序号:6353447阅读:252来源:国知局
专利名称:分布式网络设备中同步数据的存储方法及系统的制作方法
技术领域
本发明涉及网络通信技术领域,尤其涉及分布式网络设备中同步数据的存储方 法及系统。
背景技术
在网络中,分布式网络设备是一种将数据转发功能和控制功能分离的网络设备, 其内部包括主控卡和业务线卡。其中主控卡完成控制功能,而业务线卡则通过特定的业务 接口完成数据转发功能。图1是双主控分布式网络设备的结构示意图。参见图1,为了提高 分布式网络设备的可靠性,目前在分布式网络设备内部设置了双主控卡,分为主用主控卡 和备用主控卡;分布式网络设备中的主用主控卡、备用主控卡和业务线卡分布在背板不同 的槽位上,当主用主控卡发生故障时,进行主备倒换,备用主控卡切换成主用主控卡,负责 所有控制业务的运行。为了保障系统高可靠性的主从备份技术,一般会在信息变化时进行实时同步,即 主用主控卡需要向备用主控卡和业务线卡下发设备配置管理信息或者路由信息等。在系统 运行过程中,系统的配置管理信息和路由信息等一般由主用主控卡根据变化情况实时下发 到各业务线卡和备用主控卡的。需要下发的配置管理信息和路由信息等需要存储,以前在 主控卡和业务线卡上的数据存储是由各个应用程序模块采取不同的数据结构存储,缺乏标 准统一的存储接口和存储引擎接口,故各个应用程序模块实现复杂,工作量大。

发明内容
本发明的目的是提供一种分布式网络设备中同步数据的存储方法及系统,实现在 主控卡和线卡上数据存储引擎接口的统一,屏蔽了实现细节,降低了代码冗余和提高了代 码的可移植性。鉴于以上目的,本发明的技术方案是这样实现的 一种分布式网络设备中同步数据的存储方法,包括如下步骤
a、在主用主控卡、备用主控卡和业务线卡上分别建立统一存储引擎接口的分布式数据
库;
b、主用主控卡的分布式数据库,通过提供给应用程序模块的统一存储接口接收同步数 据后,再调用统一存储引擎接口,进行同步数据的存储;
C、主用主控卡的分布式数据库完成同步数据的存储后,将同步数据发送到备用主控卡 和业务线卡;
d、备用主控卡或业务线卡的分布式数据库,接收到主用主控卡的同步数据后,通过调 用统一存储引擎接口,进行同步数据的存储。具体的,步骤b中,主用主控卡的分布式数据库调用统一存储引擎接口,进行同步 数据存储的具体步骤为
根据应用程序模块初始化时提供的表信息和同步数据中的表信息,主用主控卡的分布式数据库调用统一存储引擎接口,将同步数据存入公共数据库表或者应用程序模块的自定 义存储表;所述自定义存储表和公共数据库表由统一的存储引擎接口实现,由应用程序模 块初始化时把自定义存储表的存储引擎接口挂接在分布式数据库上。具体的,步骤d中,备用主控卡或业务线卡的分布式数据库接收到主用主控卡的 同步数据后,进行同步数据存储的具体步骤为
根据应用程序模块初始化时提供的表信息和同步数据中的表信息,备用主控卡或业务 线卡的分布式数据库调用统一存储引擎接口,将同步数据存入公共数据库表或者应用程序 模块的自定义存储表;所述自定义存储表和公共数据库表由统一的存储引擎接口实现,由 应用程序模块初始化时把自定义存储表的存储引擎接口挂接在分布式数据库上。具体的,步骤a还进一步包括如下步骤
设备启动后,主用主控卡和备用主控卡分别访问其自己的分布式数据库,并相互通告 其用于存储同步数据的所有表信息,完成分布式数据库的分布式注册。具体的,步骤a还进步包括如下步骤
业务线卡启动完毕后,访问其自己的分布式数据库,和主用主控卡互相通告其用于存 储同步数据的所有表信息,完成分布式数据库的分布式注册。为了实现上述目的,本发明还提供了一种分布式网络设备中同步数据的存储系 统,包括主用主控卡、备用主控卡和至少一个业务线卡,所述主用主控卡、备用主控卡和业 务线卡分别都包括有一分布式数据库模块;
所述主用主控卡的分布式数据库模块,用于为主用主控卡的应用程序模块提供统一存 储接口,并通过调用统一存储引擎接口将同步数据进行存储,将本地存储的同步数据发送 到备用主控卡和业务线卡的分布式数据库;
所述备用主控卡或业务线卡的分布式数据模块,用于接收主用主控卡的分布式数据库 的同步数据,并通过调用统一存储引擎接口将同步数据进行存储。具体的,所述主用主控卡的分布式数据库模块,通过调用统一存储引擎接口将同 步数据进行存储是指,主用主控卡的分布式数据库模块,用于根据应用程序模块初始化时 提供的表信息和同步数据中的表信息,调用统一存储引擎接口,将同步数据存入公共数据 库表或者应用程序模块的自定义存储表;所述自定义存储表和公共数据库表由统一的存储 引擎接口实现,由应用程序模块初始化时把自定义存储表的存储引擎接口挂接在分布式数 据库上。具体的,所述备用主控卡或业务线卡的分布式数据库模块,接收到主用主控卡的 同步数据后,进行同步数据存储是指,备用主控卡或业务线卡的分布式数据库模块,用于根 据应用程序模块初始化时提供的表信息和同步数据中的表信息,调用统一存储引擎接口, 将同步数据存入公共数据库表或者应用程序模块的自定义存储表;所述自定义存储表和公 共数据库表由统一的存储引擎接口实现,由应用程序模块初始化时把自定义存储表的存储 引擎接口挂接在分布式数据库上。具体的,所述主用主控卡的分布式数据库模块,还用于向备用主控卡和所有业务 线卡通告其用于存储同步数据的所有表信息,完成分布式数据库的分布式注册。具体的,所述业务线卡和备用主控卡的分布式数据库模块,还用于向主用主控卡 通告其用于存储同步数据的所有表信息,完成分布式数据库的分布式注册。
由上述技术方案可知本发明实现了分布式网络设备中主控卡和业务线卡上同步 数据的存储引擎接口的统一,从而可以实现异构数据的统一存储;以及实现了主用主控卡 上所有应用程序模块访问分布式数据库的存储接口的统一,屏蔽了实现细节,降低了代码 冗余和提高了代码的可移植性。


图1是本发明背景技术的分布式网络设备的结构示意图。图2是本发明分布式网络设备中同步数据的存储方法实施例流程图。图3是本发明分布式网络设备中同步数据的存储系统结构示意图。图4是本发明分布式网络设备中主用主控卡中分布式数据模块实施例的结构示 意图。
具体实施例方式为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图和具体实施例 对本发明作进一步的描述。本发明实施例提出的分布式网络设备中同步数据的存储方法的处理流程如图2 所示,该分布式网络通信设备具体实现时可为三层交换机,也可以为其他分布式网络设备, 本实施例并不具体限定;该流程包括如下步骤
步骤201、在主用主控卡、备用主控卡和业务线卡上分别建立统一存储引擎接口的分布 式数据库;
本201步骤属于系统的设置步骤。在本步骤中,主控卡和业务线卡的应用程序模块在 初始化时,为其所在板卡的分布式数据库提供了统一的存储引擎接口,从而保证了通过该 统一的存储引擎接口,将自身的应用程序信息根据需要存入公共的数据库表或者其它自定 义存储表。公共数据库表可采用链表或Hash表等多种表的结构;应用程序模块的自定义 存储表,既可以是通过软件实现的存储表(可采用radix树、256叉树、hash、B*树等结构存 储),也可以是应用程序模块建立的硬件存储表,无论何种类型的存储表,应用程序模块为 分布式数据库提供一套标准统一的存储引擎接口。在分布式网络设备启动完成主从协商后,主用主控卡和备用主控卡会分别访问其 自己的分布式数据库,并相互通告其用于存储同步数据的所有表信息,完成分布式数据库 的分布式注册,即建立分布式数据库中所有同步数据存储表的关联,建立关联的方法可采 用表的名字或者ID。本发明中包括的表信息包括表的ID,表的名称,表的列的结构和对应 的应用程序模块ID等。当分布式网络设备中的背板上插入一张业务线卡并启动后,该业务线卡通过访问 其自己的分布式数据库,和主用主控卡互相通告其用于存储同步数据的所有表信息,完成 分布式数据库的分布式注册,即建立分布式数据库的所有同步数据存储表的关联。步骤202、主用主控卡的分布式数据库,通过提供给应用程序模块的统一存储接口 接收同步数据后,再调用统一存储引擎接口,进行同步数据的存储。本202步骤中,首先,分布式数据库从其提供给所有应用程序模块的统一存储接 口接收同步数据;在本发明中,主用主控卡的分布式数据库为主用主控卡上所有的应用程序模块,提供了标准统一的存储接口,通过该存储接口,可以实现对分布式数据库操作和控 制;这也是本发明的创新点之一。然后主用主控卡的分布式数据库调用统一存储引擎接口,进行同步数据存储,具 体步骤为根据应用程序模块初始化时提供的表信息和同步数据中的表信息,主用主控卡 的分布式数据库调用统一存储引擎接口,将同步数据存入公共数据库表或者应用程序模块 的自定义存储表;所述自定义存储表和公共数据库表由统一的存储引擎接口实现,由应用 程序模块初始化时把自定义存储表的存储引擎接口挂接在分布式数据库上。本发明中,在分布式网络设备的主用主控卡的应用程序模块中,如配置文件模块, 它的要求内存消耗比较少,那么适合放在分布式数据库提供的公共数据表中进行存储;而 路由表模块,它的内存消耗比较大,而且跟其它模块有调用的效率要求,那么适合自己实 现存储,所以可采用自定义存储表;通过应用程序模块提供给分布式数据库的一套标准的 API,可以实现两类存储表的存储引擎接口的统一。在实现时,应用程序模块具体实现的自 定义存储表,在应用程序模块初始化时注册在分布式数据库上,以接管存储引擎接口的形 式挂接在分布式数据库上。步骤203、主用主控卡的分布式数据库完成同步数据的存储后,将同步数据发送到 备用主控卡和业务线卡。本203步骤中,包括主用主控卡向备用主控卡发送同步数据和主用主控卡向业务 线卡发送同步数据两个部分。主用主控卡向备用主控卡发送同步数据的过程为,在分布式 式网络设备启动完成主从协商后,主用主控板的分布式数据库会将本地所有存储表中存储 的同步数据,进行批量同步到备用主控卡的分布式数据库中,完成批量同步后,则进入实时 同步阶段,当主用主控卡上的应用程序模块通过分布式数据库提供的统一存储接口对公共 数据库表或自定义存储表进行插入、删除和更新时,则会引起公共数据库表或自定义存储 表信息的变化,主用主控板的分布式数据库会及时的同步到备用主控板的分布式数据库 中。如果主用主控板发生故障或强制切换时,备用主控板则会接替主用主控板的工作。当 一个业务线卡启动后,主用主控卡也会进行批量同步和实时同步,过程同上,不再赘述。步骤204、备用主控卡或业务线卡的分布式数据库,接收到主用主控卡的同步数据 后,通过调用统一存储引擎接口,进行同步数据的存储。本204步骤中,备用主控卡或业务线卡的分布式数据库接收到主用主控卡的同步 数据后,进行同步数据存储,具体步骤为根据应用程序模块初始化时提供的表信息和同步 数据中的表信息,备用主控卡或业务线卡的分布式数据库调用统一存储引擎接口,将同步 数据存入公共数据库表或者应用程序模块的自定义存储表;所述自定义存储表和公共数据 库表由统一的存储引擎接口实现,由应用程序模块初始化时把自定义存储表的存储引擎接 口挂接在分布式数据库上。由于分布式网络设备中,应用程序模块存储在主控卡和业务线卡上的数据用处不 同,其数据存储组织形式也有差异,本发明提供的统一存储引擎接口同时兼顾了主控卡和 线卡存储的差异性,通过提供一套统一标准的API即统一的存储引擎接口,无论是主控卡 或者业务线卡的分布式数据库,根据调用其所在板卡的应用程序模块提供的统一存储引擎 接口,可以将同步数据存储在公共数据表或者应用程序模块的自定义存储表;虽然存储形 式不同,但实现了统一存储接口的统一,提高了代码的可移植性。另外,本发明为主用主控卡的所有应用程序模块提供了操作分布式数据库的统一存储接口,主用主控卡的任一应用 程序模块要进行应用程序的信息存储时(本发明了描述方便统称为同步数据),可以直接调 用该分布式数据库统一的存储接口,减少了应用程序模块的工作量。虽然存储形式不同,但 实现了存储接口的统一,提高了代码的可移植性。
实施例下面分别以太驱动程序模块和MPLS程序模块的应用程序信息在主用主控卡的存 储、以及由主用主控卡同步到备主控卡和业务线卡上进行存储的过程为例,对本发明的存 储方法做进一步的说明。首先对主用主控卡中的以太驱动程序模块增加一条以太速率配置信息为例进行 详细说明,以太驱动程序模块调用分布式数据库提供的统一存储接口中的添加函数,将以 太速率配置信息发送给分布式数据库,分布式数据库根据以太驱动程序模块初始化时提供 的表信息,调用统一存储引擎接口,将该配置信息添加到公共数据库表中,同时主用主控卡 的分布式数据库会将添加的信息下发到备用主控卡和业务线卡上;配置信息下发到备用主 控卡后,备用主控卡的分布式数据库调用统一存储引擎接口的添加函数,将配置信息添加 到公共数据库表中;而下发到业务线卡上的配置信息,由业务线卡上的分布式数据库调用 存储引擎接口的添加函数,又根据以太驱动程序模块在初始化时提供的表信息(一般要包 括存储在哪个存储表)将配置信息添加到自定义的硬件存储表;由于业务线卡上的以太驱 动程序模块的目的是为了设置其硬件信息,所以会将配置信息添加到以太驱动程序模块的 自定义存储表中,即以硬件存储表的形式进行存储。现以主用主控卡上的MPLS程序模块的MPLS信息的添加为例进行详细说明书。由 于MPLS程序模块信息量较大,并且与其他模块有复杂的相互引用关系,不适合存储在公共 数据库表中,可以存储在由MPLS程序模块实现的自定义存储表中,由应用模块自行进行 存储;这样MPLS信息在主用主控卡上避免了存储在公共数据库表中,避免了数据的冗余。 MPLS程序模块的自定义存储表的存储引擎接口在模块初始化时进行注册,以接管存储引 擎接口的形式挂接在分布式数据库上,MPLS信息在添加时,MPLS程序模块调用分布式数据 库的统一存储接口提供的添加函数,将MPLS信息发送给分布式数据库,分布式数据库根据 MPLS程序模块初始化时提供的表信息,调用统一存储引擎接口,将MPLS信息存储在MPLS程 序模块的自定义存储表中。同时主用主控卡的分布式数据库会把添加的信息下发到备用主 控卡和业务线卡上。MPLS信息下发到备用主控卡的分布式数据库后,备用主控卡的分布式数据库,调 用统一存储引擎接口的添加函数,根据MPLS程序模块初始化时提供的表信息,该MPLS信息 对应的添加接口为MPLS程序模块自定义存储表提供的添加函数,然后MPLS信息被存储在 MPLS程序模块的自定义存储表中。MPLS信息下发到业务线卡的分布式数据库后,业务线卡 的分布式数据库,查找并调用统一存储引擎的添加函数接口,根据MPLS程序模块初始化时 提供的表信息,该MPLS信息对应的添加接口为MPLS自定义存储表提供的添加函数,其实现 为将MPLS信息存储在硬件存储表中。通过以上分析,应用程序信息在主控卡和线卡上的存储实现形式虽不同,但是他 们在进行存储时,由分布式数据库调用统一的存储引擎接口,从而实现了分布式数据库的异构存储。另外,当主用主控卡的分布式数据为应用程序模块提供了统一的存储接口,当新 增加一个应用程序模块时,把分布式数据库提供的统一存储接口直接移植到新的应用程序 模块上,而不需改动,只需改动具体的存储实现。因而提高了代码的可移植性。
以上对本发明实施例提供的方法进行了描述,下面对本发明实施例提供的系统进行描述。参见图3,图3为本发明实施例提供的系统结构示意图,该系统包括一个主用主 控卡1、一个备用主控卡2和至少一个业务线卡3 ;主用主控卡1包括一个分布式数据库模 块101,备用主控卡2包括一个分布式数据库模块201,业务线卡3包括一分布式数据库模 块 301。主用主控卡1的分布式数据库模块101,用于为主用主控卡1的应用程序模块1、 应用程序模块2和应用程序模块3提供统一存储接口 Al ;主用主控卡1的分布式数据库 模块101,从其提供给三个应用程序模块的统一存储接口 Al接收到应用程序信息后,根据 应用程序模块初始化时提供的表信息和应用程序信息中的表信息,调用统一存储引擎接口 Bi,将应用程序信息进行存储。例如应用程序模块1初始化时提供给分布式数据库模块101 的表信息中,确定其信息存储在自定义存储表1,且自定义存储表1和公共数据库表由统一 的存储引擎接口实现,而且应用程序模块1在初始化时将自定义存储表1的存储引擎接口 挂接在分布式数据库上。从统一存储接口 Al接收到应用程序模块1的应用程序信息后,分 布式数据库模块101调用统一存储引擎接口 Bi,根据应用程序模块1初始化时提供的表信 息以及从统一存储接口 Bl获取的表信息,将应用程序模块1的应用信息存储到自定义存储 表1。同理应用程序模块2在初始化时确定存储应用程序的表信息为自定义存储表2, 且自定义存储表2和公共数据库表由统一的存储引擎接口实现,并将自定义存储表2的存 储引擎接口挂接在分布式数据库上,分布式数据库模块101通过调用统一存储引擎接口 Bi,将应用程序模块2的应用程序信息存储到自定义存储表2 ;应用程序模块3初始化时确 定存储应用程序的表信息为公共数据库表,接收到应用程序模块3的应用信息后,分布式 数据库模块101调用统一存储引擎接口 Bi,将应用程序模块3的应用信息存储到公共数据 库表。主用主控卡1的分布式数据库模块101还用于将本地存储表的应用程序信息,包 括公共数据库表、自定义存储表1和自定义存储表2中的应用程序信息,发送到备用主控卡 2和业务线卡3的分布式数据库模块;另外,分布式数据库模块101还用于,在主用主控卡 1刚刚启动时,向备用主控卡2和业务线卡3通告其用于存储同步数据的所有表信息,完成 分布式数据库的分布式注册。备用主控卡2的分布式数据库模块201从主用主控卡1的分布式数据库模块101 接收到三个应用程序模块的应用程序信息后同,根据三个应用程序模块初始化时提供的表 信息和用于程序中的表信息,并通过调用统一存储引擎接口 B2将同应用程序信息进行存 储;例如将来自应用程序模块1的应用程序信息存入自定义存储表1中;将来自应用程序 模块2的应用程序信息存入自定存储表2中;将来自应用程序模块3的应用程序信息存入 公共数据表。由于双主控卡之间的备份关系,主用主控卡和备用主控卡的实现是完全相同的,所以一般应用程序模块的应用程序信息在主用主控卡和备用主控卡的存储方式是相同 的,即备用主控卡上三个应用程序模块在初始化时执行的操作与在主用主控卡时相同;具 体存储过程在此不再赘述。业务线卡3的分布式数据库模块301,从主用主控卡1的分布式数据库模块101接 收到应用程序模块的应用程序信息后,根据三个应用程序模块在初始化时提供的表信息以 及应用程序信息中的表信息,调用统一存储引擎接口 B3将三个应用程序模块的应用程序 信息进行存储。一般来说,在主控卡上采用自定义存储表存储应用程序信息的应用程序模 块,在将应用程序同步到业务线卡上时,也采用相同的自定义存储表来存储应用程序信息。 但是在主控卡上采用公共数据库表存储应用程序信息的应用程序模块,在将应用程序同步 到业务线卡上时,在实现时并不局限于将其应用程序信息必须存储在公共数据库表中,也 可能在初始化时该应用程序模块提供给分布式数据库模块301的表信息,是将其应用程序 信息存储在自定义存储表中。例如本实施例中,分布式数据库模块301,根据应用程序模块 1初始化时提供的表信息和应用程序信息中的表信息,调用统一存储引擎接口 B3,将应用 程序模块1的应用程序信息同步数据存入自定义存储表1 ;分布式数据库模块301通过调 用统一存储引擎接口 Bl,将应用程序模块2的应用程序信息存储到自定义存储表2 ;应用程 序模块3初始化时确定由公共数据库表来存储其应用程序信息,接收到应用程序模块3的 应用信息后,分布式数据库模块301调用统一存储引擎接口 Bl,将应用程序模块3的应用信 息存储到公共数据库表。另外分布式数据库模块301,还用于向主用主控卡1通告其用于存 储同步数据的所有表信息,完成分布式数据库的分布式注册。以上本系统中的统一存储引擎接口 Bi、统一存储引擎接口 B2和统一存储引擎接 口 B3为采用统一标准的一套API实现。参见图4,在本实施例中,主用主控卡上的分布式数据库模块包括数据库管理单元 401和数据库表单元402 ;数据库管理单元401用于为所在的主用主控卡的所有应用程序模 块提供统一存储接口、以及对分布式数据库的操作管理接口和将所在主用主控卡的同步接 口发送到被备用主控卡和所有业务线卡。数据库表单元402,用于完成应用模块的同步数据 以数据库形式进行存储。本实施例中的数据库管理单元401包括初始化子单元4011、分布式注册子单元 4012、管理子单元4013、统一存储接口子单元4014和同步数据分发子单元4015。初始化子单元4011,完成分布式数据库的初始化;分布式注册子单元4012,完成 数据库的分布式注册,建立主用主控板与备用主控板和所有业务线卡上公共数据库表以及 自定义存储表间的关联;管理子单元4013 提供分布式数据库运行所必须的任务、定时器、 消息处理等基础机制;统一存储接口子单元4014 提供应用程序模块对数据库操作和控制 的接口,维护表的分布相关信息及管理数据库的事务等;同步数据分发子单元4015 完成 对数据库管理的操作进行同步。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.分布式网络设备中同步数据的存储方法,其特征在于,包括如下步骤a、在主用主控卡、备用主控卡和业务线卡上分别建立统一存储引擎接口的分布式数据库;b、主用主控卡的分布式数据库,通过提供给应用程序模块的统一存储接口接收同步数 据后,再调用统一存储引擎接口,进行同步数据的存储;C、主用主控卡的分布式数据库完成同步数据的存储后,将同步数据发送到备用主控卡 和业务线卡;d、备用主控卡或业务线卡的分布式数据库,接收到主用主控卡的同步数据后,通过调 用统一存储引擎接口,进行同步数据的存储。
2.根据权利要求1所述分布式网络设备中同步数据的存储方法,其特征在于,所述步 骤b中,主用主控卡的分布式数据库调用统一存储引擎接口,进行同步数据存储的具体步 骤为根据应用程序模块初始化时提供的表信息和同步数据中的表信息,主用主控卡的分布 式数据库调用统一存储引擎接口,将同步数据存入公共数据库表或者应用程序模块的自定 义存储表;所述自定义存储表和公共数据库表由统一的存储引擎接口实现,由应用程序模 块初始化时把自定义存储表的存储引擎接口挂接在分布式数据库上。
3.根据权利要求1所述分布式网络设备中同步数据的存储方法,其特征在于,所述步 骤d中,备用主控卡或业务线卡的分布式数据库接收到主用主控卡的同步数据后,进行同 步数据存储的具体步骤为根据应用程序模块初始化时提供的表信息和同步数据中的表信息,备用主控卡或业务 线卡的分布式数据库调用统一存储引擎接口,将同步数据存入公共数据库表或者应用程序 模块的自定义存储表;所述自定义存储表和公共数据库表由统一的存储引擎接口实现,由 应用程序模块初始化时把自定义存储表的存储引擎接口挂接在分布式数据库上。
4.根据权利要求1-3任一项所述分布式网络设备中同步数据的存储方法,其特征在 于,步骤a还进一步包括如下步骤设备启动后,主用主控卡和备用主控卡分别访问其自己的分布式数据库,并相互通告 其用于存储同步数据的所有表信息,完成分布式数据库的分布式注册。
5.根据权利要求4项所述分布式网络设备中同步数据的存储方法,其特征在于,具体 的,步骤a还进步包括如下步骤业务线卡启动后,访问其自己的分布式数据库,和主用主控卡互相通告其用于存储同 步数据的所有表信息,完成分布式数据库的分布式注册。
6.分布式网络设备中同步数据的存储系统,包括主用主控卡、备用主控卡和至少一个 业务线卡,其特征在于,所述主用主控卡、备用主控卡和业务线卡分别都包括有一分布式数 据库模块;所述主用主控卡的分布式数据库模块,用于为主用主控卡的应用程序模块提供统一存 储接口,并通过调用统一存储引擎接口将同步数据进行存储,将本地存储的同步数据发送 到备用主控卡和业务线卡的分布式数据库;所述备用主控卡或业务线卡的分布式数据模块,用于接收主用主控卡的分布式数据库 的同步数据,并通过调用统一存储引擎接口将同步数据进行存储。
7.根据权利要求6所述分布式网络设备中同步数据的存储系统,其特征在于,所述主 用主控卡的分布式数据库模块,通过调用统一存储引擎接口将同步数据进行存储是指,主 用主控卡的分布式数据库模块,用于根据应用程序模块初始化时提供的表信息和同步数据 中的表信息,调用统一存储引擎接口,将同步数据存入公共数据库表或者应用程序模块的 自定义存储表;所述自定义存储表和公共数据库表由统一的存储引擎接口实现,由应用程 序模块初始化时把自定义存储表的存储引擎接口挂接在分布式数据库上。
8.根据权利要求6所述分布式网络设备中同步数据的存储系统,其特征在于,所述备 用主控卡或业务线卡的分布式数据库模块,接收到主用主控卡的同步数据后,进行同步数 据存储是指,备用主控卡或业务线卡的分布式数据库模块,用于根据应用程序模块初始化 时提供的表信息和同步数据中的表信息,调用统一存储引擎接口,将同步数据存入公共数 据库表或者应用程序模块的自定义存储表;所述自定义存储表和公共数据库表由统一的存 储引擎接口实现,由应用程序模块初始化时把自定义存储表的存储引擎接口挂接在分布式 数据库上。
9.根据权利要求6-8任一项所述分布式网络设备中同步数据的存储系统,其特征在 于,所述主用主控卡的分布式数据库模块,还用于向备用主控卡和所有业务线卡通告其用 于存储同步数据的所有表信息,完成分布式数据库的分布式注册。
10.根据权利要求9所述分布式网络设备中同步数据的存储系统,其特征在于,所述业 务线卡和备用主控卡的分布式数据库模块,还用于向主用主控卡通告其用于存储同步数据 的所有表信息,完成分布式数据库的分布式注册。
全文摘要
本发明提供了分布式网络设备中同步数据的存储方法和系统。该存储方法包括步骤a、在主用主控卡、备用主控卡和业务线卡上分别建立统一存储引擎接口的分布式数据库;b、主用主控卡的分布式数据库,通过提供给应用程序模块的统一存储接口接收同步数据后,再调用统一存储引擎接口,进行同步数据的存储;c、主用主控卡的分布式数据库完成同步数据的存储后,将同步数据发送到备用主控卡和业务线卡;d、备用主控卡或业务线卡的分布式数据库,接收到主用主控卡的同步数据后,通过调用统一存储引擎接口,进行同步数据的存储。本发明通过实现了分布式网络设备中主控卡和线卡上分布式数据库调用统一存储引擎接口,实现了异构数据的统一存储,屏蔽了实现细节,降低了代码冗余和提高了代码的可移植性。
文档编号G06F17/30GK102075580SQ201110022830
公开日2011年5月25日 申请日期2011年1月20日 优先权日2011年1月20日
发明者刘国秀, 梁晖 申请人:迈普通信技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1