在线课堂的学习数据聚合方法、服务器组件及服务器与流程

文档序号:15640326发布日期:2018-10-12 21:59阅读:159来源:国知局

本发明涉及计算机技术领域。更具体地,涉及一种在线课堂的学习数据聚合方法、服务器组件及服务器。



背景技术:

目前,在线课堂的学习报告由用户的客户端聚合相关数据而生成,且在线课堂在每天的固定时间点(例如00:30)标记完课,生成学习报告需要用户的客户端实现且只能在每天的固定时间点后生成。其中,聚合是指对有关的数据进行内容挑选、分析、归类,最后分析得到预期的结果。用户的客户端获取相关数据时,需要接入多个服务接口以调用多个服务(例如ua、homework、teacher、curriculum、onlineclass等),导致开发、联调耗时,上线后产生服务调用超时,甚至产生循环调用的情况,同时各个服务的数据处理若及时准确会导致用户体验较差。

因此,需要提供一种及时有效的在线课堂的学习数据聚合方法、服务器组件及服务器。



技术实现要素:

本发明的目的在于提供一种及时有效的在线课堂的学习数据聚合方法、服务器组件及服务器。

为达到上述目的,本发明采用下述技术方案:

本发明第一方面提供了一种在线课堂的学习数据聚合方法,包括:

通过中间件监听线上数据库中的在线课堂状态记录,根据在线课堂状态记录判断在线课堂是否完课;

在在线课堂完课后,由外部数据库获取学习相关数据及在线课堂的视频回放分析结果;

对学习相关数据和在线课堂的视频回放分析结果进行聚合,生成并在本地保存学习报告。

优选地,该方法还包括:对监听线上数据库中的在线课堂状态记录过程中的异常情况进行离线补偿。

优选地,该方法还包括:通过应用程序编程接口向外部输出本地保存的学习报告。

优选地,该方法还包括:在获取在线课堂的视频回放分析结果后在本地保存在线课堂的视频回放分析结果。

优选地,所述学习相关数据包括课堂信息数据、作业数据、课堂表现数据和学习行为数据中的至少一种。

本发明第二方面提供了一种服务器组件,包括:中间件客户端、接口单元、业务逻辑单元和学习报告数据库;

所述中间件客户端,通过中间件监听线上数据库中的在线课堂状态记录;

所述业务逻辑单元,根据在线课堂状态记录判断在线课堂是否完课;在在线课堂完课后通过接口单元由外部数据库获取学习相关数据及在线课堂的视频回放分析结果;对学习相关数据和在线课堂的视频回放分析结果进行聚合以生成学习报告,并将学习报告保存在学习报告数据库中。

优选地,该服务器组件还包括离线补偿单元,所述离线补偿单元对所述中间件客户端监听在线课堂状态过程中的异常情况进行离线补偿。

优选地,所述接口单元包括多个应用程序编程接口,所述业务逻辑单元通过应用程序编程接口向外部输出学习报告数据库中保存的学习报告。

优选地,该服务器组件还包括:全文搜索引擎,所述业务逻辑单元在获取在线课堂的视频回放分析结果后将在线课堂的视频回放分析结果保存在所述全文搜索引擎。

优选地,所述学习相关数据包括课堂信息数据、作业数据、课堂表现数据和学习行为数据中的至少一种。

本发明第三方面提供了一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明第一方面提供的在线课堂的学习数据聚合方法。

本发明的有益效果如下:

本发明所述技术方案可自动监听在线课堂状态,在在线课堂完课后及时生成学习报告,并以服务的形式向用户的客户端提供学习报告,降低了用户的客户端的接入难度,提高了实时性和准确度。另外,用户的客户端在获取学习报告时只需接入一个接口即可,节省了用户的客户端的资源及成本。

附图说明

下面结合附图对本发明的具体实施方式作进一步详细的说明;

图1示出本发明实施例提供的在线课堂的学习数据聚合方法的流程图。

