一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据库自动切换方法、装置和计算机可读存储介质与流程

2021-11-25 02:54:00 来源:中国专利 TAG:


1.本发明涉及网络通信技术领域,尤其涉及数据库自动切换方法、装置和计算机可读存储介质。


背景技术:

2.在用户访问网页应用程序的过程中,影响响应速度的主要是数据库相关操作,目前主要是通过使用数据库集群等来提高应用程序访问数据库的性能,在保证性能的情况下需要保证数据库的资源利用率较高,减少资源损耗。
3.但是,当数据库的访问量较大时,数据库的访问压力和资源占用率也会随之增加,导致响应时间较长,响应速度较慢,进而会出现提示用户重启网页应用程序来进行访问的情况,对用户的使用体验造成了较大的影响。


技术实现要素:

4.本发明的主要目的在于提供一种数据库自动切换方法、装置和计算机可读存储介质,旨在解决如何有效减少用户在访问网页应用程序时的等待时间进而提升用户的使用体验的技术问题。
5.为实现上述目的,本发明提供一种数据库自动切换方法,所述数据库自动切换方法包括以下步骤:调用预设的数据库访问模型监控并采集访问者信息;对所述访问者信息进行数据处理以得到数据处理结果;基于机器学习对所述数据处理结果进行数据分析以得到数据库资源占用率;根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果;根据所述数据库访问压力预测结果进行数据同步,获取数据同步结果,根据所述数据同步结果进行数据库自动切换。
6.可选地,所述根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果的步骤包括:获取所述访问者信息中预设时间段内包含的数据库响应时间,基于所述数据库响应时间计算以得到数据库平均响应时间;根据所述数据库平均响应时间和所述数据库资源占用率进行计算以得到数据库访问压力预测结果。
7.可选地,所述根据所述数据同步结果进行数据库自动切换的步骤之前包括:确认待切换数据库与当前数据库的同步状态是否符合预设标准;确认所述待切换数据库是否支持资源的动态扩容。
8.可选地,所述根据所述数据同步结果进行数据库自动切换的步骤包括:当确认所述同步状态符合预设标准且所述待切换数据库支持资源的动态扩容时,
认定所述数据同步结果为同步成功,根据所述数据同步结果进行数据库自动切换。
9.可选地,所述调用预设的数据库访问模型监控并采集访问者信息的步骤包括:获取数据采集维度,根据所述数据采集维度建立预设的数据库访问模型;通过预设的程序类库调用所述预设的数据库访问模型监控并采集与所述数据采集维度对应的访问者信息。
10.可选地,所述对所述访问者信息进行数据处理以得到数据处理结果的步骤包括:调用数据处理服务对所述访问者信息进行数据清洗、数据合并以得到数据处理结果。
11.可选地,所述调用数据处理服务对所述访问者信息进行数据清洗的步骤包括:调用数据处理服务根据预设数据规则对所述访问者信息中包含的不符合所述预设数据规则的无效数据进行数据清洗。
12.可选地,所述调用数据处理服务对所述访问者信息进行数据合并的步骤包括:调用数据处理服务对所述访问者信息中属于同一次数据库请求的多条数据进行数据合并。
13.此外,为实现上述目的,本发明还提供一种装置,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据库自动切换程序,所述数据库自动切换程序被所述处理器执行时实现如权上所述的数据库自动切换方法的步骤。
14.此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据库自动切换程序,所述数据库自动切换程序被处理器执行时实现如上所述的数据库自动切换方法的步骤。
15.本发明提出一种数据库自动切换方法、装置和计算机可读存储介质,在所述数据库自动切换方法中,通过调用预设的数据库访问模型监控并采集访问者信息;对所述访问者信息进行数据处理以得到数据处理结果;基于机器学习对所述数据处理结果进行数据分析以得到数据库资源占用率;根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果;根据所述数据库访问压力预测结果进行数据库自动切换,能够提前预测出数据库访问的瓶颈,进而提前实现了资源规划和动态扩容,使得应用程序在不重启的情况下也能完成切库的动作,避免了给用户带去的反复重启应用程序的重复操作和不良体验。
附图说明
16.图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;图2为本发明数据库自动切换方法第一实施例的流程示意图。
17.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
18.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
19.本发明实施例的主要解决方案是:一种数据库自动切换方法,所述数据库自动切换方法包括以下步骤:调用预设的数据库访问模型监控并采集访问者信息;
对所述访问者信息进行数据处理以得到数据处理结果;基于机器学习对所述数据处理结果进行数据分析以得到数据库资源占用率;根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果;根据所述数据库访问压力预测结果进行数据同步,获取数据同步结果,根据所述数据同步结果进行数据库自动切换。
20.由于在用户访问网页应用程序的过程中,影响响应速度的主要是数据库相关操作,目前主要是通过使用数据库集群等来提高应用程序访问数据库的性能,在保证性能的情况下需要保证数据库的资源利用率较高,减少资源损耗。
21.但是,当数据库的访问量较大时,数据库的访问压力和资源占用率也会随之增加,导致响应时间较长,响应速度较慢,进而会出现提示用户重启网页应用程序来进行访问的情况,对用户的使用体验造成了较大的影响。
22.本发明提供一种数据库自动切换方法,通过调用预设的数据库访问模型监控并采集访问者信息;对所述访问者信息进行数据处理以得到数据处理结果;基于机器学习对所述数据处理结果进行数据分析以得到数据库资源占用率;根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果;根据所述数据库访问压力预测结果进行数据库自动切换,能够提前预测出数据库访问的瓶颈,进而提前实现了资源规划和动态扩容,使得应用程序在不重启的情况下也能完成切库的动作,避免了给用户带去的反复重启应用程序的重复操作和不良体验。
23.如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
24.本发明实施例终端可以是pc,也可以是智能手机、平板电脑、便携计算机等具有网络连接功能和数据处理功能的可移动式终端设备。
25.如图1所示,该终端可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi

fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non

volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
26.可选地,终端还可以包括摄像头、rf(radio frequency,射频)电路,传感器、音频电路、wifi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
27.本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
28.如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据库自动切换程序。
29.在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的数据库自动切换程序,并执行以下操作:调用预设的数据库访问模型监控并采集访问者信息;对所述访问者信息进行数据处理以得到数据处理结果;基于机器学习对所述数据处理结果进行数据分析以得到数据库资源占用率;根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果;根据所述数据库访问压力预测结果进行数据同步,获取数据同步结果,根据所述数据同步结果进行数据库自动切换。
30.进一步地,处理器1001可以调用存储器1005中存储的数据库自动切换程序,还执行以下操作:所述根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果的步骤包括:获取所述访问者信息中预设时间段内包含的数据库响应时间,基于所述数据库响应时间计算以得到数据库平均响应时间;根据所述数据库平均响应时间和所述数据库资源占用率进行计算以得到数据库访问压力预测结果。
31.进一步地,处理器1001可以调用存储器1005中存储的数据库自动切换程序,还执行以下操作:所述根据所述数据同步结果进行数据库自动切换的步骤之前包括:确认待切换数据库与当前数据库的同步状态是否符合预设标准;确认所述待切换数据库是否支持资源的动态扩容。
32.进一步地,处理器1001可以调用存储器1005中存储的数据库自动切换程序,还执行以下操作:所述根据所述数据同步结果进行数据库自动切换的步骤包括:当确认所述同步状态符合预设标准且所述待切换数据库支持资源的动态扩容时,认定所述数据同步结果为同步成功,根据所述数据同步结果进行数据库自动切换。
33.进一步地,处理器1001可以调用存储器1005中存储的数据库自动切换程序,还执行以下操作:所述调用预设的数据库访问模型监控并采集访问者信息的步骤包括:获取数据采集维度,根据所述数据采集维度建立预设的数据库访问模型;通过预设的程序类库调用所述预设的数据库访问模型监控并采集与所述数据采集维度对应的访问者信息。
34.进一步地,处理器1001可以调用存储器1005中存储的数据库自动切换程序,还执行以下操作:所述对所述访问者信息进行数据处理以得到数据处理结果的步骤包括:
调用数据处理服务对所述访问者信息进行数据清洗、数据合并以得到数据处理结果。
35.进一步地,处理器1001可以调用存储器1005中存储的数据库自动切换程序,还执行以下操作:所述调用数据处理服务对所述访问者信息进行数据清洗的步骤包括:调用数据处理服务根据预设数据规则对所述访问者信息中包含的不符合所述预设数据规则的无效数据进行数据清洗。
36.进一步地,处理器1001可以调用存储器1005中存储的数据库自动切换程序,还执行以下操作:所述调用数据处理服务对所述访问者信息进行数据合并的步骤包括:调用数据处理服务对所述访问者信息中属于同一次数据库请求的多条数据进行数据合并。
37.参照图2,本发明第一实施例提供一种数据库自动切换方法,所述数据库自动切换方法包括:步骤s10,调用预设的数据库访问模型监控并采集访问者信息;需要说明的是,本实施例中,执行主体为终端设备,所述终端设备可以是pc、智能手机、平板电脑、便携式计算机等具备网络连接功能和数据处理功能的智能终端,所述终端设备上包含一些服务项,所述服务项是指系统自动完成的,不需要和用户交互的程序,所述应用服务在终端设备的操作系统处于正常运行状态时亦正常运行。
38.本实施例中,步骤s10包括:获取数据采集维度,根据所述数据采集维度建立预设的数据库访问模型;通过预设的程序类库调用所述预设的数据库访问模型监控并采集与所述数据采集维度对应的访问者信息。
39.本实施例中,所述数据采集维度主要包括:时间信息(例如时分秒、日期、与日期对应的星期、与日期对应的节假日信息等)、浏览器信息(例如浏览器的内核、浏览器的运行模式等)、写入数据库的类型、读取数据库的类型、用户种类、数据库的响应时间、子系统来源、菜单来源等,本实施例对此不加以限制。所述预设的数据库访问模型是基于上述数据采集维度信息进行建立的,通过sdk(software development kit,软件开发工具包)的方式嵌入到数据采集服务中,以实现采集用户信息的功能,sdk即所述预设的程序类库。
40.可以理解的是,当所述数据采集服务采集到访问者信息后会将这些信息通过http(hyper text transfer protocol,超文本传输协议)模式上报到数据处理服务以对数据进行进一步的处理。
41.步骤s20,对所述访问者信息进行数据处理以得到数据处理结果;可以理解的是,数据处理服务在接收到由数据采集服务上报的所述访问者信息后会对其进行数据处理以得到数据处理结果,预设的数据库访问模型中只限定了数据采集维度而并未限定采集到的数据的具体格式,无法判断采集到的数据是否有效,所以需要数据处理服务对采集到的数据进行进一步的处理。
42.本实施例中,步骤s20包括:调用数据处理服务对所述访问者信息进行数据清洗、数据合并以得到数据处理结
果;其中,所述调用数据处理服务对所述访问者信息进行数据清洗的步骤包括:调用数据处理服务根据预设数据规则对所述访问者信息中包含的不符合所述预设数据规则的无效数据进行数据清洗;所述调用数据处理服务对所述访问者信息进行数据合并的步骤包括:调用数据处理服务对所述访问者信息中属于同一次数据库请求的多条数据进行数据合并。
43.需要说明的是,所述预设数据规则为数据处理服务用于判断数据是否正规或有效的规则,在数据处理服务中包含了所述预设数据规则,可以由管理者根据需求进行修改。
44.可以理解的是,访问者信息中可能包含一些相对于预设数据规则或管理者修改后的数据规则而言不正规的无效数据,例如时间信息为空、写入类型错误、读取类型错误等情况,此时则需要对这些无效的数据进行数据清洗,即删除这些无效数据信息;在完成数据清洗后,还需要对保留下来的符合预设数据规则或管理者修改后的数据规则的有效数据进行数据合并,由于数据采集时获取的均为单条数据,但是根据时间信息和请求信息等能够得知哪些数据属于同一次数据库请求的数据,将它们进行合并可以有效缩减数据总量,避免出现数据量与访问次数并不一致的情况,导致后续对于数据库访问压力的预测不准确。
45.步骤s30,基于机器学习对所述数据处理结果进行数据分析以得到数据库资源占用率;需要说明的是,所述机器学习包括特征提取、训练、评估、动态规划、发布等过程,基于上述数据处理结果中的各项数据指标和前期机器学习中已有的样本进行分析,即可预测出资源占用率,在持续的机器学习和样本累计下,经数据分析后得到的数据库资源占用率会越来越精准有效。
46.步骤s40,根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果;本实施例中,步骤s40包括:获取所述访问者信息中预设时间段内包含的数据库响应时间,基于所述数据库响应时间计算以得到数据库平均响应时间;根据所述数据库平均响应时间和所述数据库资源占用率进行计算以得到数据库访问压力预测结果。
47.需要说明的是,所述预设时间段可以设定为5分钟、10分钟等,即自起始采集时间开始,计算每个预设时间段内包含的数据库响应时间的平均值,以得到该预设时间段内的数据库平均响应时间,将得到的所述数据库平均响应时间除以上述步骤中获得的数据库资源占用率即可得到评价指数,即所述数据库访问压力预测结果,当数据库为标准数据库的情况下,该评价指数越低说明访问压力越小,反之该评价指数越高说明访问压力越大,即需要进行数据库的合理切换。
48.步骤s50,根据所述数据库访问压力预测结果进行数据同步,获取数据同步结果,根据所述数据同步结果进行数据库自动切换。
49.可以理解的是,当上述评价指数超过预设阈值时,表示当前数据库即将迎来较大的访问压力,需要对接下来的数据库请求切换至其他数据库。
50.本实施例中,步骤s50之前包括:确认待切换数据库与当前数据库的同步状态是否符合预设标准;确认所述待切换数据库是否支持资源的动态扩容。
51.需要说明的是,本实施例中,所述预设标准要求进行动态切库的不同数据库间的同步时间需要在毫秒级。
52.可以理解的是,若待切换数据库与当前数据库的同步状态不符合预设标准或所述待切换数据库不支持资源的动态扩容,则所述带切换数据库无法作为切换目标,需继续选择其他数据库。
53.本实施例中,步骤s50包括:当确认所述同步状态符合预设标准且所述待切换数据库支持资源的动态扩容时,认定所述数据同步结果为同步成功,根据所述数据同步结果进行数据库自动切换。
54.可以理解的是,当确认所述同步状态符合预设标准即不同数据库之间的同步时间为毫秒级时,且所述待切换数据库支持资源的动态扩容时,视为数据同步成功,即符合动态切库的前提条件,此时根据上述数据完成初始化的预测值,在应用程序服务中,通过使用获取到的预测值信息,动态切换上下文中存储的切库信息,实现数据库的自动切换。
55.在本实施例中,提出了一种数据库自动切换方法,通过调用预设的数据库访问模型监控并采集访问者信息;对所述访问者信息进行数据处理以得到数据处理结果;基于机器学习对所述数据处理结果进行数据分析以得到数据库资源占用率;根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果;根据所述数据库访问压力预测结果进行数据库自动切换,能够提前预测出数据库访问的瓶颈,进而提前实现了资源规划和动态扩容,使得应用程序在不重启的情况下也能完成切库的动作,避免了给用户带去的反复重启应用程序的重复操作和不良体验。
56.此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有数据库自动切换程序,所述数据库自动切换程序被处理器执行时实现如下操作:调用预设的数据库访问模型监控并采集访问者信息;对所述访问者信息进行数据处理以得到数据处理结果;基于机器学习对所述数据处理结果进行数据分析以得到数据库资源占用率;根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果;根据所述数据库访问压力预测结果进行数据同步,获取数据同步结果,根据所述数据同步结果进行数据库自动切换。
57.进一步地,所述数据库自动切换程序被处理器执行时还实现如下操作:所述根据所述访问者信息和所述数据库资源占用率进行计算以得到数据库访问压力预测结果的步骤包括:获取所述访问者信息中预设时间段内包含的数据库响应时间,基于所述数据库响应时间计算以得到数据库平均响应时间;根据所述数据库平均响应时间和所述数据库资源占用率进行计算以得到数据库访问压力预测结果。
58.进一步地,所述数据库自动切换程序被处理器执行时还实现如下操作:
所述根据所述数据同步结果进行数据库自动切换的步骤之前包括:确认待切换数据库与当前数据库的同步状态是否符合预设标准;确认所述待切换数据库是否支持资源的动态扩容。
59.进一步地,所述数据库自动切换程序被处理器执行时还实现如下操作:所述根据所述数据同步结果进行数据库自动切换的步骤包括:当确认所述同步状态符合预设标准且所述待切换数据库支持资源的动态扩容时,认定所述数据同步结果为同步成功,根据所述数据同步结果进行数据库自动切换。
60.进一步地,所述数据库自动切换程序被处理器执行时还实现如下操作:所述调用预设的数据库访问模型监控并采集访问者信息的步骤包括:获取数据采集维度,根据所述数据采集维度建立预设的数据库访问模型;通过预设的程序类库调用所述预设的数据库访问模型监控并采集与所述数据采集维度对应的访问者信息。
61.进一步地,所述数据库自动切换程序被处理器执行时还实现如下操作:所述对所述访问者信息进行数据处理以得到数据处理结果的步骤包括:调用数据处理服务对所述访问者信息进行数据清洗、数据合并以得到数据处理结果。
62.进一步地,所述数据库自动切换程序被处理器执行时还实现如下操作:所述调用数据处理服务对所述访问者信息进行数据清洗的步骤包括:调用数据处理服务根据预设数据规则对所述访问者信息中包含的不符合所述预设数据规则的无效数据进行数据清洗。
63.进一步地,所述数据库自动切换程序被处理器执行时还实现如下操作:所述调用数据处理服务对所述访问者信息进行数据合并的步骤包括:调用数据处理服务对所述访问者信息中属于同一次数据库请求的多条数据进行数据合并。
64.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
65.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
66.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
67.以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献