信息存储与检索

2024-06-22

信息存储与检索(共7篇)

信息存储与检索 篇1

摘要:本文从信息管理与信息系统的专业目标开始分析,确立《信息存储与检索》课程在该专业中的地位,然后阐述《信息存储与检索》课程的跨多学科的特点,分析当前大学的主要教材,选择最适合信息管理与信息系统专业的教材,针对所选教材阐述了该课程的教学内容及教学方式、方法。

关键词:信息存储,信息检索,信息检索模型,检索评价

1 信息管理与信息系统专业的培养目标

信息管理与信息系统专业是多学科交叉的边缘性学科,涉及管理科学、计算机科学、经济学、行为科学、运筹学、社会学等多学科的内容。在教育部1998年的专业目录中,对信息管理与信息系统专业的培养目标是这样确定的:“培养具备现代管理学理论基础、计算机科学技术知识及应用能力,掌握系统思想和信息系统分析与设计方法以及信息管理等方面的知识与能力,能在国家各级管理部门、工商企业、金融机构、科研单位等部门从事信息管理以及信息系统分析、设计、实施管理和评价等方面工作的高级专门人才。”根据教育部的培养目标《信息存储与检索》课程设置为专业核心课。

2《信息存储与检索》课程跨多学科的特点

信息检索是一个典型的交叉研究领域,它起源于它的母体学科——图书馆学、情报学,并在这个学科背景之下,母体学科为信息检索的产生和发展提供了比较完善的理论基础和实践应用,而逐渐成熟起来,随着信息检索活动的不断深入和普及,它开始广泛借鉴和吸收其他自然科学、社会科学、人文科学等多个领域的研究成果和方法。与信息检索关系比较密切的相关学科主要有计算机科学与技术、数学、系统科学、语言学、认知科学等学科。

3 教材选取

关于信息检索的教材数量众多,笔者分析比较后觉得,国内比较著名的信息存储与检索的教材主要有:

3.1《信息存储与检索》主编张帆,出版社:

高等教育出版社,该教材系统地阐述了现代信息存储与检索的基本原理与技术、信息存储与检索学科基础、信息存取系统的结构检索

机制、索引语言的概念与类型、国内外著名信息存取系统的性能与检索策略,重点介绍了文本信息存取、多媒体信息存取、联机信息存取、因特网信息存取系统及其检索方法,如万方数据资源系统、维普资讯系统、EBSCHost全文存取系统、Springerl-Link全文存取系统、Elsevier Science全文存取系统、中国经济网(教育版)、高等教育文献保障系统(CAIJS)、网络(字)词典及百科全书等。

该教材侧重于“方法”类,供在校大学生学校、掌握和运用检索方法,强调利用信息的基本技巧和技能,带有普及性质。

3.2《信息存储与检索》主编王知津,出版社:

机械工业出版社,该教材先阐述信息检索的基本理论,然后详细分析各种信息检索模型、文本信息存储与检索、多媒体信息存储与检索、Web信息存储与检索、并行与分布式信息检索、人工智能与自然语言检索、用户界面与可视化、信息检索评价与实验等。

该教材侧重于“技术”类,供高等学校信息管理类专业学生使用,旨在使学生深入了解信息检索的原理、技术、系统以及相关的网络知识等,带有专业性质。

这两个教材相比较,对于信息管理与信息系统专业的学生,笔者更建议选用王知津老师主编的《信息存储与检索》教材。

4 教学内容、教学手段及方法

王知津老师主编的《信息存储与检索》总体分4个部分共9章:

第一部分是信息检索理论,包括第1、2章,主要介绍信息检索和信息检索系统的基本概念、原理、类型、结构及各种数学模型。

本部分内容在授课时,第一章是基本知识,易于同学们掌握和理解,主要分析信息存储与检索的概念、原理、分类,用举例法和讲解法很容易能使同学们掌握。但是第二章中信息检索的模型,经典模型(布尔模型,向量模型和概论模型)就基于集合理论、布尔代数、向量空间、概率论等学科,在经典模型基础上发展的集合理论模型、代数模型、结构化模型都要求学生有很好的数学基础,但是我们的学生数学基础并不好,这就需要在讲解模型理论之前先讲解相关的数学知识,同学们只有在理解了相关的数学知识基础之上才能把数学的理论应用与检索模型的设计上。所以这一部分中第二章内容是上课的难点及重点。教学时要做到怎么使同学们尽快的回忆起相关的数学知识,又能使同学们把枯燥的数学理论应用于信息的存储与检索,怎么设计检索模型,怎么样设计检索式与文档的相似度算法。第二章的讲解要深入浅出,与现实联系。

第二部分是基本的信息存储与检索,包括第3—5章,重点介绍文本信息、多媒体信息和WEB信息的存储与检索。

本部分中第三章文本信息存储与检索是比较成熟的存储与检索技术,主要讲解顺排文档、倒排文档的检索方式,文本的检索技术、聚类检索和全文检索。其中顺排文档和倒排文档主要用的计算机的思维来思考问题,把海量的文档用计算机做好存储,又能快速的检索,这里讲解的时候要注重转化思维,从计算机的角度来分析信息存储与检索的每一个步骤,让同学们能够模拟计算机的执行步骤。文本的聚类检索是一种基于聚类技术的智能检索,要求同学们理解其思想、技术及实现的方法。讲解时要注意逻辑性,对比不同实现方法的步骤及优缺点。文本的检索技术和全文检索相对简单,一般的讲解法就能达到教学要求。

多媒体信息的存储与检索现在处了发展阶段,很多思想还都处在理论阶段,应用于实际的只有很小一部分的理论,所以本章讲解的大部分都是各位前辈提出的理论基础,在授课过程中,重点讲的是思想,启发学生的思考能力,引导学生主动积极的发现当前多媒体检索时遇到的实际问题,提出自己的想法,即使是很幼稚不正确的方法也鼓励学生去思考。

Web信息存储与检索也是当前比较成熟的技术,使我们每天都能用到的技术。讲解的时候联系所开的网站设计课程讲解超文本、动态超文本、标记语言、超文本传输协议、搜索引擎等等知识点的理论及实现。本章内容虽然重要,但是由于所讲内容跟平时的应用有很大关系,在理解上基本没什么困难。

第三部分是信息存储与检索的提高,包括第6—8章,着重介绍并行与分布式信息检索、只能检索、用户界面设计及信息检索可视化。

本部分中并行与分布式信息检索需要用到计算机并行处理技术和异构数据库技术,牵涉到较深的计算机技术。在授课过程中,就要先讲解计算机并行处理技术的原理,处理的过程,异构数据库的实现技术,然后才能把这些技术跟信息的存储与检索联系起来,重点是理解这些技术怎样应用与信息存储与检索,异构数据怎样集成带来了检索效率的大幅度提高。

人工智能与自然语言检索系统是信息检索理论和方法发展的前沿领域,很多技术还有待于进一步的研究,我们本章主要概括性的归纳了应用于信息检索的几类人工智能技术,介绍了智能检索的接口、技术与典型系统,阐述了语法、语义和本体层面的自然语言检索,说明了跨语言检索的实现模式,语言资源,关键技术和提问式翻译方法。在授课过程中还是注重与启发学生的创造性思维。结合当前人工智能和自然语言检索的实际问题,分析出现的不足,启发学生思考用什么样的方法来解决。

用户界面与可视化的讲解要结合同学们学的网站设计,怎么设计出一个美观大方合理简洁的界面供用户使用,授课过程中注重启发学生发散性思维,不要拘泥于已有的界面设计思路。用死的设计原则设计出活的、动的界面。

