基于流程化申请GP资源池的方法及其系统与流程

文档序号:18475142发布日期:2019-08-20 20:55阅读:259来源:国知局
基于流程化申请GP资源池的方法及其系统与流程

本发明涉及postgresql数据库,更具体地说是指基于流程化申请gp资源池的方法及其系统。



背景技术:

postgresql是全球最先进的开源数据库之一。作为学院派关系型数据库管理系统的鼻祖,它的优点主要集中在对sql规范的完整实现以及丰富多样的数据类型支持(json数据、ip数据和几何数据等,大部分商业数据库都不支持)。除了完美支持事务、子查询、多版本控制(mvcc)、数据完整性检查等特性外,还集成了高可用和备份恢复等重要功能,减轻用户的运维压力。

如图1和图2显示了postgresql数据库系统两种不同的生成数据库实例方式,由用户填写基本实例信息、数据库管理员(dba)审核申请信息、生成数据库实例这些步骤组成。从这种生成数据库实例的方式来看,对使用者(用户)的要求很高,不仅要了解网络常识,还要懂得postgresql的基本理论,知道服务器的详细ip和端口号,这样使得系统的易用性大大降低。通常来说,后端的服务器的信息对用户来说是“不可见”的,用户只要把需要的东西传输至系统,系统经过处理后,返回用户所要的结果,重要的关键信息通过公共网络传输,数据有被盗取的风险,为了保证数据安全,需要建立相应的数据备份系统和防火墙机制,并且传统postgresql数据库系统存在新老数据一起存放,需要定时触发空间,会带来多余的io和数据库对象加锁开销,引起数据库整体的并发能力下降。而且空间清理不及时,还可能会引发数据膨胀,同时也存在数据库实例申请流程混乱,业务和技术两条线界线不清晰的问题。用户填写完申请单后,管理员审核通过就可以直接生成数据库实例。使得系统的维护性变差,不能实现事务回滚。

因此,有必要设计一种基于流程化申请gp资源池的方法,实现解决postgresql数据库申请实例需要指定数据库ip和端口号并通过互联网传送到服务器生成实例而造成数据不安全和审核流程不严谨、业务和技术两条线不清晰的问题。



技术实现要素:

本发明的目的在于克服现有技术的缺陷,提供基于流程化申请gp资源池的方法及其系统。

为实现上述目的,本发明采用以下技术方案:基于流程化申请gp资源池的方法,所述方法包括:

输入参数,并对参数进行预处理;

利用处理后的数据发送请求;

根据所述请求访问远程服务器;

由控制远程服务器执行请求内的语句,获取并返回执行结果。

其进一步技术方案为:输入参数,并对参数进行预处理的步骤,包括以下具体步骤:

输入用户参数;

对所述用户参数封装成指定格式。

其进一步技术方案为:输入用户参数的步骤中,所述用户参数包括指定数据库名称、用户名以及登录账号密码参数中至少一种。

其进一步技术方案为:利用处理后的数据发送请求的步骤,具体是封装后的用户参数采用http方式发送请求至后台nodejs接口。

其进一步技术方案为:根据所述请求访问远程服务器的步骤,具体是利用ssh2的数字签名算法和diffie-hellman算法代替rsa来完成对称密钥的交换进行登陆且访问远程服务器。

其进一步技术方案为:由控制远程服务器执行请求内的语句,获取并返回执行结果的步骤,包括以下具体步骤:

审查所述用户参数,判断用户参数是否填写合理及复合经济效益;

若是,则按照用户参数来执行语句,初始化数据库实例;

可视化监控数据库实例的使用情况,获取数据库的各项指标数据,并返回各项指标数据;

若不是,则返回不合格通知。

本发明还提供了基于流程化申请gp资源池的系统,包括参数获取单元、请求发送单元、访问单元以及执行单元;

所述参数获取单元,用于输入参数,并对参数进行预处理;

所述请求发送单元,用于利用处理后的数据发送请求;

所述访问单元,用于根据所述请求访问远程服务器;

所述执行单元,用于由控制远程服务器执行请求内的语句,获取并返回执行结果。

其进一步技术方案为:所述参数获取单元包括输入模块以及封装模块;

所述输入模块,用于输入用户参数;

所述封装模块,用于对所述用户参数封装成指定格式。

其进一步技术方案为:所述执行单元包括审查模块、初始化模块、数据反馈模块以及通知模块;

所述审查模块,用于审查所述用户参数,判断用户参数是否填写合理及复合经济效益;

