(12)发明专利申请
(10)申请公布号 CN 109582725 A(43)申请公布日 2019.04.05
(21)申请号 201811496513.0(22)申请日 2018.12.07
(71)申请人 上海金融期货信息技术有限公司
地址 200122 上海市浦东新区上海市世纪
大道1600号16楼(72)发明人 代万能 褚力 苗仲辰 金越成
刘达 (74)专利代理机构 上海专利商标事务所有限公
司 31100
代理人 施浩(51)Int.Cl.
G06F 16/25(2019.01)G06N 99/00(2019.01)
权利要求书1页 说明书5页 附图1页
(54)发明名称
一种基于微服务架构的智能分析应用系统(57)摘要
本发明公开了一种基于微服务架构的智能分析应用系统,通过智能分析平台架构提高智能分析系统的灵活性和可用性。其技术方案为:系统采用python实现微服务框架,通过统一的协议、接口规范、调用审计以及访问控制,让底层机器学习算法提供的智能服务与其他基于该微服务架构的应用方便地数据交互,实现技术架构的统一。本发明还将微服务的思想理念与机器学习技术相结合,把机器学习算法作为公共服务提供,用户需要研究或使用机器学习算法时通过服务中心获取相应服务地址并传入指定参数,系统获取指定数据、用指定参数运行指定算法,以使用户可根据自需要不断尝试传入不同参数和调用不同算法,得到最合适的结果数据。
CN 109582725 ACN 109582725 A
权 利 要 求 书
1/1页
1.一种基于微服务架构的智能分析应用系统,其特征在于,包括:服务注册发现中心服务器;客户端;以及智能分析平台,包括应用层模块和数据层模块,其中:数据层模块,用于存储数据;以及应用层模块,用于获取数据层模块中的数据并进行机器学习计算,再将计算结果存回到数据层模块,其中应用层模块进一步包括:
服务注册发现单元,用于机器学习单元中的机器学习算法服务向服务注册发现中心注册,发现服务注册发现中心中所有已经注册过的服务并进行获取;
微服务架构接口单元,为机器学习单元中的每一个机器学习算法服务提供统一和协议和接口与其他基于该微服务架构的应用进行数据交互;以及
机器学习单元,设有至少一个机器学习算法的执行单元以对应不同业务场景,从数据层模块中获取数据进行计算并将计算结果存回数据层模块。
2.根据权利要求1所述的基于微服务架构的智能分析应用系统,其特征在于,数据层模块中的数据存储方式是分布式数据存储集群hadoop,数据层模块中的数据包括全量历史数据,以hive和impala表的形式存储。
3.根据权利要求2所述的基于微服务架构的智能分析应用系统,其特征在于,应用层模块是通过imapla和hive驱动程序获取数据层模块中的数据。
4.根据权利要求1所述的基于微服务架构的智能分析应用系统,其特征在于,数据层模块中的数据存储方式是关系型数据库。
5.根据权利要求1所述的基于微服务架构的智能分析应用系统,其特征在于,服务注册发现单元通过调用Kazoo接口向服务注册发现中心注册以及从服务注册发现中心获取服务。
6.根据权利要求1所述的基于微服务架构的智能分析应用系统,其特征在于,微服务架构接口单元实现规范的基于RESTFUL的系统间调用微服务接口以向外提供服务。
7.根据权利要求6所述的基于微服务架构的智能分析应用系统,其特征在于,微服务架构接口单元采用MVC模式的Django作为基础web框架,RESTFUL作为系统间交互规范,轻量级的JSon作为数据交换格式,采用基于python装饰器实现的面相切面编程技术实现微服务架构的包括调用审计、访问控制以及日志规范在内的功能。
8.根据权利要求6所述的基于微服务架构的智能分析应用系统,其特征在于,机器学习单元对于外部请求,根据负载情况采用异步方式执行内部的机器学习算法。
2
CN 109582725 A
说 明 书
一种基于微服务架构的智能分析应用系统
1/5页
技术领域
[0001]本发明涉及数据分析系统,具体涉及基于微服务架构的应用在金融监管领域的分析系统。
背景技术
[0002]金融监督是金融主管当局对金融机构实施的全面性、经常性的检查和督促,并以此促进金融机构依法稳健地经营和发展。金融管理是指金融主管当局依法对金融机构及其经营活动实施的领导、组织、协调和控制等一系列的活动。[0003]随着金融市场的快速发展和技术的迅速成熟,传统监管模式已无法满足监管的要求,迫切需要监管工作向科技化、智能化的方向发展。只有通过应用大数据和机器学习等技术,建设智能化的分析应用系统,才能提高数据分析能力和一线监管能力。
[0004]目前亟待建设这样的一种智能化的分析应用系统来提高数据分析能力和一线监管能力。
发明内容
[0005]以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。
[0006]本发明提出了一种基于微服务架构的智能分析应用系统,通过智能分析平台架构提高智能分析系统的灵活性和可用性。[0007]本发明的技术方案为:本发明揭示了一种基于微服务架构的智能分析应用系统,包括:
[0008]服务注册发现中心服务器;[0009]客户端;以及[0010]智能分析平台,包括应用层模块和数据层模块,其中:[0011]数据层模块,用于存储数据;以及[0012]应用层模块,用于获取数据层模块中的数据并进行机器学习计算,再将计算结果存回到数据层模块,其中应用层模块进一步包括:[0013]服务注册发现单元,用于机器学习单元中的机器学习算法服务向服务注册发现中心注册,发现服务注册发现中心中所有已经注册过的服务并进行获取;[0014]微服务架构接口单元,为机器学习单元中的每一个机器学习算法服务提供统一和协议和接口与其他基于该微服务架构的应用进行数据交互;以及[0015]机器学习单元,设有至少一个机器学习算法的执行单元以对应不同业务场景,从数据层模块中获取数据进行计算并将计算结果存回数据层模块。
[0016]根据本发明的基于微服务架构的智能分析应用系统的一实施例,数据层模块中的
3
CN 109582725 A
说 明 书
2/5页
数据存储方式是分布式数据存储集群hadoop,数据层模块中的数据包括全量历史数据,以hive和impala表的形式存储。
[0017]根据本发明的基于微服务架构的智能分析应用系统的一实施例,应用层模块是通过imapla和hive驱动程序获取数据层模块中的数据。
[0018]根据本发明的基于微服务架构的智能分析应用系统的一实施例,数据层模块中的数据存储方式是关系型数据库。
[0019]根据本发明的基于微服务架构的智能分析应用系统的一实施例,服务注册发现单元通过调用Kazoo接口向服务注册发现中心注册以及从服务注册发现中心获取服务。[0020]根据本发明的基于微服务架构的智能分析应用系统的一实施例,微服务架构接口单元实现规范的基于RESTFUL的系统间调用微服务接口以向外提供服务。[0021]根据本发明的基于微服务架构的智能分析应用系统的一实施例,微服务架构接口单元采用MVC模式的Django作为基础web框架,RESTFUL作为系统间交互规范,轻量级的JSon作为数据交换格式,采用基于python装饰器实现的面相切面编程技术实现微服务架构的包括调用审计、访问控制以及日志规范在内的功能。
[0022]根据本发明的基于微服务架构的智能分析应用系统的一实施例,机器学习单元对于外部请求,根据负载情况采用异步方式执行内部的机器学习算法。[0023]本发明对比现有技术有如下的有益效果:本发明的基于微服务架构的智能分析应用系统采用python实现一套微服务框架,通过统一的协议、接口规范、调用审计以及访问控制等,可以让底层机器学习算法提供的智能服务与其他基于该微服务架构的应用很方便地进行数据交互,实现技术架构的统一。此外,本发明还将微服务的思想理念与机器学习技术相结合,把机器学习算法作为公共服务提供,用户需要研究或使用机器学习算法时,通过服务中心获取相应服务地址,传入指定参数,系统即获取指定数据、用指定参数运行指定算法,以使终端用户可以根据自己需要,不断尝试传入不同的参数和调用不同的算法,最终得到最合适的结果数据。
附图说明
[0024]在结合以下附图阅读本公开的实施例的详细描述之后,能够更好地理解本发明的上述特征和优点。在附图中,各组件不一定是按比例绘制,并且具有类似的相关特性或特征的组件可能具有相同或相近的附图标记。
[0025]图1示出了本发明的基于微服务架构的智能分析应用系统的一实施例的原理图。具体实施方式
[0026]以下结合附图和具体实施例对本发明作详细描述。注意,以下结合附图和具体实施例描述的诸方面仅是示例性的,而不应被理解为对本发明的保护范围进行任何限制。[0027]图1示出了本发明的基于微服务架构的智能分析应用系统的一实施例的原理。请参见图1,本实施例的智能分析应用系统包括智能分析平台、服务注册发现中心服务器以及客户端。服务注册发现中心服务器用于应用集群中服务的统一注册与发现,同时承担负载均衡和故障转移功能。客户端用于参数设置及结果展示。[0028]智能分析平台进一步包括应用层模块和数据层模块。其中数据层模块中应用到的
4
CN 109582725 A
说 明 书
3/5页
数据层是分布式数据存储集群——hadoop,用来保存全量历史数据,数据以hive和impala表的形式存储。对应的,应用层模块通过imapla和hive驱动程序获取数据层模块中的数据并进行计算,再将计算结果存回到数据层模块的hadoop分布式数据存储集群。Hadoop集群可以替换为传统关系型数据库,包括oracle、mysql、mariadb以及sqlserver等,或者nosql数据库,包括MongoDB、HBase、Redis、CouchDB等。数据库本身的技术方式并不构成对本发明的限制。
[0029]应用层模块进一步包括服务注册发现单元、机器学习单元以及微服务架构接口单元。
[0030]服务注册发现单元采用Kazoo插件技术实现机器学习算法服务向服务注册发现中心注册,同时可以发现服务注册发现中心中所有已经注册过的服务。机器学习算法启动时,服务注册发现单元调用Kazoo接口向服务注册发现中心注册,需要用到外部系统提供的服务时服务注册发现单元调用kazoo接口从服务注册发现中心获取外部服务。
[0031]微服务架构接口单元用python实现一套规范的基于RESTFUL的系统间调用微服务接口,向外提供服务。微服务架构接口单元为机器学习单元中的每一个机器学习算法服务提供一个接口,并且实现统一的日志规范、调用审计、访问控制等功能。本实施例的微服务架构用于实现服务注册、发现、规范化接口、通信协议、调用审计、访问控制等基础功能。本实施例采用MVC模式的Django作为基础web框架,RESTFUL作为系统间交互规范,轻量级的JSon作为数据交换格式,采用基于python装饰器实现的面相切面编程技术实现微服务架构的调用审计、访问控制以及日志规范等功能。用于实现系统的python语言脚本可以替换为R语言、scale语言、MATLAB语言、Lisp语言、java语言、C++语言等。语言本身并不构成对本发明的限定。
[0032]微服务架构接口单元通过统一的协议、接口规范、调用审计以及访问控制等,让底层机器学习单元的机器学习算法提供的智能服务与其他基于微服务架构的应用能够很方便地进行数据交互,从而实现技术架构的统一。[0033]此外,微服务架构接口单元可以替换为以其他方式提供接口,包括http、restful、RMI、RPC、SOAP以及JMS等。
[0034]机器学习单元根据具体业务场景实现相应的机器学习算法,并对外部系统提供调用服务。机器学习单元中的每个算法均独立实现,即插即用,互不影响。机器学习单元从数据层模块的hadoop集群中获取全量数据进行计算,并将计算结果存回hadoop集群。此外,机器学习单元通过微服务架构接口单元对外提供服务。机器学习单元对于外部提交的请求,会根据负载情况采用异步方式执行机器学习算法。
[0035]本实施例将微服务的思想理念与机器学习技术相结合,通过机器学习单元把机器学习算法作为公共服务提供,用户需要研究或使用机器学习算法时,通过服务注册发现中心获取相应服务地址,传入指定参数到智能分析平台,系统就能获取指定数据、机器学习单元用指定参数运行指定算法。这让终端用户可以根据自己需要,不断尝试传入不同的参数和调用不同的算法,最终得到最合适的结果数据。
[0036]尽管为使解释简单化将上述方法图示并描述为一系列动作,但是应理解并领会,这些方法不受动作的次序所限,因为根据一个或多个实施例,一些动作可按不同次序发生和/或与来自本文中图示和描述或本文中未图示和描述但本领域技术人员可以理解的其他
5
CN 109582725 A
说 明 书
4/5页
动作并发地发生。
[0037]本领域技术人员将进一步领会,结合本文中所公开的实施例来描述的各种解说性逻辑板块、模块、电路、和算法步骤可实现为电子硬件、计算机软件、或这两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、框、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员对于每种特定应用可用不同的方式来实现所描述的功能性,但这样的实现决策不应被解读成导致脱离了本发明的范围。[0038]结合本文所公开的实施例描述的各种解说性逻辑板块、模块、和电路可用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文所描述功能的任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协作的一个或多个微处理器、或任何其他此类配置。
[0039]结合本文中公开的实施例描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其他形式的存储介质中。示例性存储介质耦合到处理器以使得该处理器能从/向该存储介质读取和写入信息。在替换方案中,存储介质可以被整合到处理器。处理器和存储介质可驻留在ASIC中。ASIC可驻留在用户终端中。在替换方案中,处理器和存储介质可作为分立组件驻留在用户终端中。
[0040]在一个或多个示例性实施例中,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现为计算机程序产品,则各功能可以作为一条或更多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,其包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或能被用来携带或存储指令或数据结构形式的合意程序代码且能被计算机访问的任何其它介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其它远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘和蓝光碟,其中盘(disk)往往以磁的方式再现数据,而碟(disc)用激光以光学方式再现数据。上述的组合也应被包括在计算机可读介质的范围内。
[0041]提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员来说都将是显而易见的,且本文中所定义的普适原理可被应用到其他变体而不会脱离本公开的精神或范围。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖性特征相一
6
CN 109582725 A
说 明 书
5/5页
致的最广范围。
7
CN 109582725 A
说 明 书 附 图
1/1页
图1
8
因篇幅问题不能全部显示,请点此查看更多更全内容