CN104951565A - 一种基于内存数据库的xml配置维护方法及系统 - Google Patents

一种基于内存数据库的xml配置维护方法及系统 Download PDF

Info

Publication number
CN104951565A
CN104951565A CN201510405610.4A CN201510405610A CN104951565A CN 104951565 A CN104951565 A CN 104951565A CN 201510405610 A CN201510405610 A CN 201510405610A CN 104951565 A CN104951565 A CN 104951565A
Authority
CN
China
Prior art keywords
parameter
definition
node
value
xml
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510405610.4A
Other languages
English (en)
Other versions
CN104951565B (zh
Inventor
韩永华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Asiainfo Technologies China Inc
Original Assignee
Phicomm Shanghai Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Phicomm Shanghai Co Ltd filed Critical Phicomm Shanghai Co Ltd
Priority to CN201510405610.4A priority Critical patent/CN104951565B/zh
Publication of CN104951565A publication Critical patent/CN104951565A/zh
Application granted granted Critical
Publication of CN104951565B publication Critical patent/CN104951565B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于内存数据库的XML配置维护方法及系统,该基于内存数据库的XML配置维护方法包括:对每一个节点字符串建立一个数据字典条,所有数据字典条组成字典表;数据字典条包括节点字符串的名称、类型、及参数值;建立对象定义表,由对象定义条组成;对象定义条包括节点定义、节点类型、及节点索引;节点定义由参数值表示;建立参数定义表,由参数定义条组成;参数定义条包括节点、参数ID、参数类型、参数属性、及整形值;节点由节点索引表示,参数ID由参数值表示。本发明通过内存数据库实现了XML的存储和配置,简化了数据的复杂层次描述,统一了基于XML的本地和远端的数据操作,方便了系统的配置和维护,适用性强。

Description

一种基于内存数据库的XML配置维护方法及系统
技术领域
本发明属于计算机技术领域,涉及一种XML配置维护方法,特别是涉及一种基于内存数据库的XML配置维护方法及系统。
背景技术
XML(Extensible Markup Language,可扩展标记语言)是标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息,比如文章等。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。它非常适合万维网传输,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。是Internet环境中跨平台的、依赖于内容的技术,也是当今处理分布式结构信息的有效工具。早在1998年,W3C就发布了XML1.0规范,使用它来简化Internet的文档信息传输。
嵌入式设备中经常使用XML(Extensible Markup Language,可扩展标记语言)配置数据的传递,比如TR-069中的参数配置。在现有的嵌入式设备中,一般直接使用自定义数据结构,比如数组或者链表等方式来实现数据的操作,由于针对不同的XML结构需要自定义不同的结构,实现起来相当复杂,设计和编码需要花费大量的时间。另一种方法是设计一些精巧的结构,完成XML这种层次结构的数据存储。该方法有过多的模块依赖性,不利于进行跨平台的移植。
综上所述,现有技术存在以下缺陷:
1)需要进行精巧的数据结构设计,耗费大量的时间。
2)即使设计精巧,但存在过多的依赖性,不利于垮平台的移植。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于内存数据库的XML配置维护方法及系统,用于解决现有技术耗时长,依赖性强,不利于跨平台移植的问题。
为实现上述目的及其他相关目的,本发明提供一种基于内存数据库的XML配置维护方法,所述基于内存数据库的XML配置维护方法包括:对每一个节点字符串建立一个数据字典条,所有数据字典条组成字典表;所述数据字典条包括节点字符串的名称、类型、及参数值;建立对象定义表,由对象定义条组成;所述对象定义条包括节点定义、节点类型、及节点索引;所述节点定义由所述参数值表示;建立参数定义表,由参数定义条组成;所述参数定义条包括节点、参数ID、参数类型、参数属性、及整形值;所述节点由所述节点索引表示,所述参数ID由所述参数值表示,所述参数属性包括本地定义和远程定义;每个定义的参数均对应一个唯一的整形值。
可选地,所述字典表和所述参数定义表的建立使用相同的数据库。
可选地,所述基于内存数据库的XML配置维护方法还包括:根据系统配置更新属性为本地定义的参数的属性默认值。
可选地,所述基于内存数据库的XML配置维护方法还包括:通过所述对象定义表中的结构成员找到对应的数据库参数值索引;所述数据库参数值索引即为所述整形值;通过所述数据库参数值索引在所述参数定义表中进行读写操作。
可选地,所述基于内存数据库的XML配置维护方法还包括:接收远程配置命令,获取配置参数;根据对象定义表将形如字符串的配置参数转换成形如索引值的配置参数;所述索引值包括参数值、或/和节点索引;利用所述配置参数的索引值查找到对应的整形值;通过所述整形值对所述配置参数进行设置或读取。
本发明还提供一种基于内存数据库的XML配置维护系统,所述基于内存数据库的XML配置维护系统包括:字典表建立模块,对每一个节点字符串建立一个数据字典条,所有数据字典条组成字典表;所述数据字典条包括节点字符串的名称、类型、及参数值;对象定义表建立模块,与所述字典表建立模块相连,建立由对象定义条组成的对象定义表;所述对象定义条包括节点定义、节点类型、及节点索引;所述节点定义由所述参数值表示;参数定义表建立模块,与所述对象定义表建立模块和字典表建立模块分别相连,建立由参数定义条组成的参数定义表;所述参数定义条包括节点、参数ID、参数类型、参数属性、及整形值;所述节点由所述节点索引表示,所述参数ID由所述参数值表示,所述参数属性包括本地定义和远程定义;每个定义的参数均对应一个唯一的整形值。
可选地,所述字典表建立模块和所述参数定义表建立模块与相同的数据库相连。
可选地,所述基于内存数据库的XML配置维护系统还包括:参数更新模块,与所述参数定义表建立模块相连,根据系统配置更新属性为本地定义的参数的属性默认值。
可选地,所述基于内存数据库的XML配置维护系统还包括与所述对象定义表建立模块和参数定义表建立模块分别相连的本地访问模块,所述本地访问模块包括:本地查找单元,通过所述对象定义表中的结构成员找到对应的数据库参数值索引;所述数据库参数值索引即为所述整形值;本地操作单元,与所述本地查找单元相连,通过所述数据库参数值索引在所述参数定义表中进行读写操作。
可选地,所述基于内存数据库的XML配置维护系统还包括与所述对象定义表建立模块和参数定义表建立模块分别相连的远程访问模块,所述远程访问模块包括:远程接收单元,接收远程配置命令,获取配置参数;远程转换单元,与所述远程接收单元相连,根据对象定义表将形如字符串的配置参数转换成形如索引值的配置参数;所述索引值包括参数值、或/和节点索引;远程查找单元,与所述远程转换单元相连,利用所述配置参数的索引值查找到对应的整形值;远程操作单元,与所述远程查找单元相连,通过所述整形值对所述配置参数进行设置或读取。
如上所述,本发明的基于内存数据库的XML配置维护方法及系统,具有以下有益效果:
本发明通过内存数据库实现了XML的存储和配置,简化了数据的复杂层次描述,统一了基于XML的本地和远端的数据操作,方便了系统的配置和维护,适用性强。
附图说明
图1显示为本发明实施例所述的基于内存数据库的XML配置维护方法的一种实现流程示意图。
图2显示为本发明实施例所述的基于内存数据库的XML配置维护方法的另一种实现流程示意图。
图3显示为本发明实施例所述的基于内存数据库的XML配置维护方法的第三种实现流程示意图。
图4显示为本发明实施例所述的基于内存数据库的XML配置维护方法的第四种实现流程示意图。
图5显示为本发明实施例所述的基于内存数据库的XML配置维护系统的一种实现结构示意图。
图6显示为本发明实施例所述的基于内存数据库的XML配置维护系统的另一种实现结构示意图。
图7显示为本发明实施例所述的基于内存数据库的XML配置维护系统的第三种实现结构示意图。
图8显示为本发明实施例所述的基于内存数据库的XML配置维护系统的第四种实现结构示意图。
元件标号说明
100      基于内存数据库的XML配置维护系统
110      字典表建立模块
120      对象定义表建立模块
130      参数定义表建立模块
140      参数更新模块
150      本地访问模块
151      本地查找单元
152      本地操作单元
160      远程访问模块
161      远程接收单元
162      远程转换单元
163      远程查找单元
164      远程操作单元
S1~S4   步骤
S51~S52 步骤
S61~S62 步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
请参阅图1,本发明提供一种基于内存数据库的XML配置维护方法,所述基于内存数据库的XML配置维护方法包括:
S1,对每一个节点字符串建立一个数据字典条,所有数据字典条组成字典表;所述数据字典条包括节点字符串的名称、类型、及参数值。
对于每一个.(dot)间的字符串(即所述节点字符串),都建立一个数据字典条,构成对应于数据库的一张表(即字典表)。每个节点字符串都对应一个唯一的值,这个值的初始值为1。例如:字符串InternetGatewayDevice.ManagementServer.PeriodicInformInterval包含有3个节点字符串,分别为InternetGatewayDevice,ManagementServer,和PeriodicInformInterval。可以设置节点字符串InternetGatewayDevice的值为1,设置ManagementServer的值为2,设置PeriodicInformInterval的值为3等。这些设置是通过SQL语言来实现的,设置好的字典表存放于数据库中。本实施例列举一种存放在数据库中的字典表的内容,如表1所示,其显示了一种字典表的形式,其中,表1中的每一行表示一个数据字典条,表1的全部内容表示一个字典表。以表1中的第一行为例,该数据字典条的节点字符串的名称为InternetGatewayDevice,类型为object,参数值为1。
表1:字典表
字符串 类型 长度
InternetGatewayDevice object 1
DeviceSummary string 1024 2
LANDeviceNumberOfEntries unsignedInt
ManagementServer object 10
PeriodicInformInterval unsignedInt 11
LANDevice object 20
Hosts object 21
Host object 22
IPAddress string 23
S2,建立对象定义表,由对象定义条组成;所述对象定义条包括节点定义、节点类型、及节点索引;所述节点定义由所述参数值表示。
所述对象定义表是对上述字符串的类型结构进行的定义。参见表2所示,其第一行显示的节点定义为1.10,1.10这个数字是由表1中的参数值组合而成的,1表示参数值为1对应的字符串,即InternetGatewayDevice;10表示参数值为10对应的字符串,即ManagementServer。也就是说,节点定义为1.10表示的是InternetGatewayDevice.ManagementServer,其对应的节点索引为100。为了以示区别,表2中的节点索引值和表1中的字符串的参数值不在同一个值空间;比如节点索引值的范围为大于100的值,而参数值的取值范围小于100。
表2:对象定义表
节点定义 节点类型 节点索引
1.10 Object(单实例) 100
1.20.1 Instance(多实例) 101
1.20.2 Instance(多实例) 102
1.20.3 Instance(多实例) 103
1.20.1.21 Instance(多实例) 104
1.20.2.21 Instance(多实例) 105
1.20.3.21 Instance(多实例) 106
1.20.1.21.22.1 Instance(多实例) 107
1.20.1.21.22.2 Instance(多实例) 108
S3,建立参数定义表,由参数定义条组成;所述参数定义条包括节点、参数ID、参数类型、参数属性、及整形值;所述节点由所述节点索引表示,所述参数ID由所述参数值表示,所述参数属性包括本地定义和远程定义;每个定义的参数均对应一个唯一的整形值。其中,所述字典表和所述参数定义表的建立使用相同的数据库。
例如,参见表3所示,其第一条参数定义条的节点为100,即对应于表2中的对象定义条,进而对应于表1中的字符串InternetGatewayDevice.ManagementServer。第一条参数定义条的参数ID为11,即对应于表1中参数值为11的字符串PeriodicInformInterval。也就是说,表3中的第一条参数定义条对应的配置参数为InternetGatewayDevice.ManagementServer.PeriodicInformInterval,其参数值为1.10.11。
表3:参数定义表
节点 参数ID 参数类型 属性 整形值(参数值)
100 11 unsignedInt Localdefined
107 23 string remotecreated
108 23 string remotecreated
对于像InternetGatewayDevice.LANDevice.{i}这种情况,可以同时定义多个实例,比如为
101.1,对应InternetGatewayDevice.LANDevice.1;
101.2,对应InternetGatewayDevice.LANDevice.2;
101.3,对应InternetGatewayDevice.LANDevice.3;
每个参数定义条都对应一个唯一的整形值。具体实例的个数取决于系统的需求。本步骤S3创建的数据和步骤S1使用的是同一个数据库。
表3中第一条参数定义条为:
1.10.11,对应InternetGatewayDevice.ManagementServer.PeriodicInformInterval;
表3中第二条参数定义条为:
1.20.1.21.22.1.23,对应InternetGatewayDevice.LANDevice.1.Hosts.Host.1.IPAddress。
步骤S3在生成参数节点记录的同时,针对对象(object)类型,生成对应的数组结构描述,将数组的参数和记录属性关联,以用于步骤S4的查询。
比如针对参数InternetGatewayDevice.ManagementServer.PeriodicInformInterval的参数描述为{100,11}。
进一步,参见图2所示,所述基于内存数据库的XML配置维护方法还包括:
S4,根据系统配置更新属性为本地定义的参数的属性默认值。由于远端不会更新这些数据,只会进行读取操作,因此需要本地对这些属性进行赋值。本发明可以根据系统配置更新属性为Localdefined(本地定义)的默认值。
进一步,参见图3所示,所述基于内存数据库的XML配置维护方法还包括:
S51,通过所述对象定义表中的结构成员找到对应的数据库参数值索引;所述数据库参数值索引即为所述整形值。
S52,通过所述数据库参数值索引在所述参数定义表中进行读写操作。
本发明可以利用步骤S1至S4建立的表结构以及关系描述,实现数据的本地访问。查找前,通过结构成员找到对应的数据库参数值索引,通过这个索引值就可以在参数表中进行读写操作。
进一步,参见图4所示,所述基于内存数据库的XML配置维护方法还包括:
S61,接收远程配置命令,获取配置参数。
S62,根据对象定义表将形如字符串的配置参数转换成形如索引值的配置参数;所述索引值包括参数值、或/和节点索引。
S63,利用所述配置参数的索引值查找到对应的整形值。
S64,通过所述整形值对所述配置参数进行设置或读取。
例如,当接收到配置命令后,将形如
InternetGatewayDevice.ManagementServer.PeriodicInformInterval的参数转换成100.11,并用100.11作为索引查找对应的整形值,通过这个整形值就可以设置或读取相应的参数。
本发明通过内存数据库实现了XML的存储和配置,简化了数据的复杂层次描述,统一了基于XML的本地和远端的数据操作,方便了系统的配置和维护。
嵌入式设备中,经常使用XML进行配置数据的传递,比如TR-069中的参数配置。由于配置参数实现起来相当复杂,比如TR-098等的定义,设计和编码会花费大量的时间。本发明实现一种基于嵌入式内存数据库SQLite的操作方法,使得针对基于XML的这种数据传递操作和基于数据库的操作方法一样方便,这种方式简化了系统设计,有利于快速的开发产品。
一般基于XML的数据配置方法,都是通过name-value pair(名字-值对)方式进行配置的。例如:名字的描述方式如下:InternetGatewayDevice.LANDevice.1.Hosts.Host.1.IPAddress;名字一般由object和parameter组成。以上面为例,InternetGatewayDevice,LANDevice.1,Hosts,Host.1等都是object,IPAddress是参数parameter。以TR-069/TR-098为例,描述上述实例为InternetGatewayDevice.LANDevice.{i}.Hosts.Host.{i}.IPAddress。可以看出上面的数据是层次式的结构,看起来不太适合用关系型的数据库来描述。本发明的一个重要的实现就是用关系内存数据库描述上述数据。例如:通过XML进行配置的参数描述的一个例子如下:
简单的描述一下上述配置的意义,就是通过函数SetParameterValues来设置参数名为InternetGatewayDevice.ManagementServer.PeriodicInformInterval的值为160。
SQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。其设计目标是嵌入式的,而且在嵌入式产品中大量应用。它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。本发明适用的内存数据库基于SQLite,但是在其它的内存数据库中也是可以应用的。ACID是指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。一个支持事务(Transaction)的数据库必需要具有这四种特性,否则在事务过程(Transaction processing)当中无法保证数据的正确性,交易过程极可能达不到交易方的要求。
本发明所述的基于内存数据库的XML配置维护方法的保护范围不限于本实施例列举的步骤执行顺序,凡是根据本发明的原理所做的现有技术的步骤增减、步骤替换所实现的方案都包括在本发明的保护范围内。
本发明还提供一种基于内存数据库的XML配置维护系统,所述基于内存数据库的XML配置维护系统可以实现本发明所述的基于内存数据库的XML配置维护方法,但本发明所述的基于内存数据库的XML配置维护方法的实现装置包括但不限于本实施例列举的基于内存数据库的XML配置维护系统的结构,凡是根据本发明的原理所做的现有技术的结构变形和替换,都包括在本发明的保护范围内。
本发明还提供一种基于内存数据库的XML配置维护系统,参见图5所示,所述基于内存数据库的XML配置维护系统100包括:字典表建立模块110,对象定义表建立模块120,参数定义表建立模块130。
所述字典表建立模块110对每一个节点字符串建立一个数据字典条,所有数据字典条组成字典表;所述数据字典条包括节点字符串的名称、类型、及参数值。
对于每一个.(dot)间的字符串(即所述节点字符串),都建立一个数据字典条,构成对应于数据库的一张表(即字典表)。每个节点字符串都对应一个唯一的值,这个值的初始值为1。例如:字符串InternetGatewayDevice.ManagementServer.PeriodicInformInterval包含有3个节点字符串,分别为InternetGatewayDevice,ManagementServer,和PeriodicInformInterval。可以设置节点字符串InternetGatewayDevice的值为1,设置ManagementServer的值为2,设置PeriodicInformInterval的值为3等。这些设置是通过SQL语言来实现的,设置好的字典表存放于数据库中。本实施例列举一种存放在数据库中的字典表的内容,如表1所示,其显示了一种字典表的形式,其中,表1中的每一行表示一个数据字典条,表1的全部内容表示一个字典表。以表1中的第一行为例,该数据字典条的节点字符串的名称为InternetGatewayDevice,类型为object,参数值为1。
表1:字典表
字符串 类型 长度
InternetGatewayDevice object 1
DeviceSummary string 1024 2
LANDeviceNumberOfEntries unsignedInt
ManagementServer object 10
PeriodicInformInterval unsignedInt 11
LANDevice object 20
Hosts object 21
Host object 22
IPAddress string 23
所述对象定义表建立模块120与所述字典表建立模块110相连,建立由对象定义条组成的对象定义表;所述对象定义条包括节点定义、节点类型、及节点索引;所述节点定义由所述参数值表示。
所述对象定义表是对上述字符串的类型结构进行的定义。参见表2所示,其第一行显示的节点定义为1.10,1.10这个数字是由表1中的参数值组合而成的,1表示参数值为1对应的字符串,即InternetGatewayDevice;10表示参数值为10对应的字符串,即ManagementServer。也就是说,节点定义为1.10表示的是InternetGatewayDevice.ManagementServer,其对应的节点索引为100。为了以示区别,表2中的节点索引值和表1中的字符串的参数值不在同一个值空间;比如节点索引值的范围为大于100的值,而参数值的取值范围小于100。
表2:对象定义表
节点定义 节点类型 节点索引
1.10 Object(单实例) 100
1.20.1 Instance(多实例) 101
1.20.2 Instance(多实例) 102
1.20.3 Instance(多实例) 103
1.20.1.21 Instance(多实例) 104
1.20.2.21 Instance(多实例) 105
1.20.3.21 Instance(多实例) 106
1.20.1.21.22.1 Instance(多实例) 107
1.20.1.21.22.2 Instance(多实例) 108
所述参数定义表建立模块130与所述对象定义表建立模块120和字典表建立模块110分别相连,建立由参数定义条组成的参数定义表;所述参数定义条包括节点、参数ID、参数类型、参数属性、及整形值;所述节点由所述节点索引表示,所述参数ID由所述参数值表示,所述参数属性包括本地定义和远程定义;每个定义的参数均对应一个唯一的整形值。其中,所述字典表建立模块和所述参数定义表建立模块与相同的数据库相连。
例如,参见表3所示,其第一条参数定义条的节点为100,即对应于表2中的对象定义条,进而对应于表1中的字符串InternetGatewayDevice.ManagementServer。第一条参数定义条的参数ID为11,即对应于表1中参数值为11的字符串PeriodicInformInterval。也就是说,表3中的第一条参数定义条对应的配置参数为InternetGatewayDevice.ManagementServer.PeriodicInformInterval,其参数值为1.10.11。
表3:参数定义表
节点 参数ID 参数类型 属性 整形值(参数值)
100 11 unsignedInt Localdefined
107 23 string remotecreated
108 23 string remotecreated
对于像InternetGatewayDevice.LANDevice.{i}这种情况,可以同时定义多个实例,比如为
101.1,对应InternetGatewayDevice.LANDevice.1;
101.2,对应InternetGatewayDevice.LANDevice.2;
101.3,对应InternetGatewayDevice.LANDevice.3;
每个参数定义条都对应一个唯一的整形值。具体实例的个数取决于系统的需求。本步骤S3创建的数据和步骤S1使用的是同一个数据库。
表3中第一条参数定义条为:
1.10.11,对应InternetGatewayDevice.ManagementServer.PeriodicInformInterval;
表3中第二条参数定义条为:
1.20.1.21.22.1.23,对应InternetGatewayDevice.LANDevice.1.Hosts.Host.1.IPAddress。
步骤S3在生成参数节点记录的同时,针对对象(object)类型,生成对应的数组结构描述,将数组的参数和记录属性关联,以用于步骤S4的查询。
比如针对参数InternetGatewayDevice.ManagementServer.PeriodicInformInterval的参数描述为{100,11}。
进一步,参见图6所示,所述基于内存数据库的XML配置维护系统还包括:参数更新模块140。所述参数更新模块140与所述参数定义表建立模块130相连,根据系统配置更新属性为本地定义的参数的属性默认值。由于远端不会更新这些数据,只会进行读取操作,因此需要本地对这些属性进行赋值。本发明可以根据系统配置更新属性为Localdefined(本地定义)的默认值。
进一步,参见图7所示,所述基于内存数据库的XML配置维护系统100还包括与所述对象定义表建立模块120和参数定义表建立模块130分别相连的本地访问模块150,所述本地访问模块150包括:本地查找单元151,本地操作单元152。所述本地查找单元151通过所述对象定义表中的结构成员找到对应的数据库参数值索引;所述数据库参数值索引即为所述整形值。所述本地操作单元152与所述本地查找单元151相连,通过所述数据库参数值索引在所述参数定义表中进行读写操作。本发明可以利用建立的表结构以及关系描述,实现数据的本地访问。查找前,通过结构成员找到对应的数据库参数值索引,通过这个索引值就可以在参数表中进行读写操作。
进一步,参见图8所示,所述基于内存数据库的XML配置维护系统100还包括与所述对象定义表建立模块120和参数定义表建立模块130分别相连的远程访问模块160,所述远程访问模块160包括:远程接收单元161,远程转换单元162,远程查找单元163,远程操作单元164。所述远程接收单元161接收远程配置命令,获取配置参数。所述远程转换单元162与所述远程接收单元161相连,根据对象定义表将形如字符串的配置参数转换成形如索引值的配置参数;所述索引值包括参数值、或/和节点索引。所述远程查找单元163与所述远程转换单元162相连,利用所述配置参数的索引值查找到对应的整形值。所述远程操作单元164与所述远程查找单元163相连,通过所述整形值对所述配置参数进行设置或读取。例如,当接收到配置命令后,将形如InternetGatewayDevice.ManagementServer.PeriodicInformInterval的参数转换成100.11,并用100.11作为索引查找对应的整形值,通过这个整形值就可以设置或读取相应的参数。
本发明实现了一种基于嵌入式内存数据库SQLite的操作方法,使得针对基于XML的数据传递操作和基于数据库的操作方法一样方便,这种实现简化了系统设计,有利于快速的开发产品。
本发明借鉴小型嵌入式数据库系统支持SQL的基本功能,避免了直接定义过多的数据结构,方便系统统一处理。由于本发明只依赖于开源内存数据库而实现,更方便跨系统间的移植。由于本发明是基于通用的内存数据库的,能大大减少新系统的设计时间,有利于快速推出新的功能和产品。
综上所述,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (10)

