CN113138810A - 一种计算HiveSql执行进度的方法 - Google Patents

一种计算HiveSql执行进度的方法 Download PDF

Info

Publication number
CN113138810A
CN113138810A CN202110439353.1A CN202110439353A CN113138810A CN 113138810 A CN113138810 A CN 113138810A CN 202110439353 A CN202110439353 A CN 202110439353A CN 113138810 A CN113138810 A CN 113138810A
Authority
CN
China
Prior art keywords
mapreduce
task
tasks
progress
hivesql
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110439353.1A
Other languages
English (en)
Inventor
童孝天
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Zhongtongji Network Technology Co Ltd
Original Assignee
Shanghai Zhongtongji Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Zhongtongji Network Technology Co Ltd filed Critical Shanghai Zhongtongji Network Technology Co Ltd
Priority to CN202110439353.1A priority Critical patent/CN113138810A/zh
Publication of CN113138810A publication Critical patent/CN113138810A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及一种计算HiveSql执行进度的方法,属于计算机技术领域,本申请包括:通过HiveSql将任务执行计划转换成MapReduce任务,获取MapReduce任务总数量;获取已生成的所有MapReduce任务总量,按照预设规则将已生成的MapReduce进行排序;根据排序得到已完成的MapReduce任务的序号;获取当前执行的MapReduce的任务进度;计算已完成的MapReduce任务的总量在MapReduce的任务总数量中的权重,得到已完成任务的权重结果;将权重结果与当前执行的MapReduce的任务进度相加,得到得到当前HiveSql的执行进度,突破原有HiveSql无法反应执行进度的问题,以巧妙的方法准确计算出HiveSql的执行进度。

Description

