首页> 中国专利> 一种线上线下融合的教学空间数据采集与存储方法及装置

一种线上线下融合的教学空间数据采集与存储方法及装置

摘要

本发明涉及一种线上线下融合的教学空间数据采集与存储方法及装置,属于智慧教育技术领域,包括:将来源数据流进行归纳为学习行为数据、硬件数据和教学过程数据;根据学习行为数据采集方法对学习行为数据进行采集,根据教室空间数据采集方法对硬件数据进行采集,通过教学课件数据采集方法对教学过程数据进行采集,并构建教学数据采集引擎将采集的数据迁移到目标数据存储;构建教学存储引擎,在底层采用数据分片存储在SAT磁盘、索引分片存储与SSD磁盘的模式,设置多种模型完成数据存储。本发明极大减少了教学数据的分析开发的工作量,实现可通过低代码、表格行为等实现教学数据的分析,降低教育行业数据分析的教师与技术人员的入门门槛。

著录项

  • 公开/公告号CN116644218A

    专利类型发明专利

  • 公开/公告日2023-08-25

    原文格式PDF

  • 申请/专利权人 成都华栖云科技有限公司;

    申请/专利号CN202310921548.9

  • 发明设计人 叶树林;张苑;兰贞祥;朱冬伟;

    申请日2023-07-26

  • 分类号G06F16/901(2019.01);G06F16/9035(2019.01);G06F16/903(2019.01);G06Q50/20(2012.01);G06F18/25(2023.01);

  • 代理机构成都立新致创知识产权代理事务所(特殊普通合伙) 51277;

  • 代理人刘俊

  • 地址 610000 四川省成都市中国(四川)自由贸易试验区成都高新区天府五街200号4号楼A区9楼

  • 入库时间 2024-01-17 01:23:59

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-09-12

    实质审查的生效 IPC(主分类):G06F16/901 专利申请号:2023109215489 申请日:20230726

    实质审查的生效

  • 2023-08-25

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及智慧教育技术领域,尤其涉及一种线上线下融合的教学空间数据采集与存储方法及装置。

背景技术

目前“重新设计学习空间”的概念及建设适合学校学习环境的智慧教室被提出,其旨在改善教学环境,积极探索新的教学模式,改变传统的教学方式,实现以学生为中心的教学,充分调动学生生动学习的热情。在基于对新型教学空间的重构以及新型教学模式的应用中,在教学过程中逐步产生了物联设备数据、学生表情行为数据、学生肢体行为数据、学生线上互动数据、学生线上语音数据、教学过程课件数据等多种数据行为。如何设置数据采集模型、实现高性能的数据采集与存储,如何实现基于教学数据的分析以及辅助学生学习评价与教师教学评价是现阶段需要考虑的问题。

需要说明的是,在上述背景技术部分公开的信息只用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

本发明的目的在于克服现有技术的缺点,提供了一种线上线下融合的教学空间数据采集与存储方法及装置,解决了包含互动教学、教室教学、智能教学等方式融合的教学行为的数据采集与存储的技术难度,实现由传统的基于通用大数据分析平台、高成本、高难度向教学数据分析的低成本低难度的转变。克服了传统大数据平台采集源不完善、采集引擎多、采集标准不规范,存储引擎缺失,数据分析引擎维护难,不能弹性扩容的缺点。

本发明的目的通过以下技术方案来实现:一种线上线下融合的教学空间数据采集与存储方法,所述数据采集与存储方法包括:

数据分类步骤:将来源数据流进行归纳为学习行为数据、硬件数据和教学过程数据;

数据采集步骤:根据学习行为数据采集方法通过restfulAPI模式对学习行为数据进行采集,根据教室空间数据采集方法通过消息上报的模式对硬件数据进行采集,通过教学课件数据采集方法对教学过程数据进行采集,并构建教学数据采集引擎将采集的数据迁移到目标数据存储;

数据存储步骤:构建教学存储引擎,在底层采用数据分片存储在SAT磁盘、索引分片存储与SSD磁盘的模式,通过mongos进行数据分配提高存储引擎的性能,设置多种模型完成数据存储。

所述根据学习行为数据采集方法通过restfulAPI模式对学习行为数据进行采集具体包括以下内容:

采用定时轮训的方法提交事件描述,设置唯一的guid作为statementld提交事件标识,采用json data的模式进行数据的提交;

