一种非结构化数据管理的全过程建模方法

文档序号:6372611阅读:626来源:国知局
专利名称:一种非结构化数据管理的全过程建模方法
技术领域
本发明涉及非结构化数据管理领域,尤其涉及一种非结构化数据管理的全过程建模方法。
背景技术
随着互联网和多媒体技术的发展,出现了海量的非结构化数据,如互联网中的HTML文件,视频、音频、图像等多媒体数据,工业生产中的传感器数据等。非结构化数据类型丰富,结构复杂、多样,没有统一定义的数据约束条件,传统的关系型数据管理系统难以满足应用对非结构化数据有效管理的要求,互联网、新闻媒体、流 程工业等行业对非结构化数据管理系统的需求非常强烈。对于非结构化数据管理系统来 说,数据管理过程的建模十分重要,但目前尚无成熟的方法。 目前复杂数据建模主要有以下两种方法
1、扩展关系模型在关系模型基础上增加新的数据类型和相应操作,但不支持数据嵌套和类型继承,使模型难以重用、复杂数据建模低效;
2、利用面向对象的模型支持数据嵌套和类型继承,但非结构化数据在原始数据、基本信息、特征等层面上均有数据建模的需求,直接利用面向对象的模型难以对不同层面的数据进行区分,进而影响整个非结构化数据管理系统的效率。此外,以上两种方法均只能进行数据存储建模,而非结构化数据系统不仅包含数据存储功能,还有对原始数据进行特征抽取和分析、基于特征的索引、样例查询等管理功能,这些功能与数据间均存在一定的关联,功能本身的实现复杂、多样,因此也需要建模方法的支持。

