本技术涉及数据处理,尤其涉及基于接口统一管理的报表查询方法及装置。
背景技术:
1、数据仓库是决策支持系统和联机分析应用数据源的结构化数据环境。数据仓库研究和解决从数据库中获取信息的问题。数据仓库的特征在于面向主题、集成性、稳定性和时变性。为了解决项目查询报表数据时需要在数据集成查询服务中进行代码硬编写且需要每次上线开发实现报表功能带来的耗时长及便捷性差等问题,需要构建数据仓库统一的接口管理平台。
2、目前,现有的统一接口平台通常通过接收用户端输入的查询请求信息;根据查询请求信息提取查询关键字;根据查询关键字生成数据库查询语句,并根据数据库查询语句从数据库中获取查询数据源;通过预设接口调用预封装的图表模型;根据预封装的图表模型和查询数据源生成可视化的报表的过程实现报表生成处理的过程。
3、然而,现有的统一接口平台虽然可以提供便利性和灵活性,但也存在一些潜在的缺陷,具体来说:现有的统一接口平台在每次处理调用请求时,都直接根据请求去数据仓库获取查询语句,该种方式不但会影响报表查询效率,会导致额外的开销和延迟,还可能导致未经授权的用户获取、修改或删除敏感数据,使得该方式存在安全性和效率缺陷。
技术实现思路
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、本领域技术人员将会理解的是,能够用本技术实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本技术能够实现的上述和其他目的。