设置数据提交的事件唯一ID与提交时间,用户标识行为发生的时间与存储ID;

设置提交的操作者数据结构,并设置操作类型和account数据结构;

设置事件行为数据结构,包括行为ID、点击、观看、播放、暂停、拖拽,针对视频、音频、网页和移动应用进行不同的数据提交行为设置;

设置操作结果数据结构,包括是否成功以及结果数据,进行事件结果的数据存储;

设置操作对方的数据结构,包括对方ID、对象类型、对象名称和对象地址,进行事件对象的数据存储。

所述根据教室空间数据采集方法通过消息上报的模式对硬件数据进行采集具体包括以下内容:

设置多种传输协议的数据接收通道,发送方采用行为发生即数据上报的模式,服务端接收方采用设置消息体通道进行数据接收,提交事件描述,设置唯一的guid作为statementld提交事件标识,采用jison data的模式进行数据的提交;

设置数据提交的事件唯一ID与提交时间,用户标识行为发生的时间与存储ID;

设置操作对方的数据结构,包括对方ID、对象类型、对象名称、对象地址和对象SN码,进行事件对象的数据存储;

设置提交的实体数据的数据结构。

所述通过教学课件数据采集方法对教学过程数据进行采集具体包括以下内容:

设置agent启动采集器采集不同的组件;

设置registry文件记录采集数据,记录上一次采集的状态,采用行数据或者列数据的读取模式进行数据的读取并记录到registry文件中,如果读取到最后一行或者最后一列则停止采集并保持会话的建立,采用定时器轮训的模式监听数据上下文状态,如果状态变化则进行新一轮采集;

如果数据对象生成新对象,则关闭旧文件的定时器,建立新对象的采集监听;

设置提交的实体数据的数据结构。

所述构建教学数据采集引擎具体包括以下内容:

设置一个任务控制器对需要迁移的任务进行管理、作业分片和任务切分/分组,重写分片服务;

通过任务协调器进行任务组的服务调度,实现作业的资源分配以及根据不同的任务组进行任务下发;

在执行器空间将服务分成多个作业实例并行执行,调用DataX的Engine启动DataX作业,在主节点执行,非主节点等待切分和分组完成,当运行实例变化,实例服务的监听触发,设置需要分片的标记,进行任务运行,运行完成后数据迁移入目标数据存储。

所述设置多种模型完成数据存储包括:

设置Activities模型进行所有活动和事件任务的存储;

设置Clients模型管理数据流形成的客户端来源;

设置Dashboards模型管理教学数据存储的视图管理,输出不同行为的数据视图;

设置Querys定义检索行为的存储,管理用户的数据检索行为;

设置Statements进行所有数据流核心的存储,实现所有数据事件的文档存储;

设置metadata进行元数据的存储,实现所有数据的元数据标准与标签,提供聚合查询能力;

通过mongodb具备的聚合查询能力、mapreduce并行计算能力和基于XAPI的标准接口提供对数数据服务。

一种线上线下融合的教学空间数据采集与存储装置,它包括教学数据归类模块、教学数据采集模块、教学数据采集引擎和教学数据存储引擎;

所述教学数据归类模块:用于将来源数据流进行归纳为学习行为数据、硬件数据和教学过程数据;

所述教学数据采集模块:用于根据学习行为数据采集方法通过restfulAPI模式对学习行为数据进行采集,根据教室空间数据采集方法通过消息上报的模式对硬件数据进行采集,通过教学课件数据采集方法对教学过程数据进行采集;

所述教学数据采集引擎:用于设置一个任务控制器对需要迁移的任务进行管理、作业分片和任务切分/分组,重写分片服务;通过任务协调器进行任务组的服务调度,实现作业的资源分配以及根据不同的任务组进行任务下发;在执行器空间将服务分成多个作业实例并行执行,调用DataX的Engine启动DataX作业,在主节点执行,非主节点等待切分和分组完成,当运行实例变化,实例服务的监听触发,设置需要分片的标记,进行任务运行,运行完成后数据迁移入目标数据存储;

所述教学数据存储引擎:在底层采用数据分片存储在SAT磁盘、索引分片存储与SSD磁盘的模式,通过mongos进行数据分配提高存储引擎的性能,设置多种模型完成数据存储。