发明内容
本发明的目的是针对现有技术的不足,提供一种非结构化数据管理的全过程建模方法(R-A-I-S-E),本发明的方法可以用来管理包含文本、音频、视频、图像等的非结构化数据,以满足用户对非结构化数据存储、关联和检索等管理需求。本发明的目的是通过以下技术方案来实现的一种非结构化数据管理的全过程建模方法(R-A-I-S-E),该方法包括以下步骤
(I)建立Repository存储模型,该步骤由以下子步骤来实现
(I. O如果是一个新的非结构化数据管理应用,则建立一个新的命名空间NameSpace,指定命名空间NameSpace的名称;否则,直接跳到I. 2 ;
(I. 2)进入应用的命名空间;
(1.3)是否需要创建UType,如果不需要则存储模型创建结束,否则创建UType,指定UType的名称;
(I. 4)查看模型中是否有需要的UType,可以对模型中的UType进行复用和扩展,如果没有则跳到I. 5,否则继承模型中满足需求的UType,UType支持多重继承,继承UType将继承父UType的所有特征和分析、索引模型;
(I. 5)向UType中添加特征,查看模型中是否有满足条件的特征类型,如果有则直接向UType中添加特征,指定特征名和特征类型,否则跳到I. 6,创建新的特征类型;
(I. 6)基于模型提供的Integer、String、Blob、Vector、Matrix等基本数据类型建立特征类型,指定特征类型的名称和基本数据类型;本步骤中的过程又可以分为以下子步骤(I. 6. I)指定基本数据类型时,如果FeatureType的类型是Vector,则需要指定基本数据类型Integer或Float或Double和Vector的维数;
(I. 6. 2)如果FeatureType的类型是Matrix,则需要指定基本数据类型Integer或Float或Double和Matrix的行数、列数; (I. 6. 3)如果FeatureType是Link类型,若Link类型需要指定关联的UType,如果该UType不存在,则需要跳到I. 4先创建非结构化数据类型UType,再将FeatureType关联到该UType ;若Link类型是无指定UType类型的,则继续重复I. 5、I. 6向UType中添加FeatureType,直到添加 FeatureType 结束;
(I. 7)建立UType的实例化对象集合Collection,需要指定数据集合的名称和对应的UType类型,并选择对象集合的存储方式,如果应用希望支持事务等操作而数据量又不大,则应该选择关系型数据库;如果应用具有海量的数据,则应该选择分布式键值数据库;继续重复I. 4^1. 7创建UType和数据集合,直到结束;
(2)建立Analysis分析模型,该步骤由以下子步骤来实现
(2. I)进入命名空间;
(2. 2)如果用于分析的插件已存在系统中,则直接跳到2. 3,否则先上传分析插件;上传插件的步骤又可以具体分为以下几步
(2. 2. I)指定分析插件名称和分析算法;
(2. 2. 2)指定插件输入输出的名称和特征类型列表;
(2. 2. 3)指定分析插件运行的主文件,便于运行时调用插件;
(2. 2. 4)如果插件需要指定可配置的参数,则指定可配置参数的名称和类型,否则上传插件完成;
(2. 3)选择合适的算法进行分析,选择2. 2. I中指定的分析插件名称,如果分析算法有可配置的参数,则跳到2. 4,否则直接跳到2. 5 ;
(2. 4)指明步骤2. 3中指定需要配置参数的名称和值;
(2. 5)指定分析算法数据输入,即UType和特征列表,按照插件的输入列表顺序指定;(2. 6)指定分析算法数据输出,即UType及其中的特征列表,按照插件的输出列表顺序指定;
(2. 7)对于输出的特征列表可以指定UType中已经存在的特征,也可以在UType中添加新的特征,按照存储模型中的步骤I. 6指定特征名称和特征类型,方便模型的扩展;
(3)建立Index索引模型,该步骤由以下子步骤来实现
(3. I)进入命名空间;
(3. 2)指定UType名称;
(3. 3)选择非结构化管理系统中合适的索引方式;
(3. 4)指定索引方式的距离计算参数;(3. 5)指定需要索引的UType和特征列表,对于可以支持一次索引多个项的索引可指定多个特征;
(4)建立Search搜索模型,该步骤由以下子步骤来实现
(4. I)进入命名空间;
(4. 2)指定查询的UType名称;
(4. 3)选择合适的查询方式,包括属性查询、样例查询、全文查询、XML查询及其混合查询,查询方式需要该UType上的索引模型的支持;如果特征建立了多个索引,每一种查询方式可以指定合适的索引完成,每一种查询方式的含义是
(4. 3. I)属性查询,对数值和简单文字的属性判断;
(4. 3. 2)样例查询,用图像、视频等样例来查询相似样例;
(4. 3.3)全文查询,复杂文字的精确匹配和模糊匹配;
(4. 3. 4) XML 查询,XQuery 查询;
(4. 4)指定对各查询条件的权重,用来计算查询结果排名;
(4. 5)定义查询相关性反馈,接收用户对查询结果的评价,为用户提供二次查询服务;如果用户从查询结果中选择正相关样例,则加上这些正相关样例的相似查询反馈给用户;如果用户从查询结果中选择反相关样例,则加上这些反相关样例的非相似查询反馈给用户。(5)建立Environment环境模型,该步骤由以下子步骤来实现
(5. I)进入命名空间;
(5. 2)指定UType名称;
(5.3)如果UType实例化的数据集合需要进行分析,则创建分析模型,否则直接跳到
5.4 ;
(5. 4)如果UType实例化的数据集合需要建立索引,则创建索引模型,如果分析模型的输出结果为索引模型的输入,则系统将对分析模型和索引模型的执行顺序进行排序;否则直接跳到5. 5 ;
(5. 5)如果没有分析模型或者索引模型,则直接跳到5. 6,否则需要设定在数据集合上执行分析或索引模型定义的具体方式,包括增量式和批量式两种方式;
(5. 5. I)如果需要创建增量式任务,需要指定数据集合Collection的名称,对应的分析或索引模型,这样在用户插入一条数据的时候就会根据分析或索引模型的定义对数据对象执行增量式分析或索引任务;
(5. 5. 2)如果需要创建批量式任务,需要指定数据集合Collection的名称,对应的分析或索引模型,如果不立即执行批量式任务,则需要指定执行任务的时间,在到达指定时间后可以根据分析或索引模型的定义对指定的Collection中所有的数据执行分析或索引任务;
(5.6)如果需要创建搜索模型,则创建搜索模型。本发明的有益效果是,
第一,存储、分析、索引和搜索及其之间的执行流程覆盖了非结构化数据管理系统的全过程,使用该建模方法应用可快速方便建立应用系统,这也是本发明的一个创新之处;
第二,存储、分析、索引和搜索模型间松散耦合,可通过环境模型灵活组织执行流程,满足应用的不同需求;
第三,存储模型中的数据类型UType的继承特性和特征类型FeatureType的提出,提高了模型的复用率和扩展性;
第四,存储模型中的基本数据类型Vector、Matrix和Blob能够满足对非结构化数据特征描述的需求;
第五,特征类型和分析模型的提出,可以方便表示和挖掘非结构化数据复杂的特征; 第六,搜索模型中丰富的查询类型可以满足各种非结构化数据管理系统的需求;
第七,提供数 分析处理的不同方式,分析算法采用灵活的插件方式,满足不同应用场景的需求。


图I是本发明的方法流程 图2是图I中存储模型的组成框 图3是建立存储模型流程 图4是建立分析模型流程 图5是建立索引模型流程 图6是建立搜索模型流程 图7是建立环境模型流程图。
具体实施例方式本发明非结构化数据管理的全过程建模方法(R-A-I-S-E),包括建立Itepository存储模型、建立Analysis分析模型、建立Index索引模型、建立Search搜索模型和建立Environment环境模型五个步骤,将模型的内容作为元数据进行存储,并将其映射到具体的数据引擎进行操作,具体包括以下步骤
I、建立Repository存储模型
存储模型描述了非结构化数据在逻辑上的存储形式,采用基于面向对象的存储建模方法,支持数据关联和类型继承。将特征类型分为原始数据、基本属性、底层特征和语义特征,提供了 Blob类型来表示原始数据和复杂的语义特征,Vector和Matrix类型来表示底层特征和简单的语义特征。除此之外,还提供了 Link类型来表示对象之间的关联,支持对象集合的嵌套。类型继承同时继承了 UType中的特征和定义在UType上的分析模型和索引模型。存储模型的建立主要包括命名空间NameSpace、非结构化数据类型UType (Unstructured data Type)、特征类型 FeatureType 和基本数据类型 ValueType 几个要素。用户在命名空间中,建立特征类型和非结构化数据类型UType,将这些信息作为元数据存储;接下来根据需求指定合适的数据存储引擎,创建模型的实例化数据集合Collection。非结构数据管理系统可以提供不同的的数据存储引擎,如关系型数据库、分布式键值存储系统和XML数据库等,以满足不同应用对物理存储的不同需求。存储模型的框架图如图2所示,主要分为四层,从下到上依次为基本数据类型ValueType、特征类型FeatureType、非结构化数据类型UType和命名空间NameSpace。在阐述存储模型建模过程之前,先介绍几个重要的定义。基本数据类型ValueType :模型中的基本数据类型ValueType包括Integer、String、Float、Double、Decimal、Uri、Blob、Link、Date、DateTime、Vector 和 Matrix,及其这些类型的集合和列表类型。基本数据类型中需要详细说明的有以下几点
A、Integer、Float、Double、Uri用法和一般数据库类似,Date表示日期,如2012-05-23,DateTime 表示日期时间,如 2012-05-23T12:30:00 ;
B、Decimal用来表示高精度的数值;
C、String类型的长度限制为64K,超过64K的文本可采用Blob类型表示; D、Vector和Matrix能满足一般特征类型的描述需要,可指定其基本类型为3种Integer、Float 和 Double ;
E、Blob用来表示原始非结构化原数据和复杂的特征类型,其结构为名称、类型、长度和二进制块,文件二进制块中的内容无定义,用户可根据需要来表示复杂的特征类型,也可以存放原始数据。因此Blob根据类型不同又可分为FeatureTypeBlob、XMLBlob、ImageBlob、TextBlob、AudioBlob、VideoBlob 等;
F、Link用来表示UType之间的关联,保存了链接到的UObject的唯一标识,这是UType关联的实现方式;
G、集合表示无序无重复元素的数据集,列表表示有序元素可重复的数据集,和Link相结合,都可用来表示对象集合的嵌套。特征类型FeatureType :特征类型包括特征类型名称及其基本数据类型,用来定义非结构化数据对象中的特征,包括非结构化原始数据、附带的基本属性、底层特征和语义特征。非结构化原始数据是指视频、图像等的Blob文件,附带的基本属性是指图像的分辨率、压缩方式等元数据,底层特征是指非结构化数据的简单特征,如图像的颜色直方图、边缘直方图等,语义特征是指更复杂和抽象的特征,如图像的人脸识别、场景识别等。特征类型的提出方便了特征类型的重复利用,利用特征发现各数据类型之间的关系。特征类型与分析模型中的分析算法相关,每一种特征类型对应了相应的特征分析算法,它们是分析算法的输出。当FeatureType的基本数据类型为Link时,是一种特殊的特征类型,可以指定链接到的UType,实现UType之间的关联,也可以不指定链接到的UType,实现UType之间混合类型的关联。在权限允许的条件下,可以实现不同NameSpace之间的关联。非结构化数据类型UType (Unstructured data Type) :UType用于定义非结构化数据类型,包括UType名称、若干由特征类型定义的特征以及继承的UType。UType支持继承和关联。UType的继承特性可以提高UType的利用率和方便性。UType的继承方式,同时继承了父UType中的特征和定义在父UType上的分析模型和索引模型,并且支持多重继承。在访问UType中,当UType的继承导致特征重名时,访问父UType的特征时需要在特征前加上父UType的名字作为前缀,即superUType. featureName。UType的关联由Link类型的特征类型实现。UType的实例化为数据对象UObject,包括若干具体的特征名和特征值。若干同种类型的UObject形成数据对象集合Collection, —个UType类型可以实例化多个Collection。Collection包括数据集合名称、对应的UType和存储引擎名称。
应用可以根据需要指定存储引擎,常用的存储引擎第一类为关系型存储引擎,如MySQL,支持事务、连接查询等,但是数据量方面不能满足非结构化数据的需要;第二类为分布式键值存储引擎,如HBase,能够存储海量数据;第三类为XML存储引擎。因此用户可以指定数据的存储方式,以满足特定的需求。非结构化数据管理系统提供存储模型到存储引擎的映射关系。命名空间NameSpace NameSpace用来隔离不同的非结构化数据应用系统,保持不同应用数据的相对独立性。NameSpace中包含FeatureType、UType、Collection以及依赖于UType的其余四种模型。命名空间、UType、特征类型、数据集合的信息作为元数据进行存储,具体的数据对象将按照元数据到存储引擎的映射规则,存储到指定的存储引擎。存储模型支持命名空间、UType、特征类型、数据集合的增删查改操作。 建立存储模型的流程图如图3所示,包括以下步骤
I.I、如果是一个新的非结构化数据管理应用,则建立一个新的命名空间NameSpace,指定命名空间NameSpace的名称;否则,直接跳到I. 2 ;
I.2、进入应用的命名空间;
I.3、是否需要创建UType,如果不需要则存储模型创建结束,否则创建UType,指定UType的名称;
I.4、查看模型中是否有需要的UType,可以对模型中的UType进行复用和扩展,如果没有则跳到I. 5,否则继承模型中满足需求的UType,UType可以支持多重继承,继承UType将继承父UType的所有特征和分析、索引模型;
I.5、向UType中添加特征,查看模型中是否有满足条件的特征类型,如果有则直接向UType中添加特征,指定特征名和特征类型,否则跳到I. 6,创建新的特征类型;
I. 6、基于模型提供的Integer、String、Blob、Vector、Matrix等基本数据类型建立特征类型,指定特征类型的名称和基本数据类型。本步骤中的过程又可以分为以下子步骤
1.6. I、指定基本数据类型时,如果FeatureType的类型是Vector,则需要指定基本数据类型Integer或Float或Double和Vector的维数;
I.6. 2、如果FeatureType的类型是Matrix,则需要指定基本数据类型Integer或Float或Double和行数、列数;
I. 6. 3、如果FeatureType是指定UType的Link类型,若Link类型需要指定关联的UType ;如果该UType不存在,则需要跳到I. 4先创建非结构化数据类型UType,再将FeatureType关联到该UType,若Link类型是无指定UType类型的,则继续重复I. 5、L 6向UType 中添加 FeatureType,直到添加 FeatureType 结束;
I.7、建立UType的实例化对象集合Collection,需要指定数据集合的名称和对应的UType类型,并选择对象集合的存储方式,如果应用希望支持事务等操作而数据量又不大,则应该选择关系型数据库;如果应用具有海量的数据,则应该选择分布式键值数据库;继续重复I. 4^1. 7创建UType和数据集合,直到结束。2、建立Analysis分析模型
分析模型是建立在存储模型的基础之上,描述了分析任务的组成,主要是为了充分挖掘非结构化数据内在的语义和价值。分析模型的输入输出的数据类型对应存储模型中的特征类型。分析模型的建立主要包括指定UType、分析插件,并且指定分析的UType和输入输出特征。在存储模型中定义的底层特征和语义特征通常需要通过分析原始数据及其属性得至丨J,建立分析模型进行管理。分析模型定义在数据类型UType上,由数据集合Collection触发执行,用于定义对数据对象UObject的分析方法,包括分析输入、输出数据,分析算法等。分析模型的信息作为元数据进行存储,在数据集合触发执行分析任务时,会根据分析模型的定义执行。分析算法将以插件的形式加入系统,保证系统的易扩展性。分析模型支持增删查改操作。建立分析模型的流程图如图4所示,包括以下步骤
2. I、进入命名空间;
2. 2、如果用于分析的插件已存在系统中,则直接跳到2. 3,否则先上传分析插件。上传插件的步骤又可以具体分为以下几步
2. 2. I、指定分析插件名称和分析算法;
2. 2. 2、指定插件输入输出的名称和特征类型列表;
2.2. 3、指定分析插件运行的主文件,便于运行时调用插件;
2.2. 4、如果插件需要指定可配置的参数,则指定可配置参数的名称和类型,否则上传插件完成。比如图像的颜色直方图特征算法可以指定结果的向量维度可配置,则需要指定参数维度和数据类型。2. 3、选择合适的算法进行分析,选择2. 2. I中指定的分析插件名称,如果分析算法有可配置的参数,则跳到2. 4,否则直接跳到2. 5 ;
2.4、指明参数的名称和值,比如步骤2. 3中指定颜色直方图提取算法的结果维度可配置,则指定需要配置的参数和具体的值;
2.5、指定分析算法数据输入,即UType和特征列表,按照插件的输入列表顺序指定;
2.6、指定分析算法数据输出,即UType和特征列表,按照插件的输出列表顺序指定;
2.7、对于输出的特征列表可以指定UType中已经存在的特征,也可以在UType中添加新的特征,按照存储模型中的步骤I. 6指定特征名称和特征类型,方便模型的扩展。3、建立Index索引模型
建立Index索引模型索引模型也建立在分析模型的基础之上,描述了索引任务的组成,主要是为了提高查询服务的效率。索引模型的建立主要包括指定索引方式、UType和索引的特征。创建索引模型可以给应用提供更灵活的索引方式,从而提高查询服务的效率。索引模型定义在数据类型UType上,由数据集合Collection触发执行,包括索引特征、索引方式等。索引模型的信息作为元数据进行存储,在数据集合触发执行索引任务时,会根据索引模型的定义执行。索引模型支持增删查改操作。建立索引模型的流程图如图5所示,包括以下步骤
3.I、进入命名空间;
3.2、指定UType名称;
3.3、选择合适的索引方式,非结构化管理系统中可以包含常用的索引方式,如B树、倒排索引、M树、LSH (Locality Sensitive Hashing)哈希索引、R树等,能够满足非结构化数
据管理的基本需要;
3.4、指定索引方式的参数,比如支持向量索引的M树,可以支持多种向量之间的距离计算公式,如欧氏距离等;
3.5、指定需要索引的UType和特征列表,对于可以支持一次索引多个项的索引可以指定多个特征,如B树、倒排索引;对于M树、LSH和R树则只能指定一个特征作为索引项。4、建立Search搜索模型
搜索模型建立在索引模型的基础之上,描述了影响查询结果的各个因素,供用户设置一种有针对性的查询配置。 搜索模型的建立主要包括指定查询方式及其使用的索引模型,包括属性查询、全文查询、样例查询、XML查询及其混合查询,制定对查询条件的偏好和对结果排名的定义,并且可以根据用户行为进行查询相关性反馈;
搜索模型提供了更好地查询和展示非结构化数据的方式。搜索模型与用户搜索数据和界面展示数据紧密相关,依赖于分析模型和索引模型。搜索模型的信息作为元数据进行存储,每当有查询到达时,按照搜索模型中的定义和用户新的查询内容执行查询,返回查询结果。建立搜索模型的流程图如图6所示,包含以下步骤
4.I、进入命名空间;
4.2、指定查询的UType名称;
4.3、选择合适的查询方式,包括属性查询、样例查询、全文查询、XML查询及其混合查询,查询方式需要在该UType上定义的索引模型的支持。如果特征建立了多个索引,每一种查询方式可以指定合适的索引完成,每一种查询方式的含义是
4.3. I、属性查询,对数值和简单文字的属性判断;
4.3. 2、样例查询,如以图像样例来查询相似的图像;
4.3. 3、全文查询,复杂文字的精确匹配和模糊匹配;
4.3. 4、XML 查询,XQuery 查询。四种查询方式的灵活组合可满足应用对管理和展示的需求;
4.4、指定对查询条件的偏好,比如图像的样例查询,对图像的底层特征设定权重,如设定颜色特征的权重为2,而形状特征的颜色为I ;也可以是文字和图像不同查询条件间的权重设定,权重的不同设定使得排名结果受影响;
4.5、定义查询相关性反馈,接收用户对查询结果的评价,为用户提供二次查询服务。如果用户从查询结果中选择正相关样例,则加上这些正相关样例的相似查询反馈给用户;如果用户从查询结果中选择反相关样例,则加上这些反相关样例的非相似查询反馈给用户。5、建立 Environment 环境模型
环境模型是对前面4种模型的执行顺序和方式进行定义,使数据管理尽可能灵活、高效。环境模型的建立主要包括对分析模型、索引模型和搜索模型的选择,以及对分析模型和搜索模型执行方式的定义,包括增量式和批量式两种方式。执行方式的定义建立在模型实例化的数据集合Collection上。环境模型是应用组织非结构化数据管理流程的关键步骤,将全过程中各个环节串起来,根据不同应用场景的需求,组织各个环节的执行和连接方式,以满足各种应用的需求。环境模型的内容作为元数据保存,主要定义了分析、索引和搜索模型的具体组合和执行方式,一方面组合模型的流程,另一方面在数据集合Collection上定义模型的执行方式。建立环境模型的流程图如图7所示,包含以下步骤
5.I、进入命名空间;
5.2、指定UType名称;
5.3、如果UType实例化的数据集合需要进行分析,则创建分析模型,否则直接跳到
5.4 ;
5.4、如果UType实例化的数据集合需要建立索引,则创建索引模型,如果分析模型的输出结果为索引模型的输入,则系统将对分析模型和索引模型的执行顺序进行排序;否则直接跳到5. 5 ;
5.5、如果没有分析模型或者索引模型,则直接跳到5. 6,否则需要设定在数据集合上执行分析或索引模型定义的具体方式,包括增量式和批量式两种方式。5. 5. I、如果需要创建增量式任务,需要指定数据集合Collection的名称,对应的分析或索引模型,这样在用户插入一条数据的时候就会根据分析或索引模型的定义对数据对象执行增量式分析或索引任务;
5.5. 2、如果需要创建批量式任务,需要指定数据集合Collection的名称,对应的分析或索引模型名称,如果批量任务不立即执行,则可以指定执行任务的时间,在到达指定时间后可以根据分析或索引模型的定义对指定的Collection中所有的数据执行分析或索引任务;
5.6、如果需要创建搜索模型,则创建搜索模型。本发明不仅能对应用所涉及的非结构化数据存储、分析、索引和搜索过程分别进行建模,还能通过环境模型描述各部分间的连接和相应的系统行为,满足了非结构化数据应用系统的需求,为这些应用提供了方便和灵活的管理方法。
权利要求
1.一种非结构化数据管理的全过程建模方法,其特征在于,该方法包括以下步骤 (1)建立Repository存储模型,该步骤由以下子步骤来实现 (I. O如果是一个新的非结构化数据管理应用,则建立一个新的命名空间NameSpace,指定命名空间NameSpace的名称;否则,直接跳到I. 2 ; (I. 2)进入应用的命名空间; (1.3)是否需要创建UType,如果不需要则存储模型创建结束,否则创建UType,指定UType的名称; (I. 4)查看模型中是否有需要的UType,可以对模型中的UType进行复用和扩展,如果没有则跳到I. 5,否则继承模型中满足需求的UType,UType支持多重继承,继承UType将继承父UType的所有特征和分析、索引模型; (I. 5)向UType中添加特征,查看模型中是否有满足条件的特征类型,如果有则直接向UType中添加特征,指定特征名和特征类型,否则跳到I. 6,创建新的特征类型; (I. 6)基于模型提供的Integer、String、Blob、Vector、Matrix等基本数据类型建立特征类型,指定特征类型的名称和基本数据类型;本步骤中的过程又可以分为以下子步骤(I. 6. I)指定基本数据类型时,如果FeatureType的类型是Vector,则需要指定基本数据类型Integer或Float或Double和Vector的维数; (I. 6. 2)如果FeatureType的类型是Matrix,则需要指定基本数据类型Integer或Float或Double和Matrix的行数、列数; (I. 6. 3)如果FeatureType是Link类型,若Link类型需要指定关联的UType,如果该UType不存在,则需要跳到I. 4先创建非结构化数据类型UType,再将UType关联到该FeatureType ;若Link类型是无指定UType类型的,则继续重复I. 5、I. 6向UType中添加FeatureType,直到添加 FeatureType 结束; (1.7)建立UType的实例化对象集合Collection,需要指定数据集合的名称和对应的UType类型,并选择对象集合的存储方式,如果应用希望支持事务等操作而数据量又不大,则应该选择关系型数据库;如果应用具有海量的数据,则应该选择分布式键值数据库;继续重复I. 4^1. 7创建UType和数据集合,直到结束; (2)建立Analysis分析模型,该步骤由以下子步骤来实现 (2. I)进入命名空间; (2. 2)如果用于分析的插件已存在系统中,则直接跳到2. 3,否则先上传分析插件;上传插件的步骤又可以具体分为以下几步 (2. 2. I)指定分析插件名称和分析算法; (2. 2. 2)指定插件输入输出的名称和特征类型列表; (2. 2. 3)指定分析插件运行的主文件,便于运行时调用插件; (2. 2. 4)如果插件需要指定可配置的参数,则指定可配置参数的名称和类型,否则上传插件完成; (2. 3)选择合适的算法进行分析,选择2. 2. I中指定的分析插件名称,如果分析算法有可配置的参数,则跳到2. 4,否则直接跳到2. 5 ; (2. 4)指明步骤2. 3中指定需要配置参数的名称和值; (2. 5)指定分析算法数据输入,即UType和特征列表,按照插件的输入列表顺序指定;(2. 6)指定分析算法数据输出,即UType及其中的特征列表,按照插件的输出列表顺序指定; (2. 7)对于输出的特征列表可以指定UType中已经存在的特征,也可以在UType中添加新的特征,按照存储模型中的步骤I. 6指定特征名称和特征类型,方便模型的扩展; (3)建立Index索引模型,该步骤由以下子步骤来实现 (3. I)进入命名空间; (3. 2)指定UType名称; (3. 3)选择非结构化管理系统中合适的索引方式; (3. 4)指定索引方式的距离计算参数; (3. 5)指定需要索引的UType和特征列表,对于可以支持一次索引多个项的索引可指定多个特征; (4)建立Search搜索模型,该步骤由以下子步骤来实现 (4. I)进入命名空间; (4. 2)指定查询的UType名称; (4. 3)选择合适的查询方式,包括属性查询、样例查询、全文查询、XML查询及其混合查询,查询方式需要该UType上的索引模型的支持;如果特征建立了多个索引,每一种查询方式可以指定合适的索引完成,每一种查询方式的含义是 (4. 3. I)属性查询,对数值和简单文字的属性判断; (4. 3. 2)样例查询,用图像、视频等样例来查询相似样例; (4. 3.3)全文查询,复杂文字的精确匹配和模糊匹配;(4. 3. 4) XML 查询,XQuery 查询; (4. 4)指定对各查询条件的权重,用来计算查询结果排名; (4. 5)定义查询相关性反馈,接收用户对查询结果的评价,为用户提供二次查询服务;如果用户从查询结果中选择正相关样例,则加上这些正相关样例的相似查询反馈给用户;如果用户从查询结果中选择反相关样例,则加上这些反相关样例的非相似查询反馈给用户; (5)建立Environment环境模型,该步骤由以下子步骤来实现 (5. I)进入命名空间; (5. 2)指定UType名称; (5. 3)如果UType实例化的数据集合需要进行分析,则创建分析模型,否则直接跳到·5. 4 ; (5. 4)如果UType实例化的数据集合需要建立索引,则创建索引模型,如果分析模型的输出结果为索引模型的输入,则系统将对分析模型和索引模型的执行顺序进行排序;否则直接跳到5. 5 ; (5. 5)如果没有分析模型或者索引模型,则直接跳到5. 6,否则需要设定在数据集合上执行分析或索引模型定义的具体方式,包括增量式和批量式两种方式; (5. 5. I)如果需要创建增量式任务,需要指定数据集合Collection的名称,对应的分析或索引模型,这样在用户插入一条数据的时候就会根据分析或索引模型的定义对数据对象执行增量式分析或索引任务;(5. 5. 2)如果需要创建批量式任务,需要指定数据集合Collection的名称,对应的分析或索引模型,如果不立即执行批量式任务,则需要指定执行任务的时间,在到达指定时间后可以根据分析或索引模 型的定义对指定的Collection中所有的数据执行分析或索引任务; (5. 6)如果需要创建搜索模型,则创建搜索模型。
全文摘要
本发明公开了一种非结构化数据管理的全过程建模方法,包括建立Repository存储模型、建立Analysis分析模型、建立Index索引模型、建立Search搜索模型和建立Environment环境模型五个步骤,将模型的内容作为元数据进行存储,并将其映射到具体的数据引擎进行操作;本发明的方法可以用来管理包含文本、音频、视频、图像等非结构化数据,以满足用户对非结构化数据存储、关联和检索等管理需求。
文档编号G06F17/30GK102779186SQ20121022682
公开日2012年11月14日 申请日期2012年6月29日 优先权日2012年6月29日
发明者唐燕琳, 孙建伶, 庄越挺, 潘云鹤, 邵健, 陈岭, 陈根才, 魏宝刚, 鲁伟明 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1