第四部分是第9章信息检索的评价,侧重介绍信息检索的相关性理论以及评价指标、方法和实验。本章对信息检索评价相关的基本知识进行了阐述,重点是信息检索的相关性理论、信息检索评价的指标体系、信息检索评价方法及有代表性的信息检索评价实验。检索评价研究是计算机信息检索领域的热门话题之一,评价的目的是为了改善系统的性能,完善系统的功能,全面提高检索系统的效益。所有的理论都应围绕这个目的执行,那么学习的重点也是围绕这个目的执行。本章涉及到的查全率、查准率、响应时间、输出方式等等指标的度量与计算用到很多的数学公式,讲解过程中要先分析数学公式的意思,然后再应用于检索评价。

5结束语

笔者从事《信息存储与检索》课程教学两年,选用过不同的教材及参考书,根据两年来教学过程中学生的反映及自己的教学心得总结得出了本文。

参考文献

[1].张帆.信息存储与检索[M].高等教学出版社.2007

[2]王知津.信息存储与检索[M].机械工业出版社.2012

[3]赵泉.试论对信息管理与信息系统专业定位的思考[J].中国管理信息化.2012.01

信息存储与检索 篇2

一、海量结构化大数据存储检索系统的工作原理

大数据的处理对数据的加载效率、存储效率和检索效率提出了更高的要求,因此为了满足大数据的需求,需要利用多机协同机进行分布式存储,进而提高系统随数据的处理效率。对于海量结构化大数据存储检索系统而言,其中包括加载机集群、查询机集群、元数据节点集群以及存储点的集群。

二、海量结构化大数据存储检索系统的数据模型和存储结构

(一)MDSS中的数据模型

MDSS作为一种新型的数据管理模型,为用户提供的是二维表空间,一行就是一条包含多个字段或者是属性的记录,在表结构的支持下,表空间对字段的类型进行正确的描述。一般应用于表结构的数据类型有以下几种:属于整数类型并进行数学比较运算的NTEGER(或INT),存储IP类型字段并对子网和区间进行查询的IPFIELD,利用两种数据格式对IPV4和IPV6地址进行保存的INDEX,存储模糊类型数据并支持精确匹配和模糊匹配的TIMESTAMP和直接对数据存储但不对内容查询的STORE。

(二)数据存储组织结构

对于数据的存储,主要有:STORE类型和字符类型两种,前者是对文件信息进行直接的存储,用户对数据的内容进行相应的解析,或者是将数据源根据字符的方式进行分块存储,因此可以在存储的过程中实现迁移,提高了存储的灵活性,同时在对数据进行存储时根据特定的需要对数据进行相应的转换,这项转换工作需奥借助加载机来实现。

三、海量结构化大数据存储检索系统的数据检索方法

MDSS对复杂任务的查询主要是通过将复杂的任务进行细分,即以查询的条件为依据将查询任务分为几个查询的子任务,进而每个子任务在不同环境和不同层次下同时实现,这样就大大的提高了查询的效率,一方面通过对查询条件的分解和对查询任务的设置,可以很大程度的提高查询的正确性,另一方面最大限度的考虑到影响数据检索的多种因素,使系统的计算能力得到了充分的发挥。

(一)查询条件的分解

为了对二维表空间的操作起到积极的促进作用,推进结构化数据的统计与检索,需要设计新的分析语言,既要符合一般的语法规则和标准,同时还要取消关联查询、嵌套查询和视图等一些复杂的检索功能。

多个查询的语句共同构成了一个查询任务,因此为了提高查询工作的效率和准确性,需要将查询条件进行分解,在MDSS的作用下,查询条件一般分为三个基本的类型,并且每一个基本条件都等同于一项查询子任务。

分区查询条件属于目标索引文件,这样一查询目标为指导,可以大大的缩小海量数据的查询范围,降低了查询的难度,因此在系统的应用中,需要先执行分区查询条件,对每一个表空间设置一个分区查询条件,实现对数据库的有效索引;过滤查询条件是在逻辑运算符号的衔接下,形成多个逻辑组合并进行查询,因为多个字段共同构成了结构化数据的记录,并且其属性支持模糊查询,利用过滤查询条件机械能比较查询等模糊查询,提高了查询的针对性;统计分析查询条件是指对经过前两个环节的查询后,对返回的结果集的查询,是对全集数据集的统计和分析,一般来说,统计分析查询主要包括数据分组操作、排序操作和统计函数。使用统计分析查询条件时,要将全部符合条件的数据进行统计,然后再对其进行分析,进而得出正确的结论,同时具体的查询任务要按照下图的流程进行:

(二)查询子任务的执行

在对海量化大数据进行查询时,为了简化查询的工作,需要把一个复杂的查询任务进行细化,分为几个查询子任务,对于查询子任务的分解,可以根据上述的分类进行查询。在分布式环境下,不同的层次会执行不同的子任务,分区类查询条件结合元数据信息在具体的存储节点上进行索引文件级别的查询;过滤类查询条件针对目标索引文件内的具体记录进行过滤,这两类条件在多数据存储节点中并发执行。统计分析类查询条件在查询机上,针对过滤类查询条件返回的结果集进行汇总后再进行统一计算处理,保证查询语义的正确性。

在MDSS中,一般是将时间属性作为分区类检索的条件,在检索条件的时间属性导致支持下,可以快速地检索到符合要求的目标索引分片,进而提高检索的速度,这样就大大的简化了数据的管理策略,同时能够应用于各个具体的工作环境,并且起到了积极的促进作用。统计分析类查询是对有具体分组和排序的数值分析,是建立在对全部的结果集进行统计的基础之上的,只有对全部的数据集进行统计和分析,才能够得出正确的查询结果。一般而言,对分组和排序的操作主要是在查询机上进行,在此环节中,Bloom Filter算法起到了加速分组的操作,并且消除了重复的计算过程,这样就极大的提高了数据查询的效果。此外,MDSS还能对部分的查询进行特殊的处理,并查询的结果进行优化,在保护查询结果准确性的基础上,MDSS会同过滤类查询条件一起执行,此时返回的子查询结果集是已经分好组、排好序或去重后的结果集,最后的数据汇总阶段只做一次对应的统计操作,会大大提高数据汇总阶段的执行效率。MDSS对查询条件的分层如下图所示:

不同的查询条件要对应相应的查询机和合适的查询时间,MDSS中的查询机制主要有两种,即在线查询和离线查询,前者的数据查询时间响应的要求很高,在几秒内便反应出查询的结果,用户可以花费较短的时间得到查询的结果,后者的数据查询模式比较复杂,主要是对数据的挖掘和分析,甚至有时候需要对全部的数据进行统计和分析,只有经过这些必要的程序才能够获得查询的结果,这就需要较长的数据查询响应时间。上述的两种查询机制在MDSS中得到了广泛的应用,为了充分发挥两者的优势,需要引入分批返回机制,即在执行子查询中,设置子查询检索结果集的阈值,如果检索到结果集超过阈值,返回当前的检索结果,同时存储节点保存当前的检索状态、缓存剩余的结果集。

结束语:

在传统的数据库设计思想的指导下,探讨了数据管理方式,建立了建立面向结构化数据的海量数据存储检索系统,该系统具有明显的优势,不仅提高了数据存储的效率,还具备较多的功能,例如高效加载功能、分布存储功能以及复杂条件的查询功能。但在该系统的具体开发和应用中,还要注意以下几个方面的问题:(1)结合具体的应用,综合利用分区索引条件、列存储结构等技术,会显著提高海量结构化数据的查询效率;(2)充分利用、挖掘分布式环境下的并发、并行计算能力,是提高面向大数据集、复杂查询条件查询效率的主要途径。

MDSS系统在查询效率方面虽然取得了一定的成效,对数据存储发挥了重要的作用,但是还存在一些限制,需要进一步改进。主要的改进方向包括,如何提高元数据的管理、访问效率;如何建立分布式环境下面向复杂条件的高效查询规划,减少中间结果集的传递、结果集汇总等时间消耗,都是进一步提高系统查询效率的主要方面。

参考文献

