公开/公告号CN103631909A
专利类型发明专利
公开/公告日2014-03-12
原文格式PDF
申请/专利权人 烽火通信科技股份有限公司;
申请/专利号CN201310615976.5
申请日2013-11-26
分类号G06F17/30;
代理机构
代理人
地址 430070 湖北省武汉市洪山区邮科院路88号
入库时间 2024-02-19 23:10:49
法律状态公告日
法律状态信息
法律状态
2017-01-11
授权
授权
2014-04-09
实质审查的生效 IPC(主分类):G06F17/30 申请日:20131126
实质审查的生效
2014-03-12
公开
公开
技术领域
本申请属于信息技术领域,尤其涉及一种在海量数据中对结构化和非结构化数据进行联合处理的系统 及方法。
背景技术
随着互联网的快速发展,网页、博客、社交网络、即时通信软件等应用迅速普及,产生了大量的内容 数据。其中,用户注册信息、访问记录等数据呈现结构化的特征;而网页、博客、论坛等内容数据没有固 定的数据结构,数据量庞大,呈现出非结构化的数据特征。如何对这些大规模的结构化和非结构化的数据 进行有效的存储、管理和检索,成为了业界研究的热点。
传统的关系型数据库技术能够有效的进行结构化数据的存储和访问,支撑基于结构化数据的应用服务, 如用户管理系统、课程管理系统,计费系统等。而对于非结构化文本数据,搜索引擎技术能够对其建立有 效的索引,从而实现快速检索用户关注的文本内容。
用户在一些场景下,需要对结构化数据和非结构化数据进行联合检索。虽然有一些现有系统也能够处 理类似的问题,如学术论文搜索系统、专利检索系统等,能够结合非结构化文本内容和结构化的文章属性 等进行联合检索,但是这些系统无法处理大规模的互联网结构化和非结构化数据。
发明内容
本专利申请要解决的技术问题是:提供一种能够快速有效的对大规模的结构化和非结构化数据进行联 合处理的方法,解决现有系统无法将二者进行高效联合处理的问题。
为了解决上述技术问题,本专利申请提供了一种对大规模结构化和非结构化数据联合处理的系统及方 法。本申请所述系统包括数据联合模块、关键词提取模块、关键词索引建立模块、海量数据存储模块以及 查询处理模块。在海量数据存储模块中包含两类数据表:联合数据表以及关键词索引表,联合数据表存储 结构化和非结构化数据联合以后的数据,关键词索引表存放关键词和记录标识的对应关系数据,即关键词 索引数据。
数据联合模块读取非结构化的文本数据,其中包含能够关联结构化数据的标识信息,如用户名、用户 标识等。通过结构化数据标识信息,将非结构化文本和结构化数据进行联合,形成记录数据。联合的方法 是将结构化数据中查询可能使用的字段(例如姓名、性别、年龄、职业、位置等)提取出来,和非结构化 文本信息纽合起来,形成一个存储结构(如字符串、字节数组等)。记录数据中包含非结构化文本数据和 结构化数据字段,并给每条记录数据赋予一个全局唯一的记录标识。同时数据联合模块将非结构化文本和 记录标识结合形成内容数据。数据联合以后,将记录数据存入海量数据存储模块中的联合数据表,使用记 录标识进行区分,并将内容数据发送给关键词提取模块进行处理。
海量数据存储模块用来存储大规模的结构化和非结构化数据。
关键词提取模块接收到内容数据以后,对其中的文本进行分词,并根据分词后各个词的权重信息,提 取出能够代表文本大意的关键词信息,形成记录标识和该条记录所包含的关键词的对应关系数据,并将其 发送给关键词索引建立模块。
关键词索引建立模块接收关键词数据,对数据进行倒排,形成关键词和记录标识的对应关系数据,并 将其存入海量数据存储模块中的关键词索引表。
查询处理模块接收客户端的查询请求,根据请求中的关键词条件,查询关键词索引表,获取符合条件 的记录标识集合,再根据结构化查询条件和关键词记录标识集合,查询联合记录表,获取符合条件的数据 记录,返回给应用客户端。
本申请的有益后果是:
采用本专利申请所述的系统及方法,对非结构化文本数据提取出来的关键词建立索引,通过关键词索 引快速获取到符合关键词条件的记录标识,通过记录标识查询联合数据表,并使用结构化查询条件进行过 滤,能够快速有效的对大规模的非结构化文本数据和结构化数据进行联合处理和检索,解决了现有系统无 法将二者进行高效联合处理的问题。
附图说明
附图1为本专利申请的系统架构图
附图2为检索流程图
具体实施方式
本专利申请所述的对大规模结构化和非结构化数据联合处理的系统及方法,其系统架构如附图1所示, 包括数据联合模块、关键词提取模块、关键词索引建立模块、海量数据存储模块以及查询处理模块,其中, 海量数据存储模块包含联合数据表以及关键词索引。
本专利申请所述海量数据模块区别于传统的关系型数据库,海量数据存储模块可以存储非关系型的非 结构化和半结构化数据,具有分布式可线性扩展的体系架构,存储容量可以达到数百TB至数十PB级别。 比较成熟的海量数据存储实现有开源的HBase、Hyper Table等。在海量数据存储模块的联合数据表中,使 用记录标识作为记录数据的行键(Row Key),能够通过记录标识快速获取到记录数据。通过对记录数据中 的结构化字段建立自定义的过滤器,能够获取到符合不同结构化查询条件的记录数据。
查询处理流程如附图2所示,具体包括如下步骤:
1)查询条件分析。首先,从查询请求中获取关键词条件和结构化查询条件;然后,从多个关键词条 件中分离出不重复的关键词,生成关键词列表;同时保存关键词逻辑关系以及结构化查询条件;
2)关键词索引查询。根据分离出的关键词列表,从关键词索引表中查询所有关键词对应的记录标识, 生成关键词对应的记录标识列表;
3)记录归并。根据关键词逻辑关系,对关键词查询到的关键词对应记录标识列表做集合运算,获取 最终符合关键词条件的记录标识集合。关键词为“与”关系,则对应的记录标识列表做交集运算; 关键词为“或”关系,则对应的记录标识列表做并集运算。
例如关键词逻辑关系为:(关键词1&&关键词2)||关键词3,则最终符合条件的记录标识 集合为关键词1和关键词2对应的记录列表做交集,之后再和关键词3对应的记录标识集合做并 集。
4)联合数据表查询。对符合关键词条件的记录标识集合中的每个记录标识,结合结构化查询条件做 过滤,查询联合数据表,获取最终符合全部查询条件的记录,并返回给客户端。
以上实施方案的说明只适用于帮助理解本专利申请的原理,同时对本领域的一般技术人员,依据本专 利申请实施例,在具体实施方式以及应用范围上均会有改变之处,因此本说明书内容不应理解为对本专利 申请的限制。
机译: 用于处理非结构化数据的系统,用于处理非结构化数据的方法以及记录介质
机译: 非结构化数据处理系统,非结构化数据处理方法和程序
机译: 非结构化数据处理系统,非结构化数据处理方法和程序