所述教学数据采集模块包括学习行为数据采集单元、教室空间数据采集单元和教学课件数据采集单元;

所述学习行为数据采集单元:用于采用定时轮训的方法提交事件描述,设置唯一的guid作为statementld提交事件标识,采用json data的模式进行数据的提交;设置数据提交的事件唯一ID与提交时间,用户标识行为发生的时间与存储ID;设置提交的操作者数据结构,并设置操作类型和account数据结构;设置事件行为数据结构,包括行为ID、点击、观看、播放、暂停、拖拽,针对视频、音频、网页和移动应用进行不同的数据提交行为设置;设置操作结果数据结构,包括是否成功以及结果数据,进行事件结果的数据存储;设置操作对方的数据结构,包括对方ID、对象类型、对象名称和对象地址,进行事件对象的数据存储;

所述教室空间数据采集单元:用于设置多种传输协议的数据接收通道,发送方采用行为发生即数据上报的模式,服务端接收方采用设置消息体通道进行数据接收,提交事件描述,设置唯一的guid作为statementld提交事件标识,采用json data的模式进行数据的提交;设置数据提交的事件唯一ID与提交时间,用户标识行为发生的时间与存储ID;设置操作对方的数据结构,包括对方ID、对象类型、对象名称、对象地址和对象SN码,进行事件对象的数据存储;设置提交的实体数据的数据结构;

所述教学课件数据采集单元:用于设置agent启动采集器采集不同的组件;设置registry文件记录采集数据,记录上一次采集的状态,采用行数据或者列数据的读取模式进行数据的读取并记录到registry文件中,如果读取到最后一行或者最后一列则停止采集并保持会话的建立,采用定时器轮训的模式监听数据上下文状态,如果状态变化则进行新一轮采集;如果数据对象生成新对象,则关闭旧文件的定时器,建立新对象的采集监听;设置提交的实体数据的数据结构。

本发明具有以下优点:一种线上线下融合的教学空间数据采集与存储方法及装置,构建了一套基于新型教学空间从教学数据采集规则、教学数据采集引擎、教学数据存储引擎、教学数据查询驱动为一体的方法与装置,极大减少了教学数据的分析开发的工作量,实现可通过低代码、表格行为等实现教学数据的分析,降低教育行业数据分析的教师与技术人员的入门门槛。

附图说明

图1 为本发明的流程结构示意图;

图2 为学习行为数据采集方法的示意图;

图3 为教室空间数据采集方法的示意图;

图4 为教学课件数据采集方法的示意图;

图5 为教学数据采集引擎的示意图;

图6 为教学数据存储引擎的示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下结合附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的保护范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。下面结合附图对本发明做进一步的描述。

本发明建立如下模式的新型教学空间:1)物理空间重构,建立录播厂商、音频设备、交互式大屏等物联设备为一体的智能物理教学环境;2)软件空间重构,通过对于物理硬件管理与软件交互控制的结合,实现数据驾驶舱的教学管理软件,实现室联网教学的融合;3)教学模式重构,基于物理空间与软件空间的重构,结合由华栖云打造的交互式教学软件(名称),形成以新型物理空间、教学室联空间、交互式教学互动三者相结合的,线上线下学生融合教学、融合互动的新教学模式。

如图1所示,首先将不同的来源数据流进行归类,归纳为学习行为、硬件数据、教学过程数据三类,基于新型空间的教学架构,定义了三种采集方法:学习行为数据采集方法、教室空间数据采集方法、教学课件数据采集方法。不同的数据采集方法,适配不同的数据源,如行为数据包含学生观看数据、学生举手答题、学生屏幕分享、学生弹幕聊天、学生语音发言、在线讨论等内容;教室空间数据采集方法采集摄像头控制、录播主机旋转推流、音频主机控制、智能门锁开关、智能灯光控制、大屏设备管理等;教学课件数据采集方法主要包含课件PPT、教学视频、语音识别、课件翻译内容等数据内容的采集与入库。对于不同的数据采集方法采用不同的技术模式进行实现。

如图2所示,学习行为数据采集方法主要通过restfulAPI(应用程序编程接口规范)的模式进行数据采集,将学习行为定义为Actor(操作者)+Verb(动作)+Object(对象),附属行为如Result(结果)、Timestamp(产生时间)、Stored(存储时间)等,并且借鉴计算机进程的原理,定义一个pid,即一个行为动作pid,由某个Actor(操作者)操作了一个对象,并且达到了Result(结果)的一类规则,通过对于学习行为数据采集方法的定义可以实现通用学习行为的数据采集,具体内容如下:

