[发明专利]用于搜索数据库的方法和装置有效
申请号: | 201310095688.1 | 申请日: | 2013-03-15 |
公开(公告)号: | CN104050202B | 公开(公告)日: | 2019-03-15 |
发明(设计)人: | 曹逾;周宝曜;陈齐彦;陈波;孙宇熙 | 申请(专利权)人: | 伊姆西公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华 |
地址: | 美国马*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 搜索 数据库 方法 装置 | ||
1.一种搜索数据库的方法,包括:
基于搜索条件中设定的数据条目之间的连接条件,分组所述数据条目;
使用扩展的SQL查询来实现所述搜索条件,其中所述扩展的SQL查询被使得能够包括嵌套的查询;
基于所述数据条目的所述分组和所述扩展的SQL查询来创建查询图,其中所述查询图中的节点表示所述扩展的SQL查询中的查询变量,并且所述查询图中的节点之间的边缘表示查询变量之间的连接条件或依赖关系;
基于所述查询图来创建从所述扩展的SQL查询导出的查询标头;
分析所述数据条目以确定多个MapReduce是否被使得能够用于搜索;以及
基于所述数据条目的所述分组和所述查询图来执行所述搜索。
2.根据权利要求1所述的方法,其中,所述基于搜索条件中设定的数据条目之间的连接条件,分组所述数据条目进一步包括通过以下中的至少一种来变换所述搜索条件的步骤:
从所述搜索条件中去除模式、重写规则以及去除嵌套。
3.根据权利要求1所述的方法,其中,所述分组还基于所述搜索条件中设定的所述数据条目的值之间的依赖关系进行。
4.根据权利要求1-3中任一所述的方法,其中,所述搜索条件包括SQL查询语句。
5.根据权利要求4所述的方法,其中,所述数据库中的数据项的类型包括以下中的一个:
记录类型<A1:t1,…,An:tn>、序列类型[t]、集合类型{t}、以及映射类型{(t1,t2)};
其中,n是自然数,t1,…,tn是递归定义类型,A1,…,An是组件名,并且映射类型{(t1,t2)}将类型t1的关键字绑定到类型t2。
6.根据权利要求5所述的方法,其中,所述SQL查询语句包括如下形式:
SELECT[DISTINCT]es
FROM pf1in ef1,...,pfn in efn
[WHERE ew]
[GROUP BY pg:eg[HAVING eh]]
[ORDER BY eo]
其中,[]中的语句为可选语句;
并且其中,ef1,…,efn,es、ew、eg、和eo是任意表达式;
FROM子句中的pf1,…,pfn中的每个是模式,ef1,…,efn中的每个是返回序列、集合或者关键字-值配对映射的表达式,“p in e”形式表示模式p匹配e中的每个元素,并将其模式变量绑定到元素中的对应值;
GROUP BY子句中的pg:eg形式表示将查询结果划分成组,从而每个组内的成员具有相同值eg,模式pg绑定到跨每个组共同的GROUP BY值。
7.根据权利要求6所述的方法,其中,基于所述数据条目的所述分组执行所述搜索进一步包括以下中的一个或多个:
设置新的查询变量以关联到所述查询语句中的每个SELECT表达式;
去除所述SQL查询语句中的所有连接和过滤谓词;以及
用单个绑定来替代每个SELECT表达式中的FROM部分,所述单个绑定使用元组模式来绑定直接嵌套的SELECT表达式的查询变量和FROM部分的变量。
8.根据权利要求1-3中任一所述的方法,其中,所述搜索基于映射-合并方式并行进行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于伊姆西公司,未经伊姆西公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310095688.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种耐热性玫瑰香精胶囊及其制备方法
- 下一篇:一种可燃废物定向热解方法