[发明专利]一种非结构化数据查询操作语言的解析与处理方法有效
申请号: | 201210190832.5 | 申请日: | 2012-06-11 |
公开(公告)号: | CN102750354A | 公开(公告)日: | 2012-10-24 |
发明(设计)人: | 王建民;丁贵广;卓安;黄向东 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 罗文群 |
地址: | 100084*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 结构 数据 查询 操作 语言 解析 处理 方法 | ||
技术领域
本发明涉及一种非结构化数据查询操作语言的解析与处理方法,属于计算机数据管理技术领域。
背景技术
随着互联网等新兴应用的日益丰富以及企业信息化建设的不断发展,出现了大量的非结构化数据。由于非结构化数据数据类型丰富,结构复杂,没有明确的、统一定义的数据结构约束,加之其海量的数据规模,高度动态的数据特性,多样的应用场景,统一的联合访问需求,使得非结构化数据管理面临巨大挑战。
传统的关系数据库在处理海量的非结构化数据上难以提出有效的解决方案。传统数据库的数据模型都是模式优先的逻辑结构,而非结构化数据则是模式滞后的逻辑结构,这使得建立在关系代数基础上的数据管理方法在解决非结构化数据的问题上不再有效。非结构化数据的海量特性也使得传统数据库在性能和扩展性上无能为力。
新兴的键值库以无模式的方式打破了传统数据库的模式优先逻辑,同时它以键值的方式保证了高速的读写。现在流行并发展迅速的键值库有HBase、MangoDB、Dynamo和Cassandra等等。他们以分布式集群方式保证了海量数据的存储与扩展性,本发明正是基于这样的键值库。
然而新兴的键值库并没有完善的查询方式和查询语言。如HBase提供了API访问,Cassandra提供了API与一种名为CQL的类SQL语言方式访问。然而他们由于自身数据库的限制,仅能对非结构化数据进行简单的查询与更新,没有提供复杂的分析函数,也没有考虑大容量数据的语言描述方式。CouchDB与SQLite两创始人联合在试图设计键值库的统一查询语言UnQL,然而目前也仅仅只有雏形,对于非结构化数据的多特征查询这一特点也没有有效考虑。
从最终用户和应用的角度,非结构化数据查询语言应该解决以下问题:
(1)支持面向键值库存储的非结构化数据查询;
现有的非结构化数据多以存储在键值库中作为海量与高效读写的解决方案,而键值库往往没有提供易用的查询语言。
(2)能有效解决不同非结构化数据的多种特征的统一查询;
现有的CQL等语言只提供简单的查询功能,无法对非结构化数据进行特征检索。比如对图像数据进行直方图、颜色等特征检索,对音频进行MFCC特征检索等等。
(3)如何进行有效地数据查询与分析。
传统数据查询仅仅实现索引和简单的统计函数。对于海量的非结构化数据而言,很多结果需要进行数据的分析得出,因此查询语言应该尽可能的支持更多的数据分析函数。
发明内容
本发明的目的是提出一种非结构化数据查询操作语言的解析与处理方法,针对非结构化数据管理领域存在的问题,用一种类似SQL语言的方式来访问底层的键值库,以达到让用户轻松操作键值库来管理非结构化数据的目的。
本发明提出的非结构化数据管理查询语言的解析和处理方法,包括以下步骤:
(1)启动键值库中的查询模块,查询模块监听用户的查询语言请求;
(2)查询模块接收用户的的查询语言请求,对语言进行解析,解析步骤如下:
(2-1)用户端采用查询语言驱动方式连接查询模块,建立用户端与查询模块之间的会话,并保存会话过程中的会话信息,访问查询模块,向查询模块发送查询语言;
(2-2)通过查询模块中的解析器,查询模块将用户端发送的查询语言请求转换为内部命令;
(3)对上述内部命令进行判断,若该内部命令为指定本次会话的键值库表的命令,则查询模块保存该指定键值库表的名字,并在后续的命令中默认本次会话在该键值库表下执行;若查询语言中的任意位置具有一个相似关键字,则查询模块将该内部命令转交给键值库中的索引调用模块;若查询语言中的任意位置具有一个函数关键字,则查询模块将该内部命令转交给键值库中的函数调用模块;
(4)键值库中的查询模块根据内部命令,调用键值库中的各功能模块执行内部命令,具体过程如下:
(4-1)若内部命令为结构化查询命令,则采用键值库中的服务器执行命令;
(4-2)若内部命令为创建键值库索引命令,则采用键值库中的服务器执行命令;
(4-3)若内部命令为创建非键值库索引命令,则构建一个索引实现库,并调用索引实现库执行命令;
(4-4)若内部命令为运行数据函数分析命令,则构建一个数据函数分析模块,并调用数据函数分析模块执行命令,查询模块获取命令的执行状态和执行结果;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210190832.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:激活码道检测方法及装置
- 下一篇:一种大规模数字水帘的控制方法及装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置