PB级历史数据和在线数据的实时计算的可视化建模方法与流程

文档序号:16918589发布日期:2019-02-19 19:10阅读:284来源:国知局
PB级历史数据和在线数据的实时计算的可视化建模方法与流程

本发明涉及数据处理领域,特别涉及一种pb级历史数据和在线数据的实时计算的可视化建模方法。



背景技术:

目前,在pb级历史数据和在线数据的实时计算处理过程中,由于用户往往是被动接受实时计算的数据,难以直观的了解数据的处理进度,从而不方便根据数据的处理进度进行合理的数据处理任务安排。



技术实现要素:

为解决以上问题,本发明提供一种pb级历史数据和在线数据的实时计算的可视化建模方法。

本发明提供的一种pb级历史数据和在线数据的实时计算的可视化建模方法,包括:

将实时计算任务划分成多个子任务;

获取每个子任务的参数优化数据和计算进度;

将所述每个子任务的参数优化数据和计算进度以事件时间表的形式进行显示,得到pb级历史数据和在线数据的实时计算的可视化建模结果。

优选的,所述子任务的参数优化数据和计算进度,包括:

子任务的优化写入时间、优化读取时间、任务反序列化时间、执行计算时间、结果序列化时间、获取结果时间和任务调度延迟。

优选的,所述子任务的参数优化数据和计算进度,还包括:

子任务的状态,所述状态包括任务等待、任务执行中以及任务完成状态,所述任务完成状态包括任务失败、任务中止和任务正常完成;

子任务所占用的资源,包括所占用的内存大小、磁盘大小、处理器数量;

子任务完成所用时间。

优选的,所述pb级历史数据和在线数据的实时计算的可视化建模方法,还包括:

将子任务的状态的统计结果以事件时间表的形式进行显示,所述子任务的状态的统计结果包括任务总数、执行中的任务数、等待中的任务数、已完成的任务数、失败的任务数、中止的任务数和正常完成的任务数。

优选的,获取子任务的计算进度,具体为:

获取子任务中已处理的数据量;

获取子任务中所要处理的总的数据量;

以所述已处理的数据量除以所述总的数据量得到子任务的计算进度;

或,

获取子任务的已处理完成的数据处理步骤;

获取子任务的所要处理的总的数据处理步骤;

以所述已处理完成的数据处理步骤除以所述总的数据处理步骤得到子任务的计算进度。

优选的,获取子任务的计算进度,具体为:

获取同类子任务中不同处理能力下已处理的数据量和处理已处理的数据所用时间占子任务总处理时间的占比;

获取当前子任务中已处理的数据量;

获取当前子任务的处理能力;

以所述处理能力作为插值参数,将当前子任务的处理能力在不同处理能力下已处理的数据量和处理已处理的数据所用时间占子任务总处理时间的占比的函数中进行插值;

根据插值结果和当前子任务中已处理的数据量得到子任务的计算进度。

本发明的一些有益效果可以包括:

本发明提供的一种pb级历史数据和在线数据的实时计算的可视化建模方法,通过将数据的实时计算进度以事件时间表的方式进行可视化展示,使得用户能够更直观的根据数据的处理进度进行合理的数据处理任务安排。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明实施例中一种pb级历史数据和在线数据的实时计算的可视化建模方法的流程图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1为本发明实施例中一种pb级历史数据和在线数据的实时计算的可视化建模方法的流程图。如图1所示,包括:

步骤s101、将实时计算任务划分成多个子任务;

步骤s102、获取每个子任务的参数优化数据和计算进度;

步骤s103、将所述每个子任务的参数优化数据和计算进度以事件时间表的形式进行显示,得到pb级历史数据和在线数据的实时计算的可视化建模结果。

本发明提供的一种pb级历史数据和在线数据的实时计算的可视化建模方法,通过将数据的实时计算进度以事件时间表的方式进行可视化展示,使得用户能够更直观的根据数据的处理进度进行合理的数据处理任务安排。