图2示出本发明实施例提供的服务器组件的示意图。

图3示出本发明实施例提供的服务器的结构示意图。

具体实施方式

为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。

如图1所示,本发明的一个实施例提供了一种在线课堂的学习数据聚合方法,包括:

通过中间件监听线上数据库中的在线课堂状态记录,根据在线课堂状态记录判断在线课堂是否完课;

在在线课堂完课后,由外部数据库获取学习相关数据及在线课堂的视频回放分析结果;

对学习相关数据和在线课堂的视频回放分析结果进行聚合,生成并在本地保存学习报告。

本实施例提供的在线课堂的学习数据聚合方法,可自动监听在线课堂状态,在在线课堂完课后及时生成学习报告,并以服务的形式向用户的客户端提供学习报告,降低了用户的客户端的接入难度,提高了实时性和准确度,有利于用户在完课后及时获取学习报告。

在本实施例的一些可选的实现方式中,本实施例提供的在线课堂的学习数据聚合方法还包括:对监听线上数据库中的在线课堂状态记录过程中的异常情况进行离线补偿。监听线上数据库中的在线课堂状态记录的过程可能会出现丢失数据、宕机等异常情况,因此,通过对监听线上数据库中的在线课堂状态记录过程中的异常情况进行离线补偿,可使得对在线课堂是否完课的判断更加准确。

在本实施例的一些可选的实现方式中,本实施例提供的在线课堂的学习数据聚合方法还包括:通过应用程序编程接口(api接口)向外部输出本地保存的学习报告。基于此,用户的客户端可通过api接口获取学习报告,节省了用户的客户端的资源及成本。

在本实施例的一些可选的实现方式中,本实施例提供的在线课堂的学习数据聚合方法还包括:在获取在线课堂的视频回放分析结果后在本地保存在线课堂的视频回放分析结果。在本地保存数据较大的视频回放分析结果,可在聚合时随时调用视频回放分析结果,利于聚合过程的实现。

在本实施例的一些可选的实现方式中,本实施例提供的在线课堂的学习数据聚合方法中的学习相关数据包括课堂信息数据、作业数据、课堂表现数据和学习行为数据,课堂信息数据、作业数据、课堂表现数据和学习行为数据可分别被存储在对应的数据库中,例如课堂信息数据库、作业数据库、课堂表现数据库和学习行为数据库。

如图2所示,本发明的另一个实施例提供了一种服务器组件,包括:中间件客户端、接口单元、业务逻辑单元和学习报告数据库;

中间件客户端,通过中间件监听线上数据库中的在线课堂状态记录;

业务逻辑单元,根据在线课堂状态记录判断在线课堂是否完课;在在线课堂完课后通过接口单元由外部数据库获取学习相关数据及在线课堂的视频回放分析结果;对学习相关数据和在线课堂的视频回放分析结果进行聚合以生成学习报告,并将学习报告保存在学习报告数据库中。

其中,

本实施例提供的服务器组件可理解为一种pangolinservice(穿山甲服务)。

中间件客户端通过中间件监听线上数据库中的在线课堂状态记录可选的方式为:线上数据库发送日志至中间件,当日志发生变化的时候,线上数据库通知中间件,然中间件拉取日志的最新内容。

对于在线课堂的视频回放分析结果,首先由第三方服务生成在线课堂的视频回放文件(在线课堂的视频回放文件的格式例如.mp4等),再由外部服务(例如大数据服务)对在线课堂的视频回放文件进行分析,得到在线课堂的视频回放分析结果。

业务逻辑单元对学习相关数据和在线课堂的视频回放分析结果进行聚合可为离线聚合。

本实施例提供的服务器组件中的学习报告数据库可选用mysql数据库,而学习报告可为可视化学习报告。

本实施例提供的服务器组件,可通过监听在线课堂状态,在在线课堂完课后及时生成学习报告,并以服务的形式向用户的客户端提供学习报告,降低了用户的客户端的接入难度,提高了实时性和准确度,有利于用户在完课后及时获取学习报告。同时,聚合过程在服务器端实现,节省了用户的客户端的资源及成本。