1.一种基于内存数据库的XML配置维护方法,其特征在于,所述基于内存数据库的XML配置维护方法包括:
对每一个节点字符串建立一个数据字典条,所有数据字典条组成字典表;所述数据字典条包括节点字符串的名称、类型、及参数值;
建立对象定义表,由对象定义条组成;所述对象定义条包括节点定义、节点类型、及节点索引;所述节点定义由所述参数值表示;
建立参数定义表,由参数定义条组成;所述参数定义条包括节点、参数ID、参数类型、参数属性、及整形值;所述节点由所述节点索引表示,所述参数ID由所述参数值表示,所述参数属性包括本地定义和远程定义;每个定义的参数均对应一个唯一的整形值。
2.根据权利要求1所述的基于内存数据库的XML配置维护方法,其特征在于:所述字典表和所述参数定义表的建立使用相同的数据库。
3.根据权利要求1所述的基于内存数据库的XML配置维护方法,其特征在于,所述基于内存数据库的XML配置维护方法还包括:
根据系统配置更新属性为本地定义的参数的属性默认值。
4.根据权利要求1所述的基于内存数据库的XML配置维护方法,其特征在于,所述基于内存数据库的XML配置维护方法还包括:
通过所述对象定义表中的结构成员找到对应的数据库参数值索引;所述数据库参数值索引即为所述整形值;
通过所述数据库参数值索引在所述参数定义表中进行读写操作。
5.根据权利要求1所述的基于内存数据库的XML配置维护方法,其特征在于,所述基于内存数据库的XML配置维护方法还包括:
接收远程配置命令,获取配置参数;
根据对象定义表将形如字符串的配置参数转换成形如索引值的配置参数;所述索引值包括参数值、或/和节点索引;
利用所述配置参数的索引值查找到对应的整形值;
通过所述整形值对所述配置参数进行设置或读取。
6.一种基于内存数据库的XML配置维护系统,其特征在于,所述基于内存数据库的XML配置维护系统包括:
字典表建立模块,对每一个节点字符串建立一个数据字典条,所有数据字典条组成字典表;所述数据字典条包括节点字符串的名称、类型、及参数值;
对象定义表建立模块,与所述字典表建立模块相连,建立由对象定义条组成的对象定义表;所述对象定义条包括节点定义、节点类型、及节点索引;所述节点定义由所述参数值表示;
参数定义表建立模块,与所述对象定义表建立模块和字典表建立模块分别相连,建立由参数定义条组成的参数定义表;所述参数定义条包括节点、参数ID、参数类型、参数属性、及整形值;所述节点由所述节点索引表示,所述参数ID由所述参数值表示,所述参数属性包括本地定义和远程定义;每个定义的参数均对应一个唯一的整形值。
7.根据权利要求6所述的基于内存数据库的XML配置维护系统,其特征在于:所述字典表建立模块和所述参数定义表建立模块与相同的数据库相连。
8.根据权利要求6所述的基于内存数据库的XML配置维护系统,其特征在于,所述基于内存数据库的XML配置维护系统还包括:
参数更新模块,与所述参数定义表建立模块相连,根据系统配置更新属性为本地定义的参数的属性默认值。
9.根据权利要求6所述的基于内存数据库的XML配置维护系统,其特征在于,所述基于内存数据库的XML配置维护系统还包括与所述对象定义表建立模块和参数定义表建立模块分别相连的本地访问模块,所述本地访问模块包括:
本地查找单元,通过所述对象定义表中的结构成员找到对应的数据库参数值索引;所述数据库参数值索引即为所述整形值;
本地操作单元,与所述本地查找单元相连,通过所述数据库参数值索引在所述参数定义表中进行读写操作。
10.根据权利要求6所述的基于内存数据库的XML配置维护系统,其特征在于,所述基于内存数据库的XML配置维护系统还包括与所述对象定义表建立模块和参数定义表建立模块分别相连的远程访问模块,所述远程访问模块包括:
远程接收单元,接收远程配置命令,获取配置参数;
远程转换单元,与所述远程接收单元相连,根据对象定义表将形如字符串的配置参数转换成形如索引值的配置参数;所述索引值包括参数值、或/和节点索引;
远程查找单元,与所述远程转换单元相连,利用所述配置参数的索引值查找到对应的整形值;
远程操作单元,与所述远程查找单元相连,通过所述整形值对所述配置参数进行设置或读取。
CN201510405610.4A 2015-07-10 2015-07-10 一种基于内存数据库的xml配置维护方法及系统 Active CN104951565B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510405610.4A CN104951565B (zh) 2015-07-10 2015-07-10 一种基于内存数据库的xml配置维护方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510405610.4A CN104951565B (zh) 2015-07-10 2015-07-10 一种基于内存数据库的xml配置维护方法及系统

