对大规模结构化和非结构化数据联合处理的系统及方法

文档序号:6520970阅读:1220来源:国知局
对大规模结构化和非结构化数据联合处理的系统及方法
【专利摘要】本申请公开一种对大规模结构化和非结构化数据联合处理的系统及方法,包括数据联合模块、关键词提取模块、关键词索引建立模块、海量数据存储模块以及查询处理模块。数据联合模块读取结构化和非结构化数据,并形成记录数据和内容数据;关键词提取模块对内容数据进行分词,形成记录标识和该条记录所包含的关键词对应关系数据;关键词索引建立模块接收关键词数据,对数据进行倒排,形成关键词和记录标识的对应关系数据,并将其存入关键词索引表。通过本发明申请的方法,能够快速有效的对大规模的非结构化文本数据和结构化数据进行联合处理和检索,解决了现有系统无法将二者进行高效联合处理的问题。
【专利说明】 对大规模结构化和非结构化数据联合处理的系统及方法
【技术领域】
[0001]本申请属于信息【技术领域】,尤其涉及一种在海量数据中对结构化和非结构化数据进行联合处理的系统及方法。
【背景技术】
[0002]随着互联网的快速发展,网页、博客、社交网络、即时通信软件等应用迅速普及,产生了大量的内容数据。其中,用户注册信息、访问记录等数据呈现结构化的特征;而网页、博客、论坛等内容数据没有固定的数据结构,数据量庞大,呈现出非结构化的数据特征。如何对这些大规模的结构化和非结构化的数据进行有效的存储、管理和检索,成为了业界研究的热点。
[0003]传统的关系型数据库技术能够有效的进行结构化数据的存储和访问,支撑基于结构化数据的应用服务,如用户管理系统、课程管理系统,计费系统等。而对于非结构化文本数据,搜索引擎技术能够对其建立有效的索引,从而实现快速检索用户关注的文本内容。
[0004]用户在一些场景下,需要对结构化数据和非结构化数据进行联合检索。虽然有一些现有系统也能够处理类似的问题,如学术论文搜索系统、专利检索系统等,能够结合非结构化文本内容和结构化的文章属性等进行联合检索,但是这些系统无法处理大规模的互联网结构化和非结构化数据。

【发明内容】

[0005]本专利申请要解决的技术问题是:提供一种能够快速有效的对大规模的结构化和非结构化数据进行联合处理的方法,解决现有系统无法将二者进行高效联合处理的问题。
[0006]为了解决上述技术问题,本专利申请提供了一种对大规模结构化和非结构化数据联合处理的系统及方法。本申请所述系统包括数据联合模块、关键词提取模块、关键词索引建立模块、海量数据存储模块以及查询处理模块。在海量数据存储模块中包含两类数据表:联合数据表以及关键词索引表,联合数据表存储结构化和非结构化数据联合以后的数据,关键词索引表存放关键词和记录标识的对应关系数据,即关键词索引数据。
[0007]数据联合模块读取非结构化的文本数据,其中包含能够关联结构化数据的标识信息,如用户名、用户标识等。通过结构化数据标识信息,将非结构化文本和结构化数据进行联合,形成记录数据。联合的方法是将结构化数据中查询可能使用的字段(例如姓名、性另O、年龄、职业、位置等)提取出来,和非结构化文本信息纽合起来,形成一个存储结构(如字符串、字节数组等)。记录数据中包含非结构化文本数据和结构化数据字段,并给每条记录数据赋予一个全局唯一的记录标识。同时数据联合模块将非结构化文本和记录标识结合形成内容数据。数据联合以后,将记录数据存入海量数据存储模块中的联合数据表,使用记录标识进行区分,并将内容数据发送给关键词提取模块进行处理。
[0008]海量数据存储模块用来存储大规模的结构化和非结构化数据。
[0009]关键词提取模块接收到内容数据以后,对其中的文本进行分词,并根据分词后各个词的权重信息,提取出能够代表文本大意的关键词信息,形成记录标识和该条记录所包含的关键词的对应关系数据,并将其发送给关键词索弓I建立模块。
[0010]关键词索引建立模块接收关键词数据,对数据进行倒排,形成关键词和记录标识的对应关系数据,并将其存入海量数据存储模块中的关键词索引表。
[0011]查询处理模块接收客户端的查询请求,根据请求中的关键词条件,查询关键词索引表,获取符合条件的记录标识集合,再根据结构化查询条件和关键词记录标识集合,查询联合记录表,获取符合条件的数据记录,返回给应用客户端。
[0012]本申请的有益后果是:
[0013]采用本专利申请所述的系统及方法,对非结构化文本数据提取出来的关键词建立索引,通过关键词索引快速获取到符合关键词条件的记录标识,通过记录标识查询联合数据表,并使用结构化查询条件进行过滤,能够快速有效的对大规模的非结构化文本数据和结构化数据进行联合处理和检索,解决了现有系统无法将二者进行高效联合处理的问题。
【专利附图】

