存储检索

2024-11-16

存储检索(精选5篇)

存储检索 篇1

大数据作为云计算领域的一种新型的数据管理模式,具有较高的加载效率和存储规模和数据的检索率,对数据的管理起到了积极的作用,一方面保证了数据处理的效率,另一方面提高了系统运行的稳定性,为人们提供了更加优质的服务。大数据在多个领域得到了广泛的应用,如海量日志、网络报文以及电子商务等,传统的数据管理模式难以满足数据更新和数据存储的要求,这就需要对数据的一致性方面放宽要求,并对复杂的关联查询进行取消,再根据具体的应用场景,提高系统的实用性。

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

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

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

(一)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

[2]李超.大数据存储检索分析与应用[J].云计算数据中心,2010(09)

基于云存储的数据库密文检索研究 篇2

云计算是一种通过虚拟化技术实现存储资源共享使用的新型模式,用户可随时随地的通过任何智能设备接入云计算系统获取自身所需的服务。云存储是云计算发展的基础,所谓云存储就是通过超大型服务阵列形成一个云计算中心,通过互联网服务的方式,用户可按需申请所需的存储服务,但由于当前缺乏云存储安全性的评价标准,云服务(按照业界可划分为两种模式,一种为Saa S、Paa S、Iaa S,另一种为Public、Private、Community、Hy Brid)按照其基本的因素(业界分为五种:On-Demand,Broad Network Access,Rapid Elasticity,Measured Service,and Resource pooling)出现了集中具有代表性的云存储安全技术—IBC(Identity-Based Cryptography)、ECC(Elliptic Curve Cryptography)以及TC(Trusted Cloud)[1]。

本文针对云存储所面临的安全问题,提出了一种新的云存储数据库密文检索算法,该算法基于文献[1]中提出的几种经典策略(IBC、ECC、TC)等进行改进。

2 相关研究工作

关于数据库密文检索的安全性研究已经得出相关的研究成果。文献[4]中提出的基于RSA算法的改进,对用户的远程接入管理数据库的安全性进行了论证;文献[3]采用ECC以及Sobol队列技术设计实现了一套安全协议,该协议提供了解决数据完整性以及机密性的问题;文献[2]中针对云存储安全问题,采用RSA算法解决数据真实性问题,采用AES算法获取存储数据的机密性;文献[5]提出在私有云存储中的安全协议,基于Diffie-Hellman协议以及RSA算法实现了云存储数字签名的机制,并定义了相关的加密、解密算法;文献[6]中基于RSA、ECC以及RC4设计实现了一套用于云存储安全管理的加解密系统。综上所述,当前对于云存储数据库密文检索的研究主要集中于解决某一方面问题,如服务访问的安全性、数据完整性、以及数据安全性等问题,但是对于解决云计算中数据库安全的研究甚少。

3 算法介绍

3.1 数据存储与数据定位

云计算中心的设计通常采用多服务器的分布式架构,为用户提供快捷、可靠的数据服务是云计算存储的核心竞争力,然而面对多用户的海量搜索请求,及时的处理反馈是十分重要的。云存储的建设是建立在海量数据存储管理、低成本服务、高可靠性访问、高有效性管理等基础上的[12,13,14,15]。

云存储安全性问题主要包含数据存储冗余性、动态性。其中云存储的冗余性通过不同位置的副本的保存是确保云存储数据保护的手段之一,而动态性意味着客户的数据存在被修改的可能性。用户按照相应的权限只限定访问自己的数据,确保数据的独立性,而不同用户对数据的修改并不影响当前用户对数据的访问。

确保存储数据的安全性,首先要确定数据的存储位置,这在不同的国家/政府之间存在相应的法律差异,因此对于云服务的用户应该了解服务提供商相关的安全法规(当前CSP的选择是由客户选择数据中心的位置)。

3.2 数据的安全周期

数据的安全周期是指从数据的创建到损坏的整个流程,根据文献[7,8]中所描述的过程介绍如下。

(1)创建:在数据的创建过程中可能由于用户的操作错误造成数据的分类错误,需要按照数据标签以及分类策略降低数据分类错误的风险;

(2)存储:云计算服务的数据存储通常面临网络、非法接入、数据泄露等问题,为了保证数据质量,往往基于SLA的拷贝、备份、存储过程均在本地进行;

(3)使用与共享:数据的使用包含数据的传输(CSP、传输过程以及客户),数据的使用与共享的核心是数据交互,须确保数据在多个用户之间交互过程中确保数据的一致性和完整性;

(4)存档:在数据存储阶段,必须确保数据免受未经授权的用户访问,除了在数据备份和检索是需要防止数据过早被破坏或损失,因此在数据库存档前需对数据进行加密处理;