在本实施例的一些可选的实现方式中,本实施例提供的服务器组件还包括离线补偿单元,离线补偿单元对中间件客户端监听在线课堂状态过程中的异常情况进行离线补偿。其中,离线补偿单元可使用vschedule分布式任务调度平台和shell脚本,离线计算补偿数据。监听线上数据库中的在线课堂状态记录的过程可能会出现丢失数据、宕机等异常情况,因此,通过对监听线上数据库中的在线课堂状态记录过程中的异常情况进行离线补偿,可使得对在线课堂是否完课的判断更加准确。

在本实施例的一些可选的实现方式中,本实施例提供的服务器组件中的接口单元包括多个api接口(可包括用于连接用户的客户端的api接口和用于分别连接各外部数据库的api接口),业务逻辑单元通过api接口向外部输出学习报告数据库中保存的学习报告。用户的客户端可通过api接口获取学习报告,节省了用户的客户端的资源及成本。

在本实施例的一些可选的实现方式中,本实施例提供的服务器组件还包括:全文搜索引擎(elasticsearch,简称es,es相对于mysql更合适千万级以上数据存储),业务逻辑单元在获取在线课堂的视频回放分析结果后将在线课堂的视频回放分析结果保存在全文搜索引擎。在全文搜索引擎保存数据较大的视频回放分析结果,可在聚合时随时调用视频回放分析结果,利于聚合过程的实现。

在本实施例的一些可选的实现方式中,学习相关数据包括课堂信息数据、作业数据、课堂表现数据和学习行为数据,课堂信息数据、作业数据、课堂表现数据和学习行为数据可分别被存储在对应的数据库中,例如课堂信息数据库、作业数据库、课堂表现数据库和学习行为数据库。

本发明的另一个实施例提供了一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述在线课堂的学习数据聚合方法。如图3所示,适于用来实现本实施例提供的服务器的计算机系统,包括中央处理单元(cpu),其可以根据存储在只读存储器(rom)中的程序或者从存储部分加载到随机访问存储器(ram)中的程序而执行各种适当的动作和处理。在ram中,还存储有计算机系统操作所需的各种程序和数据。cpu、rom以及ram通过总线被此相连。输入/输入(i/o)接口也连接至总线。

以下部件连接至i/o接口:包括键盘、鼠标等的输入部分;包括诸如液晶显示器(lcd)等以及扬声器等的输出部分;包括硬盘等的存储部分;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分。通信部分经由诸如因特网的网络执行通信处理。驱动器也根据需要连接至i/o接口。可拆卸介质,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器上,以便于从其上读出的计算机程序根据需要被安装入存储部分。

特别地,提据本实施例,上文流程图描述的过程可以被实现为计算机软件程序。例如,本实施例包括一种计算机程序产品,其包括有形地包含在计算机可读介质上的计算机程序,上述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。

附图中的流程图和示意图,图示了本实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或示意图中的每个方框可以代表一个模块、程序段或代码的一部分,上述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,示意图和/或流程图中的每个方框、以及示意和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包中间件客户端、接口单元、业务逻辑单元等。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。例如,业务逻辑单元还可以被描述为“学习数据聚合单元”。

作为另一方面,本实施例还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中上述装置中所包含的非易失性计算机存储介质,也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当上述一个或者多个程序被一个设备执行时,使得上述设备:通过中间件监听线上数据库中的在线课堂状态记录,根据在线课堂状态记录判断在线课堂是否完课;在在线课堂完课后,由外部数据库获取学习相关数据及在线课堂的视频回放分析结果;对学习相关数据和在线课堂的视频回放分析结果进行聚合,生成并在本地保存学习报告。

在本发明的描述中,需要说明的是,术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

还需要说明的是,在本发明的描述中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于本领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。

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