为了更快的获取pb级历史数据,从而更快的完成pb级历史数据和在线数据的实时计算的可视化建模结果,在本发明的一个实施例中,所述历史数据,存储于云存储系统,所述云存储系统包括:主控服务器、存储服务器集群和客户端,它们通过内部交换机进行数据交换;主控服务器用于对云存储客户端提供目录信息和元数据信息,并对存储服务器集群进行监控,所述目录信息包括该目录的路径、创建日期、目录属性;元数据信息包括该文件的路径、创建/修改日期、文件属性、文件大小、所在主存储服务器和备份存储服务器的ip地址、端口号和对应的guid;存储服务器集群包括多台用于数据存储的存储服务器,它设有ac-ru缓存,保存最近打开的若干个文件句柄;客户端用于对云存储客户机提供虚拟磁盘服务,将云存储客户机对虚拟磁盘的操作请求提交给主控服务器,并从存储服务器读取/写入文件数据,所述的客户端模块被部署在云存储客户机上,它设有调节可控缓存即ac-ru缓存,保存最近访问的目录信息和文件的元数据信息。

所述历史数据的存储方法为:

采用多台存储服务器建立存储服务器集群,各存储服务器启动后周期性地向主控服务器发送心跳报文,心跳报文中包含该存储服务器当前的状态;主控服务器的内存中设有一对应于多个存储服务器的逻辑节点列表,当主控服务器接收到各存储服务器的心跳报文后,更新列表中对应于各存储服务器的逻辑节点;

当客户端访问虚拟磁盘下任意目录时,云存储客户端对主控服务器发起请求,获取所请求目录下子目录信息与文件元数据信息,并将所获得的子目录信息与文件元数据信息保存在客户端ac-ru缓存中;

云存储客户端请求创建文件或目录的操作,其中;当云存储客户端有创建文件的请求时,客户端将该请求提交给主控服务器,主控服务器检查创建文件所在的目录是否存在,若不存在,则返回目录不存在的回复;若存在,则为该文件分配guid,从在线存储服务器中挑选负载较轻的两台作为该文件的主存储服务器和备份存储服务器,并通知这两台存储服务器创建名为guid的文件,两台存储服务器都创建成功则向客户端返回创建成功的回复;当云存储客户端有创建目录的请求时,客户端将该请求提交给主控服务器,主控服务器检查新建目录的父目录是否存在,若不存在,则返回父目录不存在的回复;若存在,则建立新目录节点,并添加到父目录节点的子目录列表中,并向客户端返回创建成功的回复;

云存储客户端请求读文件、写文件、删除文件、复制/移动文件或重命名文件操作,其中:云存储客户端请求读文件时,首先从云存储客户端的ac-ru缓存中查找该文件的元数据信息,若缓存中元数据信息存在,则通过文件的元数据信息找到对应的主存储服务器,并对主存储服务器请求读取该文件的具体某一段的数据;若缓存中元数据信息不存在,则首先向主控服务器发送元数据请求,并将从主控服务器获得的元数据信息加入客户端ac-ru缓存中;云存储客户端请求写文件时,首先从云存储客户端的ac-ru缓存中查找该文件的元数据信息,若缓存中元数据信息存在,则云存储客户端通过文件的元数据信息找到对应的主存储服务器和备份存储服务器,并向它们请求写入该文件的具体某一段的数据,等主存储服务器和备份存储服务器都返回写成功的响应后,该次写操作成功,否则认为写失败;若缓存中元数据信息不存在,则首先向主控服务器发送元数据请求,并将从主控服务器获得的元数据信息加入客户端ac-ru缓存中;云存储客户端请求删除文件时,首先向主控服务器发送文件删除请求,主控服务器根据该文件的元数据信息找到具体保存该文件的主文件存储服务器和备份文件存储服务器,并将该元数据信息从目录结构中删除,同时向云存储客户端返回删除成功的响应,然后主控服务器将通知该文件的主存储服务器和备份存储服务器删除该文件,两台存储服务器在收到主控服务器的文件删除指令后执行文件删除操作;云存储客户端请求复制/移动文件操作是创建/读/写/删除文件操作的组合;重命名文件是在主控服务器中修改目录结构下文件元数据信息;

