数据处理方法、装置、设备和存储介质制造方法及图纸

技术编号:20763945 阅读:27 留言:0更新日期:2019-04-03 14:19
本发明专利技术实施例公开了一种数据处理方法、装置、设备和存储介质,该方法包括:实时获取至少一个数据源的数据,数据中包括数据类型;根据数据的存储形式和数据类型,对数据进行格式转换;根据数据类型,对格式转换后的数据进行清洗。本发明专利技术实施例提高了实时性,保证数据的吞吐量、完整性的基础上实现了数据的清洗。

【技术实现步骤摘要】
数据处理方法、装置、设备和存储介质
本专利技术实施例涉及数据处理
,尤其涉及一种数据处理方法、装置、设备和存储介质。
技术介绍
对于专业分析数据的企业来说,每天都会接收到大量的数据。这些数据来源可能多种多样,不同的数据来源可能会映射到企业相同或不同的表中。这些数据要想被使用,必须先进行数据清洗工作。数据清洗的目的是经过一系列清洗过程把来源数据存放到目的表中,并保证数据尽可能的干净,有用。大部分数据清洗是按照固定的时间间隔进行数据的清洗,这样方式会导致数据不具备实时性或实时性差(如果时间间隔很小)。在很多业务场景中,需要对数据更加精准和更加快速的进行分析、预警,这就对数据清洗的实时性要求更高。
技术实现思路
本专利技术实施例提供一种数据处理方法、装置、设备和存储介质,可以解决现有技术中实时性差的技术问题。第一方面,本专利技术实施例提供了一种数据处理方法,包括:实时获取至少一个数据源的数据,所述数据中包括数据类型;根据所述数据的存储形式和所述数据类型,对所述数据进行格式转换;根据所述数据类型,对格式转换后的数据进行清洗。第二方面,本专利技术实施例还提供了一种数据处理装置,该装置包括:获取模块,用于实时获取至少一个数据源的数据,所述数据中包括数据类型;转换模块,用于根据所述数据的存储形式和所述数据类型,对所述数据进行格式转换;清洗模块,用于根据所述数据类型,对格式转换后的数据进行清洗。第三方面,本专利技术实施例还提供了一种设备,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的数据处理方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的数据处理方法。本专利技术实施例通过实时获取至少一个数据源的数据,数据中包括数据类型,根据所述数据的存储形式和数据类型,对数据进行格式转换,并根据数据类型对格式转换后的数据进行清洗。本专利技术实施例的数据清洗通过Flink处理引擎实现,可以实时处理获取到的数据,提高了实时性,保证数据的吞吐量、完整性的基础上实现了数据的清洗。附图说明图1为本专利技术实施例一中的数据处理方法的流程图;图2为本专利技术实施例一中的数据处理示意图;图3为本专利技术实施例二中的数据处理方法的流程图;图4为本专利技术实施例三中的数据处理方法的流程图;图5为本专利技术实施例四中的数据处理装置的结构示意图;图6为本专利技术实施例五中的设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一中的数据处理方法的流程图,本实施例可适用于实现数据处理的情况,该方法可以由数据处理装置执行,该装置可以采用软件和/或硬件的方式实现,例如,该装置可配置于设备中。本实施例中的数据处理方法针对的来源数据复杂多样,具体参见图2,图2为本专利技术实施例一中的数据处理示意图,图2中数据来源包括数据源1、数据源2、数据源3等等多个数据源,通过数据处理装置获取多个数据源的数据,经过清洗处理存储进目的数据源中。数据处理装置可以配置于目的数据源中,也可以单独作为一个装置对数据进行处理。如图1所示,该方法具体可以包括:S110、实时获取至少一个数据源的数据,数据中包括数据类型。其中,数据源的具体类型本实施例不作限定,例如数据源可以为不同公司。不同数据源的数据可以是多种多样的,获取的数据中包括数据的不同属性,例如包括数据类型或者数据格式等等。在本实施例中,对于实时的至少一个数据源的数据,利用Kafka分布式消息队列提供数据缓存,并通过Flink处理引擎中的sink端获取Kafka分布式消息队列中的数据。Flink是一个高效的基于内存计算的分布式数据处理引擎,目标是统一不同来源的数据处理。Flink的核心是一个流式数据流引擎,提供了数据流的分布式数据分布、通信和容错功能,具有高效、可靠、可扩展等特性。Kafka是一种高吞吐量的分布式消息队列,具有高可用性和数据存储能力,适用于批量流式数据的处理。S120、根据数据的存储形式和数据类型,对数据进行格式转换。其中,数据的存储形式包括目的数据源指定的统一标准和数据格式。目的数据源中的数据可以通过目的表的表结构进行存储,即目的表针对不同的数据类型(即不同的数据源)会设置一个统一的标准,该标准可以根据数据类型的更新进行更新。示例性的,当数据源为外卖公司时,对于获取到的外卖数据制定了一个目的表的标准,但是经过一段时间后外卖数据的表结构由于技术或业务原因有了更多的字段,则目的表中就需要给外卖数据对应的标准中新增字段。数据格式为数据源中的数据的存储格式,该数据格式的具体类型本实施例不作限定,例如为二进制数据。具体的,根据数据类型确定对应的标准和数据格式,根据确定的标准和数据格式进行格式转换。示例性的,如果数据为性别数据以及数据格式为数字,数据内容是“男”,则可以将“男”转换为“01”,数据内容是“女”,则可以将“女”转换为“02”。可选地,对数据进行格式转换之后,还包括:根据预先建立的映射关系存储格式转换后的数据。当数据源和目的数据源中的数据均通过表结构进行存储时,数据源的数据称为来源表,目的数据源的数据称为目的表,则可以预先建立来源表与目的表之间的映射关系,并对数据进行格式转换之后根据该映射关系将格式转换后的数据存储进目的表中。S130、根据数据类型,对格式转换后的数据进行清洗。其中,清洗为对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并保证数据真实性、完整性和一致性。可选地,对格式转换后的数据进行清洗,包括:对格式转换后的数据进行全局去重以及根据预设字段进行过滤,得到清洗数据。其中全局去重和过滤这两个步骤的顺序不作限定,可以先进行全局去重再进行过滤,也可以先进行过滤再进行全局去重。清洗数据为对格式转换后的数据进行全局去重和过滤之后的数据。对格式转换后的数据根据预设字段进行过滤,其中预设字段可以根据需要进行设置。示例性的,若数据为邮件数据,则预设字段可以为垃圾邮件的字段,根据该垃圾邮件的字段对邮件数据进行过滤。对格式转换后的数据进行全局去重,包括:基于基数估算方法或者布隆过滤算法计算格式转换后的数据的重复率;根据重复率以及预设去重要求对格式转换后的数据进行全局去重。其中,基数估算方法是基于FlinkDataStream的基数估算方法,是一种排重值算法,主要思想是将数据转化为哈希值,采用基于概率的基数估计(例如HyperLogLog)计算重复率。布隆过滤算法是一种空间效率很高的随机数据结构,可以利用位数组很简洁地表示一个数据或集合。预设去重要求为具体的去重方式或规则,预设去重要求与数据类型对应,不同的数据类型对应的预设去重要求不同,预设去重要求的具体内容可以根据需要进行设置。例如,若数据为轨迹数据,预设去重要求可以为间隔第一时间对除时间字段外相同的数据进行去重,第一时间为很短的时间,例如为0.1秒。示例性的,若采用布隆过滤算法计算格式转换后的数据的重复率,具体过程可本文档来自技高网...

