CN106557470A - 数据提取方法和装置 - Google Patents

数据提取方法和装置 Download PDF

Info

Publication number
CN106557470A
CN106557470A CN201510616189.1A CN201510616189A CN106557470A CN 106557470 A CN106557470 A CN 106557470A CN 201510616189 A CN201510616189 A CN 201510616189A CN 106557470 A CN106557470 A CN 106557470A
Authority
CN
China
Prior art keywords
calculating
data source
script
data
task
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.)
Granted
Application number
CN201510616189.1A
Other languages
English (en)
Other versions
CN106557470B (zh
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.)
Tencent Technology Beijing Co Ltd
Original Assignee
Tencent Technology Beijing 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 Tencent Technology Beijing Co Ltd filed Critical Tencent Technology Beijing Co Ltd
Priority to CN201510616189.1A priority Critical patent/CN106557470B/zh
Publication of CN106557470A publication Critical patent/CN106557470A/zh
Application granted granted Critical
Publication of CN106557470B publication Critical patent/CN106557470B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90324Query formulation using system suggestions

Abstract

本申请实施例提供了一种数据提取方法和装置。该方法包括:获取用户输入的数据提取需求信息;根据所述数据提取需求信息,生成计算机可读形式的任务描述信息;根据所述任务描述信息,获取待提取的数据源对应的计算脚本,以及确定所述数据源对应的计算平台;利用所述计算平台调度所述计算脚本,以得到提取结果。本申请实施例可以实现快捷自动的数据提取。

Description