【附图说明】
[0014]附图1为本专利申请的系统架构图
[0015]附图2为检索流程图
【具体实施方式】
[0016]本专利申请所述的对大规模结构化和非结构化数据联合处理的系统及方法,其系统架构如附图1所示,包括数据联合模块、关键词提取模块、关键词索引建立模块、海量数据存储模块以及查询处理模块,其中,海量数据存储模块包含联合数据表以及关键词索引。
[0017]本专利申请所述海量数据模块区别于传统的关系型数据库,海量数据存储模块可以存储非关系型的非结构化和半结构化数据,具有分布式可线性扩展的体系架构,存储容量可以达到数百TB至数十PB级别。比较成熟的海量数据存储实现有开源的HBaSe、HyperTable等。在海量数据存储模块的联合数据表中,使用记录标识作为记录数据的行键(RowKey),能够通过记录标识快速获取到记录数据。通过对记录数据中的结构化字段建立自定义的过滤器,能够获取到符合不同结构化查询条件的记录数据。
[0018]查询处理流程如附图2所示,具体包括如下步骤:
[0019]I)查询条件分析。首先,从查询请求中获取关键词条件和结构化查询条件;然后,从多个关键词条件中分离出不重复的关键词,生成关键词列表;同时保存关键词逻辑关系以及结构化查询条件;
[0020]2)关键词索引查询。根据分离出的关键词列表,从关键词索引表中查询所有关键词对应的记录标识,生成关键词对应的记录标识列表;
[0021]3)记录归并。根据关键词逻辑关系,对关键词查询到的关键词对应记录标识列表做集合运算,获取最终符合关键词条件的记录标识集合。关键词为“与”关系,则对应的记录标识列表做交集运算;关键词为“或”关系,则对应的记录标识列表做并集运算。
[0022]例如关键词逻辑关系为:(关键词1&&关键词2) I I关键词3,则最终符合条件的记录标识集合为关键词I和关键词2对应的记录列表做交集,之后再和关键词3对应的记录标识集合做并集。[0023]4)联合数据表查询。对符合关键词条件的记录标识集合中的每个记录标识,结合结构化查询条件做过滤,查询联合数据表,获取最终符合全部查询条件的记录,并返回给客户端。
[0024]以上实施方案的说明只适用于帮助理解本专利申请的原理,同时对本领域的一般技术人员,依据本专利申请实施例,在【具体实施方式】以及应用范围上均会有改变之处,因此本说明书内容不应理解为对本专利申请的限制。
【权利要求】
1.对大规模结构化和非结构化数据联合处理的系统,其特征在于:包括数据联合模块、关键词提取模块、关键词索弓I建立模块、海量数据存储模块以及查询处理模块。
2.对大规模结构化和非结构化数据联合处理的方法,其特征在于,数据存储过程包括如下步骤: 1)数据联合模块读取结构化数据和非结构化数据,通过结构化数据标识信息将非结构化数据和结构化数据进行联合,形成记录数据,联合的方法是将结构化数据中查询可能使用的字段提取出来,和非结构化文本信息组合起来,形成一个存储结构; 2)给每条记录数据赋予一个全局唯一的记录标识,将非结构化数据和该记录标识结合形成内容数据; 3)将记录数据存入海量数据存储模块中,将内容数据发送给关键词提取模块; 4)关键词提取模块接收到内容数据以后,对其中的文本进行分词,并根据分词后各个词的权重信息,提取出能够代表文本大意的关键词信息,形成记录标识和该条记录所包含的关键词对应关系数据,并将其发送给关键词索引建立模块; 5)关键词索引建立模块接收关键词数据,对数据进行倒排,形成关键词和记录标识的对应关系数据,并将其存入海量数据存储模块中。
3.如权利要求2所述的对大规模结构化和非结构化数据联合处理的方法,其特征在于:海量数据存储模块中包含联合数据表以及关键词索引表;联合数据表存储记录数据,关键词索弓I表存储关键词索弓I数据。
4.如权利要求2所述的对大规模结构化和非结构化数据联合处理的方法,其特征在于,进行数据检索时,包括如下步骤: 1)从查询请求中获取关键词条件和结构化查询条件,从关键词条件中分离出不重复的关键词,生成关键词列表;同时保存关键词逻辑关系以及结构化查询条件; 2)根据分离出的关键词列表,从关键词索引表中查询所有关键词对应的记录标识,生成关键词对应的记录标识列表; 3)根据关键词逻辑关系,对关键词查询到的关键词对应记录标识列表做集合运算,关键词为“与”关系,则对应的记录标识列表做交集运算,关键词为“或”关系,则对应的记录标识列表做并集运算,获取最终符合关键词条件的记录标识集合; 4)对符合关键词条件的记录标识集合中的每个记录标识,结合结构化查询条件做过滤,查询联合数据表,获取最终符合全部查询条件的记录。
【文档编号】G06F17/30GK103631909SQ201310615976
【公开日】2014年3月12日 申请日期:2013年11月26日 优先权日:2013年11月26日
【发明者】周帅锋, 赵智峰, 曹俊亮, 穆宁 申请人:烽火通信科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1