云存储客户端请求删除目录操作,其中:云存储客户端请求删除目录时,首先查看客户端ac-ru缓存中是否存在被删目录的信息,如果存在则将其从缓存中删除,然后向主控服务器发送目录删除请求;如果不存在,则直接向主控服务器发送目录删除请求,主控服务器收到目录删除请求后遍历其子目录列表和文件列表,递归地删除该目录下所有子目录和文件,最终将该目录删除;递归删除过程中,当某子目录是目录结构中的叶节点,则直接删除,否则发生递归删除过程;

所述历史数据的读取方法为:

从原始数据库中获取原始数据,并根据预设规则对所述原始数据进行分区;

根据分区规则建立b树索引;

根据存入数据分区中的数据列类型、数据分区的时间范围以及数据列存入的先后顺序建立列索引;

将所述数据分区中的数据块拆分成多个数据子块,对所述数据子块进行编号,每个数据子块对应1个数据主键,并将所述数据主键的列数据根据所述列索引存入对应的数据子块中;

在接收到数据提取请求信息时,根据所述请求信息中的时间范围通过b树索引确定待提取数据所在的数据分区,并确定该数据分区列内的偏移开始位置和偏移结束位置,根据所述请求信息中的列信息通过列索引确定每个列相对所述数据子块的起始位置,并根据所述请求信息中数据主键对应的数据子块编号确定该数据主键的起始位置;

根据数据主键的起始位置、数据子块的起始位置、数据分区列内的偏移开始位置和偏移结束位置提取数据;

在根据预设规则对所述原始数据进行分区之前,对获取的所述原始数据进行填充处理,以使得填充处理后的数据与时间点对齐。

为了更全面的了解子任务不同阶段的处理时间,在本发明的一个实施例中,所述子任务的参数优化数据和计算进度,包括:

子任务的优化写入时间、优化读取时间、任务反序列化时间、执行计算时间、结果序列化时间、获取结果时间和任务调度延迟。

为了更全面的了解子任务不同阶段的处理状态,在本发明的一个实施例中,所述子任务的参数优化数据和计算进度,还包括:

子任务的状态,所述状态包括任务等待、任务执行中以及任务完成状态,所述任务完成状态包括任务失败、任务中止和任务正常完成;

子任务所占用的资源,包括所占用的内存大小、磁盘大小、处理器数量;

子任务完成所用时间。

为了更全面的整个任务的处理状态,在本发明的一个实施例中,所述pb级历史数据和在线数据的实时计算的可视化建模方法,还包括:

将子任务的状态的统计结果以事件时间表的形式进行显示,所述子任务的状态的统计结果包括任务总数、执行中的任务数、等待中的任务数、已完成的任务数、失败的任务数、中止的任务数和正常完成的任务数。

为了快速获取子任务的计算进度,在本发明的一个实施例中,获取子任务的计算进度,具体为:

获取子任务中已处理的数据量;

获取子任务中所要处理的总的数据量;

以所述已处理的数据量除以所述总的数据量得到子任务的计算进度;

或,

获取子任务的已处理完成的数据处理步骤;

获取子任务的所要处理的总的数据处理步骤;

以所述已处理完成的数据处理步骤除以所述总的数据处理步骤得到子任务的计算进度。

为了准确的获取子任务的计算进度,在本发明的一个实施例中,获取子任务的计算进度,具体为:

获取同类子任务中不同处理能力下已处理的数据量和处理已处理的数据所用时间占子任务总处理时间的占比;

获取当前子任务中已处理的数据量;

获取当前子任务的处理能力;

以所述处理能力作为插值参数,将当前子任务的处理能力在不同处理能力下已处理的数据量和处理已处理的数据所用时间占子任务总处理时间的占比的函数中进行插值;

根据插值结果和当前子任务中已处理的数据量得到子任务的计算进度。

本发明提供的一种pb级历史数据和在线数据的实时计算的可视化建模方法,通过将数据的实时计算进度以事件时间表的方式进行可视化展示,使得用户能够更直观的根据数据的处理进度进行合理的数据处理任务安排。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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