一种计算HiveSql执行进度的方法
技术领域
本申请属于计算机技术领域,具体涉及一种计算HiveSql执行进度的方法。
背景技术
Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。Hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。Hive的优点是学习成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。Hive十分适合对数据仓库进行统计分析。
MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",是它们的主要思想,当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。然而,现有技术只能看到单个Mapreduce任务的执行进度,不能明确知道一条HiveSql执行的进度情况。
发明内容
为至少在一定程度上克服相关技术中存在的问题,本申请提供慢性病案特征分类处理方法、装置及终端,有助于快速准确得到慢病分级诊疗的辅助决策信息。
为实现以上目的,本申请采用如下技术方案:
一种计算HiveSql执行进度的方法,所述方法包括:
通过HiveSql将任务执行计划转换成MapReduce任务,获取所述MapReduce任务总数量;
获取已生成的所有MapReduce任务总量,按照预设规则将所述已生成的MapReduce任务进行排序,得到所述已生成MapReduce任务排序结果;
根据所述任务排序结果,得到已完成的MapReduce任务的序号;
获取当前执行的MapReduce的任务进度;
计算已完成的MapReduce任务的总量在所述MapReduce任务总数量中的权重,得到已完成任务的权重结果;
将所述权重结果与所述当前执行的MapReduce任务进度相加,得到得到当前HiveSql的执行进度。
进一步地,获取已生成的所有MapReduce任务总量,按照预设规则将所述已生成的MapReduce进行排序,包括:
通过资源调度管理器查询已生成的所有MapReduce任务总量。
进一步地,所述预设规则为按照时间顺序进行排序。
进一步地,所述预设规则为按照资源调度管理器为所述MapReduce任务分配的ID进行排序,所述ID为用户时间戳加字符串。
进一步地,所述已完成的MapReduce任务的序号,为所述排序中的最后一个任务序号的前一个。
进一步地,所述获取当前执行的MapReduce的任务进度,包括:
通过资源调度管理器查询获取当前执行的MapReduce的任务进度。
本申请采用以上技术方案,至少具备以下有益效果:
本申请提供的一种计算HiveSql执行进度的方法,通过HiveSql将任务执行计划转换成MapReduce任务,获取所述MapReduce任务总数量;获取已生成的所有MapReduce任务总量,按照预设规则将已生成的MapReduce进行排序;根据排序,得到已完成的MapReduce任务的序号;获取当前执行的MapReduce的任务进度;计算已完成的MapReduce任务的总量在MapReduce的任务总数量中的权重,得到已完成任务的权重结果;将权重结果与当前执行的MapReduce的任务进度相加,得到得到当前HiveSql的执行进度,突破原有HiveSql无法反应执行进度的问题,以巧妙的方法准确计算出HiveSql的执行进度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种计算HiveSql执行进度的方法的流程图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将对本申请的技术方案进行详细的描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本申请所保护的范围。
请参阅图1,图1是根据一示例性实施例示出的一种计算HiveSql执行进度的方法的流程图,如图1所示,该计算HiveSql执行进度的方法包括如下步骤:
步骤S101、通过HiveSql将任务执行计划转换成MapReduce任务,获取所述MapReduce任务总数量;
Hive是基于Hadoop的一个数据仓库系统,在各大公司都有广泛的应用。大部分网络平台数据仓库都是基于Hive搭建,每天执行近万次的Hive ETL计算流程,负责每天数百GB的数据存储和分析。Hive的稳定性和性能对数据分析非常关键。在工作中,透彻的理解hive sql执行mapreduce的过程是非常有必要的。
对于HiveSql将任务执行计划转换成MapReduce任务的数据的预处理和特征工程,其具体内容可以参阅相关技术内容,本申请在此不做赘述,本申请在此需要说明的是,通过利用HiveSql将任务执行计划转换成MapReduce,以巧妙的方法准确计算出HiveSql的执行进度,避免了用户的盲目等待。
步骤S102、获取已生成的所有MapReduce任务总量,按照预设规则将所述已生成的MapReduce进行排序,得到所述已生成MapReduce任务排序结果;
其中,通过资源调度管理器查询已生成的所有MapReduce任务总量。
步骤S103、根据所述任务排序结果,得到已完成的MapReduce任务的序号;
步骤S104、获取当前执行的MapReduce任务进度;
步骤S105、计算已完成的MapReduce任务的总量在所述MapReduce任务总数量中的权重,得到已完成任务的权重结果;
步骤S106、将所述权重结果与所述当前执行的MapReduce任务进度相加,得到得到当前HiveSql的执行进度。
现有技术中用户在查询HiveSql无法准确知道任务执行到哪个阶段,造成用户盲目等待,本申请所提供的技术方案,通过HiveSql将任务执行计划转换成MapReduce任务,获取MapReduce任务总数量;获取已生成的所有MapReduce任务总量,按照预设规则将已生成的MapReduce进行排序,得到已生成MapReduce任务排序结果;根据任务排序结果,得到已完成的MapReduce任务的序号;获取当前执行的MapReduce任务进度;计算已完成的MapReduce任务的总量在MapReduce任务总数量中的权重,得到已完成任务的权重结果;将权重结果与当前执行的MapReduce任务进度相加,得到得到当前HiveSql的执行进度。以巧妙的方法准确计算出hiveSql的执行进度,在用户使用hivesql时能第一时间知道执行的进度,避免了盲目等待,减少用户不知道sql执行到哪一步的焦虑感,避免了盲目等待,做到心中有数。
作为上述方法的进一步改进,一些实施例中,获取已生成的所有MapReduce任务总量,按照预设规则将所述已生成的MapReduce进行排序,得到所述已生成MapReduce任务排序结果中,预设规则为按照时间顺序进行排序。
一些实施例中,预设规则为按照资源调度管理器为所述MapReduce任务分配的ID进行排序,所述ID为用户时间戳加字符串。
一些实施例中,已完成的MapReduce任务的序号,为所述排序中的最后一个任务序号的前一个。
一些实施例中,获取当前执行的MapReduce的任务进度,包括:
通过资源调度管理器查询获取当前执行的MapReduce的任务进度。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”、“多”的含义是指至少两个。
应该理解,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者可能同时存在居中元件;当一个元件被称为“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件,此外,这里使用的“连接”可以包括无线连接;使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为:表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (6)

1.一种计算HiveSql执行进度的方法,其特征在于,所述方法包括:
通过HiveSql将任务执行计划转换成MapReduce任务,获取所述MapReduce任务总数量;
获取已生成的所有MapReduce任务总量,按照预设规则将所述已生成的MapReduce进行排序,得到所述已生成MapReduce任务排序结果;
根据所述任务排序结果,得到已完成的MapReduce任务的序号;
获取当前执行的MapReduce任务进度;
计算已完成的MapReduce任务的总量在所述MapReduce任务总数量中的权重,得到已完成任务的权重结果;
将所述权重结果与所述当前执行的MapReduce任务进度相加,得到得到当前HiveSql的执行进度。
2.根据权利要求1所述的方法,其特征在于,获取已生成的所有MapReduce任务总量,按照预设规则将所述已生成的MapReduce进行排序,包括:
通过资源调度管理器查询已生成的所有MapReduce任务总量。
3.根据权利要求2所述的方法,其特征在于,所述预设规则为按照时间顺序进行排序。
4.根据权利要求2所述的方法,其特征在于,所述预设规则为按照资源调度管理器为所述MapReduce任务分配的ID进行排序,所述ID为用户时间戳加字符串。
5.根据权利要求1所述的方法,其特征在于,所述已完成的MapReduce任务的序号,为所述排序中的最后一个任务序号的前一个。
6.根据权利要求1所述的方法,其特征在于,所述获取当前执行的MapReduce的任务进度,包括:
通过资源调度管理器查询获取当前执行的MapReduce的任务进度。
CN202110439353.1A 2021-04-23 2021-04-23 一种计算HiveSql执行进度的方法 Pending CN113138810A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110439353.1A CN113138810A (zh) 2021-04-23 2021-04-23 一种计算HiveSql执行进度的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110439353.1A CN113138810A (zh) 2021-04-23 2021-04-23 一种计算HiveSql执行进度的方法