[1]吴广军.海量结构化数据存储检索系统[J].中国科学院计算机研究,2010(09

信息存储与检索 篇3

关键词:TransRelational模型,TR,字段值表,记录重构表

1 概述

在科学领域里,不时会出现一些令人吃惊的新奇思想,由于新思想要好过目前已有的所有理论,因此可以称得上是一种突破。关系模型在数据库的世界里就是这样的一个明显的突破,而Steve Tarin发明的TransRelational模型(简称TR)则是另一个具有突破性的思想,可能会被证明为自35年前Codd发明关系模型以来数据库领域里最重大的发展。

TR并不是要成为关系模型的替代品,“TransRelational”中的Trans不是“translunar(超越)”的缩写,而是“transform(转换)”的缩写。TR和关系模型一样,也是一种数据的抽象模型,但TR是更为底层的模型,它更接近物理存储。实际上,TR是被设计用来作为一种关系模型的实现手段。这种全新的DBMS实现方法使得传统实现方法中许多关于底层的假设不再有效。

TR其实是一种通用技术上的特定应用程序,以其发明者命名,全称是Tarin Transform Method。它是美国的一项专利,是许多系统(不仅仅是DBMS),如数据仓库、数据挖掘、SQL系统、Web搜索引擎、原生XML系统等重的数据存储和检索的实现技术。本文只局限在这一通用技术在关系系统中的应用。

下面开始进行技术的讨论。了解TR的一个好的方法就是从考虑数据的独立性开始,数据独立意味着数据在系统的物理层次和逻辑层次上存在着明显的差异,这种差异导致了数据需要在物理层次和逻辑层次进行转换。目前大多数的DBMS系统都采用了一种主码转换的方法,将物理存储上的关系变量映射到逻辑层次上具有相同主码的关系变量。在这样的系统中,物理存储上的数据可以近似的看做用户从逻辑视图上看到的数据的一个直接影像(如图1所示)。

从图中可以看出,这样的系统并没有真正提供太多的数据独立性,而且数据需要按照固定的顺序进行物理存储,如果需要以其他的顺序访问数据,就需要提供诸如索引之类的冗余数据结构,为了达到可接受的性能要就还需要提供优化技术,因此数据库管理员的工作难度远远超过了数据管理本身。

相比较而言,TR中的转换方法要灵活许多,其特点可以概括如下:

TR提供更高的数据独立性。

TR将数据以多种数据顺序进行有效的存储,不再需要像索引之类的冗余数据结构。

TR的优化技术要远比直接影像系统中的简单,对一种给定的关系操作往往只有这一种明显的最好现实方式。

TR的运行性能要优于直接影像系统。值得一提的是,连接操作的复杂度是线性的,也就是说20个表连接时间大致也等于10个表连接时间的两倍,如果真的需要连接20个表,那么TR将是首选技术,也就是说,TR系统是可扩展的。

TR系统更易于管理,因为它很少需要人的配置选择操作。

在整个TR系统的物理层次上没有像“存储关系变量”或者是“存储关系元组”之类的概念。

本文只给出TR工作的一个简单描述,不可能覆盖TR的方方面面,为了限定讨论的范围而省去了更新和二级存储;就是说我们假定数据库是只读和在主存中的,但不表示TR仅仅适合只读、主存数据库。

2 抽象的三个级别

可以认为使用TR技术实现的关系系统包含三个级别的抽象:关系级别(或用户级别),文件级别和TR级别(如图2所示)。

在最高的级别上,数据被表示成关系表,由通常意义上的元组和属性组成。

在最低的级别上,数据被表示成一种称为表的TR内部结构,这种表也是由行和列组成。这种表以及行和列不是SQL结构中相应概念,它们之间也没有直接的对应关系。

中间级别在最高与最低级别的数据模式转换上起一个过渡的作用:高层的关系表被映射到这一层的文件,然后文件再被映射到底层的表结构。这一层的的文件由记录和字段组成;其中记录对应上层中的元组,字段对应上层的属性列。注意这里的文件不是物理的存储方式;它们仍然是物理存储的一种抽象,就跟关系变量一样(TR表结构也是这样),但可以认为它们比关系变量要更接近物理存储(但与TR相比则要远一些)。

本文后面所提到的关系变量和关系默认为是指底层的关系变量和关系,除非作出显式的声明。

将关系变量映射到TR表示的第一步,就是将关系先映射到文件,按照元组对应记录,属性列对应记录字段的映射方式。如图3就表示了一种文件到我们常用的供应商信息表的映射方式。例如,图3就表示了一种文件到我们常用的供应商信息表的映射方式。

在文件中,如图中的记录号和字段号所示,记录从上到下排列,记录中的字段从左到右排雷。尽管如此,记录的次序和字段的次序实际上可以是任意的次序;因此,图3中的供应商信息表可以等价的映射到2880种不同的文件—5个记录的全排列合120种排法以及4个字段的全排列24种排法。从表示了相同的信息的角度来看,这2880个不同的文件是彼此等价的。因此,有时把它们看做是一个“相同文件”的2880个不同的版本会比较方便。

图3中所示的文件现在可以表示成TR层上的表结构,同时也可以从TR表结构中重构出来。实际上,相同文件的多个不同版本都可以从相同的TR表结构中轻松重构出来。在TR的表结构中,行按自上而下的次序组织,列按自左向右的次序组织。行和列的交点,我们称之为单元,可以通过[i, j]形式的脚注来表示,其中,i表示行号,j表示列号。

文件到TR表结构的映射细节在下一节给出。这里我们只是强调这种映射完全不同于第一节所讨论的直接影像的映射方式。TR表结构中的行和文件中的记录不存在一对一的关系,因此与关系中的元组也不存在一对一的关系。图4给出了与图4相对应的TR表结构—字段值表,对照图3,图4可以发现,图4中的行和图3中文件记录没有明显的对应关系。为了能够从图4中的字段值表重构出3中所示的文件,我们还需要另外一个表—记录重构表(如图5所示)。在图5的表格中的值不再是供应商的编号和状态值等,而是行的编号。

3 基本思想

TR模型下的重要思想可以归纳如下,令r表示某个文件中的一个记录:

r的存储形式中包括两个逻辑独立的方面,一个是记录中的字段值,一个是将这些字段值链接在一个的链接信息,对这两个方面有很多相应的存储方式。

在直接影像系统中,r的这两方面的信息是存放在一块的;也就是说,这样的系统中的链接信息是由物理存储上的邻近关系来表示的。在TR中,这两方面的信息是分离的—字段值存放在字段值表中,链接信息存放在记录重构表中。这种信息的分离正是TR技术能够带来各种好处的根基。

3.1 字段值表

字段值表中的每一列包含了文件中的相应字段的值,并按升序作了重新的排列。因此不论文件中的记录初始时是什么样的次序,我们都可以得到相同的字段值表。这种表带来如下直观的好处:

字段值表中每列的值都是有序的,可以直接用于回答用户带ORDER BY的查询要求。例如,一个按city名排列的查询请求就不需要在运行时间的排序操作,也不需要用到索引。

按city名逆序排序的查询请求同样如此,实现只需按自底向上的顺序处理字段值表即可。

相似的结论可以用到每个单一属性上;也就是说,字段值表同时有效地表示了多种不同的排序(每个属性上两个方向上的排序)。

查找特定值的查询—例如,查询London的供应商记录—可以使用有效的二分查找方法。这一点同样适用于每一个属性。

字段值表可以看作是在用户数据视图和TR内部结构之间的桥梁。字段值表是唯一包含用户数据的TR表—所有其他的TR信息都不是与用户直接相关或暴露给用户。

3.2 记录重构表

图6并排展示了图4的字段值表和图5的记录重构表。可以看出两个表是同型的,表格之间存在直接的一对一关系(也就是说两个表的行数和列数分别与图3中的记录数和记录中的字段数相等)。但正如第二节所提到的,在记录重构表中的数据不是表示供应商编号或是供应商名等,它们只是行编号,而且这些行编号可以被认为是指向字段值表或是记录重构表中某些行的指针,具体指向哪个表需要根据它使用的上下文环境来定。(因为这个原因,记录重构表的列不应该被标记上s#, SNAME等名称;但暂时标上这些标记有助于后面的解释。)

在解释记录重构表如何构建之前,我们先看看它是如何被使用的。如下操作过程:

第一步:从字段值表中的[1]单元中取出其值:也就是供应商名s1.这个值是供应商文件中某个记录的第一个字段值(s#字段值)。

第二步:从记录重构表中相同的单元([1]单元)中取出其值:也就是行编号5,这个行编号就是重构记录第二个字段(即SNAME字段)的值在字段值表中的位置,即位置[5, 2], 到字段值表的这个位置上取出存储值(即供应商名Smith)作为这个重构记录的SNAME字段值。

第三步:从记录重构表的[5, 2]单元中取出行编号3,即重构记录第三个字段(即STATUS字段)的值在字段值表中的位置,即位置[3, 3],到字段值表的这个位置上取出存储值(即status 20)作为这个重构记录的STATUS字段值。

第四步:从记录重构表的[3, 3]单元中取出行编号3,即重构记录第四个字段(即CITY字段)的值在字段值表中的位置,即位置[3, 4],到字段值表的这个位置上取出存储值(即city London)作为这个重构记录的CITY字段值。

第五步:从记录重构表的[3, 4]单元中取出行编号1。到此为止,供应商信息记录的下一个需要填充的字段应该是第五个字段,但供应商信息记录本身才四个字段,因此这第五个字段又循环返回到第一个字段。因此,重构的供应商记录的下一个字段(字段s#)值在字段值表的第一行—也就是单元[1]。而这个位置正是我们的出发点,因此处理过程结束。

前面的这个操作序列重构了供应商文件的一个记录,即图3中的第4个记录:

顺便指出,前面例子中所用到的行编号指针是构成一个封闭的环的,实际上是两个同构的环,一个是在字段值表中,一个是在记录重构表中。(如图7)这种环称为Z字环,重构算法也被称为Z字环算法。

下面重构另外一个供应商记录。如果你从字段值表中的单元[1,2]开始,你会得到图2-1的记录3;从单元[3, 1]开始,将得到记录5;从单元[4, 1]开始,将得到记录1;从单元[5, 1]开始,将得到记录2.如果按供应商编号自顶向下的次序处理整个字段值表—也就是说如果执行五次记录重构过程,按照单元[1], [1,2], [3, 1], [4, 1]和[5, 1]的次序从而能够重构出整个供应商文件的一个版本,并且文件中的记录按照供应商编号的升序排列。换句话说,实现了如下的SQL查询:

同样的,也实现了如下的查询:

SELECT S.S#, S.NAME, S.STATUS, S.CITYFROM SORDER BY S#DESC;

我们所要做的就是按供应商编号的逆序来处理字段值表,也就是按单元[5, 1]然后[4, 1]的次序来完成记录的重构过程。不需要作运行时间的排序,也不需要用到索引。

更进一步来说,因为记录重构表中的指针构成一个环,我们可以从环上任何一点进入到环中。因此当我们重构算法是,可以选择任意的起点单元。例如,从单元[1]—STATUS列的第一个单元开始,得到如下记录:

最终可以得到按status属性升序排列的供应商信息文件:

以同样的方式, 如果在SNAME属性列上执行记录重构过程, 可以得到按供应商姓名升序排列的文件;在CITY属性列上执行记录重构过程, 可以得到城市名升序排列的文件。也就是说, 记录重构表和字段值表在一起同时代表了所有的排序方式, 而且没有用到任何的索引和运行时间的排序。

考察如下查询, 它包含了一个简单的等值约束:

由于CITY属性列在字段值表中是有序的,因此可以使用二分查找法找出包含London的单元。以图6的字段值表为例,二分查找法找出的单元是[2]和[3, 4]。Z字环就可以从这两个单元开始的指针链构造出来。在这个例子中,构造出的Z字环如下:

将这些Z字环用相应字段值表中的值替换,可以得到查询结果记录:

除了简单的ORDER BY和等值约束外,字段值表和记录重构表一起还为许多其他的用户级操作提供了直接的支持。实际上,大多数的基本关系操作—选择,投影,连接等的实现算法都依赖于以某种次序访问数据的方法。以连接操作为例,归并排序时一种实现连接的好方法,但TR技术使我们可以不做排序,至少是不做运行时间的排序就能完成归并连接(在字段值表和记录重构表构建的过程中就已经完成了排序)。

4 结束语

综上所述,TR技术将大大简化优化系统的工作,访问路径的选择程序也将变的更加简单,在某些情况下是完全不需要的。TR技术也不再需要传统DBMS系统中的诸如索引,哈希表等辅助数据结构。因为省去了很多的选项,数据库系统的设计也变得更加简单,性能的调优也因此变得简单。

TR模型是一种实现关系DBMS的全新的方式。TR模型代表了一种更为通用的叫做Tarin转换法的特定应用,Tarin转换法是用于实现多种数据存储和检索系统的技术。

参考文献

[1]Date C J.Go Faster!The TransRelational Approach to DBMS Implementation.To appear.

信息存储与检索 篇4

1 民航西北气象中心数据存储现状

根据《民用航空气象资料管理办法》要求,地区气象中心需长期或永久保存的航空气象资料包括:起飞机场、降落机场及备降机场天气报告、常规气象资料、航危报气象资料、探测资料、航空气象产品资料、长期气候资料及历史资料、造成飞行事故或机场设施严重毁坏的天气过程资料等[1]。

当前西北中心气象数据主要存放在数据库系统以及本地局域网文件服务器上,采用的均为DAS存储方式,存储空间极为有限,服务器仅能存放约30天的最新资料,历史资料则定期由人工方式迁移到移动存储设备上。

伴随着航空业的快速发展,航空气象也面临着大发展的机遇。根据《民航空管系统“十二五”发展建设规划》,在西北中心计划新增多普勒雷达、激光气象雷达、闪电定位仪、大气电场仪等多种气象设备,据初步测算,在未来几年,业务系统数据量将会有数倍增加。

此外,随着民航气象一体化运行以来,西北气象中心的业务职能得到进一步加强,除要强化对本场气象台的业务管理之外,还需对陕、甘、宁、青四省航空气象资料进行收集、整合和共享,促进整个西北地区航空气象的资源共享,进而为飞行的安全、顺畅、高效提供有力支持。

因此,对于西北气象中心而言,急需建设一套具备海量存储能力、能够整合西北地区气象数据同时又具备较高稳定性、高效检索能力的资料存储系统。

2 系统的功能及性能需求

2.1 满足民航二期数据库系统存储的需要

当前,对于大多数民航地区气象中心而言,其二期数据库资料仍然是通过DAS进行保存,一般只能保存30天资料,此外在访问性能方面也存在不足。本系统应当具备提供二期数据库1年左右的信息存放能力,此外在数据I/O方面应当有明显改善。

2.2 数据的采集、处理功能

系统能够从本地数据库系统、本地局域网系统、省气象局业务系统、甘宁青三个空管分局采集气象实时资料,同时对资料进行预处理、数据格式标准化处理、资料的质量控制及资料的统计加工[2]。

2.3 系统具备海量存储能力

建设地区级航空气象数据中心,应当具备30年以上的数据存储能力。按照当前业务数据量及今后发展趋势,本系统建设初期具备100TB的在线存储能力,100TB的近线及离线存储能力较为适宜。

2.4 资料检索功能

提供满足本地用户以及三分局用户对各类资料的在线检索要求,同时提供遵从规范、标准、高效原则的检索方式。

2.5 多平台支持能力

当前西北气象中心硬件包括X86架构服务器以及IBM P系列小型机,操作系统则有各种版本的WINDOWS、AIX、LINUX,应用系统则更为多种多样。因此,该系统需要具有最广泛的包含硬件、操作系统、应用系统在内的异构平台支持性。

2.6 兼顾多种业务系统的运行需求

本系统除了能够满足整个区域资料的长期收集存储检索之外,还应当能够满足其他业务系统在运行过程当中的存储要求。

2.7 系统具备高扩展性和“数据原地不动”扩展能力

为了满足不断增长的业务需求,系统必须在支持大容量的同时,支持很高的扩展性。这里的扩展性,不仅指存储容量的扩展,还指系统整体性能的扩张。考虑到数据量很大和系统的复杂度,在进行系统扩展时进行数据迁移将耗费相当长的时间,并存在相当大的风险。因此,要求存储系统能够进行所谓的“数据原地不动”升级,即在不用做数据迁移的情况下,轻松实现系统容量和性能的平滑扩展。

2.8 数据的安全性及高可靠性,提供同地灾备能力

由于航空气象数据存储和服务涉及飞行安全,在行业内属于关键业务,因此数据存储需要极高的安全性和健壮性,信息检索服务则需要较高实时性和可靠性。在系统设计时,应当充分考虑和假设系统经常在一些不可测事件和频繁扰动的情况下,仍能正常工作的能力。

3 系统的设计思想

3.1 一体化统一存储设计

由于航空气象数据格式较为多样,结构化数据与非结构化数据并存,尽管当前主流大型数据库厂商对于非结构化数据已经提供了较好的支持(例如:oracle 11G)[3],但为了更好的适应地区航空气象业务环境,也就是说系统需要具备不同类型业务和不同系统环境下数据访问的能力。当前主流的存储架构分为SAN、NAS以及SAN和NAS相结合的统一存储。按照业务要求,应当采用一体化的存储解决方案,支持包括块级数据访问(FC,i SCSI),文件级数据访问(NFS/CIFS)以及共享文件系统数据访问(MPFS),从而可以充分满足各种业务的存储需求[4]。

3.2 分级存储

核心存储系统应当能够配备不同介质(企业级固态硬盘、FC硬盘、SATA硬盘)和不同转速的硬盘介质,采用不同的RAID方式,实现多层次的数据分层存储,同时配置全自动存储分层(FAST),可以跨存储层自动和动态地移动数据。同时在系统中配备适量的企业级闪存驱动器,可为I/O密集型应用程序提供超快的读写性能,一般而言,闪存驱动器能提供比15K rpm光纤通道驱动器快30倍的IOPS,并且可以作为Cache使用,从而大幅度提高检索命中率。

3.3 管理平台简单且易于操作

整个平台的建设必须适合系统的业务发展,存储资源管理平台必须易于管理而且操作简单,降低IT管理人员的劳动强度,提高管理效率。

3.4 采用ILM对数据进行分级存储

ILM即Information Lifecycle Management(信息生命周期管理),是对数据随着时间的变化所赋有的价值的预测。在地区航空气象中心,可以把数据分为实时、准实时、历史、归档四类,即对数据进行分级存储管理,使业务的实时性要求与存储成本相适应。对于实时数据,采用内存及高性能存储;对于准实时存储,采用低成本存储;对于历史数据,采用在线归档方式进行保存;对于归档数据则采用离线方式。

3.5 全冗余设计,消除单点故障

由于地区气象中心在整个业务体系中的核心作用,其数据中心建设应当进行全冗余设计,同时提供同地灾备应急保障,消除单点故障,确保系统在任何故障情况下的正常运行。

3.6 采用D2D2T的数据备份模式

备份系统首先将业务系统的数据将从存储应用数据的阵列备份到虚拟磁带库空间,然后再从虚拟磁带库空间备份到磁带库上。这种备份模式,可以充分利用磁盘存储的性能优势,提高备份系统的性能。同时利用高品质的廉价磁盘(阵列)和D2D技术来建第二级存储,其与磁带相比具有更快的数据备份和恢复性能,同时消除磁带库设备易发生机械故障的隐患。

4 系统硬件架构设计

本方案采用统一存储磁盘阵列技术,双活系统架构,划分为网络存储系统、数据管理及服务区、省局资料采集、气象中心本地资料采集、甘宁青三分局本地资料采集几个部分。

系统架构如图1所示。

4.1 网络存储系统设备配置

按照双活网络存储架构,本区域安放2台数据存储服务器;2台高性能磁盘阵列互为镜像备份,单台容量100TB,其中包括配置2个SAN控制器(含36GB SAN控制器缓存)和2个NAS控制器(含24GB NAS控制器缓存),包括8个8Gbit FC主机端口和8个1Gbit以太网端口,配置8颗200GB固态磁盘,配置9TB物理容量的15K RPM高性能6Gb接口SAS硬盘,52TB的7.2K RPM海量6Gb接口NL-SAS硬盘[3]。

配置1台集成重复数据删除功能的虚拟磁带库,容量20TB,以解决高速度数据的备份问题;配置1台物理磁带库,容量80TB,以满足大数据量条件下数据离线备份需求;2台光纤交换机,双网接入。

两台光纤通道交换机配置为:32端口激活FC-SAN交换机,配备全部8Gb/s端口模块。系统有如下特点:

1)数据库业务和其它核心业务系统的服务器可配置HBA卡通过高性能的SAN交换机连接到统一存储平台;

2)其它非核心和非关键服务器、可以通过i SCSI方式利用现有IP网络连接到存储平台;

3)对于用户的文件系统数据,则可以通过NAS协议利用现有IP网络连接到统一存储平台进行存储和备份。

4)两台高性能磁盘阵列保存相同数据,最大程度保证数据安全。

