发明名称 |
对多个数据源的数据进行统一排序的方法 |
摘要 |
本发明公开了一种对多个数据源的数据进行统一排序的方法,包括:按照设定量依次查询每个数据源,将查询到的数据进行排序,形成集合A<sub>x</sub>;从集合A<sub>x</sub>中取出部分数据形成集合B<sub>y</sub>,记录已取出数据的位置信息;根据位置信息判断集合A<sub>x</sub>中每个数据源当前未取出的数据量是否大于等于集合B<sub>y</sub>的数据量,如果满足则该数据源不需要进行后续的查询,否则需要查询该数据源的后续部分;当有数据源需要查询其后续部分时,按照设定量查询并取出该数据源中后续的数据,形成集合A<sub>x+1</sub>,从集合A<sub>x+1</sub>中取出部分数据形成集合B<sub>y+1</sub>;根据所有数据源的数据量总数对设定量取余数,当集合A<sub>x+1</sub>中的数据等于余数时,排序并取出集合A<sub>x+1</sub>中剩余的数据。 |
申请公布号 |
CN100543749C |
申请公布日期 |
2009.09.23 |
申请号 |
CN200710151454.9 |
申请日期 |
2007.10.18 |
申请人 |
中兴通讯股份有限公司 |
发明人 |
薛涛 |
分类号 |
G06F17/30(2006.01)I;H04L12/24(2006.01)I |
主分类号 |
G06F17/30(2006.01)I |
代理机构 |
北京安信方达知识产权代理有限公司 |
代理人 |
许志勇;颜 涛 |
主权项 |
1、一种对多个数据源的数据进行统一排序的方法,步骤包括:(1)按照设定的查询量依次查询每个数据源,将查询到的数据取出,并按照预定条件进行排序,形成集合Ax;从所述集合Ax中取出部分数据形成集合By,记录每个数据源已取出数据的位置信息;x和y取自然数;(2)根据所述位置信息依次判断所述集合Ax中每个数据源当前未取出的数据量是否大于等于所述集合By的数据量;如果满足,则该数据源不需要进行后续的查询;否则,需要查询该数据源的后续部分;(3)当有数据源需要查询其后续部分时,按照所述设定的查询量查询并取出该数据源中后续的数据,汇总所述集合Ax中剩余的数据和本次查询到的数据,形成集合Ax+1;将所述集合Ax+1中的数据按照所述预定条件进行排序,从中取出部分数据形成集合By+1,更新每个数据源的位置信息;执行步骤(2);(4)根据所有数据源的数据量总数对所述设定的查询量取余数,当所述集合Ax+1中的数据等于所述余数时,排序并取出所述集合Ax+1中剩余的数据。 |
地址 |
518057广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦法律部 |