(1)定义post(HTTP的提交事件)提交方法,采用定时轮训方法进行提交,提交statements(事件描述)的方法中进行提交,定义唯一的guid(全局唯一标识符,一种算法生成的128位二进制标志符)作为statementld(一种事件行为唯一标识符)进行提交事件标识,采用json data的模式进行数据的提交;

(2)定义数据提交的事件唯一ID(pid)与提交时间(timestamp),用户标识行为发生的时间与存储ID;

(3)定义提交的actor(操作者) 数据结构,并定义objectType(操作者类型),包含个人(Agent)、系统(System)、组(Group)等,并且定义account (操作者信息)数据结构,包含name(用户名)、realname(真实姓名)、homepage(学习主页)、structs(组织)等信息;

(4)定义verb(事件行为)数据结构,包含verb(行为ID),如click(点击)、view(观看)、Played(播放)、Paused(暂停)、Seeked(拖拽),针对视频、音频、网页、移动应用等进行不同的数据提交行为定义;

(5)定义result(操作结果)数据结构,包含success(成功与否,为boolean类型数据),以及结果数据,如score(分数)、duration(时长)、total(访问总量)等,进行事件结果的数据存储;

(6)定义object(操作对方)的数据结构,包含对方ID、对象类型(网页、APP、H5)、对象名称(中文/英文)、对象地址等数据,进行事件对象的数据存储。

其次,提供基于javascript(一种网页动态范式语言)的SDK应用,内部封装基于client、Statements的post(HTTP的提交事件)提交方法,提供基于浏览器、h5等终端应用的引入与调用。提供基于java的SDK应用,内部封装基于client、Statements的post(HTTP的提交事件)提交方法,提供基于移动应用、客户端应用的事件调用。如网页播放器播放暂停时,首先调用new LRS实例化LRS 方法(学习行为数据采集SDK),然后在播放器的播放play函数执行LRS. Statements()进行事件提交,在事件内参考上面定义的数据格式进行数据封装,实现学习行为数据的提交。

如图3所示,教室空间数据采集方法主要通过消息上报的模式进行数据接收,通过UDP/TCP/MQTT等消息体的数据接收实现数据采集,同样我们首先参考定义一个pid,为行为时间id,定义数据为Ojbect(对象)+Data(数据/行为),附加数据为timestamp(时间)、Quality(质量)、Brightness(亮度)、Bitrate(码率)、Deley(延迟)、(loss)丢包等,实现了某Object(设备)上报Data(数据),在某个timestamp(时间),数据质量为、亮度为等多维度的数据上报,具体包括以下内容:

(1)定义UDP/TCP/MQTT传输协议的数据接收通道,发送方采用行为发生即数据上报的模式(sendclient,发送UDP/TCP/MQTT等消息体),服务端接收方采用定义消息体通道进行数据接收(receivechannle,接收UDP/TCP/MQTT等消息体),提交statements(事件描述)的方法中进行提交,定义唯一的guid作为statementId进行提交事件标识,采用jsondata的模式进行数据的提交;

(2)定义数据提交的事件唯一ID(pid)与提交时间(timestamp),用户标识行为发生的时间与存储ID;

(3)定义object(操作对方)的数据结构,包含对方ID、对象类型(网页、APP、H5)、对象名称(中文/英文)、对象地址、对象SN码等数据,进行事件对象的数据存储;