5)配置集成重复数据删除功能的虚拟带库,以高速度解决数据的备份问题。

6)配置物理磁带库,满足大数据的数据离线备份需求。

4.2 其它区域

1)数据管理及服务区域,配备1台数据检索应用服务器,1台交换机;2台数据管理终端;若干台数据检索终端。

2)陕西省气象局航危报资料采集区,配备1台数据采集服务器;1台网闸,用于数据的单向传输;1台交换机。

3)气象中心本地资料采集区,配备1台数据采集服务器,1台防火墙,1台交换机,用于气象中心各类数据的收集。

4)甘、宁、青三分局均配备1台数据采集服务器,1台防火墙,1台路由器以及网络交换设备,用于三分局资料的收集。

5 软件部分

5.1 购置软件

专业的备份软件能够防范目前大部分应用系统存在的数据丢失风险,快速进行数据备份,它们能够实现对各业务平台数据的收集,并基于策略的保存在相应的存储系统中。EMC公司的Networker,Symantec的Net Backup均能提供这些功能。

这些软件能将大数据库业务系统数据经过SAN网络,实现LAN-FREE的高速备份,而减少备份对生产系统的影响,并大幅度降低备份窗口。当前气象数据库报告表每日增加记录约10万条,每年的记录数将高大3600万条,因此在数据备份过程中不影响核心业务是格外重要的。因此,专业软件和虚拟带库的结合能使用户可以对大型数据库系统采用在线的、基于SAN网络的高速备份和可靠恢复。