所述初始化模块,用于若是,则按照用户参数来执行语句,初始化数据库实例;

所述数据反馈模块,用于可视化监控数据库实例的使用情况,获取数据库的各项指标数据,并返回各项指标数据;

所述通知模块,用于若不是,则返回不合格通知。

本发明与现有技术相比的有益效果是:本发明的基于流程化申请gp资源池的方法,通过前端界面输入参数,对参数进行格式处理并发送请求至nodejs接口,由nodejs利用ssh2的数字签名算法和diffie-hellman算法代替rsa来完成对称密钥的交换去登录并操作远程服务器,执行语句后返回各项指标数据,通过ssh2作为用户端和服务器端之间的桥梁,直接在服务器端执行对应的操作,完成对postgresql数据库的命令操作,从而保护的数据的安全,使postgresql变成一个可靠的、安全的存储资源体,实现解决postgresql数据库申请实例需要指定数据库ip和端口号并通过互联网传送到服务器生成实例而造成数据不安全和审核流程不严谨、业务和技术两条线不清晰的问题。

下面结合附图和具体实施例对本发明作进一步描述。

附图说明

图1为现有的postgresql数据库实例申请的流程图一;

图2为现有的postgresql数据库实例申请的流程图二;

图3为本发明具体实施例提供的基于流程化申请gp资源池的方法的流程图;

图4为本发明具体实施例提供的输入参数并对参数进行预处理的流程图;

图5为本发明具体实施例提供的由控制远程服务器执行请求内的语句获取执行结果并返回的流程图;

图6为本发明具体实施例提供的postgresql数据库实例申请的流程图一;

图7为本发明具体实施例提供的postgresql数据库实例申请的流程图二;

图8为本发明具体实施例提供koa2框架执行过程的框架图;

图9为本发明具体实施例提供的基于流程化申请gp资源池的系统的结构框图;

图10为本发明具体实施例提供的参数获取单元的结构框图;

图11为本发明具体实施例提供的执行单元的结构框图。

具体实施方式

为了更充分理解本发明的技术内容,下面结合具体实施例对本发明的技术方案进一步介绍和说明,但不局限于此。

如图3~11所示的具体实施例,本实施例提供的基于流程化申请gp资源池的方法,可以运用在申请postgresql数据库实例的过程中,实现解决postgresql数据库申请实例需要指定数据库ip和端口号并通过互联网传送到服务器生成实例而造成数据不安全和审核流程不严谨、业务和技术两条线不清晰的问题。

如图3所示,本实施例提供了基于流程化申请gp资源池的方法,该方法包括:

s1、输入参数,并对参数进行预处理;

s2、利用处理后的数据发送请求;

s3、根据所述请求访问远程服务器;

s4、由控制远程服务器执行请求内的语句,获取并返回执行结果。

对于上述的s1步骤至s4步骤,具体是利用postgresql数据库内预先部署好的gp资源池,根据参数进行gp资源池的组合和申请,实现初始化数据库实施例,基于预先部署好的gp资源池,为租户提供申请、审核处理、初始化数据库,最后生成gp数据库实例的可视化操作,为gp数据库实例进行实例基本信息、实例监控(进程、内存、会话、磁盘空间)、日志等操作的可视化处理,用户可以根据数据来分析数据库的运行状态,健康状况,了解数据库存储空间的使用情况,并结合自身的应用方便地对数据库进行优化。基于预先部署好的postgresql的gp资源池,可以节省成本,方便维护,提高资源利用率。

面向服务器生成数据库实例的方法,用户只需按照自己的需求填写登录信息和数据库空间大小,就可以轻松快捷地生成数据库,随时随地访问自己的数据,轻而易举地掌握数据库的运行状态,及时发现问题,解决问题。通过该方法或者系统达到了大大增强数据的安全,操作步骤清晰,业务和技术分离,成本低,可靠性高,操作简单方便的效果。

对于上述的s1步骤,输入参数,并对参数进行预处理的步骤,包括以下具体步骤:

s11、输入用户参数;

s12、对所述用户参数封装成指定格式。

上述的s11步骤中,上述的用户参数包括指定数据库名称、用户名以及登录账号密码参数中至少一种,如图6所示。

对于上述的s12步骤,需要对nodejs接口对数据的接收有格式的要求,因此,需要将用户参数封装成指定格式发送至nodejs接口,远程登录服务器。

