CN110704527A - 数据处理方法、装置、电子设备及计算机可读存储介质 - Google Patents
数据处理方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110704527A CN110704527A CN201910959125.XA CN201910959125A CN110704527A CN 110704527 A CN110704527 A CN 110704527A CN 201910959125 A CN201910959125 A CN 201910959125A CN 110704527 A CN110704527 A CN 110704527A
- Authority
- CN
- China
- Prior art keywords
- data
- processing
- memory
- api
- processed
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种数据处理方法、装置、电子设备及计算机可读存储介质,涉及大数据处理领域。该方法包括:确定待处理的源数据,通过基于内存的应用程序编程接口API对待处理的源数据进行ETL处理;其中,ETL处理包括以下至少一项:数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。即本申请中通过在内存中对数据进行数据抽取处理、数据清洗处理、数据可视化处理以及数据存储处理。本申请实施例实现了降低数据处理耗时以及提高数据处理效率,并且可以提升用户体验。
Description
技术领域
本申请涉及大数据处理技术领域,具体而言,本申请涉及一种数据处理方法、装置、电子设备及计算机可读存储介质。
背景技术
随着大数据在传统行业中的应用越来越广泛,市面上涌现出了多种数据ETL的开源工具。其中,ETL用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。比如比较流行的数据抽取工具包含sqoop、kettle、flume等;数据清洗工具可以包含kettle、SPSS;数据存储工具有传统的数据库sqlserver、oracle、mysql及大数据方向的hdfs、hive、hbase等。
目前在很多公司数据部门都是多种ETL工具组装使用以实现数据处理,例如,经典的数据批式处理工具包含sqoop+Hive+HQL,或者kettle+hive+MapReduce;流式的数据处理工具包含flume+kafka+sparkstreaming,当然在很多公司还有专门适用于公司内部数据源的组合应用。
但是,当通过多种ETL工具组装使用以对数据进行处理时,由于进行ETL处理的多种组件的架构不同,因此通过不同的组件进行抽取、转换以及加载等各个ETL处理之后,均需要先落地保存之后,在读取数据以进行下一步操作,从而导致数据处理耗时较长,效率较低,进而导致用户体验较差。
发明内容
本申请提供了一种数据处理方法、装置、电子设备及计算机可读存储介质,可以解决数据处理耗时较长、效率较低以及用户体验较差的问题。技术方案如下:
第一方面,提供了一种数据处理方法,该方法包括:
确定待处理的源数据;
通过基于内存的应用程序编程接口API对待处理的源数据进行ETL处理;
其中,ETL处理包括以下至少一项:
数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。
在一种可能的实现方式中,通过基于内存的API对待处理的源数据进行数据抽取处理,包括:
基于待处理的源数据的数据源信息,确定基于内存的抽取API,待处理的源数据的数据源信息不同对应的基于内存的抽取API也不相同;
基于确定出的基于内存的抽取API,对待处理的源数据进行数据抽取处理。
在另一种可能的实现方式中,对待处理的源数据进行数据抽取处理,之后还包括:
将抽取的数据通过数据帧的格式暂存至内存中。
在另一种可能的实现方式中,通过基于内存的应用程序编程接口API对待处理的源数据进行数据清洗处理,包括:
从暂存至内存的数据中确定待进行数据清洗处理的数据;
通过基于内存的清洗处理API对待进行数据清洗处理的数据进行数据清洗处理。
在另一种可能的实现方式中,通过基于内存的应用程序编程接口API对待处理的源数据进行数据转换处理,包括任一项:
通过基于内存的数据转换处理API对暂存至内存的数据进行数据转换处理;
通过基于内存的数据转换处理API对数据清洗处理后的数据进行数据转换处理。
在另一种可能的实现方式中,通过基于内存的应用程序编程接口API对待处理的源数据进行数据可视化处理,包括任一项:
通过基于内存的数据可视化处理API对暂存至内存的数据进行数据可视化处理;
通过基于内存的数据可视化处理API对数据清洗处理后的数据进行数据可视化处理;
通过基于内存的数据可视化处理API对数据转换处理后的数据进行数据可视化处理。
在另一种可能的实现方式中,通过基于内存的应用程序编程接口API对待处理的源数据进行数据可视化处理,包括任一项:
通过基于内存的数据存储处理API将暂存至内存的数据存储至数据存储系统;
通过基于内存的数据存储处理API将数据清洗处理后的数据存储至数据存储系统;
通过基于内存的数据存储处理API对数据转换处理后的数据存储至数据存储系统;
通过基于内存的数据存储处理API对数据可视化处理后的数据存储至数据存储系统。
在另一种可能的实现方式中,该方法还包括:
通过基于内存的管理API监测内存的占用率;
当监测到内存的占用率大于预设占用率时,通过基于内存的管理API控制显示内存中存储的数据,基于用户针对内存中存储的数据的选择删除操作,确定待释放的数据,并释放待释放的数据。
在另一种可能的实现方式中,当监测到用户针对内存中存储的数据的选择删除操作,通过基于内存的管理API确定内存中待释放的数据,并进行释放。
在另一种可能的实现方式中,基于确定出的基于内存的抽取API,对待处理的源数据进行数据抽取处理,包括:
基于确定出的基于内存的抽取API获取待进行数据抽取的数据量,待进行数据抽取的数据量是基于内存当前的占用率确定的;
基于确定出的基于内存的抽取API,按照待进行数据抽取的数据量对待处理的源数据进行数据抽取处理。
第二方面,提供了一种数据处理装置,该装置包括:
第一确定模块,用于确定待处理的源数据;
处理模块,用于通过基于内存的应用程序编程接口API对待处理的源数据进行ETL处理;
其中,ETL处理包括以下至少一项:
数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。
在一种可能的实现方式中,处理模块在通过基于内存的API对待处理的源数据进行数据抽取处理时,具体用于:
基于待处理的源数据的数据源信息,确定基于内存的抽取API,基于确定出的基于内存的抽取API,对待处理的源数据进行数据抽取处理;
其中,待处理的源数据的数据源信息不同对应的基于内存的抽取API也不相同。
在另一种可能的实现方式中,该装置还包括:暂存模块,其中,
暂存模块,用于将抽取的数据通过数据帧的格式暂存至内存中。
在另一种可能的实现方式中,处理模块,在通过基于内存的应用程序编程接口API对待处理的源数据进行数据清洗处理时,具体用于:
从暂存至内存的数据中确定待进行数据清洗处理的数据;通过基于内存的清洗处理API对待进行数据清洗处理的数据进行数据清洗处理。
在另一种可能的实现方式中,处理模块,在通过基于内存的应用程序编程接口API对待处理的源数据进行数据转换处理时,具体用于:
通过基于内存的数据转换处理API对暂存至内存的数据进行数据转换处理;或者,通过基于内存的数据转换处理API对数据清洗处理后的数据进行数据转换处理。
在另一种可能的实现方式中,处理模块在通过基于内存的应用程序编程接口API对待处理的源数据进行数据可视化处理时,具体用于:
通过基于内存的数据可视化处理API对暂存至内存的数据进行数据可视化处理;或者,通过基于内存的数据可视化处理API对数据清洗处理后的数据进行数据可视化处理;或者,通过基于内存的数据可视化处理API对数据转换处理后的数据进行数据可视化处理。
在另一种可能的实现方式中,处理模块在通过基于内存的应用程序编程接口API对待处理的源数据进行数据可视化处理,具体用于:
通过基于内存的数据存储处理API将暂存至内存的数据存储至数据存储系统;或者,通过基于内存的数据存储处理API将数据清洗处理后的数据存储至数据存储系统;或者,通过基于内存的数据存储处理API对数据转换处理后的数据存储至数据存储系统;或者,通过基于内存的数据存储处理API对数据可视化处理后的数据存储至数据存储系统。
在另一种可能的实现方式中,该装置还包括:监测模块、控制显示模块、第二确定模块以及第一释放模块,其中,
监测模块,用于通过基于内存的管理API监测内存的占用率;
控制显示模块,用于当监测到内存的占用率大于预设占用率时,通过基于内存的管理API控制显示内存中存储的数据;
第二确定模块,用于通过基于内存的管理API并基于用户针对内存中存储的数据的选择删除操作,确定待释放的数据;
第一释放模块,用于通过基于内存的管理API释放待释放的数据。
在另一种可能的实现方式中,该装置还包括:第三确定模块以及第二释放模块,其中,
第三确定模块,用于当监测到用户针对内存中存储的数据的选择删除操作,通过基于内存的管理API确定内存中待释放的数据;
第二释放模块,用于基于内存的管理API释放内存中待释放的数据。
在另一种可能的实现方式中,处理模块在基于确定出的基于内存的抽取API,对待处理的源数据进行数据抽取处理时,具体用于:
基于确定出的基于内存的抽取API获取待进行数据抽取的数据量,基于确定出的基于内存的抽取API,按照待进行数据抽取的数据量对待处理的源数据进行数据抽取处理,待进行数据抽取的数据量是基于内存当前的占用率确定的。
第三方面,提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行根据第一方面或者第一方面任一可能的实现方式所示的数据处理方法对应的操作。
第四方面,提供了一种计算机可读存储介质,
存储介质存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如第一方面或者第一方面任一可能的实现方式所示的数据处理方法。
本申请提供的技术方案带来的有益效果是:
本申请提供了一种数据处理方法、装置、电子设备及计算机可读存储介质,与现有技术中通过多种ETL工具组装使用对数据进行处理相比,本申请确定待处理的源数据,通过基于内存的应用程序编程接口API对待处理的源数据进行ETL处理;其中,ETL处理包括以下至少一项:数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。即本申请中通过在内存中对数据进行数据抽取处理、数据清洗处理、数据可视化处理以及数据存储处理,不需要在每次处理之后先对数据进行落地保存,并且也不需要在进行每次操作之前重新读取数据,从而可以降低数据处理耗时,提高数据处理效率,进而可以提升用户体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种数据处理方法的流程示意图;
图2为本申请实施例提供的一种数据处理装置的结构示意图;
图3为本申请实施例提供的一种数据处理的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请实施例提供了一种数据处理方法,如图1所示,该方法包括:
步骤S101、确定待处理的源数据。
对于本申请实施例,待处理的源数据存储于预设数据库中。
其中,预设数据库可以包括:mySQL、结构化查询语言数据库(Structured QueryLanguage Server,SQL Server)、Oracle数据库、分布式文件系统(Hadoop DistributedFile System,HDFS)、Hive、csv/txt/parquet。
其中,MySQL是一个关系型数据库管理系统,MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(Relational Database ManagementSystem,关系数据库管理系统)应用软件之一。
其中,hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。
其中,Oracle数据库系统是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。比如SilverStream就是基于数据库的一种中间件。Oracle数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。
步骤S102、通过基于内存的应用程序编程接口(Application ProgrammingInterface,API)对待处理的源数据进行ETL处理。
其中,ETL处理包括以下至少一项:
数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。
对于本申请实施例,从待处理的源数据进行数据抽取处理,并在内存中对抽取的数据进行数据清洗处理、数据转换处理、数据可视化处理以及数据存储处理中的至少一项,以实现对数据进行ETL处理。
本申请实施例提供了一种数据处理方法,与现有技术中通过多种ETL工具组装使用对数据进行处理相比,本申请实施例确定待处理的源数据,通过基于内存的应用程序编程接口API对待处理的源数据进行ETL处理;其中,ETL处理包括以下至少一项:数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。即本申请实施例中通过在内存中对数据进行数据抽取处理、数据清洗处理、数据可视化处理以及数据存储处理,不需要在每次处理之后先对数据进行落地保存,并且也不需要在进行每次操作之前重新读取数据,从而可以降低数据处理耗时,提高数据处理效率,进而可以提升用户体验。
本申请实施例的一种可能的实现方式,通过基于内存的API对待处理的源数据进行数据抽取处理,包括:基于待处理的源数据的数据源信息,确定基于内存的抽取API;基于确定出的基于内存的抽取API,对待处理的源数据进行数据抽取处理。
其中,待处理的源数据的数据源信息不同对应的基于内存的抽取API也不相同。
对于本申请实施例,由上述实施例可知,待处理的源数据存储至不同的数据库中,因此不同的待处理的源数据对应的数据源信息也不相同。
对于本申请实施例,基于待处理的源数据的数据源信息,确定基于内存的抽取API,之前还包括:配置各个数据源信息分别对应的基于内存的抽取API。在本申请实施例中,基于待处理的源数据的数据源信息,确定基于内存的抽取API,具体包括:基于待处理的源数据的数据源信息、以及各个数据源信息分别对应的基于内存的抽取API,确定所述待处理的源数据对应的基于内存的抽取API。
例如,数据源信息为mysql对应的基于内存的抽取API为抽取API1,数据源信息为SQLserver对应的基于内存的抽取API为抽取API2,数据源信息为Oracle对应的基于内存的抽取API为抽取API3,数据源信息为hdfs/hive对应的基于内存的抽取API为抽取API4,数据源信息为csv/txt/parquet对应的基于内存的抽取API为抽取API5,若待处理的源数据的数据源信息为SQLserver,则确定所述待处理的源数据对应的基于内存的抽取API为API3。
本申请实施例的另一种可能的实现方式,对待处理的源数据进行数据抽取处理,之后还包括:将抽取的数据通过数据帧的格式暂存至内存中。
对于本申请实施例,将通过基于内存的抽取API抽取的数据暂存在内存中,并保存为带有行、列、header、index的数据帧格式。在本申请实施例中,header以及index分别用于标识数据帧的行和列。
本申请实施例的另一种可能的实现方式,通过基于内存的应用程序编程接口API对待处理的源数据进行数据清洗处理,包括:从暂存至内存的数据中确定待进行数据清洗处理的数据;通过基于内存的清洗处理API对待进行数据清洗处理的数据进行数据清洗处理。
对于本申请实施例,对待进行数据清洗处理的数据进行数据清洗处理包括以下至少一项:对待进行数据清洗处理的数据进行去空格处理;对待进行数据清洗处理的数据进行去异常字符处理;基于通过正则表达式配置的清洗规则对待进行数据清洗处理的数据进行数据清洗处理。在本申请实施例中,不同行的数据对应的清洗规则可以相同,也可以不同;不同列的数据对应的清洗规则可以相同,也可以不相同。在本申请实施例中不做限定。
对于本申请实施例,由于内存中通过数据帧的格式存储数据,因此从暂存至内存的数据中确定待进行数据清洗处理的某行数据或者某列数据,对确定出的待进行数据清洗的某行数据或者某列数据按照对应的清洗规则进行数据清洗处理。在本申请实施例中,可以基于用户输入的指示信息从暂存至内存的数据中确定待进行数据清洗处理的数据,也可以基于预设规则从暂存至内存的数据中确定待进行数据清洗处理的数据,也可以对暂存在内存中的所有数据进行数据清洗处理。在本申请实施例中不做限定。
本申请实施例的另一种可能的实现方式,通过基于内存的应用程序编程接口API对待处理的源数据进行数据转换处理,包括:通过基于内存的数据转换处理API对暂存至内存的数据进行数据转换处理;或者,通过基于内存的数据转换处理API对数据清洗处理后的数据进行数据转换处理。
对于本申请实施例,根据数据应用方的数据格式需求,确定待进行数据转换处理的处理方式。在本申请实施例中,基于确定出的待进行数据转换处理的处理方式,并通过基于内存的数据转换处理API对暂存至内存的数据进行数据转换处理,或者基于确定出的待进行数据转换处理的处理方式,并在数据清洗处理后对内存中暂存的数据进行数据转换处理。
对于本申请实施例,数据转换处理方式可以包括:数据排序处理、数据去重处理、数据规约处理、关联处理以及透视处理中的至少一项。
对于本申请实施例,数据规约处理就是缩小数据挖掘所需的数据集规模,具体方式有维度规约与数量规约。
对于本申请实施例,在数据分析中,对象之间以及对象属性之间都存在关联关系,关联处理是指采用某种方法对问题关联关系进行处理。
对于本申请实施例,数据透视类似excel中的透视表,是数据转换的一种,但在转换过程中能进行sum,count,mean等各种计算。
本申请实施例的另一种可能的实现方式,通过基于内存的应用程序编程接口API对待处理的源数据进行数据可视化处理,包括:通过基于内存的数据可视化处理API对暂存至内存的数据进行数据可视化处理;或者,通过基于内存的数据可视化处理API对数据清洗处理后的数据进行数据可视化处理;或者,通过基于内存的数据可视化处理API对数据转换处理后的数据进行数据可视化处理。
对于本申请实施例,数据可视化主要旨在借助于图形化手段,清晰有效地传达与沟通信息。在本申请实施例中,对数据进行数据可视化处理即将数据统计为可视化点、线、面图饼、柱状图、直方图、箱形图以及雷达图中的至少一项。
本申请实施例的另一种可能的实现方式,通过基于内存的应用程序编程接口API对待处理的源数据进行数据可视化处理,包括:通过基于内存的数据存储处理API将暂存至内存的数据存储至数据存储系统;或者,通过基于内存的数据存储处理API将数据清洗处理后的数据存储至数据存储系统;或者,通过基于内存的数据存储处理API对数据转换处理后的数据存储至数据存储系统;或者,通过基于内存的数据存储处理API对数据可视化处理后的数据存储至数据存储系统。
本申请实施例的另一种可能的实现方式,该方法还包括:步骤Sa(图中未示出)以及步骤Sb(图中未示出),其中,
步骤Sa、通过基于内存的管理API监测内存的占用率。
步骤Sb、当监测到内存的占用率大于预设占用率时,通过基于内存的管理API控制显示内存中存储的数据,基于用户针对内存中存储的数据的选择删除操作,确定待释放的数据,并释放待释放的数据。
对于本申请实施例,由于数据以数据帧格式存储在内存中,并且针对数据的清洗处理、数据转换处理以及数据可视化处理等均在内存中进行,再者,在对数据进行清洗处理、数据转换处理以及数据可视化处理的过程中可能会产生很多中间数据,因此需要配置基于内存的管理API,对内存的数据进行管理,即把在数据清洗处理、数据转换处理以及数据可视化处理过程中产生的无用数据帧即内存占用释放。
对于本申请实施例,将抽取的数据通过数据帧的格式暂存至内存中之后,还可以执行步骤Sa以及步骤Sb。
对于本申请实施例,预设占用率可以由内存设置,或者由数据处理方设置。在本申请实施例中不做限定。
例如,预设占用率可以包括:70%、80%以及90%。
例如,预设占用率为80%,通过基于内存的管理API监测内存的占用率,当监测到内存的占用率大于80%时,控制展示内存中存储的数据帧,并基于用户的选择删除操作,选择待释放的数据帧,并进行释放;当监测到内存的占用率不大于80%,不做任何释放操作。
当然基于内存的管理API可以直接对在数据清洗处理、数据转换处理以及数据可视化处理过程中产生中间数据直接进行释放。
本申请实施例的另一种可能的实现方式,该方法还包括:步骤Sc(图中未示出),其中,
步骤Sc、当监测到用户针对内存中存储的数据的选择删除操作,通过基于内存的管理API确定内存中待释放的数据,并进行释放。
对于本申请实施例,当基于内存的管理API并未检测到内存的占用率大于预设占用率,但是监测到用户针对内存中存储的数据的选择删除操作时,通过基于内存的管理API确定用户选择删除的数据,并释放这些用户选择删除的数据。
本申请实施例的另一种可能的实现方式,基于确定出的基于内存的抽取API,对待处理的源数据进行数据抽取处理,包括:基于确定出的基于内存的抽取API获取待进行数据抽取的数据量;基于确定出的基于内存的抽取API,按照待进行数据抽取的数据量对待处理的源数据进行数据抽取处理。
其中,待进行数据抽取的数据量是基于内存当前的占用率确定的。
对于本申请实施例,根据内存的使用状况例如占用率反馈至基于内存的抽取API,以使得基于内存的抽取API动态调整从数据源中抽取源数据的大小。
对于本申请实施例,若内存当前的占用率较高,则基于内存的抽取API从数据源中可以抽取较少的数据,若内存当前的占用率较低,则基于内存的抽取API从数据源中可以抽取较多的数据。
上述实施例从方法流程的角度介绍了数据处理方法,下述实施例从虚拟模块或者虚拟单元的角度介绍了数据处理装置,具体详见下述实施例,其中,
本申请实施例提供了一种数据处理装置,如图2所示,该数据处理装置20可以包括:第一确定模块21、处理模块22,其中,
第一确定模块21,用于确定待处理的源数据;
处理模块22,用于通过基于内存的应用程序编程接口API对待处理的源数据进行ETL处理;
其中,ETL处理包括以下至少一项:
数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。
本申请实施例的一种可能的实现方式,处理模块22在通过基于内存的API对待处理的源数据进行数据抽取处理时,具体用于:
基于待处理的源数据的数据源信息,确定基于内存的抽取API,基于确定出的基于内存的抽取API,对待处理的源数据进行数据抽取处理;
其中,待处理的源数据的数据源信息不同对应的基于内存的抽取API也不相同。
本申请实施例的另一种可能的实现方式,该装置20还包括:暂存模块,其中,
暂存模块,用于将抽取的数据通过数据帧的格式暂存至内存中。
本申请实施例的另一种可能的实现方式,处理模块22,在通过基于内存的应用程序编程接口API对待处理的源数据进行数据清洗处理时,具体用于:
从暂存至内存的数据中确定待进行数据清洗处理的数据;通过基于内存的清洗处理API对待进行数据清洗处理的数据进行数据清洗处理。
本申请实施例的另一种可能的实现方式,处理模块22,在通过基于内存的应用程序编程接口API对待处理的源数据进行数据转换处理时,具体用于:
通过基于内存的数据转换处理API对暂存至内存的数据进行数据转换处理;或者,通过基于内存的数据转换处理API对数据清洗处理后的数据进行数据转换处理。
本申请实施例的另一种可能的实现方式,处理模块22在通过基于内存的应用程序编程接口API对待处理的源数据进行数据可视化处理时,具体用于:
通过基于内存的数据可视化处理API对暂存至内存的数据进行数据可视化处理;或者,通过基于内存的数据可视化处理API对数据清洗处理后的数据进行数据可视化处理;或者,通过基于内存的数据可视化处理API对数据转换处理后的数据进行数据可视化处理。
本申请实施例的另一种可能的实现方式,处理模块22在通过基于内存的应用程序编程接口API对待处理的源数据进行数据可视化处理,具体用于:
通过基于内存的数据存储处理API将暂存至内存的数据存储至数据存储系统;或者,通过基于内存的数据存储处理API将数据清洗处理后的数据存储至数据存储系统;或者,通过基于内存的数据存储处理API对数据转换处理后的数据存储至数据存储系统;或者,通过基于内存的数据存储处理API对数据可视化处理后的数据存储至数据存储系统。
本申请实施例的另一种可能的实现方式,该装置20还包括:监测模块、控制显示模块、第二确定模块以及第一释放模块,其中,
监测模块,用于通过基于内存的管理API监测内存的占用率;
控制显示模块,用于当监测到内存的占用率大于预设占用率时,通过基于内存的管理API控制显示内存中存储的数据;
第二确定模块,用于通过基于内存的管理API并基于用户针对内存中存储的数据的选择删除操作,确定待释放的数据;
第一释放模块,用于通过基于内存的管理API释放待释放的数据。
本申请实施例的另一种可能的实现方式,该装置20还包括:第三确定模块以及第二释放模块,其中,
第三确定模块,用于当监测到用户针对内存中存储的数据的选择删除操作,通过基于内存的管理API确定内存中待释放的数据;
对于本申请实施例,第一确定模块21、第二确定模块以及第三确定模块可以均为相同的确定模块,也可以均为不同的确定模块,或者任意两个为相同的确定模块。在本申请实施例中不做限定。
第二释放模块,用于基于内存的管理API释放内存中待释放的数据。
对于本申请实施例,第一释放模块与第二释放模块可以为相同的模块,也可以为不同的模块,在本申请实施例中不做限定。
本申请实施例的另一种可能的实现方式,处理模块22在基于确定出的基于内存的抽取API,对待处理的源数据进行数据抽取处理时,具体用于:
基于确定出的基于内存的抽取API获取待进行数据抽取的数据量,基于确定出的基于内存的抽取API,按照待进行数据抽取的数据量对待处理的源数据进行数据抽取处理。
其中,待进行数据抽取的数据量是基于内存当前的占用率确定的。
本申请实施例提供了一种数据处理装置,与现有技术中通过多种ETL工具组装使用对数据进行处理相比,本申请实施例确定待处理的源数据,通过基于内存的应用程序编程接口API对待处理的源数据进行ETL处理;其中,ETL处理包括以下至少一项:数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。即本申请实施例中通过在内存中对数据进行数据抽取处理、数据清洗处理、数据可视化处理以及数据存储处理,不需要在每次处理之后先对数据进行落地保存,并且也不需要在进行每次操作之前重新读取数据,从而可以降低数据处理耗时,提高数据处理效率,进而可以提升用户体验。
本实施例的数据处理装置可执行本申请方法实施例所示的数据处理方法,其实现原理相类似,此处不再赘述。
上述实施例从方法流程的角度介绍了数据处理方法,以及从虚拟模块以及虚拟单元的角度介绍了数据处理装置,下述介绍一种电子设备,用于执行上述方法实施例所示的数据处理方法,具体如下所示:
本申请实施例提供了一种电子设备,如图3所示,图3所示的电子设备3000包括:处理器3001和存储器3003。其中,处理器3001和存储器3003相连,如通过总线3002相连。可选地,电子设备3000还可以包括收发器3004。需要说明的是,实际应用中收发器3004不限于一个,该电子设备3000的结构并不构成对本申请实施例的限定。
处理器3001可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器3001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线3002可包括一通路,在上述组件之间传送信息。总线3002可以是PCI总线或EISA总线等。总线3002可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器3003可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器3003用于存储执行本申请方案的应用程序代码,并由处理器3001来控制执行。处理器3001用于执行存储器3003中存储的应用程序代码,以实现前述任一方法实施例所示的内容。
本申请实施例提供了一种电子设备,本申请实施例中的电子设备包括:存储器和处理器;至少一个程序,存储于所述存储器中,用于被所述处理器执行时,与现有技术相比可实现:本申请实施例确定待处理的源数据,通过基于内存的应用程序编程接口API对待处理的源数据进行ETL处理;其中,ETL处理包括以下至少一项:数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。即本申请实施例中通过在内存中对数据进行数据抽取处理、数据清洗处理、数据可视化处理以及数据存储处理,不需要在每次处理之后先对数据进行落地保存,并且也不需要在进行每次操作之前重新读取数据,从而可以降低数据处理耗时,提高数据处理效率,进而可以提升用户体验。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,本申请实施例确定待处理的源数据,通过基于内存的应用程序编程接口API对待处理的源数据进行ETL处理;其中,ETL处理包括以下至少一项:数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。即本申请实施例中通过在内存中对数据进行数据抽取处理、数据清洗处理、数据可视化处理以及数据存储处理,不需要在每次处理之后先对数据进行落地保存,并且也不需要在进行每次操作之前重新读取数据,从而可以降低数据处理耗时,提高数据处理效率,进而可以提升用户体验。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
确定待处理的源数据;
通过基于内存的应用程序编程接口API对所述待处理的源数据进行ETL处理;
其中,所述ETL处理包括以下至少一项:
数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。
2.根据权利要求1所述的方法,其特征在于,通过基于内存的API对所述待处理的源数据进行数据抽取处理,包括:
基于待处理的源数据的数据源信息,确定基于内存的抽取API,待处理的源数据的数据源信息不同对应的基于内存的抽取API也不相同;
基于确定出的基于内存的抽取API,对所述待处理的源数据进行数据抽取处理。
3.根据权利要求1或2所述的方法,其特征在于,对所述待处理的源数据进行数据抽取处理,之后还包括:
将抽取的数据通过数据帧的格式暂存至内存中。
4.根据权利要求3所述的方法,其特征在于,通过基于内存的应用程序编程接口API对所述待处理的源数据进行数据清洗处理,包括:
从暂存至内存的数据中确定待进行数据清洗处理的数据;
通过基于内存的清洗处理API对待进行数据清洗处理的数据进行数据清洗处理。
5.根据权利要求4所述的方法,其特征在于,通过基于内存的应用程序编程接口API对所述待处理的源数据进行数据转换处理,包括任一项:
通过基于内存的数据转换处理API对暂存至内存的数据进行数据转换处理;
通过基于内存的数据转换处理API对数据清洗处理后的数据进行数据转换处理。
6.根据权利要求5所述的方法,其特征在于,通过基于内存的应用程序编程接口API对所述待处理的源数据进行数据可视化处理,包括任一项:
通过基于内存的数据可视化处理API对暂存至内存的数据进行数据可视化处理;
通过基于内存的数据可视化处理API对数据清洗处理后的数据进行数据可视化处理;
通过基于内存的数据可视化处理API对数据转换处理后的数据进行数据可视化处理。
7.根据权利要求6所述的方法,其特征在于,通过基于内存的应用程序编程接口API对所述待处理的源数据进行数据可视化处理,包括任一项:
通过基于内存的数据存储处理API将暂存至内存的数据存储至数据存储系统;
通过基于内存的数据存储处理API将数据清洗处理后的数据存储至所述数据存储系统;
通过基于内存的数据存储处理API对数据转换处理后的数据存储至所述数据存储系统;
通过基于内存的数据存储处理API对数据可视化处理后的数据存储至所述数据存储系统。
8.一种数据处理装置,其特征在于,包括:
第一确定模块,用于确定待处理的源数据;
处理模块,用于通过基于内存的应用程序编程接口API对所述待处理的源数据进行ETL处理;
其中,所述ETL处理包括以下至少一项:
数据抽取处理;数据清洗处理;数据转换处理;数据可视化处理;数据存储处理。
9.一种电子设备,其特征在于,其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据权利要求1~7任一项所述的数据处理方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1~7任一所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910959125.XA CN110704527A (zh) | 2019-10-10 | 2019-10-10 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910959125.XA CN110704527A (zh) | 2019-10-10 | 2019-10-10 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110704527A true CN110704527A (zh) | 2020-01-17 |
Family
ID=69200101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910959125.XA Pending CN110704527A (zh) | 2019-10-10 | 2019-10-10 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110704527A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102270235A (zh) * | 2011-08-01 | 2011-12-07 | 中国民生银行股份有限公司 | 数据仓库的查询处理方法及装置 |
CN106021484A (zh) * | 2016-05-18 | 2016-10-12 | 中国电子科技集团公司第三十二研究所 | 基于内存计算的可定制多模式大数据处理系统 |
US20170092060A1 (en) * | 2015-09-25 | 2017-03-30 | Bally Gaming, Inc. | Unified digital wallet |
CN107784026A (zh) * | 2016-08-31 | 2018-03-09 | 杭州海康威视数字技术股份有限公司 | 一种etl数据处理方法及装置 |
CN109254989A (zh) * | 2018-08-27 | 2019-01-22 | 北京东软望海科技有限公司 | 一种基于元数据驱动的弹性etl架构设计的方法及装置 |
-
2019
- 2019-10-10 CN CN201910959125.XA patent/CN110704527A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102270235A (zh) * | 2011-08-01 | 2011-12-07 | 中国民生银行股份有限公司 | 数据仓库的查询处理方法及装置 |
US20170092060A1 (en) * | 2015-09-25 | 2017-03-30 | Bally Gaming, Inc. | Unified digital wallet |
CN106021484A (zh) * | 2016-05-18 | 2016-10-12 | 中国电子科技集团公司第三十二研究所 | 基于内存计算的可定制多模式大数据处理系统 |
CN107784026A (zh) * | 2016-08-31 | 2018-03-09 | 杭州海康威视数字技术股份有限公司 | 一种etl数据处理方法及装置 |
CN109254989A (zh) * | 2018-08-27 | 2019-01-22 | 北京东软望海科技有限公司 | 一种基于元数据驱动的弹性etl架构设计的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11120026B1 (en) | System and method for executing queries on multi-graphics processing unit systems | |
CN109299164B (zh) | 一种数据查询方法、计算机可读存储介质及终端设备 | |
TWI603211B (zh) | Construction of inverted index system based on Lucene, data processing method and device | |
WO2017096892A1 (zh) | 索引构建方法、查询方法及对应装置、设备、计算机存储介质 | |
US11030196B2 (en) | Method and apparatus for processing join query | |
CN102129425B (zh) | 数据仓库中大对象集合表的访问方法及装置 | |
CN104111936B (zh) | 数据查询方法和系统 | |
CN106909554B (zh) | 一种数据库文本表数据的加载方法及装置 | |
CN104331421A (zh) | 一种大数据的高效处理方法及系统 | |
WO2017161540A1 (zh) | 数据查询的方法、数据对象的存储方法和数据系统 | |
CN116955361A (zh) | 存储器内密钥范围搜索方法和系统 | |
US20150149437A1 (en) | Method and System for Optimizing Reduce-Side Join Operation in a Map-Reduce Framework | |
CN102915344B (zh) | 一种sql语句处理方法及装置 | |
CN113238843B (zh) | 一种任务执行方法、装置、设备及存储介质 | |
CN103927263A (zh) | 垃圾回收方法和装置 | |
CN110389967A (zh) | 数据存储方法、装置、服务器及存储介质 | |
US10572462B2 (en) | Efficient handling of sort payload in a column organized relational database | |
CN109416688B (zh) | 用于灵活的高性能结构化数据处理的方法和系统 | |
US20160188687A1 (en) | Metadata extraction, processing, and loading | |
KR20180077830A (ko) | 비공유 아키텍처 기반의 분산 스트림 처리 엔진에서 관계형 질의를 처리하는 방법, 이를 수행하기 위한 기록 매체 및 장치 | |
CN109597826A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN110704527A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
US11709798B2 (en) | Hash suppression | |
CN113806071B (zh) | 一种边缘计算应用的数据同步方法与系统 | |
CN113641670B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 801-2, floor 8, building 3, No. 22, Ronghua Middle Road, Beijing Economic and Technological Development Zone, Daxing District, Beijing Applicant after: Wanghai Kangxin (Beijing) Technology Co.,Ltd. Address before: Room 07, Room 2, Building B, 12 Hongda North Road, Beijing Daxing District, Beijing Applicant before: BEIJING NEUSOFT VIEWHIGH TECHNOLOGY Co.,Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200117 |