5.2 定制或开发资料收集处理软件

定制或开发一套应用软件,实现气象资料的收集、传输、处理保存等功能,安装在数据采集服务器上。该应用软件系统按功能分为以下几个模块:

5.2.1 采集模块

负责收集气象中心数据库资料,局域网资料,省气象局资料,甘肃、宁夏、青海三省空管分局气象资料至数据采集服务器,其中采集数据可根据用户需求进行调整,对特殊格式资料具备格式转换能力。

5.2.2 传输模块

承担网络存储系统的数据定向传输功能,数据传输方向可根据用户分布情况调整。

5.2.3 资料处理存储模块

对各类收集到的气象资料进行归类及格式转化;按照用户定义进行文件分类排序;以数据库或文件方式对资料进行存储。

5.2.4 系统修复模块

当故障发生,提供数据系统的自我维护和故障定位功能。

5.2.5 管理模块

对用户、系统功能、数据类型、数据走向、保存方式进行管理。

5.2.6 统计模块

对存放的数据按照类别、来源、时间、存放区域进行分类统计,以图表方式提供统计结果。

5.2.7 告警模块

对整个系统的数据资料和运行情况进行实时监控,用户事先设定的告警阈值,当预警情况出现,以声、光、电或短信提示等方式进行告警。

5.3 开发或定制资料检索服务系统软件

