CN109447443A - 指标计算方法及装置 - Google Patents
指标计算方法及装置 Download PDFInfo
- Publication number
- CN109447443A CN109447443A CN201811216848.2A CN201811216848A CN109447443A CN 109447443 A CN109447443 A CN 109447443A CN 201811216848 A CN201811216848 A CN 201811216848A CN 109447443 A CN109447443 A CN 109447443A
- Authority
- CN
- China
- Prior art keywords
- index
- script
- calculating
- calculates
- calculated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0635—Risk analysis of enterprise or organisation activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
- G06F9/467—Transactional memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06393—Score-carding, benchmarking or key performance indicator [KPI] analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/08—Insurance
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Economics (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Educational Administration (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Technology Law (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据计算技术领域,提供一种指标计算方法及装置。该方法及装置应用于服务提供方,其中,指标计算方法包括:从业务方接收指标计算请求,指标计算请求中携带有用于计算业务指标的业务数据;根据指标计算请求,获取预先缓存于内存中的指标计算脚本;利用指标计算脚本,根据业务数据计算业务指标;将业务指标的计算结果返回业务方。在上述方法及装置中,计算代码写在指标计算脚本中,和业务代码不存在耦合,便于指标计算脚本进行动态更新,具有较高的灵活性和可扩展性。同时指标计算脚本被缓存在内存中,计算业务指标时直接从内存中获取脚本并执行,显著提高了计算效率,有利于业务功能的正常执行。
Description
技术领域
本发明涉及数据计算技术领域,具体而言,涉及一种指标计算方法及装置。
背景技术
在保险行业,经常需要根据保单数据计算保额、保费、风控等业务指标。并且针对不同的销售渠道、不同的时间点、不同的客户以及不同的产品这些指标的计算方法还有可能相应地调整。目前常见有两种指标计算方案:
第一种方案在数据库中存储用于计算业务指标的sql脚本,在需要计算时,从数据库中读取出脚本并带入参数进行计算。该方案在计算过程中会产生大量的数据库连接,导致计算效率低下,甚至影响业务功能的正常使用。
第二种方案直接将指标计算代码耦合在业务代码中,计算方法无法动态变更,如需变更,只能先停止系统服务,更新代码后重启系统服务。整个更新过程中,系统无法对外提供服务,严重影响业务功能正常使用。
发明内容
有鉴于此,本发明实施例提供一种指标计算方法及装置,以改善业务指标计算中的问题。
为实现上述目的,本发明提供如下技术方案:
第一方面,本发明实施例提供一种指标计算方法,应用于服务提供方,方法包括:
从业务方接收指标计算请求,指标计算请求中携带有用于计算业务指标的业务数据;
根据指标计算请求,获取预先缓存于内存中的指标计算脚本;
利用指标计算脚本,根据业务数据计算业务指标;
将业务指标的计算结果返回业务方。
在第一方面的一种可能的实现方式中,获取预先缓存于内存中的指标计算脚本,包括:
从预先缓存于内存中的多个指标计算脚本中获取与指标计算请求匹配的指标计算脚本。
在第一方面的一种可能的实现方式中,在从预先缓存于内存中的多个指标计算脚本中获取与指标计算请求匹配的指标计算脚本之前,方法还包括:
加载多个指标计算脚本,并将多个指标计算脚本缓存至内存中的计算资源池,计算资源池用于对缓存的指标计算脚本进行管理。
在第一方面的一种可能的实现方式中,指标计算脚本为JavaScript脚本,加载多个指标计算脚本,包括:
将多个指标计算脚本加载至Nashorn脚本引擎。
在第一方面的一种可能的实现方式中,方法还包括:
接收脚本更新请求,脚本更新请求中携带有新的指标计算脚本;
根据脚本更新请求,用新的指标计算脚本替换掉多个指标计算脚本中与新的指标计算脚本对应的旧的指标计算脚本。
在第一方面的一种可能的实现方式中,服务提供方提供可供调用的脚本更新接口,脚本更新请求采用接口调用的方式,调用参数中包括新的指标计算脚本。
在第一方面的一种可能的实现方式中,根据业务数据计算业务指标,包括:
将业务指标按照指标类型划分为多项指标;
对多项指标进行并行计算,获得多个计算结果;
将多个计算结果融合为业务指标的计算结果。
第二方面,本发明实施例提供一种指标计算装置,应用于服务提供方,装置包括:
计算请求接收模块,用于从业务方接收指标计算请求,指标计算请求中携带有用于计算业务指标的业务数据;
计算脚本管理模块,用于根据指标计算请求,获取预先缓存于内存中的指标计算脚本;
指标计算模块,用于利用指标计算脚本,根据业务数据计算业务指标;
结果反馈模块,用于将业务指标的计算结果返回业务方。
在第二方面的一种可能的实现方式中,计算脚本管理模块具体用于根据指标计算请求,从预先缓存于内存中的多个指标计算脚本中获取与指标计算请求匹配的指标计算脚本。
在第二方面的一种可能的实现方式中,装置还包括:
更新请求接收模块,用于接收脚本更新请求,脚本更新请求中携带有新的指标计算脚本;
计算脚本更新模块,用于根据脚本更新请求,用新的指标计算脚本替换掉多个指标计算脚本中与新的指标计算脚本对应的旧的指标计算脚本。
第三方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器读取并运行时,执行第一方面或第一方面的任意一种可能的实现方式提供的方法的步骤。
第四方面,本发明实施例提供一种电子设备,包括存储器以及处理器,存储器中存储有计算机程序指令,计算机程序指令被处理器读取并运行时,执行第一方面或第一方面的任意一种可能的实现方式提供的方法的步骤。
本发明提供的技术方案至少包括如下有益效果:本发明实施例提供指标计算方法及装置应用于服务提供方,首先从业务方接收携带有用于计算业务指标的业务数据的指标计算请求,然后根据指标计算请求,获取预先缓存于内存中的指标计算脚本,接着通过执行指标计算脚本,利用业务数据计算出业务指标,最后将业务指标的计算结果返回给业务方。
在上述方法及装置中,计算代码写在指标计算脚本中,和业务代码不存在耦合,便于指标计算脚本进行动态更新,具有较高的灵活性和可扩展性。同时指标计算脚本被缓存在内存中,计算业务指标时直接从内存中获取脚本并执行,显著提高了计算效率,有利于业务功能的正常执行。
为使本发明的上述目的、技术方案和有益效果能更明显易懂,下文特举实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了一种可应用于本发明实施例中的电子设备的结构框图;
图2示出了业务方与服务提供方的交互示意图;
图3示出了本发明实施例提供的指标计算方法的流程图;
图4示出了本发明第实施例提供的指标计算方法的步骤S14至步骤S15的流程图;
图5示出了本发明实施例提供的指标计算装置的功能模块图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于将一个实体或者操作与另一个实体或操作区分开来,而不能理解为指示或暗示相对重要性,也不能理解为要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
图1示出了一种可应用于本发明实施例中的电子设备100的结构框图。参照图1,电子设备100包括一个或多个处理器102、一个或多个存储装置104、输入装置106以及输出装置108,这些组件通过总线系统112和/或其他形式的连接机构(未示出)互连。
处理器102可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备100中的其他组件以执行期望的功能。
存储装置104可以各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行计算机程序指令,以实现下文的本发明实施例中的方法以及/或者其他期望的功能。在计算机可读存储介质中还可以存储各种应用程序和各种数据,例如应用程序使用和/或产生的各种数据等。
输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。
输出装置108可以向外部(例如,用户)输出各种信息(例如,图像或声音),并且可以包括显示器、扬声器等中的一个或多个。
可以理解,图1所示的结构仅为示意,电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。于本发明实施例中,电子设备100可以是服务器、个人计算机、移动设备、智能穿戴设备、车载设备等设备,也可以不限于物理设备,例如可以是虚拟机、云服务器等。
图2示出了业务方200与服务提供方300的交互示意图。参照图2,业务方200通过执行业务代码,实现业务功能,满足业务需求。服务提供方300向业务方200提供服务,本发明实施例提供的指标计算方法应用于服务提供方300,即后面阐述的方法步骤的执行主体均为服务提供方300。进一步的,服务提供方300可以实现为图1示出的电子设备100,指标计算方法的步骤均由电子设备100的处理器102执行。可以理解的,服务提供方300并不限于由单台电子设备100构成,也可以是多台电子设备100的组合或集群。
图3示出了本发明实施例提供的指标计算方法的流程图。参照图3,该方法包括:
步骤S10:从业务方200接收指标计算请求。
在业务方200需要进行业务指标的计算时,向服务提供方300发起指标计算请求,例如可以采取http请求等方式。指标计算请求中携带有用于计算业务指标的业务数据,从而服务提供方300在接收到请求以后可以根据业务数据计算业务指标。
步骤S11:根据指标计算请求,获取预先缓存于内存中的指标计算脚本。
指标计算脚本中通过脚本语言编写的代码实现了指标计算算法,在现有技术中,已经有很多现成的、通过sql实现的指标计算算法可供使用,为避免重复劳动,可以直接将这些sql实现的算法迁移至指标计算脚本中,即将sql语句通过相应的脚本语言进行表达。这里所称的脚本语言可以是JavaScript、Shell、Python、Perl等脚本语言中的任意一种。
指标计算脚本通常以文件的形式保存在硬盘等存储介质中,在步骤S11执行之前,需要将指标计算脚本加载并缓存至内存中,以后在使用指标计算脚本时直接从内存中获取脚本,以加快执行速度。以JavaScript脚本为例,服务提供方300的系统初始化时,就可以将其加载至Nashorn脚本引擎并缓存至内存中。其中Nashorn脚本引擎由JDK1.8提供(早期JDK版本中为Rhino脚本引擎),该引擎为JavaScript脚本提供了运行环境,从而可以在Java程序中高效地执行JavaScript代码。
由于需要计算的业务指标通常有多个,以保险行业为例,保额、保费、风控等等都可以作为业务指标,而不同的业务指标的计算方法是不同的,在一种实现方式中,为便于管理,指标计算脚本可以为多个,每个脚本用于计算一种业务指标,在步骤S11执行之前,可以将所有的指标计算脚本加载并缓存至内存中。在步骤S11中从预先缓存于内存中的多个指标计算脚本中获取与指标计算请求匹配的指标计算脚本,并利用匹配的指标计算脚本进行后续计算。
例如,在一种实现方式中,服务提供方300可以自动解析指标计算请求,并获取与需要计算的业务指标对应的指标计算脚本;在另一种实现方式中,也可以有业务方200在请求中指定需要使用的指标计算脚本。
步骤S12:利用指标计算脚本,根据业务数据计算业务指标。
执行指标计算脚本,脚本中的算法将会根据业务数据计算出相应的业务指标。具体的计算方式,根据指标的不同,可以采取并行计算或串行计算的方式。
例如,指标计算请求中的业务指标可能包括多项不同类型的指标,这些指标可以独立进行计算。从而,在接收到指标计算请求后,可以根据指标类型划分出多项指标,将每项指标作为一个独立的计算任务进行并行计算,具体的计算方式不作限定,比如可以采用目前流行的Hadoop、Spark等分布式计算框架。在计算完成后,将计算结果汇总融合,获得业务指标的计算结果。
步骤S13:将业务指标的计算结果返回至业务方200。
计算出业务指标后,将计算结果返回至业务方200,以使业务方200可以继续执行业务逻辑。
在上述方法及装置中,用于指标计算的代码写在指标计算脚本中,和业务代码不存在耦合关系,从而便于指标计算脚本在服务提供方300提供计算服务的过程中进行动态更新,具有较高的灵活性和可扩展性。同时指标计算脚本被缓存在内存中,计算业务指标时直接从内存中获取脚本并执行,显著提高了计算效率,有利于业务功能的正常执行。
在本发明的一个实施例中,可以在内存中设置计算资源池对加载至内存的指标计算脚本进行管理。资源池(ResourcePool)是一种设计模式,该设计模式在系统初始化时创建一组资源并放入池中缓存,在有资源需求时从池中取出资源使用,使用后将资源回收至池中,避免了资源的频繁创建和销毁,提高了资源的管理和使用的效率。本实施例中的计算资源池即为资源池的一种,在进行指标计算之前,所有的指标计算脚本将被加载并缓存至计算资源池,作为其所要管理的资源。
在前文中已经提到,指标计算脚本根据不同的应用场景可能调整算法,又或者在使用过程中发现脚本中的算法存在错误,需要更正。在本发明的一个实施例中,可以动态地对指标计算脚本进行更新,如图4的步骤S14和步骤S15所示。所谓动态更新是指在系统正常运行过程中变更指标计算脚本,不需要对停止系统服务,不影响或几乎不影响业务逻辑的执行。具体如下:
步骤S14:接收脚本更新请求;
脚本更新请求可以由任何可与服务提供方300交互的对象发起,例如可以业务方200发起,也可以由算法设计者发起。脚本更新请求中携带有新的指标计算脚本。
例如,在一种实现方式中,服务提供方300可以通过接口的方式提供脚本更新服务,在这种实现方式下,脚本更新请求实际上就是一个接口调用,调用者将新的指标计算脚本作为脚本更新接口的一个调用参数传递给服务提供方300。
步骤S15:根据脚本更新请求,用新的指标计算脚本替换掉多个指标计算脚本中与新的指标计算脚本对应的旧的指标计算脚本。
例如,在一种实现方式中,指标计算脚本中包括某些标识,从而通过解析这些标识可以确定出与新的指标计算脚本对应的旧的指标计算脚本,进而完成替换。在另一种实现方式中,脚本更新请求中也可以指定需要被替换的脚本,服务提供方300通过解析脚本更新请求就可以确定出与新的指标计算脚本对应的旧的指标计算脚本,进而完成替换。在替换时,首先需要更新硬盘等存储介质上的脚本文件,同时由于指标计算脚本已经缓存至内存,所以还需要将新的指标计算脚本从存储介质上加载并缓存至内存,将内存中缓存的旧的指标计算脚本也同步地替换掉。
以上是脚本更新的过程,在一些情况下,也可能增加新的指标计算脚本或者删除旧的指标计算脚本,其处理方式和更新类似,这里不再具体阐述。
本发明实施例还提供一种指标计算装置400,该装置应用于可与业务方200进行交互的服务提供方300。图5示出了指标计算装置400的功能模块图,参照图5,该装置包括:
计算请求接收模块410,用于从业务方200接收指标计算请求,指标计算请求中携带有用于计算业务指标的业务数据;
计算脚本管理模块420,用于根据指标计算请求,获取预先缓存于内存中的指标计算脚本;
指标计算模块430,用于利用指标计算脚本,根据业务数据计算业务指标;
结果反馈模块440,用于将业务指标的计算结果返回业务方200。
在本实施例的一种实现方式中,计算脚本管理模块420具体用于根据指标计算请求,从预先缓存于内存中的多个指标计算脚本中获取与指标计算请求匹配的指标计算脚本。
进一步的,在上述实现方式中,指标计算装置400还可以包括:
更新请求接收模块,用于接收脚本更新请求,脚本更新请求中携带有新的指标计算脚本;
计算脚本更新模块,用于根据脚本更新请求,用新的指标计算脚本替换掉多个指标计算脚本中与新的指标计算脚本对应的旧的指标计算脚本。
本发明实施例提供的指标计算装置400,其实现原理及产生的技术效果在前述方法实施例中已经介绍,为简要描述,装置实施例部分未提及之处,可参考方法施例中相应内容。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器读取并运行时,执行本发明实施例提供的方法的步骤。该计算机可读存储介质可以实现为,但不限于图1示出的存储装置104。
本发明实施例还提供一种电子设备,包括存储器以及处理器,存储器中存储有计算机程序指令,计算机程序指令被处理器读取并运行时,执行本发明实施例提供的方法的步骤。该电子设备可以实现为,但不限于图1示出的电子设备100。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得计算机设备执行本发明各个实施例所述方法的全部或部分步骤。前述的计算机设备包括:个人计算机、服务器、移动设备、智能穿戴设备、网络设备、虚拟设备等各种具有执行程序代码能力的设备,前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟、磁带或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种指标计算方法,其特征在于,应用于服务提供方,所述方法包括:
从业务方接收指标计算请求,所述指标计算请求中携带有用于计算业务指标的业务数据;
根据所述指标计算请求,获取预先缓存于内存中的指标计算脚本;
利用所述指标计算脚本,根据所述业务数据计算所述业务指标;
将所述业务指标的计算结果返回所述业务方。
2.根据权利要求1所述的指标计算方法,其特征在于,所述获取预先缓存于内存中的指标计算脚本,包括:
从预先缓存于内存中的多个指标计算脚本中获取与所述指标计算请求匹配的指标计算脚本。
3.根据权利要求2所述的指标计算方法,其特征在于,在所述从预先缓存于内存中的多个指标计算脚本中获取与所述指标计算请求匹配的指标计算脚本之前,所述方法还包括:
加载所述多个指标计算脚本,并将所述多个指标计算脚本缓存至内存中的计算资源池,所述计算资源池用于对缓存的指标计算脚本进行管理。
4.根据权利要求3所述的指标计算方法,其特征在于,所述指标计算脚本为JavaScript脚本,所述加载所述多个指标计算脚本,包括:
将所述多个指标计算脚本加载至Nashorn脚本引擎。
5.根据权利要求2-4中任一项所述的指标计算方法,其特征在于,所述方法还包括:
接收脚本更新请求,所述脚本更新请求中携带有新的指标计算脚本;
根据所述脚本更新请求,用所述新的指标计算脚本替换掉所述多个指标计算脚本中与所述新的指标计算脚本对应的旧的指标计算脚本。
6.根据权利要求5所述的指标计算方法,其特征在于,所述服务提供方提供可供调用的脚本更新接口,所述脚本更新请求采用接口调用的方式,调用参数中包括所述新的指标计算脚本。
7.根据权利要求1-4中任一项所述的指标计算方法,其特征在于,所述根据所述业务数据计算所述业务指标,包括:
将所述业务指标按照指标类型划分为多项指标;
对所述多项指标进行并行计算,获得多个计算结果;
将所述多个计算结果融合为所述业务指标的计算结果。
8.一种指标计算装置,其特征在于,应用于服务提供方,所述装置包括:
计算请求接收模块,用于从业务方接收指标计算请求,所述指标计算请求中携带有用于计算业务指标的业务数据;
计算脚本管理模块,用于根据所述指标计算请求,获取预先缓存于内存中的指标计算脚本;
指标计算模块,用于利用所述指标计算脚本,根据所述业务数据计算所述业务指标;
结果反馈模块,用于将所述业务指标的计算结果返回所述业务方。
9.根据权利要求8所述的指标计算装置,其特征在于,所述计算脚本管理模块具体用于根据所述指标计算请求,从预先缓存于内存中的多个指标计算脚本中获取与所述指标计算请求匹配的指标计算脚本。
10.根据权利要求9所述的指标计算装置,其特征在于,所述装置还包括:
更新请求接收模块,用于接收脚本更新请求,所述脚本更新请求中携带有新的指标计算脚本;
计算脚本更新模块,用于根据所述脚本更新请求,用所述新的指标计算脚本替换掉所述多个指标计算脚本中与所述新的指标计算脚本对应的旧的指标计算脚本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811216848.2A CN109447443A (zh) | 2018-10-18 | 2018-10-18 | 指标计算方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811216848.2A CN109447443A (zh) | 2018-10-18 | 2018-10-18 | 指标计算方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109447443A true CN109447443A (zh) | 2019-03-08 |
Family
ID=65546753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811216848.2A Pending CN109447443A (zh) | 2018-10-18 | 2018-10-18 | 指标计算方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109447443A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110674173A (zh) * | 2019-09-24 | 2020-01-10 | 支付宝(杭州)信息技术有限公司 | 一种风控云上的数据缓存的方法和系统 |
CN111125072A (zh) * | 2019-11-25 | 2020-05-08 | 金蝶软件(中国)有限公司 | 数据处理方法、erp系统、计算机设备及计算机存储介质 |
CN112950299A (zh) * | 2019-11-26 | 2021-06-11 | 浙江大搜车软件技术有限公司 | 方案设计方法、装置、计算机设备和存储介质 |
CN113760343A (zh) * | 2020-06-05 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种处理业务请求的方法和装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182234A (zh) * | 2014-08-25 | 2014-12-03 | 杭州华为数字技术有限公司 | 一种业务处理方法和业务系统 |
CN107092522A (zh) * | 2017-03-30 | 2017-08-25 | 阿里巴巴集团控股有限公司 | 实时数据的计算方法及装置 |
CN108268639A (zh) * | 2018-01-18 | 2018-07-10 | 成都嗨翻屋文化传播有限公司 | 一种大数据环境下的指标计算方法 |
CN108334327A (zh) * | 2018-03-01 | 2018-07-27 | 深圳市泛海三江科技发展有限公司 | 一种用于物联网云平台的处理方法和装置 |
US10055794B1 (en) * | 2014-05-20 | 2018-08-21 | State Farm Mutual Automobile Insurance Company | Determining autonomous vehicle technology performance for insurance pricing and offering |
CN108573348A (zh) * | 2018-04-18 | 2018-09-25 | 鑫涌算力信息科技(上海)有限公司 | 金融指标分布式计算方法及其系统 |
CN108664289A (zh) * | 2018-05-14 | 2018-10-16 | 平安科技(深圳)有限公司 | 业务数据的处理方法及终端设备 |
-
2018
- 2018-10-18 CN CN201811216848.2A patent/CN109447443A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10055794B1 (en) * | 2014-05-20 | 2018-08-21 | State Farm Mutual Automobile Insurance Company | Determining autonomous vehicle technology performance for insurance pricing and offering |
CN104182234A (zh) * | 2014-08-25 | 2014-12-03 | 杭州华为数字技术有限公司 | 一种业务处理方法和业务系统 |
CN107092522A (zh) * | 2017-03-30 | 2017-08-25 | 阿里巴巴集团控股有限公司 | 实时数据的计算方法及装置 |
CN108268639A (zh) * | 2018-01-18 | 2018-07-10 | 成都嗨翻屋文化传播有限公司 | 一种大数据环境下的指标计算方法 |
CN108334327A (zh) * | 2018-03-01 | 2018-07-27 | 深圳市泛海三江科技发展有限公司 | 一种用于物联网云平台的处理方法和装置 |
CN108573348A (zh) * | 2018-04-18 | 2018-09-25 | 鑫涌算力信息科技(上海)有限公司 | 金融指标分布式计算方法及其系统 |
CN108664289A (zh) * | 2018-05-14 | 2018-10-16 | 平安科技(深圳)有限公司 | 业务数据的处理方法及终端设备 |
Non-Patent Citations (1)
Title |
---|
WILLIAM CRAWFORD,JONATBAN KAPLAN著: "《J2EETM设计模式》", 30 April 2005 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110674173A (zh) * | 2019-09-24 | 2020-01-10 | 支付宝(杭州)信息技术有限公司 | 一种风控云上的数据缓存的方法和系统 |
CN111125072A (zh) * | 2019-11-25 | 2020-05-08 | 金蝶软件(中国)有限公司 | 数据处理方法、erp系统、计算机设备及计算机存储介质 |
CN112950299A (zh) * | 2019-11-26 | 2021-06-11 | 浙江大搜车软件技术有限公司 | 方案设计方法、装置、计算机设备和存储介质 |
CN113760343A (zh) * | 2020-06-05 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种处理业务请求的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109377393A (zh) | 规则校验方法及装置 | |
CN109447443A (zh) | 指标计算方法及装置 | |
US10606575B2 (en) | Efficiency of computing resource consumption via improved application portfolio deployment | |
US9430335B2 (en) | Optimizing the number and type of database backups to achieve a given recovery time objective (RTO) | |
US20150127828A1 (en) | Service oriented architecture service dependency determination | |
CN110990420B (zh) | 数据查询方法、装置 | |
US20170278012A1 (en) | System, method, and recording medium for performance management of a service for a database as a service | |
US10331383B2 (en) | Updating storage migration rates | |
US11200045B1 (en) | Digital twin enabled asset performance and upgrade management | |
JP2019179575A (ja) | 動的グラフ性能監視 | |
US11171825B2 (en) | Context-based resource allocation with extended user concepts | |
US9448851B2 (en) | Smarter big data processing using collaborative map reduce frameworks | |
US20150032893A1 (en) | Visualization of workload distribution on server resources | |
US9235478B2 (en) | Classifying and monitoring database operations based on a cost of recovery | |
US11693858B2 (en) | Access path optimization | |
CN106796520B (zh) | 基于软件的仪器化的实时报告 | |
KR20170035797A (ko) | 분산 이종 컴퓨터 시스템에서의 최적화된 잡 성능을 위한 동적 자원 재할당 | |
Sahni et al. | Heterogeneity-aware elastic scaling of streaming applications on cloud platforms | |
US20200034277A1 (en) | Method for performance analysis in a continuous integration pipeline | |
US20170344454A1 (en) | Determining dynamic statistics based on key value patterns | |
CN115545639B (zh) | 金融业务处理方法、装置、电子设备及存储介质 | |
US20230086307A1 (en) | Data transformation and quality checking | |
US20120323840A1 (en) | Data flow cost modeling | |
CN108595488B (zh) | 数据迁移方法和装置 | |
US10747566B2 (en) | Restarting application servers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190308 |