更进一步地,上述的s2步骤,利用处理后的数据发送请求的步骤,具体是封装后的用户参数采用http方式发送请求至后台nodejs接口。

通过可视化表单界面输入用户参数,前端界面angularjs通过koa2框架请求nodejs服务,koa是express原班人马打造的一个更小,基于nodejs平台的下一代web开发框架,koa的精妙之处就在于其使用generator和promise,实现了一种更为有趣的中间件系统,koa的中间件是一系列generator函数的对象,执行起来有点类似于栈的结构,依次执行,同时也类似于python的django框架的中间件系统如图8所示。

更进一步地,对于上述的s3步骤,根据所述请求访问远程服务器的步骤,具体是利用ssh2的数字签名算法和diffie-hellman算法代替rsa来完成对称密钥的交换进行登陆且访问远程服务器。通过ssh2作为用户端和服务器端之间的桥梁,直接在服务器端执行对应的操作,完成对postgresql数据库的命令操作,从而保护的数据的安全,使postgresql变成一个可靠的、安全的存储资源体,稳定性极强,数据库引擎在崩溃、断电之类的灾难场景下抗打击能力比其他数据库的稳定性要强。

对于上述的s4步骤,由控制远程服务器执行请求内的语句,获取并返回执行结果的步骤,包括以下具体步骤:

s41、审查所述用户参数,判断用户参数是否填写合理及复合经济效益;

s42、若是,则按照用户参数来执行语句,初始化数据库实例;

s43、可视化监控数据库实例的使用情况,获取数据库的各项指标数据,并返回各项指标数据;

s44、若不是,则返回不合格通知。

对于上述的s41步骤,判断用户参数是否填写合理及复合经济效益,提高审核流程的严谨程度。

上述的s41步骤至s44步骤,具体是依据用户参数内指定数据库名称、用户名以及登录账号密码参数登录到指定的数据库内,对该数据库内原先部署好的gp资源池进行实例初始化,可以通过函数和条件索引,这使得postgresql数据库的调优非常灵活。

对于上述的s43步骤,可查看正在执行慢日志、当前锁等待、分析表等性能数据,更快速精准地定位性能问题,提供数据库监控服务,可以简单快捷了解数据库的运行状态和健康状况,及时发现问题,处理问题,免除后顾之忧。

数据库内可支持丰富的数据类型,gp资源池支持大量字典、数组、bitmap、json等数据类型。

通过前端界面输入数据,登录远程服务器,由远程服务器执行语句,申请实施例,返回指标数据,可以节省用户的存储投资,无需搭建专用存储服务器,只需按需购买postgresql数据库服务弹性扩展存储容量,免去硬件投入成本及资源闲置浪费;postgresql数据库服务由专业的服务商维护,免去了传统存储的人力维护成本。

上述的基于流程化申请gp资源池的方法,通过前端界面输入参数,对参数进行格式处理并发送请求至nodejs接口,由nodejs利用ssh2的数字签名算法和diffie-hellman算法代替rsa来完成对称密钥的交换去登录并操作远程服务器,执行语句后返回各项指标数据,通过ssh2作为用户端和服务器端之间的桥梁,直接在服务器端执行对应的操作,完成对postgresql数据库的命令操作,从而保护的数据的安全,使postgresql变成一个可靠的、安全的存储资源体,实现解决postgresql数据库申请实例需要指定数据库ip和端口号并通过互联网传送到服务器生成实例而造成数据不安全和审核流程不严谨、业务和技术两条线不清晰的问题。

如图9所示,本实施例还提供了基于流程化申请gp资源池的系统,其包括参数获取单元1、请求发送单元2、访问单元3以及执行单元4;

参数获取单元1,用于输入参数,并对参数进行预处理。

请求发送单元2,用于利用处理后的数据发送请求。

访问单元3,用于根据所述请求访问远程服务器。

执行单元4,用于由控制远程服务器执行请求内的语句,获取并返回执行结果。

利用postgresql数据库内预先部署好的gp资源池,根据参数进行gp资源池的组合和申请,实现初始化数据库实施例,基于预先部署好的gp资源池,为租户提供申请、审核处理、初始化数据库,最后生成gp数据库实例的可视化操作,为gp数据库实例进行实例基本信息、实例监控(进程、内存、会话、磁盘空间)、日志等操作的可视化处理,用户可以根据数据来分析数据库的运行状态,健康状况,了解数据库存储空间的使用情况,并结合自身的应用方便地对数据库进行优化。基于预先部署好的postgresql的gp资源池,可以节省成本,方便维护,提高资源利用率。