Publications (2)

Publication Number Publication Date
CN104951565A true CN104951565A (zh) 2015-09-30
CN104951565B CN104951565B (zh) 2018-07-24

Family

ID=54166223

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510405610.4A Active CN104951565B (zh) 2015-07-10 2015-07-10 一种基于内存数据库的xml配置维护方法及系统

Country Status (1)

Country Link
CN (1) CN104951565B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105824944A (zh) * 2016-03-21 2016-08-03 上海斐讯数据通信技术有限公司 一种基于脚本语言的xml配置数据维护方法及系统
CN107545008A (zh) * 2016-06-27 2018-01-05 五八同城信息技术有限公司 数据的格式要求存储方法及装置
CN108153877A (zh) * 2017-12-26 2018-06-12 平安科技(深圳)有限公司 数据字典展示方法、装置、终端设备及存储介质
CN110032663A (zh) * 2019-03-28 2019-07-19 广州越秀金融科技有限公司 信息配置方法、装置,存储介质和处理器
CN116244477A (zh) * 2023-05-11 2023-06-09 深圳依时货拉拉科技有限公司 区间分级检索方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070299811A1 (en) * 2006-06-21 2007-12-27 Sivansankaran Chandrasekar Parallel population of an XML index
CN101552701A (zh) * 2008-04-03 2009-10-07 华为技术有限公司 一种记录参数维护变更的方法、系统及装置
CN101706801A (zh) * 2009-11-17 2010-05-12 广州从兴电子开发有限公司 一种内存数据库数据的管理方法及系统
US20110173153A1 (en) * 2010-01-08 2011-07-14 Vertafore, Inc. Method and apparatus to import unstructured content into a content management system
CN102843245A (zh) * 2011-06-20 2012-12-26 中兴通讯股份有限公司 配置数据交互方法及装置
CN103064859A (zh) * 2011-10-21 2013-04-24 上海湾流仪器技术有限公司 基于可变内存预申请及hash的快速xml解析方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070299811A1 (en) * 2006-06-21 2007-12-27 Sivansankaran Chandrasekar Parallel population of an XML index
CN101552701A (zh) * 2008-04-03 2009-10-07 华为技术有限公司 一种记录参数维护变更的方法、系统及装置
CN101706801A (zh) * 2009-11-17 2010-05-12 广州从兴电子开发有限公司 一种内存数据库数据的管理方法及系统
US20110173153A1 (en) * 2010-01-08 2011-07-14 Vertafore, Inc. Method and apparatus to import unstructured content into a content management system
CN102843245A (zh) * 2011-06-20 2012-12-26 中兴通讯股份有限公司 配置数据交互方法及装置
CN103064859A (zh) * 2011-10-21 2013-04-24 上海湾流仪器技术有限公司 基于可变内存预申请及hash的快速xml解析方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105824944A (zh) * 2016-03-21 2016-08-03 上海斐讯数据通信技术有限公司 一种基于脚本语言的xml配置数据维护方法及系统
CN105824944B (zh) * 2016-03-21 2019-10-22 上海斐讯数据通信技术有限公司 一种基于脚本语言的xml配置数据维护方法及系统
CN107545008A (zh) * 2016-06-27 2018-01-05 五八同城信息技术有限公司 数据的格式要求存储方法及装置
CN107545008B (zh) * 2016-06-27 2021-02-19 五八同城信息技术有限公司 数据的格式要求存储方法及装置
CN108153877A (zh) * 2017-12-26 2018-06-12 平安科技(深圳)有限公司 数据字典展示方法、装置、终端设备及存储介质
CN108153877B (zh) * 2017-12-26 2021-03-12 平安科技(深圳)有限公司 数据字典展示方法、装置、终端设备及存储介质
CN110032663A (zh) * 2019-03-28 2019-07-19 广州越秀金融科技有限公司 信息配置方法、装置,存储介质和处理器
CN110032663B (zh) * 2019-03-28 2021-01-01 广州越秀金融科技有限公司 信息配置方法、装置,存储介质和处理器
CN116244477A (zh) * 2023-05-11 2023-06-09 深圳依时货拉拉科技有限公司 区间分级检索方法、装置、计算机设备及存储介质
CN116244477B (zh) * 2023-05-11 2023-07-04 深圳依时货拉拉科技有限公司 区间分级检索方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN104951565B (zh) 2018-07-24