(4)定义提交的data(实体数据) 数据结构,如下列json data表示音频数据{"AudioCoding ": "aac",#音频编码,"SamplingRate": "44100 Hz ",#采样率" Bitrate": "10kbs ",#码率}。

在教室空间数据采集方法中,采用硬件设备自有的传感器进行采集,传感器是一种检测装置,能感受到被测量的信息,并能将检测感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。所有的硬件设备在设备安装部署时均配置前面定义的数据端口, 采集网关采集数据端口接收硬件的数据上报,通过传感器进行教室空间数据采集的上报,实现数据的采集。

如图4所示,教学课件数据采集方法主要基于新型教学空间内产生的基于桌面行为变化实现的PPT图片、基于教学上课产生的教学视频、基于教学视频产生的语音识别内容、基于课件产生的翻译内容等内容的采集与存储规则,对于这类数据,定义的维度为:taskid(课程任务ID)+数据关系,包换树关系、序列关系、热图关系、前驱后继关系等。实现基于教学行为的教学课件数据的关系;具体包括以下内容:

(1)定义agent启动采集器采集不同的组件,对基于mysql、日志、mongodb、ES等数据触发器的监听,一个agent负责一个采集对象;

(2)定义registry文件记录采集数据,记录上一次采集的状态,采用一行一行(行数据)或者一列一列(列数据)的读取模式进行数据的读取并记录到registry文件,如果读取到最后一行停止采集并保持会话的建立,进行采用定时器轮训的模式监听数据上下文状态,状态变化则进行新一轮的采集;

(3)如果数据对象生成新对象,如分表、日志文件分文件等场景,则关闭老文件的定时器,建立新对象的采集监听;

(4)定义提交的data(实体数据) 数据结构,如下列json data表示PPT数据{"taskid":"1837240e559211eaa1d0029759732b6f"(任务ID),"detecttype":"ppt"(任务类型),"pptimgurl":https://demo.com/img.png(图片数据)timestamp":"1582390117978"(数据生成时间)}。

在教学课件数据采集中如上面的的步骤定义,采集方法主要采用数据变化监听的方法,通过多个agent监听网卡、文件、数据库等存储引擎的数据监听变化,实现socket数据包、文件、文件夹、kafka等各种形式源数据的数据采集,如果监听数据源出现变化就会采集数据源中的内容,采集完成形成registry文件用于标记采集进度,被agent自动添加一个后缀:COMPLETED,确认数据的采集位置。

如图5所示,通过如图2-图4,将相应的数据采集到我们的如mysql、oracle、日志文件或者缓存中,并且监听到数据的变化,在下一步我们需要构建教学数据采集引擎,实现上游数据的统一入库以及往统一的存储引擎迁移,那么我们需要实现包含基于编译型提供的restfulAPI(应用程序编程接口规范)、消息队列引擎、基于DataX(数据迁移驱动,支持多种数据库的数据交换)进行改造的支持oracle、mysql、postgresql、db2等数据驱动的教学数据迁移引擎进行数据的入库。

首先设计一个任务控制器,对于需要迁移的任务进行管理、作业分片任务切分/分组,重写分片服务;其次,通过zookeeper任务协调器进行任务组的服务调度,实现作业的资源分配以及根据不同的任务组进行任务下发;在执行器空间,服务可分成多个作业实例并行执行,job 调用 DataX 的 Engine (事件引擎)启动 DataX(数据迁移驱动,支持多种数据库的数据交换)作业;在主节点执行,非主节点等待切分和分组完成;当运行实例变化,实例服务的监听触发,设置需分片标记,进行任务运行,运行完成后数据迁移入目标数据存储,即教学数据采集引擎。

如图6所示,构建教学数据存储引擎,提供基于mongodb(基于分布式文件存储的数据库)的数据存储引擎,在底层采用数据分片存储在SAT磁盘、索引分片存储于SSD磁盘的模式,通过mongos(一种文档数据库集群,具备强大快速读写的能力)进行数据分配提高存储引擎的性能。并且定义如下模型完成数据的存储;1) 定义Activities模型进行所有活动、事件任务的存储,如人物的观看、拖动,摄像机的录制、音频设备的调节声音等行为;2)定义Clients模型管理数据流形成的客户端来源如Android应用、PC主机、温度感应器等;3)定义Dashboards模型管理教学数据存储的视图管理,可以简单的输出不同行为的数据视图;4)定义Querys定义检索行为的存储,可以管理用户的数据检索行为,通过检索高频算法提升检索优化;5)定义Statements进行所有数据流核心的存储,实现所有数据事件的文档存储;6)定义metadata进行元数据的存储,实现所有数据的元数据标准与标签,提供聚合查询能力。同时借助mongodb(一种文档数据库)具备的聚合查询能力、mapreduce(一种并行计算框架)并行计算能力、基于XAPI(一种新一代学习技术规范)的标准接口提供对外数据服务,三方平台使用以上三种的标准查询方式均可进行数据的访问与计算。

以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号