开发或定制一套B/S架构软件系统,能够实现本地及三份局远程对各类气象资料的检索,支持多种数据类型、格式,支持多用户并行查询。

6 结束语

本系统采用双活配置,架构体系灵活,具备极强的健壮性和稳定性,能够充分满足航空气象安全运行和保障的要求,同时具有很好的线性扩展能力,从而确保整个系统能够满足将来业务扩展、数据增长和业务需求变化的需要,与此同时还充分考虑了信息安全防护问题。因此,本方案能够适用于大多数地区级航空气象数据中心的建设。

需要补充的是,本项目在西北气象中心尚未正式实施,因此还存在一些细节性技术问题需要在详细设计和实施过程中逐步确定和细化。

参考文献

[1]马力,候燕.民航西北气象中心新建数据中心工程可行性研究报告[R].中国民航机场建设集团公司,2011.

[2]陈齐亚,周鹰.民航西北气象中心网络存储系统项目建议书[R].民航西北气象中心,2011.

[3]马志量.ORACLE11G支持海量气象数据管理[Z].ORACLE.2012.

优惠信息检索与分析 篇5

关键词:优惠信息,搜索,关联规则,平台

在如今的信息时代, 随着internet网络的迅速发展以及信息化水平不断的提高, 网络上产生了许多关于打折优惠的信息。越来越多的复杂且紊乱的优惠信息充斥着我们的生活。大部分人需要并且对优惠信息感兴趣, 然而目前优惠信息是零散分布在各个地方, 没有集中在一个地方发表。这既没有最大化商家的利益, 也没有造福于顾客。如今如何更好地利用和挖掘出有价值的优惠信息从而更好地服务于顾客, 是它要急需解决的问题。

1 优惠信息需求分析

优惠信息依靠不同的介质大面积存在, 而顾客针对优惠信息有不同的需求和偏好, 我们通过生活的一些现象, 发现需要将受顾客欢迎的优惠信息收集起来, 便于顾客查看和选择。网上和现实同时进行了一次简单的问卷调查, 问卷调查范围主要是青年人, 采用不同的统计表达形式, 分析数据后得到以下信息。65%的人会主动寻求优惠信息, 而且大部分人会知晓优惠信息后主要去尝试, 由此可以看出青年人尤其是大学生财力不够, 没有自己的收入或者工资不高。他们出于这些原因会希望获得优惠信息, 不仅是节省而且可以以有限的财力来体验更多的生活。其中美食类的优惠信息更得大众欢迎, 休闲娱乐类第二, 购物类第三。大家更多关注的还是丰富自己的精神生活, 提升生活档次, 享受生活。当然这也与年轻人自身的偏好有关。他们生长于物质和精神都更为丰富的社会, 比之年长者更容易接受新事物。

就目前优惠信息分布情况来看, 基本没有人或极少数人认为其分布是集中的。大家感受到生活中的优惠信息是零散的。而大众获取优惠信息的渠道多种多样, 最广泛使用的是通过微信等App发现, 其次为朋友告知。调查发现微信对大家的影响越来越深, 在生活中的应用愈加广泛。

2 平台建立

通过日常观察和问卷调查, 很多用户常用微信最为日常工具, 因此, 建立一个微信平台来发布我们的优惠信息在一定程度上是可行的。

将收集的优惠信息分类, 归为美食、休闲娱乐、购物等多种类别, 类别名称由编码代替并定时发布在微信平台上。有目的性查找优惠信息的顾客可以通过选择不同编码, 进入到不同类别的优惠信息页面中去, 再可以点击相关的推送来查看具体的优惠信息内容。平台上每天会发送新的优惠信息, 可以方便关注我们平台的顾客随意点击。在发布信息的同时, 定时删除过时的优惠信息, 不浪费顾客时间。

在顾客使用我们平台的时候, 我们将采用数据挖掘等方式来发现顾客的偏好, 之后, 我们将在顾客偏好的优惠信息上加大收集力度。

3 信息收集

3.1 优惠信息要求

通过查找感兴趣的优惠信息这一途径, 顾客能利用相同的价值去体验更多的生活感受。为了确保这些优惠信息的实用性, 收集到的信息必须具备以下要求。

3.1.1 时效性

很多优惠信息都是伴随着某种活动产生的, 例如节日、店庆等较为隆重的日期, 可想而知, 这类优惠信息必定存在一定的期限, 或长或短, 时间不定。而分享给顾客的时候必须保证优惠信息不过时, 在提早发送消息的同时还要定期处理过期的优惠信息。

3.1.2 真实性

有些商家为了得到更多顾客的关注, 会编造一些虚假优惠信息, 需要运气才能获得, 但前提是顾客关注或者转发, 事实却是完全没有这个活动。有些优惠信息又存在于宣传的有差距的诈骗。这些现象明显属于欺骗消费者行为。所以信息的真实性是必备因素。

3.2 优惠信息收集途经

3.2.1 走访商家

作为一种存在时间最长的收集方式, 也是最基础和保险的收集方式, 与商家面对面的洽谈存在其优点和缺点。走访地区内各户商家, 与商家进行协议, 体现诚意, 便于建立长期合作。但是过程费时费劲, 因此我们并不主要依靠这个方法来收集信息。

3.2.2 网络收集

处在一个互联网高速发展的时代, 互联网提供给用户极大的便利。网络信息便是其中占据大比例的存在。通过网络收集各类优惠信息是一个更为方便简单的方法。其中主要由搜索引擎查找、微信等平台查找构成。

1) 搜索引擎。观察互联网用户使用较多的搜索引擎, 百度、Google、雅虎等, 尝试在不同的搜索引擎中打入相同的关键词, 例如:“优惠信息松江大学城”, 可以看到, 不同的引擎产生的网页是完全不同的。在百度的搜索引擎中出现在首页的是多为松江大学城团购, 且存在少量独立商家的优惠信息。而通过谷歌, 可以看到大部分为松江大学城租房或买房的优惠。两个搜索引擎, 相同的关键词产生了差异较大的结果, 这取决于网页排序的规则。

网页多采用链接分析的算法, 链接分析排序原理启发与文献引文索引机制, 分析网页之间的链接结构, 若一个网页被引用的次数越多, 表示该网页越受大众的欢迎;被越权威的网页引用, 表示该网页质量越高。这么看来, 从这两方面来说, 这个网页的价值越高。常见的算法有Page Rank算法、Hill Top算法、HITS算法等。根据不同的算法, 会导致网页结果的排序不同[1]。

例如, Google搜索引擎的最主要网页排序算法就是PR算法, 计算网页的PR值, 判断网页的重要性。若A网页有个链接指向B网页, 那么B网页将得到A贡献给它的分值, 值的大小取决于A的重要性。引用的网页数量越多, 质量越高, 排序越前面。

通过对算法原理的简单认识, 我们可以分析得到, 之所以百度的搜索引擎查到的信息更丰富, 这归结于在这个搜索引擎中, 这些网页的价值较高, 从总的基数来看, 被引用的次数较多, 链接的网页价值也不错。而在谷歌这个全球常用的搜索引擎上来看, 同样的网页被引用的次数太少, 而且相关链接的网页价值不高。因此, 在用搜索引擎来查询优惠信息时, 要注意使用的搜索引擎和关键词的使用。其中, 关键词的使用需格外注意, 指明针对性。