Similar Documents

Publication Publication Date Title
CN106528129B (zh) 一种Web应用界面生成系统及方法
CN111542813B (zh) 使用异构数据的对象模型来便于建立数据可视化
CN102541529B (zh) 一种查询页面生成装置和方法
US9081837B2 (en) Scoped database connections
CN104951565A (zh) 一种基于内存数据库的xml配置维护方法及系统
US20060265385A1 (en) Common interface to access catalog information from heterogeneous databases
US8341191B2 (en) Methods and structures for utilizing reusable custom-defined nestable compound data types to permit product variations within an existing taxonomy
US8510341B2 (en) System, method and structures for a reusable custom-defined nestable compound data type for construction of database objects
US9495475B2 (en) Method of representing an XML schema definition and data within a relational database management system using a reusable custom-defined nestable compound data type
CN101673287A (zh) 一种sql语句生成方法及系统
CN104123374A (zh) 分布式数据库中聚合查询的方法及装置
CN108073688B (zh) 一种数据迁移的方法及装置
CN107977396B (zh) 一种KeyValue数据库的数据表的更新方法与表数据更新装置
US10997131B1 (en) Using a member attribute to perform a database operation on a computing device
US20100235344A1 (en) Mechanism for utilizing partitioning pruning techniques for xml indexes
CN104063361A (zh) 报表设计方法和报表设计系统
WO2007136959A2 (en) Apparatus and method for recursively rationalizing data source queries
CN102193990A (zh) 一种图形数据库及其实现方法
WO2019015364A1 (zh) 执行结构化查询语言sql指令的方法和装置
CN104714974A (zh) 一种查询语句解析与再处理的方法和装置
KR20020050160A (ko) 오브젝트 통합 관리 시스템
CN114090760B (zh) 表格问答的数据处理方法、电子设备及可读存储介质
US20200201834A1 (en) Systems and methods of efficient extensions of relational tables in a database
CN103064991A (zh) 一种海量数据聚类方法
CN104794244A (zh) 一种基于MongoDB实现图转换的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201130

