System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请属于基于多源数据库的数据查询,可用于金融领域,具体涉及一种支持多数据源排序的数据分页查询方法及装置。
技术介绍
1、在现有技术中,针对单数据源内单张表或多张表的排序分页查询一般是基于关系型数据库的sql查询语言实现,如mysql可通过合并多张表基于关联查询实现数据分页。而对于多个不同数据源跨库表的混合排序分页,一般可在本业务系统数据库建立中间表并为不同的数据源赋予中间表操作用户,由其它数据源使用分配的用户将其库表数据同步至目标数据源的中间表,目标数据源基于中间表在本地实现多表合并排序分页查询。但大多数情况下,不同业务系统的数据源之间是完全物理隔离部署,其它业务系统无法与当前业务系统数据库互联。故在此情景下无法实现多源数据库的数据分页查询,此外,单一业务系统自身也有着严格的数据安全管理要求,为其它应用系统分配数据库操作用户往往是不被允许的。
技术实现思路
1、本专利技术可用于数据库技术在金融方面应用的
,也可用于除金融领域之外的任意领域。
2、本专利技术的一个目的在于提供一种支持多数据源排序的数据分页查询方法,该方法不需要将不同数据源之间数据进行同步,仅需要利用通用的服务接口即可实现多数据源多表混合排序分页,从而降低关于多数据源的数据操作复杂度,并提升多数据源排序下的分页查询效率。
3、本专利技术的另一个目的在于提供一种支持多数据源排序的数据分页查询装置。本专利技术的还一个目的在于提供一种电子设备,该电子设备包括存储器和处理器,存储器存储有计算机程
4、为解决本申请
技术介绍
中的技术问题,本专利技术提供以下技术方案:
5、第一方面,本专利技术提供一种支持多数据源排序的数据分页查询方法包括:
6、根据预接收的数据分页查询请求确定数据源标识、排序字段、起始偏移量以及查询数据量;
7、根据预生成的接口模版从多个数据源中获取对应数据;
8、按照所述数据源标识、排序字段、起始偏移量、查询数据量以及预设的每页数据量对所述对应数据进行整合,以生成整合结果;
9、根据所述整合结果对所述多个数据源中的数据进行分页查询。
10、在本专利技术的一实施例中,所述接口模版至少包括第一接口模版以及第二接口模板;
11、生成所述接口模版的步骤包括:
12、根据所述数据源标识以及所述排序字段生成第一接口参数;
13、根据所述数据源标识对应的数据值以及所述排序字段对应的数据值生成第一接口返回值;
14、根据所述多个数据源中的至少一个数据源的数据结构生成第一接口方法;
15、根据所述第一接口参数、所述第一接口返回值以及所述第一接口方法生成所述第一接口模版。
16、在本专利技术的一实施例中,生成所述接口模版的步骤还包括:
17、根据所述起始偏移量以及所述查询数据量生成第二接口参数;
18、根据所述起始偏移量对应的数据值以及所述查询数据量对应的数据值生成第二接口返回值;
19、根据所述多个数据源中的至少一个数据源的数据结构生成第二接口方法;
20、根据所述第二接口参数、所述第二接口返回值以及所述第二接口方法生成所述第二接口模版。
21、在本专利技术的一实施例中,在根据所述整合结果对所述多个数据源中的数据进行分页查询之前,还包括:
22、根据预设时间以及随机数生成缓存时间;
23、将所述整合结果在缓存中存储至所述缓存时间。
24、在本专利技术的一实施例中,按照所述数据源标识、排序字段、起始偏移量、查询数据量以及预设的每页数据量对所述对应数据进行整合,以生成整合结果,包括:
25、根据所述第一接口模版从所述多个数据源中获取对应的第一数据;
26、根据所述第二接口模版从所述多个数据源中获取对应的第二数据;
27、根据所述第一接口模版以及所述第二接口模版对所述第一数据以及第二数据进行整合,以生成整合结果。
28、在本专利技术的一实施例中,根据所述整合结果对所述多个数据源中的数据进行分页查询,包括:
29、根据所述排序字段以及用户指定的排序规则对所述整合结果的数据进行排序,以生成排序结果;
30、根据所述起始偏移量以及所述查询数据量在所述整合结果进行查询,以生成查询结果;
31、根据所述排序结果以及查询结果对所述多个数据源中的数据进行分页查询。
32、在本专利技术的一实施例中,所述多个数据源中至少两个数据源在物理上相互隔离。
33、第二方面,本专利技术提供一种支持多数据源排序的数据分页查询装置,该装置包括:
34、查询请求解析模块,用于根据预接收的数据分页查询请求确定数据源标识、排序字段、起始偏移量以及查询数据量;
35、数据获取模块,用于根据预生成的接口模版从多个数据源中获取对应数据;
36、整合结果生成模块,用于按照所述数据源标识、排序字段、起始偏移量、查询数据量以及预设的每页数据量对所述对应数据进行整合,以生成整合结果;
37、数据分页查询模块,用于根据所述整合结果对所述多个数据源中的数据进行分页查询。
38、在本专利技术的一实施例中,所述接口模版至少包括第一接口模版以及第二接口模板;支持多数据源排序的数据分页查询装置还包括:接口模版生成模块,用于生成所述接口模版,所述接口模版生成模块包括:
39、第一参数生成单元,用于根据所述数据源标识以及所述排序字段生成第一接口参数;
40、第一返回值生成单元,用于根据所述数据源标识对应的数据值以及所述排序字段对应的数据值生成第一接口返回值;
41、第一方法生成单元,用于根据所述多个数据源中的至少一个数据源的数据结构生成第一接口方法;
42、第一模版生成单元,用于根据所述第一接口参数、所述第一接口返回值以及所述第一接口方法生成所述第一接口模版。
43、在本专利技术的一实施例中,接口模版生成模块还包括:
44、第二参数生成单元,用于根据所述起始偏移量以及所述查询数据量生成第二接口参数;
45、第二返回值生成单元,用于根据所述起始偏移量对应的数据值以及所述查询数据量对应的数据值生成第二接口返回值;
46、第二方法生成单元,用于根据所述多个数据源中的至少一个数据源的数据结构生成第二接口方法;
47、第二模版生成单元,用于根据所述第二接口参数、所述第二接口返回值以及所述第二接口方法生成所述第二接口模版。
48、在本专利技术的一实施例中,支持多数据源排序的数据分页查询装置还包括:
49、缓存时间生成模块,用本文档来自技高网...
【技术保护点】
1.一种支持多数据源排序的数据分页查询方法,其特征在于,包括:
2.根据权利要求1所述的数据分页查询方法,其特征在于,所述接口模版至少包括第一接口模版以及第二接口模板;
3.根据权利要求2所述的数据分页查询方法,其特征在于,生成所述接口模版的步骤还包括:
4.根据权利要求1所述的数据分页查询方法,其特征在于,在根据所述整合结果对所述多个数据源中的数据进行分页查询之前,还包括:
5.根据权利要求2所述的数据分页查询方法,其特征在于,按照所述数据源标识、排序字段、起始偏移量、查询数据量以及预设的每页数据量对所述对应数据进行整合,以生成整合结果,包括:
6.根据权利要求5所述的数据分页查询方法,其特征在于,根据所述整合结果对所述多个数据源中的数据进行分页查询,包括:
7.根据权利要求1至6任一项所述的数据分页查询方法,其特征在于,所述多个数据源中至少两个数据源在物理上相互隔离。
8.一种支持多数据源排序的数据分页查询装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器及存储在存储器
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7任一项所述的支持多数据源排序的数据分页查询方法的步骤。
...【技术特征摘要】
1.一种支持多数据源排序的数据分页查询方法,其特征在于,包括:
2.根据权利要求1所述的数据分页查询方法,其特征在于,所述接口模版至少包括第一接口模版以及第二接口模板;
3.根据权利要求2所述的数据分页查询方法,其特征在于,生成所述接口模版的步骤还包括:
4.根据权利要求1所述的数据分页查询方法,其特征在于,在根据所述整合结果对所述多个数据源中的数据进行分页查询之前,还包括:
5.根据权利要求2所述的数据分页查询方法,其特征在于,按照所述数据源标识、排序字段、起始偏移量、查询数据量以及预设的每页数据量对所述对应数据进行整合,以生成整合结果,包括:
6.根据权利要求5所述的数据分页查询方法,...
【专利技术属性】
技术研发人员:王佳伟,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。