数据提取方法和装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据提取方法和装置。
背景技术
随着数据量的增长,业务数据不再仅存储在数据库(db)中,由此数据查询将变得复杂。
并且由于数据量的增长和数据需求多样,需要进行人工干预,即针对每种需求,人工编写和管理计算脚本,这样容易造成混淆,扩展困难,以及开发和维护成本高。
发明内容
本申请实施例提供一种数据提取方法和装置,可以实现快捷自动的数据提取。
一方面,本申请实施例提供了一种数据提取方法,该方法包括:获取用户输入的数据提取需求信息;根据所述数据提取需求信息,生成计算机可读形式的任务描述信息;根据所述任务描述信息,获取待提取的数据源对应的计算脚本,以及确定所述数据源对应的计算平台;利用所述计算平台调度所述计算脚本,以得到提取结果。
另一方面,本申请实施例提供了一种数据提取装置,该装置包括:获取单元,用于获取用户输入的数据提取需求信息;
生成模块,用于根据所述数据提取需求信息,生成计算机可读形式的任务描述信息;
确定模块,根据所述任务描述信息,获取待提取的数据源对应的计算脚本,以及确定所述数据源对应的计算平台;
调度模块,用于利用所述计算平台调度所述计算脚本,以得到提取结果。
在本申请实施例中,在获取到用户输入的数据提取需求信息后,可以根据由数据提取需求信息转换而成的任务描述信息确定生成计算脚本,以及确定用于调度该计算脚本的计算平台,并由该计算平台调度计算脚本,得到用于反馈给用户的提取结果,因此,可以实现快捷自动的数据提取,从而可以降低沟通成本,减少人工干预,缩短取数周期。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请一种实施例的数据提取方法的示意性流程图;
图2是根据本申请另一种实施例的用于数据提取的逻辑框图;
图3是根据本申请另一种实施例的用于获取计算代码的示意性流程图;
图4是根据本申请另一种实施例的计算平台调度计算代码的示意性流程图;
图5是根据本申请另一种实施例的用于向用户反馈提取结果的示意性流程图;
图6是根据本申请另一种实施例的数据提取装置的示意性框图;
图7是根据本申请另一种实施例的数据提取装置的示意性框图;
图8是根据本申请另一种实施例的数据提取装置的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是根据本申请实施例的数据提取方法100的示意性流程图。如图1所示,该方法100包括:
在步骤110中,获取用户输入的数据提取需求信息;
在步骤120中,根据所述数据提取需求信息,生成计算机可读形式的任务描述信息;
在步骤130中,根据所述任务描述信息,获取待提取的数据源对应的计算脚本,以及确定所述数据源对应的计算平台;
在步骤140中,利用所述计算平台调度所述计算脚本,以得到提取结果;从而后续可以将所述提取结果反馈给所述用户。
在本申请实施例中,在获取到用户输入的数据提取需求信息后,可以根据由数据提取需求信息转换而成的任务描述信息确定生成计算脚本,以及确定用于调度该计算脚本的计算平台,并由该计算平台调度计算脚本,得到用于反馈给用户的提取结果,因此,可以实现快捷自动的数据提取,从而可以降低沟通成本,减少人工干预,缩短取数周期。
在本申请实施例中,可以动态增减数据源,根据业务需要动态增加新字段(带有效期),可以根据数据特征动态部署分析指标,可以实现自适应数据源及分析类型的数据提取。
在本申请实施例中,数据源是指需要被提取分析的数据对象。
可选地,在申请实施例中,用数据库db实时记录任务执行过程的操作状态,由此可以在进行下一步操作时,通过在db中快速读取上一步操作的状态。例如,在利用所述计算平台调度所述计算脚本,正确得到提取结果后,可以在db中存储状态为正确获取提取结果,从而可以进行下一步的用户反馈。在本申请实施例中,通过db实时记录任务计算过程的操作状态,可以实现操作状态的快速读取,方便后续步骤的快速进行。
可选地,在本申请实施例中,所述任务描述信息用于指示所述数据源和分析指标,以及包括所述数据源的分析维度、分析指标和过滤条件中的至少一种,其中,其中,待提取的数据可以根据任务描述信息中的数据开始时间和结束时间从数据源中确定提取范围,其中,数据源的数据可以按天存储。且根据所述任务描述信息中获取的所述计算脚本包括所述分析类型的信息以及包括所述分析类型,以及包括分析指标、分析维度和过滤条件中的至少一种的信息;所述利用所述计算平台调度所述计算脚本,以得到提取结果,包括:
根据所述计算脚本中包括的所述分析类型的信息以及根据所述分析指标、分析维度和过滤条件中的所述至少一种的信息,获取所述提取结果。
具体地说,在获取到数据提取需求信息时,可以将该数据提取需求信息可以转换为计算机可读形式的任务描述信息(也可称为任务描述接口),例如,json;该计算机可读形式的代码可以描述数据源,也可以进一步描述数据源的分析维度、分析指标、过滤条件、开始时间、结束时间等,并可以将该需求描述代码存储到db中;然后可以从该db中读取该需求描述代码,来生成数据源对应的计算脚本。
其中,该分析维度用于指示数据提取所考虑的维度,例如,时间维度、性别维度或空间维度等。
该过滤条件用于指示数据提取被过滤的对象,例如,数据提取针对的对象是上海地区,则除上海之外的地区被排除。
该分析类型可以属于统计类、用户类分析类型和定制化数据需求分析类型;其中,
统计类分析类型可以包括base分析类型和accu_reach分析类型等,base包含的分析指标包括但不限于库存,频次,点击,覆盖,收入等,accu_reach包含的分析指标包含但不限于累计频次,累计uv等;
用户类分析类型可以包括amp_getuin分析类型,amp_user_analysis分析类型,overlap分析类型和TGI分析类型,其中,amp_getuin用于指示获取人群包(例如,获取某一号段的qq(OPEN-ICQ,OICQ)号,amp_user_analysis用于指示进行人群分析(例如,对获取的qq号进行分析),overlap用于指示进行重合度计算(qq号重合度的计算),以及TGI用于指示目标群体指数(如,在15-34岁的人群中,有8.9%的人过去一个月来过腾讯视频电视剧频道看电视,而在总体人群中,去过该电视剧频道看电视的人数比例为6.6%,则该电视剧频道在15-34岁人群中的TGI指数是134.9(8.9%/6.6%×100),这说明,电视剧频道主要定位在15-34岁的人群中。其数额越大,就表明目标群体吻合度度就越高)。
定制化分析类型,用于指示定制化数据提取需求,以插件的形式支持,因此上述统计类分析指标和用户类分析指标都不能满足用户的需要,则可以进行人工预处理,以插件的形式支持计算。
在本申请实施例中,确定数据源的存储介质,根据所述数据源的存储介质,确定所述数据源对应的计算脚本的语言代码类型,生成确定的所述类型的计算脚本;
根据所述数据源的存储介质,确定所述计算平台。
可选地,在所述任务描述信息指示数据源存储在分布式文件系统(HDFS)中时,所述待提取数据对应的计算代码类型为开放源代码,所述待提取数据对应的计算平台为分布式系统基础架构hadoop平台;
和/或,
在所述任务描述信息指示的数据源存储在利用开源DB搭建的分布式集群时,所述计算脚本的语言类型为自定义的接口访问方式,所述数据源对应的计算平台为开源DB搭建的分布式集群。hadhoop是由Apache基金会所开发的分布式系统基础架构,是一款支持数据密集型分布式应用并以Apache 2.0许可协议发布的开源软件框架。Hadoop框架透明地为应用提供可靠性和数据移动。它实现了名为MapReduce的编程范式:应用程序被分割成许多小部分,而每个部分都能在集群中的任意节点上执行或重新执行。此外,Hadoop还提供了分布式文件系统,用以存储所有计算节点的数据,这为整个集群带来了非常高的带宽。MapReduce和分布式文件系统的设计,使得整个框架能够自动处理节点故障。
利用开源DB搭建的分布式集群可以是IB集群,IB是由mysql的infobright引擎架构的分布式db,IB是一个统一的互联结构,既可以处理存储输入/输出(Input/output,I/O)、网络I/O,也能够处理进程间通信(IPC,Interprocesscommunication)。目标主要是实现高的可靠性、可用性、可扩展性和高的性能。
Infobright是开源的MySQL数据仓库解决方案,引入了列存储方案,高强度的数据压缩,优化的统计计算(类似sum/avg/group by之类),infobright是基于mysql的,但不装mysql亦可,因为它本身就自带了一个。mysql可以粗分为逻辑层和物理存储引擎,infobright主要实现的就是一个存储引擎,但因为它自身存储逻辑跟关系型数据库根本不同,所以,它不能像InnoDB那样直接作为插件挂接到mysql,它的逻辑层是mysql的逻辑层加上它自身的优化器。
当然,也可以横向扩展计算平台。例如,如果数据源存储在单机db中时,该数据源对应的计算脚本类型为单机SQL语句,所述待提取数据对应的计算平台为单机的db平台。
可选地,在本申请实施例中,步骤140中,利用所述计算平台调度所述计算脚本,以得到提取结果,包括:
根据所述计算任务的优先级和所述计算平台的繁忙程度中的至少一种,确定利用所述计算平台调度所述计算脚本的开始时间或所在次序;
根据所述开始时间或所在次序,利用所述计算平台调度所述计算脚本。
具体地说,在确定计算平台之后,由于可能同时存在多个数据提取任务,而计算平台对应的资源有限,则可以根据提取任务的优先级和计算平台的繁忙程度来确定下一个带计算的任务,任务的每一个计算过程,都会记录下过程的开始结束时间。
可选地,在本申请实施例中,步骤140中,利用所述计算平台调度所述计算脚本,以得到提取结果,包括:
在所述计算脚本中引用的数据源、配置文件或前置任务满足预定要求后,利用所述计算平台调度所述计算脚本。
也就是说,如果某一任务可能对应多个数据源,或者依赖某种配置文件或者前置任务,只有这些数据源、配置文件或前置任务满足预定要求后,才能利用计算平台调度计算脚本,例如,在数据源中的数据已准备好,配置文件配置完成或者前置任务被计算完成,才能进行此次计算脚本的调度。
可选地,在申请实施例中,该方法100还可以包括:
根据代码和用户可读文字的对应关系,将所述提取结果中的全部或部分代码替换为用户可读文字;
将替换后的所述提取结果反馈给所述用户。
具体地说,由于进行数据提取后,得到的提取结果为生涩的代码,用户很难读懂该代码,则可以根据预存代码和可读文字的对应关系,将在所述提取结果中填入的全部或部分代码对应的可读文字,在填入对应的可读文字时,可以将原代码删除,也可以保留,本申请不做限定。其中,该可读文字可以为中文、英文、日文或中国少数名字语言等,具体可以根据针对的人群所确定,本申请实施例不做限定。
可选地,本申请实施例可以支持多种反馈方式将提取结果反馈给用户,例如,将提取结果保存在hadoop或者云文件系统(Cloud file system,cfs),只进行下载处理,通过邮件反馈,或者通过用户制定的反馈方式进行反馈。
可选地,在本申请实施例中,如果需要新增数据,则可以在任务描述接口中新增该数据源描述即可;或者,如果确定需要对某一数据新增字段,则可以更改该数据对应的数据源即可。
为了更加清楚地理解本申请的方案,以下将结合图2至图5描述根据本申请的实施例。
图2是根据本申请一种实施例的数据提取的框架图。其中,如图2所示,为了实现数据提取,需要三层,即分析层201、逻辑层202和存储层203。
在分析层201中,可以获取用户输入的数据需求信息,其中该数据需求信息用于指示需要对数据源进行统计分析或用户类分析。
在分析层202中,可以将用户输入的数据需求信息,转换为计算机可读形式的代码,并存储在db中;然后,根据任务描述信息生成计算脚本;进行任务计算,也即确定计算平台,由计算平台调度计算脚本;并向用户反馈提取结果。
在存储层203中,数据源可以存储在分布式文件系统(HDFS)中,或者IB集群中。如果数据存储在HDFS中,任务将生成PIG代码,使用Hadoop计算平台;如果数据存储在IB中,任务将生成IB集群对应的接口脚本,从IB集群中提取数据;如果分析类型为ib_load,该类型主要为IB集群提供数据,供用户分析,在这种情况下,主要是通过PIG从HDFS上提取数据,进行计算,并将数据存储在HDFS上;然后由IB集群从HDFS上拉取数据,入库到IB集群中,供用户分析使用。
可选地,在本申请实施例中,存储在不同的数据源上可以有以下不同的分析类型。具体地可以如表1所示,在数据源存储在HDFS时,分析类型可以有tailored、tgi、overlap、amp_user_analysis、amp_getuin、accu_reach和base,以及可以有ib_load,存储在IB时,分析类型可以是ib。
表1
在以上表格中,具体分析类型的含义可以参考上文描述。其中,ib和base是类似的,但是ib提供的分析指标较base而言没有频次和覆盖这两个。ib专门针对IB集群;base专门针对HDFS上的数据进行处理。应理解,由上各层的划分,只是为了便于本领域技术人员对本申请的理解,不应对本申请的保护范围构成限定。
图3是根据本申请实施例中的如何生成计算脚本的示意性流程图。在生成计算脚本之前,获取用户输入的数据提取需求信息,并转换为计算机可读形式的代码,存储在db中。其中,图3提到的任务为计算脚本生成任务,具体地,该生成计算脚本操作可以包括:
在步骤301中,在db中查询待处理任务;
在步骤302中,动态加载job类;
在步骤303中,校验任务的有效性;
在步骤304中,解析该任务;
在步骤305中,生成计算脚本并存储该计算脚本;
在步骤306中,更新任务状态,即更新为计算脚本已生成。
应理解,如果动态加载job类失败,则可以在db中将数据提取任务的状态更改为动态加载job失败或计算脚本生成失败;如果任务校验有效性失败,则可以在db中将数据提取任务的状态更改为任务校验有效性失败或计算脚本生成失败;如果任务解析失败,则可以在db中将数据提取任务的状态更改为任务解析失败或计算脚本生成失败;如果302-304均成功,而305的计算脚本生成失败,则可以将db中的状态改为计算脚本生成失败。否则,db中的状态更新为计算脚本生成成功。
图4是根据本申请实施例中的确定计算平台并由计算平台调度计算脚本的过程的示意性图。在确定计算平台并由计算平台调度计算脚本,在根据优先级选定某任务待执行时,此时更新db中任务状态为调度中,待任务正式提交到平台计算时,更新状态为任务计算中。其中,图4中待计算任务为需要由计算平台调度计算脚本的任务。具体地,确定计算平台并由计算平台调度计算脚本可以包括:
在步骤401中,从db中查询待计算任务;
在步骤402中,检查任务依赖条件;也即所对应的数据源、配置文件和前置任务是否满足预定条件,如果是,执行403;
在步骤403中,根据计算类型确定计算脚本,其中,如果为计算脚本为PIG代码,则选择hadhoop调度器子线程执行,如果计算脚本为ib集群,则选择infobright调度器子线程执行;
在步骤404中,判断计算平台的状态,例如,繁忙程度,来确定调度计算脚本的时间或次序等;
在步骤405中,获取计算脚本;
在步骤406中,计算线程池;
在步骤407中,检查任务有效性;
在步骤408中,在任务有效时,将计算任务提交给相应的平台,例如hadhoop集群或infobright平台。
在步骤409中,更新任务状态。
应理解,如果图4中的任一步骤执行失败,则可以在db中存储对应的失败状态,例如,获取计算脚本失败、线程池失败等;也可以直接存储为任务计算失败。
图5是根据本申请实施例中的向用户反馈提取结果的示意性图。其中,在向用户反馈提取结果之前,db中已经存在对应状态,例如,计算脚本生成状态(失败或成功)、任务计算状态(失败或成功),或者其他状态,例如,动态加载job类失败、线程池计算失败等。也即,图5提到的反馈结果可以不仅仅是成功的提取结果,也可以用于指示用户提取失败。具体地,向用户反馈提取结果的操作包括:
在步骤401中,创建工作进程;
在步骤402中,查询反馈任务;
在步骤403中,任务放入反馈队列;
在步骤404中,队列中取任务并反馈;
在步骤405中,更新任务状态,例如,任务反馈失败,已反馈—任务正常结束,已反馈—任务失败结束。
其中,在本申请实施例中,在db中存储任务状态时,可以是在任务结束时进行存储,也可以是即使任务未结束,可以分步骤更新任务状态,例如,在代码生成/任务调度计算/结果反馈过程中,更新任务状态。
图6是根据发明实施例的数据提取装置200的示意性框图,如图6所示,该装置200包括;
获取模块210,用于获取用户输入的数据提取需求信息;
生成模块220,用于根据所述数据提取需求信息,生成计算机可读形式的任务描述信息;
确定模块230,根据所述任务描述信息,获取待提取的数据源对应的计算脚本,以及确定所述数据源对应的计算平台;
调度模块240,用于利用所述计算平台调度所述计算脚本,以得到提取结果。
可选地,在本申请实施例中,所述确定模块230具体用于:
根据所述任务描述信息,确定所述数据源的存储介质;
根据所述数据源的存储介质,确定所述数据源对应的计算脚本的语言代码类型,获取确定的所述类型的计算脚本;
根据所述数据源的存储介质,确定所述计算平台。
可选地,在本申请实施例中,在所述任务描述信息指示的数据源存储在分布式文件系统HDFS时,所述计算脚本的语言类型为开放源PIG代码,所述计算平台为分布式系统基础架构Hadoop平台;
和/或,
在所述任务描述信息指示的数据源存储在利用开源数据库DB搭建的分布式集群时,所述计算脚本的语言类型为自定义的接口访问方式,所述数据源对应的计算平台为开源DB搭建的分布式集群。
可选地,在本申请实施例中,所述任务描述信息用于指示所述数据源的分析类型,以及包括分析指标、分析维度和过滤条件中的至少一种,且根据所述任务描述信息中获取的所述计算脚本包括所述分析类型的信息以及包括所述分析类型,以及包括分析指标、分析维度和过滤条件中的至少一种的信息。
可选地,在本申请实施例中,在所述分析类型为用户定制化类型时,所述确定模块230具体用于:
获取以插件形式存储的所述计算脚本。
可选地,如图7所示,所述装置200还包括:
更改模块250,用于在确定所述数据源新增数据字段后,更改所述任务描述信息中的数据源信息。
可选地,如图7所示,所述装置200还包括反馈模块260,用于:
根据提取结果的代码和用户可读文字的对应关系,在提取结果中填入全部或部分代码对应的用户可读文字;
将替换后的所述提取结果反馈给所述用户。
可选地,所述调度模块240具体用于:
根据所述任务描述信息所确定的任务优先级和所述计算平台的繁忙程度中的至少一种,确定利用所述计算平台调度所述计算脚本的开始时间或所在次序;
根据所述开始时间或所在次序,利用所述计算平台调度所述计算脚本。
可选地,所述调度平台具体用于:
在所述数据源、配置文件或前置任务满足预定要求后,利用所述计算平台调度所述计算脚本。
可选地,如图7所示,所述装置200还包括记录模块270,用于:
用数据库DB实时记录数据提取任务中的各种操作状态。
应理解,数据提取装置200可以用于实现本申请实施例中的数据提取方法,为了简洁,在此不再赘述。
图8是根据本申请实施例的数据提取装置300的示意性框图。如图8所示,该装置300包括:处理器310、端口320、总线330和存储器340。其中总线330用于连接处理器310和存储器340,处理器310可同通过端口320收发数据,存储器340用于存储指令,处理器310用于调用存储器340中的指令进行相应操作。其中,存储器存储的指令包括获取模块341、生成模块342、确定模块343、调度指令344、反馈模块346、更新模块345和记录模块347。其中,处理器310可通过调用获取模块341从端口320获取用户输入的数据提取需求信息,并可通过调用反馈模块346利用端口320向用户反馈提取结果。
其中,处理器可以调用获取模块341、生成模块342、确定模块343、调度指令344、反馈模块346、更新模块345和记录模块346实现上述获取模块210、生成模块220、确定模块230、调度指令240、反馈模块260、更新模块250和记录模块270的功能,为了简洁,在此不再赘述。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现,或者采用软件和硬件结合的方式实现。所述各实施例的功能模块可以位于一个终端或网络节点,或者也可以分布到多个终端或网络节点上。
另外,本发明的每一个实施例可以通过由数据处理设备如计算机执行的数据处理程序来实现。显然,数据处理程序构成了本发明。此外,通常存储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质或者通过将程序安装或复制到数据处理设备的存储设备(如硬盘和/或内存)中执行。因此,这样的存储介质也构成了本发明。存储介质可以使用任何类型的记录方式,例如纸张存储介质(如纸带等)、磁存储介质(如软盘、硬盘、闪存等)、光存储介质(如CD-ROM等)、磁光存储介质(如MO等)等。
因此本发明还提供了一种存储介质,其中存储有数据处理程序,该数据处理程序用于执行本发明上述方法的任何一种实施例。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (20)

1.一种数据提取方法,其特征在于,包括:
获取用户输入的数据提取需求信息;
根据所述数据提取需求信息,生成计算机可读形式的任务描述信息;
根据所述任务描述信息,获取待提取的数据源对应的计算脚本,以及确定所述数据源对应的计算平台;
利用所述计算平台调度所述计算脚本,以得到提取结果。
2.根据权利要求1所述的方法,其特征在于,所述获取待提取的数据源对应的计算脚本,以及确定所述数据源对应的计算平台,包括:
根据所述任务描述信息,确定所述数据源的存储介质;
根据所述数据源的存储介质,确定所述数据源对应的计算脚本的语言代码类型,获取确定的所述类型的计算脚本;
根据所述数据源的存储介质,确定所述计算平台。
3.根据权利要求2所述的方法,其特征在于,
在所述任务描述信息指示的数据源存储在分布式文件系统HDFS时,所述计算脚本的语言类型为开放源PIG代码,所述计算平台为分布式系统基础架构Hadoop平台;
和/或,
在所述任务描述信息指示的数据源存储在利用开源数据库DB搭建的分布式集群时,所述计算脚本的语言类型为自定义的接口访问方式,所述数据源对应的计算平台为开源DB搭建的分布式集群。
4.根据权利要求1所述的方法,其特征在于,所述任务描述信息用于指示所述数据源的分析类型,以及包括分析指标、分析维度和过滤条件中的至少一种,且根据所述任务描述信息中获取的所述计算脚本包括所述分析类型的信息以及包括所述分析类型,以及包括分析指标、分析维度和过滤条件中的至少一种的信息;
所述利用所述计算平台调度所述计算脚本,以得到提取结果,包括:
根据所述计算脚本中包括的所述分析类型的信息以及根据所述分析指标、分析维度和过滤条件中的所述至少一种的信息,获取所述提取结果。
5.根据权利要求4所述的方法,其特征在于,在所述分析类型为用户定制化类型时,获取待提取的数据源对应的计算脚本,包括:
获取以插件形式存储的所述计算脚本。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定所述数据源新增数据字段后,更改所述任务描述信息中的数据源对应的描述信息。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据提取结果的代码和用户可读文字的对应关系,在提取结果中填入全部或部分代码对应的用户可读文字;
将替换后的所述提取结果反馈给所述用户。
8.根据权利要求1所述的方法,其特征在于,利用所述计算平台调度所述计算脚本,以得到提取结果,包括:
根据所述任务描述信息所确定的任务优先级和所述计算平台的繁忙程度中的至少一种,确定利用所述计算平台调度所述计算脚本的开始时间或所在次序;
根据所述开始时间或所在次序,利用所述计算平台调度所述计算脚本。
9.根据权利要求1所述的方法,其特征在于,利用所述计算平台调度所述计算脚本,以得到提取结果,包括:
在所述数据源、配置文件或前置任务满足预定要求后,利用所述计算平台调度所述计算脚本。
10.根据权利要求1至9中任一项所述的方法,其特征在于,所述方法还包括:用数据库DB实时记录数据提取任务中的各种操作状态。
11.一种数据提取装置,其特征在于,包括:
获取模块,用于获取用户输入的数据提取需求信息;
生成模块,用于根据所述数据提取需求信息,生成计算机可读形式的任务描述信息;
确定模块,根据所述任务描述信息,获取待提取的数据源对应的计算脚本,以及确定所述数据源对应的计算平台;
调度模块,用于利用所述计算平台调度所述计算脚本,以得到提取结果。
12.根据权利要求11所述的装置,其特征在于,所述确定模块具体用于:
根据所述任务描述信息,确定所述数据源的存储介质;
根据所述数据源的存储介质,确定所述数据源对应的计算脚本的语言代码类型,获取确定的所述类型的计算脚本;
根据所述数据源的存储介质,确定所述计算平台。
13.根据权利要求12所述的装置,其特征在于,
在所述任务描述信息指示的数据源存储在分布式文件系统HDFS时,所述计算脚本的语言类型为开放源PIG代码,所述计算平台为分布式系统基础架构Hadoop平台;
和/或,
在所述任务描述信息指示的数据源存储在利用开源数据库DB搭建的分布式集群时,所述计算脚本的语言类型为自定义的接口访问方式,所述数据源对应的计算平台为开源DB搭建的分布式集群。
14.根据权利要求11所述的装置,其特征在于,所述任务描述信息用于指示所述数据源的分析类型,以及包括分析指标、分析维度和过滤条件中的至少一种,且根据所述任务描述信息中获取的所述计算脚本包括所述分析类型的信息以及包括所述分析类型,以及包括分析指标、分析维度和过滤条件中的至少一种的信息。
15.根据权利要求14所述的装置,其特征在于,在所述分析类型为用户定制化类型时,所述确定模块具体用于:
获取以插件形式存储的所述计算脚本。
16.根据权利要求11所述的方法,其特征在于,所述装置还包括:
更改模块,用于在确定所述数据源新增数据字段后,更改所述任务描述信息中的数据源对应的描述信息。
17.根据权利要求11所述的装置,其特征在于,所述装置还包括反馈模块,用于:
根据提取结果的代码和用户可读文字的对应关系,在提取结果中填入全部或部分代码对应的用户可读文字;
将替换后的所述提取结果反馈给所述用户。
18.根据权利要求11所述的方法,其特征在于,所述调度模块具体用于:
根据所述任务描述信息所确定的任务优先级和所述计算平台的繁忙程度中的至少一种,确定利用所述计算平台调度所述计算脚本的开始时间或所在次序;
根据所述开始时间或所在次序,利用所述计算平台调度所述计算脚本。
19.根据权利要求11所述的方法,其特征在于,所述调度模块具体用于:
在所述数据源、配置文件或前置任务满足预定要求后,利用所述计算平台调度所述计算脚本。
20.根据权利要求11至19中任一项所述的装置,其特征在于,所述装置还包括记录模块,用于:
用数据库DB实时记录数据提取任务中的各种操作状态。
CN201510616189.1A 2015-09-24 2015-09-24 数据提取方法和装置 Active CN106557470B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510616189.1A CN106557470B (zh) 2015-09-24 2015-09-24 数据提取方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510616189.1A CN106557470B (zh) 2015-09-24 2015-09-24 数据提取方法和装置

Publications (2)

Publication Number Publication Date
CN106557470A true CN106557470A (zh) 2017-04-05
CN106557470B CN106557470B (zh) 2020-06-12

Family

ID=58415326

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510616189.1A Active CN106557470B (zh) 2015-09-24 2015-09-24 数据提取方法和装置

Country Status (1)

Country Link
CN (1) CN106557470B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107944012A (zh) * 2017-12-08 2018-04-20 北京百度网讯科技有限公司 知识数据计算系统、方法、服务器及存储介质
WO2018203351A1 (en) * 2017-05-05 2018-11-08 Vidhi Techinnovation Opportunities Network Private Limited A method and system for extraction of event data from user devices
CN109299032A (zh) * 2018-10-25 2019-02-01 掌阅科技股份有限公司 数据分析方法、电子设备及计算机存储介质
CN110019434A (zh) * 2018-08-23 2019-07-16 深圳市信锐网科技术有限公司 物联网数据处理方法、装置、平台及存储介质
CN110399410A (zh) * 2018-04-16 2019-11-01 北京嘀嘀无限科技发展有限公司 数据处理方法、装置、设备和计算机可读存储介质
CN110795686A (zh) * 2018-08-03 2020-02-14 上海小渔数据科技有限公司 用于提供数据支持的数据处理方法及装置
CN110837356A (zh) * 2018-08-15 2020-02-25 北京京东尚科信息技术有限公司 一种数据处理方法和装置
CN110851517A (zh) * 2019-11-08 2020-02-28 深圳市彬讯科技有限公司 一种源数据抽取方法、装置、设备及计算机存储介质
CN112988806A (zh) * 2019-12-17 2021-06-18 北京沃东天骏信息技术有限公司 一种数据处理的方法及装置
WO2022105494A1 (zh) * 2020-11-17 2022-05-27 深圳壹账通智能科技有限公司 数据自动回填方法、装置、电子设备及计算机存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102789471A (zh) * 2011-05-17 2012-11-21 富士通株式会社 混搭服务器和提供混搭服务的方法
CN103186541A (zh) * 2011-12-27 2013-07-03 阿里巴巴集团控股有限公司 一种映射关系生成方法及装置
CN103583030A (zh) * 2011-05-25 2014-02-12 阿尔卡特朗讯公司 在分布式云计算环境中实现数据安全性的方法及装置
US20140222867A1 (en) * 2013-02-05 2014-08-07 Pitney Bowes Inc. Data source independent interface for an electronic bill presentment and payment system
CN104035880A (zh) * 2014-06-09 2014-09-10 南京邮电大学 一种多种存储介质并存下的多路数据分配方法
CN104598840A (zh) * 2015-02-04 2015-05-06 新余兴邦信息产业有限公司 基于Http协议的多数据源的数据处理方法及系统
CN104699788A (zh) * 2015-03-16 2015-06-10 百度在线网络技术(北京)有限公司 数据库查询方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102789471A (zh) * 2011-05-17 2012-11-21 富士通株式会社 混搭服务器和提供混搭服务的方法
CN103583030A (zh) * 2011-05-25 2014-02-12 阿尔卡特朗讯公司 在分布式云计算环境中实现数据安全性的方法及装置
CN103186541A (zh) * 2011-12-27 2013-07-03 阿里巴巴集团控股有限公司 一种映射关系生成方法及装置
US20140222867A1 (en) * 2013-02-05 2014-08-07 Pitney Bowes Inc. Data source independent interface for an electronic bill presentment and payment system
CN104035880A (zh) * 2014-06-09 2014-09-10 南京邮电大学 一种多种存储介质并存下的多路数据分配方法
CN104598840A (zh) * 2015-02-04 2015-05-06 新余兴邦信息产业有限公司 基于Http协议的多数据源的数据处理方法及系统
CN104699788A (zh) * 2015-03-16 2015-06-10 百度在线网络技术(北京)有限公司 数据库查询方法和装置

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018203351A1 (en) * 2017-05-05 2018-11-08 Vidhi Techinnovation Opportunities Network Private Limited A method and system for extraction of event data from user devices
US10992400B2 (en) 2017-05-05 2021-04-27 Vidhi Techinnovation Opportunities Network Private Limited Method and system for extraction of event data from user devices
CN107944012A (zh) * 2017-12-08 2018-04-20 北京百度网讯科技有限公司 知识数据计算系统、方法、服务器及存储介质
CN110399410A (zh) * 2018-04-16 2019-11-01 北京嘀嘀无限科技发展有限公司 数据处理方法、装置、设备和计算机可读存储介质
CN110795686A (zh) * 2018-08-03 2020-02-14 上海小渔数据科技有限公司 用于提供数据支持的数据处理方法及装置
CN110795686B (zh) * 2018-08-03 2023-08-11 上海小渔数据科技有限公司 用于提供数据支持的数据处理方法及装置
CN110837356A (zh) * 2018-08-15 2020-02-25 北京京东尚科信息技术有限公司 一种数据处理方法和装置
CN110019434A (zh) * 2018-08-23 2019-07-16 深圳市信锐网科技术有限公司 物联网数据处理方法、装置、平台及存储介质
CN109299032B (zh) * 2018-10-25 2019-10-01 掌阅科技股份有限公司 数据分析方法、电子设备及计算机存储介质
CN109299032A (zh) * 2018-10-25 2019-02-01 掌阅科技股份有限公司 数据分析方法、电子设备及计算机存储介质
CN110851517A (zh) * 2019-11-08 2020-02-28 深圳市彬讯科技有限公司 一种源数据抽取方法、装置、设备及计算机存储介质
CN112988806A (zh) * 2019-12-17 2021-06-18 北京沃东天骏信息技术有限公司 一种数据处理的方法及装置
WO2022105494A1 (zh) * 2020-11-17 2022-05-27 深圳壹账通智能科技有限公司 数据自动回填方法、装置、电子设备及计算机存储介质

Also Published As

Publication number Publication date
CN106557470B (zh) 2020-06-12

Similar Documents

Publication Publication Date Title
CN106557470A (zh) 数据提取方法和装置
Lai et al. Fedscale: Benchmarking model and system performance of federated learning at scale
CN108776934B (zh) 分布式数据计算方法、装置、计算机设备及可读存储介质
US10318882B2 (en) Optimized training of linear machine learning models
US10339465B2 (en) Optimized decision tree based models
US10102480B2 (en) Machine learning service
CN111625452A (zh) 流量回放方法和系统
US20150379423A1 (en) Feature processing recipes for machine learning
US10255347B2 (en) Smart tuple dynamic grouping of tuples
CN106663075A (zh) 执行基于图的程序规范
CN108228166A (zh) 一种基于模板的后端代码生成方法及系统
US11385898B2 (en) Task orchestration method for data processing, orchestrator, device and readable storage medium
CN109062780A (zh) 自动化测试用例的开发方法及终端设备
CN110275861A (zh) 数据存储方法及装置、存储介质、电子装置
CN108984160A (zh) 基于组件化的信息化快速开发框架及方法
CN108846419A (zh) 单页高负载图像识别方法、装置、计算机设备及存储介质
CN106605209A (zh) 控制数据处理任务
CN116415206B (zh) 运营商多数据融合方法、系统、电子设备及计算机存储介质
CN112416369B (zh) 一种面向异构混合环境的智能化部署方法
CN114461357B (zh) 一种遥感卫星原始数据实时处理流程调度系统
CN105446952B (zh) 用于处理语义片段的方法和系统
CN112052082B (zh) 任务属性优化方法、装置、服务器及存储介质
CN110222054A (zh) 一种提高检索速度的方法、装置、终端设备和存储介质
CN114756629B (zh) 基于sql的多源异构数据交互分析引擎及方法
CN109086433A (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
GR01 Patent grant
GR01 Patent grant