Publications (1)

Publication Number Publication Date
CN113138810A true CN113138810A (zh) 2021-07-20

Family

ID=76811819

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110439353.1A Pending CN113138810A (zh) 2021-04-23 2021-04-23 一种计算HiveSql执行进度的方法

Country Status (1)

Country Link
CN (1) CN113138810A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103440167A (zh) * 2013-09-04 2013-12-11 福州大学 Hadoop多作业环境下自学习反馈的任务调度方法
CN103942099A (zh) * 2014-04-30 2014-07-23 广州唯品会网络技术有限公司 基于Hive的并行执行任务方法及装置
US20150178367A1 (en) * 2013-12-20 2015-06-25 Infosys Limited System and method for implementing online analytical processing (olap) solution using mapreduce
CN107705029A (zh) * 2017-10-17 2018-02-16 北京恒华龙信数据科技有限公司 一种工程施工进度的计算方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103440167A (zh) * 2013-09-04 2013-12-11 福州大学 Hadoop多作业环境下自学习反馈的任务调度方法
US20150178367A1 (en) * 2013-12-20 2015-06-25 Infosys Limited System and method for implementing online analytical processing (olap) solution using mapreduce
CN103942099A (zh) * 2014-04-30 2014-07-23 广州唯品会网络技术有限公司 基于Hive的并行执行任务方法及装置
CN107705029A (zh) * 2017-10-17 2018-02-16 北京恒华龙信数据科技有限公司 一种工程施工进度的计算方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
范动来: "《hadoop海量数据处理 技术详解与项目实战》", 人民邮电出版社, pages: 80 - 87 *

Similar Documents

Publication Publication Date Title
TWI718643B (zh) 異常群體識別方法及裝置
US10452992B2 (en) Interactive interfaces for machine learning model evaluations
CN109491989B (zh) 数据处理方法及装置、电子设备、存储介质
CN108038239A (zh) 一种异构数据源规范化处理方法、装置及服务器
WO2018103109A1 (zh) 一种web页面管理系统及其实现方法
CN112650923A (zh) 新闻事件的舆情处理方法及装置、存储介质、计算机设备
US20230018975A1 (en) Monolith database to distributed database transformation
CN110147470B (zh) 一种跨机房数据比对系统及方法
CN116383238B (zh) 基于图结构的数据虚拟化系统、方法、装置、设备及介质
CN116663938B (zh) 基于企业数据中台系统的信息化管理方法及其相关装置
CN115408546A (zh) 一种时序数据管理方法、装置、设备及存储介质
CN112445776B (zh) 基于Presto的动态分桶方法、系统、设备及可读存储介质
CN117407505A (zh) 一种融合文档知识和问答对数据的问答检索方法及系统
CN108089871A (zh) 软件自动更新方法、装置、设备及存储介质
JP5206268B2 (ja) ルール作成プログラム、ルール作成方法及びルール作成装置
CN113138810A (zh) 一种计算HiveSql执行进度的方法
Sinthong et al. AFrame: Extending DataFrames for large-scale modern data analysis (Extended Version)
CN109977104A (zh) 数据管理方法及装置
CN115757304A (zh) 一种日志存储方法、装置、系统、电子设备及存储介质
CN115543428A (zh) 一种基于策略模板的模拟数据生成方法和装置
CN115408547A (zh) 一种字典树构建方法、装置、设备及存储介质
CN114817226A (zh) 政府数据的处理方法及装置
CN114328486A (zh) 基于模型的数据质量核查方法及装置
CN113722141A (zh) 数据任务的延迟原因确定方法、装置、电子设备及介质
CN112835932A (zh) 业务表的批量处理方法及装置、非易失性存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination