一种数据库访问方法

文档序号:9417506阅读:441来源:国知局
一种数据库访问方法
【技术领域】
[0001]本发明涉及数据检索,特别涉及一种数据库访问方法。
【背景技术】
[0002]物联网的出现为智能家居、智能医疗、智能城市、智能交通等众多应用领域的迅猛发展奠定了基础。在物联网的传感器网络中,拥有射频识别设备、传感器、智能嵌入设备等数目众多的异质设备,运行着用于标识、感知、处理和传送信息的各类服务,因此网络中各传感节点所采用的通信标准和实现技术存在巨大的差异。这将导致分布在不同地点的各节点不断产生大量、非连续且时间敏感的数据。这类具有多维度属性数据对保证产业的正常运转非常重要,但现有的数据管理方法不能有效解决其存储与快速检索问题。

【发明内容】

[0003]为解决上述现有技术所存在的问题,本发明提出了一种数据库访问方法,包括:
[0004]步骤一、通过支持语义的属性数据描述传感器网络获取的数据;
[0005]步骤二、利用DOM树结构,将所述传感器网络获取的数据存储在MySqL数据库中;
[0006]步骤三、基于所述属性数据在MySqL数据库中进行检索。
[0007]优选地,所述属性数据包括对数据进行宏观描述的基本属性和关联于数据描述领域的扩展属性;当新数据被获取后,从属性数据库中调取属性数据标准来描述该数据,如能完整描述,则直接对其进行描述;如不能够完整描述,则在原有属性数据标准的基础上进行属性数据扩展,生成目标属性数据,然后使用新生成的目标属性数据标准对该类数据进行描述,同时将新生成的属性数据标准添加到属性数据库中,完成属性数据的学习过程;所述基本属性包括:名称、主题、描述、来源、创建者、标识符、日期、类型、格式;所述扩展属性是根据应用领域的特征扩展而成,包括地理数据、媒体数据、状态数据、时间数据。
[0008]优选地,所述步骤二利用DOM树结构,将所述传感器网络获取的数据存储在MySqL数据库中,进一步包括:
[0009]利用MySqL数据库来存储经属性数据所描述的DOM数据,将MySqL数据库按照数据维度来组织,每一个数据维度映射成一个关系表,DOM文档中的元素、属性与表中的字段相对应,为每个表增加一个标识字段作为外键,以便与其它表建立关联;
[0010]对于传感器网络中存在的结构化数据、非结构化数据和半结构化数据采用不同的永久存储策略;对于结构化数据,直接存储到MySqL数据库的表和字段中;对于非结构化数据,将其存储在磁盘的文件系统中;对于半结构化数据,选用MySqL数据库和文件系统相结合的方式,即用MySqL数据库存储数据的结构化部分,用文件系统来存储数据的非结构化部分,并将非结构化数据的索引信息存储在相应的MySqL数据库中;
[0011]通过以下过程对MySqL数据库存储内容进行优化:
[0012](I)根据属性数据描述文件,通过递归深度遍历DOM数据来创建属性树和属性数据所描述的数据树;
[0013](2)对属性树进行编码:对文档树中每个节点进行编码,并按照层次顺序进行遍历,每个树节点存储数据信息和编码;编码规则是将根节点编码为1,子节点的编码=父节点的编码+ “.”+ “i”;
[0014](3)查找空节点,将其消除,合并相似节点。
[0015]优选地,所述步骤三基于所述属性数据在MySqL数据库中进行检索,进一步包括:
[0016]利用具有语义的描述的属性,当处理检索时,一方面对属性数据进行检索,得到具体的数据集,缩小数据检索的范围;另一方面根据属性数据检索结果,转到MySqL数据库中进行进一步检索,以得到相应的数据,最后将检索结果进行处理和封装,返回给检索请求者;
[0017]在数据检索过程中:
[0018](I)首先对检索条件进行预处理,针对带有语义的检索,提取检索元素;
[0019](2)根据检索元素生成DOM查询树和属性树;
[0020](3)将查询树与属性树进行匹配,得到一个中间树;在匹配时,进行两种运算,即添加和消除;对于消除运算,所有数据对象都采用同一个属性数据标准,各数据对象的属性树节点都是同一属性树的一部分,但是属性数据值不同,通过消除运算,消除未匹配到的属性树节点;对于不能完全匹配,但具有语义相关性的维度,可近似匹配的属性数据,对其进行添加运算;
[0021](4)根据MySqL数据库生成关系树,再对步骤(3)中生成的中间树进行编码,然后进行消除匹配得到最终的SQL查询树;
[0022](5)利用经过添加和消除匹配后得到的SQL查询树,构成检索数据集对应的元素和元素属性,产生SQL检索语句,生成对MySqL数据库的检索,执行MySqL数据库检索,并返回一个结果集;
[0023](6)将结果数据进行整理聚合,对检索得到的数据进行分类、排序操作,并将结果返回给请求者。
[0024]本发明相比现有技术,具有以下优点:
[0025]本发明提出了一种数据库访问方法,实现了传感器网络数据的压缩存储与快速检索,有效改善了数据存储量大且检索速度慢的问题。
【附图说明】
[0026]图1是根据本发明实施例的数据库访问方法的流程图。
【具体实施方式】
[0027]下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本发明。
[0028]本发明的一方面提供了一种数据库访问方法。图1是根据本发明实施例的数据库访问方法流程图。本发明通过改进的DOM树匹配方法提高了数据检索效率与检索精度,实现了对多维度数据压缩存储与快速检索的优化设计。传统数据结构很难描述具有多维度特征的传感器网络数据。在属性数据结构中使用支持语义的属性数据,成为一种数据描述的可行方案。传感器网络的外延十分广泛,各种应用领域的数据具有不同特征,用一种属性数据标准不能对其进行通用描述。因此,本发明根据不同领域的具体应用进行扩展。扩展属性分为一级扩展和多级扩展。基本属性对数据进行基本的宏观描述,而扩展属性是在基本属性描述的基础上,再对数据进行详细描述,这样就为异质数据的同质描述提供了可能,为传感器网络数据的互操作和资源的共享奠定了基础。
[0029](I)基本属性:用于描述数据的基本特征。本发明保留数据的9个元素:名称、主题、描述、来源、创建者、标识符、日期、类型、格式。
[0030](2)扩展属性:根据各应用领域的特征扩展而成,是对数据的详细描述,如地理数据、媒体数据、状态数据、时间数据等。
[0031]随着传感器网络规模、数据种类和数据量的不断膨胀,属性数据需要不断地学习和扩展以适应该情况,当新数据被系统获取后,系统将从属性数据库中调取属性数据标准来描述该数据,如能完整描述,则直接对其进行描述;如不能够完整描述,则在原有属性数据标准的基础上进行属性数据扩展,生成目标属性数据,然后使用新生成的目标属性数据标准对该类数据进行描述,同时将新生成的属性数据标准添加到属性数据库中,完成属性数据的学习过程。
[0032]利用MySqL数据库来存储经传感器网络属性数据所描述的DOM数据。将MySqL数据库按照数据维度来组织,每一个数据维度映射成一个关系表,DOM文档中的元素、属性与表中的字段相对应。为每个表增加一个标识字段作为外键,以便与其它表建立关联。
[0033]传感器网络中存在的结构化数据、非结构化数据和半结构化数据永久存储策略各不相同。
[0034]对于结构化数据,其具有规范的结构,数据的组织比较有规则,可直接存储到MySqL数据库的表和字段中。
[0035]对于非结构化数据,一般没有固定的结构,如视频、声音、图像等。这些数据不易在MySqL数据库中存储,因此可将其存储在磁盘的文件系统中。
[0036]对于半结构化数据,介于结构化数据与非结构化数据之间的数据。选用MySqL数据库和文件系统相结合的方式对此类数据进行存储。其中用MySqL数据库存储数据的结构化部分,用文件系统来存储数据的非结构化部分,并将非结构化数据的索引信息存储在相应的MySqL数据库中。
[0037]若将所有属性数据元素一一映射到MySqL数据库中,必将产生一些无效字段和利用率低的字段。随着存储数据量的增长,这些无用的字段成为沉重的冗余数据,浪费存储空间。所以需要对MySqL数据库模型进行优化,即消除无用字段,合并低效字段。
[0038
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1