Address after: Room 10242, No. 260, Jiangshu Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Hangzhou Jiji Intellectual Property Operation Co., Ltd

Address before: 201616 Shanghai city Songjiang District Sixian Road No. 3666

Patentee before: Phicomm (Shanghai) Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20201223

Address after: 233000 3rd floor, Dong'an Market, Fengyang West Road, Longzihu District, Bengbu City, Anhui Province

Patentee after: Bengbu 309 Technology Consulting Co.,Ltd.

Address before: Room 10242, No. 260, Jiangshu Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee before: Hangzhou Jiji Intellectual Property Operation Co., Ltd

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210208

Address after: 313001 room 1019, Xintiandi office building, Yishan street, Wuxing District, Huzhou, Zhejiang, China

Patentee after: Huzhou YingLie Intellectual Property Operation Co.,Ltd.

Address before: 233000 3rd floor, Dong'an Market, Fengyang West Road, Longzihu District, Bengbu City, Anhui Province

Patentee before: Bengbu 309 Technology Consulting Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220525

Address after: 100193 Room 101, 1 / F, building 19, East District, yard 10, northwest Wangdong Road, Haidian District, Beijing

Patentee after: ASIAINFO TECHNOLOGIES (CHINA), Inc.

Address before: 313001 room 1019, Xintiandi office building, Yishan street, Wuxing District, Huzhou, Zhejiang, China

Patentee before: Huzhou YingLie Intellectual Property Operation Co.,Ltd.

TR01 Transfer of patent right