(5)销毁:数据的最终销毁是数据库存储的最后阶段,该阶段关系着数据的最后安全问题,当前业界常用的技术有磁盘擦除、物理数据破坏技术等方式。

3.3 基于身份的加密

基于身份认证的加密技术(Identity-Based Cryptogrphy,IBC)是公钥密码学的核心技术之一,当前在电话网加密、电子邮件加密过程中均采用了IBC技术,它是采用IP地址或者域名作为公钥,而非使用数字证书。对于IBC技术的改进已出现多种新策略,如Shamir等人提出的基于数字签名的加密技术—IBS,该算法是基于RSA算法,通过数字签名的方式实现用户认证过程,该策略虽然再认证过程中添加了加密的流程(IdentityBased Encryption,IBE),但并未得出最终的解决方案,该问题在学术界仍是未解课题[9,10,11]。

基于身份认证的密文系统通过第三方的私钥生成器(PKG),创建一个私钥(MK)和公钥(PS),PKG通过向用户公布PS,用户可根据MK和PS生成自有的公钥(UMK),即完成用户身份的加密过程。

3.4 EC密文检索机制

ECC机制依赖于有限域的椭圆曲线理论,该机制自1990年已成为众多数据库密文检索安全研究所遵循的标准,具体介绍如下。

3.4.1 EC算法介绍

ECC机制的最大优势在于其提供了一种平等的安全级别,但在密钥长度上相比RSA较短(这样就降低了密码破解的难度)。本文定义一个系数范围为0到P-1的椭圆曲线方程用来计算模ρ,当使用椭圆曲线来研究密文检索,相当于对阿贝尔群限制系数和变量[7,8],ECC方程表述如公式1所示。

3.4.2 椭圆曲线离散对数问题研究

假设E为有限元Γq的椭圆曲线,P为E上的点n序列,那么对于E的椭圆曲线离散对数问题的研究表述公式2。

3.4.3 基于椭圆曲线密文检索

ECC算法是基于非对称算法为基础的,因此对于集成电路加密、智能卡加密、无线设备加密都具备简单、安全的特性,3.4.2中所介绍的椭圆曲线离散对数问题对ECC算法的安全性研究是十分重要的。文献[9]中对160位的ECC加密与1024的RSA加密同时进行解密处理,结果表明安全系数相差无几,如表1所示为ECC与RSA的密钥对比结果(安全性相当情况)

本文提出的密文检索策略包含三部分:私有密钥生成器(PKG)、可信云(TC)和用户(User)。PKG是用于生成用户的密钥,User从TC租用其存储用于存储自身的数据。通过使用IBC旨在提供更安全的方法来确保用户的数据安全性,以及降低管理的复杂性,并且基于椭圆曲线数字签名算法(后续介绍)提供私钥确保数据的完整性。该策略的核心是将IBC和ECC应用于TC,其中IBC的应用大大降低了密钥管理的复杂性。对于云存储,使用TC的有很多好处,如在CSP中可减少拒绝服务攻击(DOS),如图1所示为系统的总体架构。

算法描述如下:

4 总结

本文提出一个灵活、有效地用于解决云存储的数据库密文检索问题,采用IBC使用提供密钥管理和不需证书的优势,通过ECC确保数据安全以及云存储之前的加密处理,并且保证了数据的完整性,未来的研究可能会考虑在使用等级等基于身份的密码学(HIBC)来代替IBC技术。

摘要:云存储的应用相比传统的数据库技术具备更高的可用性、更低廉的运行成本、更便捷地管理以及更为敏捷的运行模式。云存储是云计算应用的基础,是一种按需使用、按需付费的数据库管理模式,并支持海量数据的存储。但由于当前云存储的安全问题,用户并非将自身的核心数据放到云端管理。针对该研究背景,本文提出一种安全、有效以及灵活的方法用于提高云存储密文检索的安全性,通过采用IBC技术提高了管理的方便性,采用ECC技术提供了数据机密性的提升,同时采用ECDS技术确保了数据的完整性。

存储检索 篇3

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.

存储检索 篇4

医学影像能清晰准确地展示人体的内部组织, 临床医生借助这些影像能够对患者的病情有直观的了解, 因此医学影像对疾病的诊断和治疗有着不可替代的作用。传统的影像设备产生的影像资料以胶片的形式存在, 不利于存储、复制和转移等处理。随着现代影像技术和图像处理技术的深入发展, 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.

存储检索 篇5

关键词:历史数据,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.

上一篇:专业人才培养模式下一篇:公司的年龄密码