一般以“优惠信息松江大学城”为关键词的搜索结果范围仍旧极大, 这不利于我们仔细排查一些小商家的信息。我们尝试先利用百度地图寻找松江大学城附近的商家信息, 努力收集各个商家的官方公众网络。随时关注商家的动态信息变化, 收集商家的优惠活动, 判断商家活动的真实性, 汇总在我们平台上。如果能在发现商家的官方网页的同时取得商家的联系方式, 可以与之线上商谈, 争取成为长期合作伙伴。

2) 微信等平台搜索。有些小众的网络平台同样收集着一些值得尝试的优惠信息。而这些信息存在于不同的平台上, 顾客看到的较少。我们提供相关的链接, 与那些小众优惠信息搭建一个桥梁, 方便顾客查看。许多商家的微信公众平台同样发布着一些消息, 有时候会在朋友圈大范围传播, 这个途径收集起来的信息虽然不全面, 但是也是一种较为常见的方式。

4 顾客行为信息分析

随着平台的不断推广, 顾客涌入。在微信公众号后台, 可以用直观看到订阅人数, 每条推送消息的点击数。因此可以获取大量的顾客消费行为数据。利用数据挖掘技术可以分析大量的数据, 对顾客进行细分, 还可以从已有的历史数据中发现有价值的潜在的知识, 为顾客提供个性化的商品信息推荐。

建立模型以及分析:

经过对数据的预处理, 我们发现利用关联规则挖掘来对数据进行处理比较好。关联规则可以发现不同事务之间隐藏的联系。我们在进行关联规则挖掘时, 主要做了两步, 第一找出频繁项目集, 然后根据频繁项集产生满足最小可信度的关联规则。

从微信公众平台获得的数据, 我们对其进行整理。在事务数据库中, 事务的项目集为人们检索的优惠信息类别编号, 事务ID为人的编号。由此我们得到了事务数据库D。

表1为事务数据库中的一部分。

在挖掘关联规则时我们运用了Apriori算法, 使用“K-项集”产生“K+1-项集”的迭代方法[3]。扫描所有的事务, 对每种优惠信息类别出现次数计数。这里, 假定最小事务支持计数为20, 由此我们可以确定频繁1-项集的集合。使用来产生候选集, 再次扫描数据库中事务, 计算中每一个候选集的支持度计数。具有最小支持度的里面的候选2-项集组成了频繁2-项集的集合。反复进行上述步骤, 由于Apriori算法性质, 频繁项集的所有子集必须是频繁的, 因此我们计算过程中会剪去一些项集。一直反复进行下去, 直至K+1-项集为空集, 我们得到K-项集为最大的频繁项集{1、2、5}, 也就是为{美食、休闲娱乐、购物}。

对于每个频繁项集L, 我们列出所有它的非空子集, 对每一个非空子集X, 计算它的可信度。在这里, 我们假设最小可信度 (min_conf) 为60%, 最终得到了4条关联规则。在进行数据整理时, 我们发现在每日推送的各种优惠信息中, 美食类的点击量一直居高不下。这完全符合我们问卷调查的结果。

通过关联规则等对顾客的行为数据进行分析, 我们发现人们往往会希望在休息娱乐比如看电影和购物之后享受一顿美味大餐。在享受的同时也希望获得优惠信息, 以较小的代价获得高品质生活。

参考文献

[1]邓维婕.网络搜索引擎的原理、技术和发展[J].电脑与电信, 2008 (5) :12-14.

[2]姚明.浅谈网络搜索引擎的研究[J].电脑知识与技术:学术交流, 2007, 4 (19) :83-84.

信息存储与检索 篇6

医学影像能清晰准确地展示人体的内部组织, 临床医生借助这些影像能够对患者的病情有直观的了解, 因此医学影像对疾病的诊断和治疗有着不可替代的作用。传统的影像设备产生的影像资料以胶片的形式存在, 不利于存储、复制和转移等处理。随着现代影像技术和图像处理技术的深入发展, 20世纪80年代初由美国Kansas大学的Dwyer等人首先提出了将影像设备通过网络连接的概念[1]。之后为了能够将所产生的数字影像档案进行交换与查阅, 发展出医疗数字影像传输协定技术 (DICOM) [2]。DICOM的出现保证了医疗影像系统从影像设备源头到系统之间的信息交换有了一致的标准的接口, 使得医疗影像系统进入实用化的普及阶段。近年来可供临床、教学和科研用的医学影像数量正在迅速膨胀[3]。早在2002年, 仅University Hospital of Geneva放射每天产生的图像数量已达12, 000幅。在我国一个大中型医院每年产生约1~6TB的影像数据, 全国医院每年产生约2PB以上的影像数据。据IBM全球副总裁Bill Zeitler预测, 5到10年之后全球存储的30%将被用以存储医学影像数据。因此, 医学工作者和相关科研人员如何能够从海量的影像数据中查询和检索到所需要的相关医学影像成为亟待解决的问题。

目前医学影像检索方式主要有三种:一种是传统的基于关键字的检索[4]方式, Tamura在文献中对基于人工注释文本的图像检索技术给出了全面的综述;二是基于内容的检索 (Content-based Image Retrieval, CBIR) [5], CBIR使用颜色、纹理、形状及区域等视觉特征, 而这些视觉特征是唯一可以独立、客观地直接从图像中获得的信息;三是基于语义特征的医学影像检索, 以解决底层的视觉特征与人的理解之间的语义鸿沟的问题。其中基于关键字的检索方式存在用户检索表达能力弱、检索精度低和检索方式单一等不足, 难以满足现实中准确的医学影像检所的需要;基于内容的检索局限于视觉领域的图像特征, 难以满足医学影像行业领域信息检索的需要;基于语义的检索目前正处于研究阶段[6]。针对以上问题, 提出了一种基于XML描述的医学影像存储检索方法, 通过所提出的一种三要素存储模型对医学影像进行语义描述, 同时采用一种基于XML的检索方法来实现对医学影像的检索。最后, 设计实现了一个支持XML描述的医学影像存储检索原型系统, 并通过实验验证了本文所提出方法的可行性与有效性。

2 基于XML的医学影像存储检索方法

2.1 基于XML的医学影像存储模型

医学影像数据例如CT、PET、MRI和MU等, 从内容上没有统一的结构, 数据是以原生态形式 (raw data) 保存的, 因此计算机无法直接理解和处理。为了对不同类型的医学影像数据进行处理, 本文所采用的基本思路是对这些医学影像数据进行描述, 基于描述性信息实现对医学影像数据内容的管理和操作。本文认为一个医学影像数据可以由元数据、关键缩略图以及原始数据3个部分构成, 成为医学影像存储的三要素。其中:

XML元数据包含对医学影像基本属性、语义特征、底层特征等的描述;

关键缩略图为对医学影像内容的快捷视觉表达;

原始数据即为医学影像数据的原生态文件。

本文所提出的三要素存储模型 (如图1所示) , 就是从上述3个方面对医学影像数据进行全面刻画。

定义1医学影像三要素存储模型数据结构。

三要素存储模型数据结构由惟一标识符ID、XML元数据、关键缩略图和原始数据构成, 由一个4元组描述:

Trifactors= (ID, Metadata, Key Thumbnail, RoleData) ;

其中:

ID是三要素存储模型在数据库中的主键, 惟一标识一个三要素组合;

Metadata是基于XML的医学影像元数据描述文件, 包括对医学影像基本属性、语义特征、底层特征等的描述;

Key Thumbnail是对原始医学影像关键内容的视觉刻画, 一般为常用的图片格式, 比如JPEG;

Role Data表示原始数据, 一个节点表示一个医学影像原始数据。

通过三要素模型4元组数据结构的描述, 能够对原始医学影像进行全面性和惟一性描述与标识, 为海量医学影像数据的存储提供了理论基础。

2.2 基于XML的医学影像检索技术