【技术保护点】
1.一种数据处理方法,其特征在于,包括:实时获取至少一个数据源的数据,所述数据中包括数据类型;根据所述数据的存储形式和所述数据类型,对所述数据进行格式转换;根据所述数据类型,对格式转换后的数据进行清洗。

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:实时获取至少一个数据源的数据,所述数据中包括数据类型;根据所述数据的存储形式和所述数据类型,对所述数据进行格式转换;根据所述数据类型,对格式转换后的数据进行清洗。2.根据权利要求1所述的方法,其特征在于,所述对格式转换后的数据进行清洗,包括:对所述格式转换后的数据进行全局去重以及根据预设字段进行过滤,得到清洗数据。3.根据权利要求2所述的方法,其特征在于,对所述格式转换后的数据进行全局去重,包括:基于基数估算方法或者布隆过滤算法计算所述格式转换后的数据的重复率;根据所述重复率以及预设去重要求对所述格式转换后的数据进行全局去重。4.根据权利要求2所述的方法,其特征在于,对所述格式转换后的数据进行全局去重以及根据预设字段进行过滤,得到清洗数据之后,还包括:提取所述清洗数据中两条或两条以上关联的数据的各关键字段;间隔预设时间间隔将各所述关键字段互相回填入所述两条或两条以上关联的数据。5.根据权利要求2所述的方法,其特征在于,对所述格式转换后的数据进行全局去重以及根据预设字段进行过滤,得到清洗数...

【专利技术属性】
技术研发人员:张志远万月亮李佳昌
申请(专利权)人:北京锐安科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1