面向服务器生成数据库实例的方法,用户只需按照自己的需求填写登录信息和数据库空间大小,就可以轻松快捷地生成数据库,随时随地访问自己的数据,轻而易举地掌握数据库的运行状态,及时发现问题,解决问题。通过该方法或者系统达到了大大增强数据的安全,操作步骤清晰,业务和技术分离,成本低,可靠性高,操作简单方便的效果。

更进一步地,上述的参数获取单元1包括输入模块11以及封装模块12。

输入模块11,用于输入用户参数。上述的用户参数包括指定数据库名称、用户名以及登录账号密码参数中至少一种,如图6所示。

封装模块12,用于对所述用户参数封装成指定格式。需要对nodejs接口对数据的接收有格式的要求,因此,需要将用户参数封装成指定格式发送至nodejs接口,远程登录服务器。

上述的请求发送单元2具体是封装后的用户参数采用http方式发送请求至后台nodejs接口。

通过可视化表单界面输入用户参数,前端界面angularjs通过koa2框架请求nodejs服务,koa是express原班人马打造的一个更小,基于nodejs平台的下一代web开发框架,koa的精妙之处就在于其使用generator和promise,实现了一种更为有趣的中间件系统,koa的中间件是一系列generator函数的对象,执行起来有点类似于栈的结构,依次执行,同时也类似于python的django框架的中间件系统如图8所示。

上述的访问单元3具体是利用ssh2的数字签名算法和diffie-hellman算法代替rsa来完成对称密钥的交换进行登陆且访问远程服务器。通过ssh2作为用户端和服务器端之间的桥梁,直接在服务器端执行对应的操作,完成对postgresql数据库的命令操作,从而保护的数据的安全,使postgresql变成一个可靠的、安全的存储资源体,稳定性极强,数据库引擎在崩溃、断电之类的灾难场景下抗打击能力比其他数据库的稳定性要强。

更进一步地,上述的执行单元4包括审查模块41、初始化模块42、数据反馈模块43以及通知模块44。

审查模块41,用于审查所述用户参数,判断用户参数是否填写合理及复合经济效益。提高审核流程的严谨程度。

初始化模块42,用于若是,则按照用户参数来执行语句,初始化数据库实例。

数据反馈模块43,用于可视化监控数据库实例的使用情况,获取数据库的各项指标数据,并返回各项指标数据。

通知模块44,用于若不是,则返回不合格通知。

上述的执行单元4具体是依据用户参数内指定数据库名称、用户名以及登录账号密码参数登录到指定的数据库内,对该数据库内原先部署好的gp资源池进行实例初始化,可以通过函数和条件索引,这使得postgresql数据库的调优非常灵活。

上述的数据反馈模块43可查看正在执行慢日志、当前锁等待、分析表等性能数据,更快速精准地定位性能问题,提供数据库监控服务,可以简单快捷了解数据库的运行状态和健康状况,及时发现问题,处理问题,免除后顾之忧。

数据库内可支持丰富的数据类型,gp资源池支持大量字典、数组、bitmap、json等数据类型。

通过前端界面输入数据,登录远程服务器,由远程服务器执行语句,申请实施例,返回指标数据,可以节省用户的存储投资,无需搭建专用存储服务器,只需按需购买postgresql数据库服务弹性扩展存储容量,免去硬件投入成本及资源闲置浪费;postgresql数据库服务由专业的服务商维护,免去了传统存储的人力维护成本。

上述的基于流程化申请gp资源池的系统,通过前端界面输入参数,对参数进行格式处理并发送请求至nodejs接口,由nodejs利用ssh2的数字签名算法和diffie-hellman算法代替rsa来完成对称密钥的交换去登录并操作远程服务器,执行语句后返回各项指标数据,通过ssh2作为用户端和服务器端之间的桥梁,直接在服务器端执行对应的操作,完成对postgresql数据库的命令操作,从而保护的数据的安全,使postgresql变成一个可靠的、安全的存储资源体,实现解决postgresql数据库申请实例需要指定数据库ip和端口号并通过互联网传送到服务器生成实例而造成数据不安全和审核流程不严谨、业务和技术两条线不清晰的问题。

上述仅以实施例来进一步说明本发明的技术内容,以便于读者更容易理解,但不代表本发明的实施方式仅限于此,任何依本发明所做的技术延伸或再创造,均受本发明的保护。本发明的保护范围以权利要求书为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1