采用XQuery技术对三要素存储模型中的XML元数据进行查询。XQuery是一种用于描述对XML数据源的查询的语言, 具有精确、强大和易用的特点。由于XML元数据与所描述的原始医学影像文件存在一一映射的关系, 因此, 通过XQuery技术找到对应的XML文档就可以定位原始医学影像的位置, 从而实现原始医学影像的查询检索功能。

为了实现XML查询先需要实现XQuery解析器。本论文中XQuery解析器的作用是通过匹配XQuery语句, 提取其中的待查XML文档和XPath表达式。对于字符串形式的XQuery语句, 如何将其中的待查XML文档与XPath表达式识别并且提取出来是需要该解决的问题。在解析的过程中需要对XQuery语句进行词法分析与语法分析。通过XQuery解析器的构建就实现了XML的查询功能。

3 基于XML描述的医学影像存储检索系统及实验分析

3.1 系统设计

如图2所示, 本系统主要分为医学影像存储和检索两大模块。其中存储包括三要素模型描述阶段, 数据持久化阶段。三要素模型描述阶段主要包括原始医学影像XML描述、提取影像关键缩略图和分类归档三个步骤。数据持久化阶段, 对于XML文档, 我们采用开源的纯XML数据库e Xist进行存储;对于缩略图和原始的医学影像数据, 我们采用的是开源的Nosql数据库Sones Graph DB。检索主要是基于XQuery查询的XML检索, 包括XQuery解析、XML查询优化和XML并行查询等三个阶段。由于本文的系统是基于XML原信息的描述、查询与检索, 因此XML的管理就成为了系统的核心, 因此在以上存储检索的模块之间我们添加了一个XML元信息管理器来管理产生的XML文档。

3.2 实验分析

对5M到120M的XML描述文件进行了检索实验, 实验结果数据见表1。实验结果表明:20M以内的XML数据, 基于XQuery的查询能够在容忍的范围内获得检索结果, 当XML文档数据量超过40M的时候, 查询结果在1min左右。

4 结论

本文提出了一种基于XML描述的医学影像存储检索方法:通过提出的一种三要素模型对医学影像进行语义描述, 同时采用一种基于XML的检索方法来实现对医学影像的存储检索。最后, 设计实现了一个支持XML描述的医学影像存储检索原型系统, 并通过实验验证了本文所提出的方法的有效性。但是目前查询的速度和查准率还有待提高, 下一步工作将集中于对查询性能的优化工作。

参考文献

[1]吕浩音.可训练文语转换系统的时长模型优化[J].计算机应用, 2012 (1) :14-15.

[2]Digital Imaging and Communications in Medicine (DICOM) [S].National Electrical Manufacturers Association, 2007.

[3]Henning Muller, Nicolas Michoux, David Bandon, et al.A review of content-based image retrieval systems in medical applications-clinical benefits and future directions[J].Intern ational Journal of Medical Informatics, 2004, 73 (1) :1-23.

[4]Haralick R.M., Shanmugam K., Dinstein.Textural Features for Image Classification[J].Systems, Man and Cybernetics, IEEE Transactions on, 1973, 3 (6) :610-621.

[5]Smeulders A.W.M., Worring M., Santini S., et al.Contentbased image retrieval at the end of the early years[J].Journal of Pattern Analysis and Machine Intelligence, IEEE Trans actions on, 2000, 22 (12) :1349-1380.

信息存储与检索 篇7

关键词:历史数据,XML,LZW算法,XPath

1 引言

历史数据是数据库中非常重要的组成部分, 它提供了大量的过程数据供日后进行查看或者数据挖掘。人员定位监控系统是基于无线传感网技术的监控平台, 由硬件设备和软件系统组成:前者包括电子标签、读写器等;后者是Web管理系统;主要应用于监狱、精神病医院等场所, 实现特殊人群监控, 防止意外发生。系统实施后, 虽然监控人员的活动空间和时间有限, 但如果不做数据处理, 也会导致系统处理速度下降, 甚至系统崩溃。

数据压缩是历史数据问题中的关键课题, 根据压缩粒度可分为无损压缩和有损压缩。LZ算法是一种基本的无损压缩算法, 由一系列压缩算法组成:LZ77 (顺序压缩通用算法) 、LZ78 (可变比率编码的独立序列算法) 、LZW算法等等。

历史数据导出的文件存储格式有很多种, 其中包括XML文件。XML是一种自描述且可扩展的标记语言, 是一种独立于应用程序和供应商的描述及交换数据的方法。XML标签往往是重复的, 这虽然会造成冗余, 但却有利于进行数据压缩。虽然XML在数据量上并不具有优势, 但其在数据管理及开放性方面具有不可忽略的优势。XML有两种查询检索方式:XPath和XQuery。XPath是一种表达式语言, 提供定位和链接信息的通用语法和语义, 适合作为小型查询语言应用到实际项目中。

本文提出一种针对历史数据的数据库与XML文件相结合的解决方案, 包括XML数据结构设计、压缩算法应用、XML节点搜索方法、数据库与XML文件调度设计等。

2 方案设计

历史数据解决方案是人员定位系统的一部分, 但在处理逻辑上独立于软件平台。历史数据处理流程涉及到采集层、存储层和检索层, 按照这三个层次描述方案详细设计:

(1) 采集层实现采集数据的有损压缩。采集器通过定位算法计算出标签位置, 判断读写器信息是否变化、标签位置是否超出设定阈值, 确定数据是否入库。

(2) 数据存储层的设计思想。每天零点对数据库中将采集数据按照预定义的数据结构生成XML文件, 文档以前一天日期作为文件名;再通过LZW算法压缩生成lzw文件, 存储在服务器硬盘上并删除XML文件。XML文件数据结构按照数据库history表单结构设计, 如图1所示。

(3) 历史数据检索时, 当天数据通过数据库查询获得, 其他日期的数据首先确定本地是否存在已解压的XML文件, 存在则直接通过XPath路径查询节点信息, 不存在则先解压再从XML文件中查询所需数据, 返回给系统。解压生成的XML文件定期删除。

综上系统工作的具体流程如图2所示。

3 系统实现

系统通过SQL语句获取数据库history表数据集, 将数据与实体类History Dat和Record的属性相映射, 存放到List中, 以便实现循环迭代生成XML文件。根据history表单结构定义的实体类History Data及Record的类结构如图3:

XML文件生成使用dom4j API, 首先建立History Data根节点, 子节点循环递归实体并利用Method反射机制及invoke方法获得数值, 按设计定义为Element或Attribute或Text;最后XMLWriter按文件名地址规则输出XML文件。然后通过LZW压缩算法[6]压缩XML文件, 而在日后查询时则反向解压文件即可。

查询步骤包括两个部分:一是确定查询范围;二是XML文件内部查询。当天数据通过SQL语句访问数据库即可获得, 因此难点在于XML文件内部节点的XPath查询。以查询过去某天某标签为例可表明XML文件内部查询过程:

输入:待查询标签labelid, 起始时间s Time, 结束时间e Time

4 结束语

人员定位系统历史数据主要用于追溯发生异常事件时人员位置信息, 而异常情况并不是频繁发生, 因此本文解决方案在用户体验上与传统方法差距不大, 但在存储空间上有很大优势:数据库中1000多条数据占用的空间大小约300KB, 其中包含200KB的预留空间, 而压缩XML文件不到20KB。实验表明本文提出的历史数据解决方案能够解决存储压力问题。

参考文献

[1]文水英.实时数据库中历史数据压缩算法的研究[D].长沙:中南大学, 2008.

[2]孙克成.工业历史数据库数据压缩算法研究[D].西安:西安科技大学, 2011.

[3]汪陈应.XML数据编码与存储管理关键技术研究[D].天津:南开大学, 2010.

[4]阎红灿.面向Web的XML文档数据管理及分类检索技术研究[D].天津:天津大学, 2008.

上一篇:数学学习成绩论文下一篇:产业集群运行模式研究