CN111400390B - 数据处理方法及装置 - Google Patents

数据处理方法及装置 Download PDF

Info

Publication number
CN111400390B
CN111400390B CN202010270178.3A CN202010270178A CN111400390B CN 111400390 B CN111400390 B CN 111400390B CN 202010270178 A CN202010270178 A CN 202010270178A CN 111400390 B CN111400390 B CN 111400390B
Authority
CN
China
Prior art keywords
data
processing
queue
processed
storage system
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.)
Active
Application number
CN202010270178.3A
Other languages
English (en)
Other versions
CN111400390A (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.)
Dongpu Software Co Ltd
Original Assignee
Dongpu Software 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 Dongpu Software Co Ltd filed Critical Dongpu Software Co Ltd
Priority to CN202010270178.3A priority Critical patent/CN111400390B/zh
Publication of CN111400390A publication Critical patent/CN111400390A/zh
Application granted granted Critical
Publication of CN111400390B publication Critical patent/CN111400390B/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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/217Database tuning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2219Large Object storage; Management thereof
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了数据处理方法及装置、电子设备、计算机存储介质,将存储系统中的数据存入待处理队列;将所述待处理队列中的数据组合成一个或多个数据集合;每个所述数据集合包括多条数据;调用接口,批量处理所述数据集合中的数据。将数据信息的处理从同步改成异步,从存储系统中读取数据并插入待处理队列中,将待处理队列中的数据组合成多条数据的数据集合,调用接口批量处理数据集合中的数据,由此大大减少了调用接口的次数,减小数据库压力,提高单位时间的数据处理量,提高数据处理效率,满足数据处理的时效性需求,可提升CPU使用率、系统稳定性及数据安全性,让系统稳定、高效、有序地处理海量数据,每天稳定处理巨大的数据量。

Description

数据处理方法及装置
技术领域
本申请涉及数据处理技术领域,尤其涉及数据处理方法及装置、电子设备、计算机存储介质。
背景技术
现今大数据时代,物流、电商、互联网等行业经常面临处理海量数据的情况,在对海量数据进行处理的过程中,往往需要考虑处理数据时数据重复及高并发等情况,通常做法是遍历导入数据,查询数据库去重后,将数据存入数据库中,然后再次遍历数据进行数据处理,最后将处理后的数据和数据结果储存起来。
现有技术在对数据进行处理的过程中,大多是针对单条数据进行处理,通常处理每条数据都需要调用一次接口,数据量越大时给数据库造成的压力越大。随着业务快速发展,需要处理的数据越来越多,频繁的查库去重、单位时间的数据处理量剧增、数据处理时效性的苛刻要求,都对技术、甚至数据隐私安全,带来巨大的考验。
发明内容
本申请的目的在于提供数据处理方法及装置、电子设备、计算机存储介质,解决现有技术的不足,对数据进行批量处理,调用一次接口处理多条数据,减少调用接口的次数,减小数据库压力,克服因单位时间内导入数据量过大导致数据处理超时的问题。
本申请的目的采用以下技术方案实现:
第一方面,本申请提供了一种数据处理方法,所述方法包括:
将存储系统中的数据存入待处理队列;
将所述待处理队列中的数据组合成一个或多个数据集合;每个所述数据集合包括多条数据;
调用接口,批量处理所述数据集合中的数据。
将数据信息的处理从同步改成异步,从直接操作存储系统改为对待处理队列中的数据进行处理,从存储系统中读取数据并插入待处理队列中,将待处理队列中的数据组合成多条数据的数据集合,调用接口批量处理数据集合中的数据,由此大大减少了调用接口的次数,减小数据库压力,提高单位时间的数据处理量,提高数据处理效率,满足数据处理的时效性需求,将该方法应用于数据处理系统,可提升CPU使用率、系统稳定性及数据安全性,让系统稳定、高效、有序地处理海量数据,每天稳定处理巨大的数据量。
可选地,所述调用接口,批量处理所述数据集合中的数据,包括:
调用所述接口,通过多个进程批量处理所述数据集合中的数据。
开启多进程消耗待处理队列中的数据,提高单位时间的数据处理效率。
可选地,所述方法还包括:
将处理失败的数据重新存入所述待处理队列并延时处理。
将处理失败的数据重新插入去重后的数据中,由此开启一个循环处理,保证处理失败的数据能够被再次处理。采用延时处理,避免出现上一批次数据卡顿未处理完成,异步程序调用下一批次数据,两段程序处理数据库同一条数据时造成锁表的情况。
可选地,所述方法还包括:
将处理失败的数据对应的错误类型存储至所述存储系统。
对处理失败的错误类型进行记录,便于了解处理失败的原因以及有针对性地根据错误类型解决处理失败的情况。
可选地,所述方法还包括:
将处理成功的数据在所述存储系统中的处理状态调整为处理成功;
将处理失败的数据在所述存储系统中的处理状态调整为处理失败。
根据数据的处理结果更新存储系统中对应数据的处理状态,便于用户通过存储系统中的数据处理状态了解数据的处理情况,在存储系统中查询数据的当前处理状态。
可选地,所述方法还包括:
将数据导入待存储队列;
若所述存储系统中不存在所述待存储队列中的数据对应的标识,则将所述待存储队列中的数据存储至所述存储系统,并将所述待存储队列中的数据在所述存储系统中的处理状态设置为未处理。
将数据信息的存储从同步改成异步,数据并非直接存储到存储系统,而是将海量数据存储到待存储队列中以加快导入数据的处理速度,将待存储队列中的数据与存储系统进行查重处理以减少进入待处理队列的数据,将去重后的数据存入存储系统进入后续的数据处理阶段。
可选地,所述方法还包括:
通过多个进程判断所述存储系统中是否存在所述待存储队列中的数据对应的标识。
开启多进程消耗待存储队列中的数据,提高单位时间的数据存储效率。
可选地,所述方法还包括:
将出现异常导致存储失败的数据重新存入所述待存储队列并延时处理。
发生系统异常、网络异常等情况都有可能会出现实际已经成功,但是返回失败的情况,提供异常处理机制,出现异常后将异常数据重新推送入待存储队列中。采用延时处理,避免出现上一批次数据卡顿未处理完成,异步程序调用下一批次数据,两段程序处理数据库同一条数据时造成锁表的情况。
可选地,所述将存储系统中的数据存入待处理队列,包括:
将所述存储系统中处理状态是未处理或者处理失败的数据存入所述待处理队列。
存储系统中的数据并非全都进入待处理队列,而是经过处理状态的筛选,使得处理状态为未处理或者处理失败的数据进入待处理队列,由此减少进入待处理队列的数据量,避免处理成功的数据浪费计算资源做无用功。
第二方面,本申请提供了一种数据处理装置,所述数据处理装置包括:
处理存入模块,用于将存储系统中的数据存入待处理队列;
数据组合模块,用于将所述待处理队列中的数据组合成一个或多个数据集合;每个所述数据集合包括多条数据;
批量处理模块,用于调用接口,批量处理所述数据集合中的数据。
可选地,所述批量处理模块用于调用所述接口,通过多个进程批量处理所述数据集合中的数据。
可选地,所述数据处理装置还包括处理再存模块,用于将处理失败的数据重新存入所述待处理队列并延时处理。
可选地,所述数据处理装置还包括错误存储模块,用于将处理失败的数据对应的错误类型存储至所述存储系统。
可选地,所述数据处理装置还包括状态调整模块,所述状态调整模块包括:
成功调整单元,用于将处理成功的数据在所述存储系统中的处理状态调整为处理成功;
失败调整单元,用于将处理失败的数据在所述存储系统中的处理状态调整为处理失败。
可选地,所述数据处理装置还包括数据导入模块和数据存储模块;
所述数据导入模块用于将数据导入待存储队列;
所述数据存储模块用于若所述存储系统中不存在所述待存储队列中的数据对应的标识,则将所述待存储队列中的数据存储至所述存储系统,并将所述待存储队列中的数据在所述存储系统中的处理状态设置为未处理。
可选地,所述数据处理装置还包括去重判断模块,用于通过多个进程判断所述存储系统中是否存在所述待存储队列中的数据对应的标识。
可选地,所述数据处理装置还包括存储再存模块,用于将出现异常导致存储失败的数据重新存入所述待存储队列并延时处理。
可选地,所述处理存入模块用于将所述存储系统中处理状态是未处理或者处理失败的数据存入所述待处理队列。
第三方面,本申请提供了一种电子设备,包括处理器和存储器,所述处理器执行所述存储器存储的计算机指令,使得所述电子设备执行上述任一项数据处理方法。
第四方面,本申请提供了一种计算机存储介质,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行上述任一项数据处理方法。
与现有技术相比,本申请的技术效果包括:
本申请公开了数据处理方法及装置、电子设备、计算机存储介质,将数据信息的处理从同步改成异步,从直接操作存储系统改为对待处理队列中的数据进行处理,从存储系统中读取数据并插入待处理队列中,将待处理队列中的数据组合成多条数据的数据集合,调用接口批量处理数据集合中的数据,由此大大减少了调用接口的次数,减小数据库压力,提高单位时间的数据处理量,提高数据处理效率,满足数据处理的时效性需求,将该方法应用于数据处理系统,可提升CPU使用率、系统稳定性及数据安全性,让系统稳定、高效、有序地处理海量数据,每天稳定处理巨大的数据量。
附图说明
下面结合附图和实施例对本申请进一步说明。
图1是第一实施例提供的数据处理方法的一种流程示意图;
图2是数据去重及处理机制的一种流程示意图;
图3是数据处理机制的一种流程示意图;
图4是第二实施例提供的数据处理方法的一种流程示意图;
图5是第三实施例提供的数据处理方法的一种流程示意图;
图6是第四实施例提供的数据处理方法的一种流程示意图;
图7是第五实施例提供的数据处理方法的一种流程示意图;
图8是第六实施例提供的数据处理方法的一种流程示意图;
图9是数据去重机制的一种流程示意图;
图10是第七实施例提供的数据处理方法的一种流程示意图;
图11是第八实施例提供的数据处理方法的一种流程示意图;
图12是第九实施例提供的数据处理方法的一种流程示意图;
图13是第十实施例提供的数据处理方法的一种流程示意图;
图14是第十一实施例提供的数据处理装置10的一种结构示意图;
图15是图14中状态调整模块106的一种结构示意图;
图16是第十二实施例提供的数据处理系统的一种结构示意图。
图中:10、数据处理装置;101、处理存入模块;102、数据组合模块;103、批量处理模块;104、处理再存模块;105、错误存储模块;106、状态调整模块;1061、成功调整单元;1062、失败调整单元;107、数据导入模块;108、数据存储模块;109、去重判断模块;110、存储再存模块;20、第一缓存系统;30、存储系统;40、第二缓存系统;50、处理系统。
具体实施方式
下面,结合附图以及具体实施方式,对本申请做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
参见图1至图3,第一实施例提供了一种数据处理方法,所述方法包括步骤S100~S300。
本实施例中的数据处理方法可以应用于物流、电商、互联网等行业的数据处理系统或者其他需要对海量数据进行处理的场景。
步骤S100:将存储系统中的数据存入待处理队列。
所述存储系统可以是pika数据库或者redis数据库。数据的类型例如是运单数据、订单数据、咨询需求数据等。具体地,可以根据存储系统中的主键分批读取存储系统中的数据并推送到待处理队列中。引入待处理队列,将数据处理的单流程分解为多阶段流程,通过缓存队列的方式,将高峰压力缓解到多时段,缓解系统高峰压力。
步骤S200:将所述待处理队列中的数据组合成一个或多个数据集合;每个所述数据集合包括多条数据。
每个数据集合中的数据数量可以是相同的,也可以是不同的。例如每个数据集合中的数据数量可以是50条或者100条。
具体地,步骤S200可以包括:将所述待处理队列中的数据按时间顺序组合成一个或多个数据集合;每个所述数据集合包括多条数据。按照时间顺序处理数据,贴近实际应用中对时效性的需求。
步骤S300:调用接口,批量处理所述数据集合中的数据。
数据处理例如是查询运单对应的网点或者物流信息、查询订单对应的卖家、查询投诉工单对应的员工工号等。例如在调用接口查询运单对应的网点时,可以批量查询一个运单集合中的50个运单对应的网点。
具体地,所述步骤S300可以包括:调用所述接口,通过多个进程批量处理所述数据集合中的数据。开启多进程消耗待处理队列中的数据,增加处理速度,提高单位时间的数据处理效率。
将数据信息的处理从同步改成异步,从直接操作存储系统改为对待处理队列中的数据进行处理,从存储系统中读取数据并插入待处理队列中,将待处理队列中的数据组合成多条数据的数据集合,调用接口批量处理数据集合中的数据,由此大大减少了调用接口的次数,减小数据库压力,提高单位时间的数据处理量,提高数据处理效率,满足数据处理的时效性需求,将该方法应用于数据处理系统,可提升CPU使用率、系统稳定性及数据安全性,让系统稳定、高效、有序地处理海量数据,每天稳定处理巨大的数据量。
参见图4,第二实施例提供了一种数据处理方法,在第一实施例的基础上,所述方法还包括步骤S400:将处理失败的数据重新存入所述待处理队列并延时处理。
将处理失败的数据重新插入去重后的数据中,由此开启一个循环处理,保证处理失败的数据能够被再次处理。采用延时处理,避免出现上一批次数据卡顿未处理完成,异步程序调用下一批次数据,两段程序处理数据库同一条数据时造成锁表的情况。
参见图5,第三实施例提供了一种数据处理方法,在第一实施例的基础上,所述方法还包括步骤S500:将处理失败的数据对应的错误类型存储至所述存储系统。
对处理失败的错误类型进行记录,便于了解处理失败的原因以及有针对性地根据错误类型解决处理失败的情况。
参见图6,第四实施例提供了一种数据处理方法,在第一实施例的基础上,所述方法还包括步骤S610~S620。
步骤S610:将处理成功的数据在所述存储系统中的处理状态调整为处理成功。
步骤S620:将处理失败的数据在所述存储系统中的处理状态调整为处理失败。
根据数据的处理结果更新存储系统中对应数据的处理状态,便于用户通过存储系统中的数据处理状态了解数据的处理情况,在存储系统中查询数据的当前处理状态。
参见图7,第五实施例提供了一种数据处理方法,在第一实施例的基础上,步骤S300可以包括:根据所述数据集合中的数据的数据类型选择所述数据类型对应的处理规则,调用所述接口,批量处理所述数据集合中的数据。
例如用该数据处理方法来查询运单对应的网点时,A类型数据的处理规则可以包括步骤R1~R7。
步骤R1:根据运单号规则判断运单是否为A类型。
A类型例如是韵达自有运单、菜鸟面单、普通电子面单等。
步骤R2:如果是,将运单组合成多个集合,例如可以将运单1至运单50组合为集合1,运单51至运单100组合为集合2,以此类推;再使用运单集合查询运单的所属公司。由此可以大幅减少查询次数,减少信息交互次数以提高效率。
步骤R3:遍历步骤R2中得到的所属公司,判断导入运单的账号与每个运单的所属网点的关系。若账号与运单所属网点不匹配,则记录返回错误类型,并在存储系统中更新该运单的处理状态。
步骤R4:根据匹配成功的所属网点,获取所属网点的权限状态,当公司为欠费网点等无权限网点时,记录返回错误类型,并在存储系统中更新该运单的处理状态。
步骤R5:当运单集合中的运单对应的网点都通过有效性校验时,将查询到的网点分批次推送至下游使用,记录推送返回类型,并在存储系统中更新该运单的处理状态。
步骤R6:在步骤R3~R5中,对存储系统中运单的处理状态的更新是分批更新。
步骤R7:对上述步骤中的异常数据进行记录,供后续业务人员或开发人员分析查看。
参见图8和图9,第六实施例提供了一种数据处理方法,在第四实施例的基础上,所述方法还包括步骤S710~S720。
步骤S710:将数据导入待存储队列。
该步骤可以将外部数据导入待存储队列。引入待存储队列,将数据存储的单流程分解为多阶段流程,通过缓存队列的方式,将高峰压力缓解到多时段,缓解系统高峰压力。
步骤S720:若所述存储系统中不存在所述待存储队列中的数据对应的标识,则将所述待存储队列中的数据存储至所述存储系统,并将所述待存储队列中的数据在所述存储系统中的处理状态设置为未处理。
数据处理前需要对数据进行去重,防止重复处理导致结果混乱。数据对应的标识可以是运单号、订单号、咨询工单号等,例如可以根据数据中运单号的唯一性,将运单号存入存储系统中。如果存储系统中表的主键id存储在一个文件,则读取该文件中的主键id,就可以分批读取存储系统中的数据,根据存储系统的唯一值(例如是运单号、订单号等)进行去重,以减少进入待处理队列的数据。
将数据信息的存储从同步改成异步,数据并非直接存储到存储系统,而是将海量数据存储到待存储队列中以加快导入数据的处理速度,将待存储队列中的数据与存储系统进行查重处理以减少进入存储系统的数据,将去重后的数据存入存储系统进入后续的数据处理阶段。
参见图10,第七实施例提供了一种数据处理方法,在第六实施例的基础上,所述方法还包括步骤S730:通过多个进程判断所述存储系统中是否存在所述待存储队列中的数据对应的标识。
开启多进程消耗待存储队列中的数据,增加处理速度,提高单位时间的数据存储效率。
参见图11,第八实施例提供了一种数据处理方法,在第六实施例的基础上,所述方法还包括步骤S740:将出现异常导致存储失败的数据重新存入所述待存储队列并延时处理。
发生系统异常、网络异常等情况都有可能会出现实际已经成功,但是返回失败的情况,提供异常处理机制,出现异常后将异常数据重新推送入待存储队列中。采用延时处理,避免出现上一批次数据卡顿未处理完成,异步程序调用下一批次数据,两段程序处理数据库同一条数据时造成锁表的情况。
进一步优选地,所述步骤S740可以包括:对出现异常导致存储失败的数据进行标注并重新存入所述待存储队列。对存储失败的数据进行标注,便于后续针对发生过存储失败的数据进行进一步分析。
进一步优选地,所述步骤S740可以包括:将存储失败的数据对应的错误类型存储至所述存储系统;若存储失败的数据对应的错误类型是普通异常,则将出现异常导致存储失败的数据重新存入所述待存储队列并延时处理;若存储失败的数据对应的错误类型是特殊异常,则将出现异常导致存储失败的数据抛出以进行人工分析。由于数据不断写入存储系统,因此需要对存储系统中的数据进行过期处理,减少存储系统的数据量。
参见图12,第九实施例提供了一种数据处理方法,在第六实施例的基础上,所述步骤S100可以包括:将所述存储系统中处理状态是未处理或者处理失败的数据存入所述待处理队列。
存储系统中的数据并非全都进入待处理队列,而是经过处理状态的筛选,使得处理状态为未处理或者处理失败的数据进入待处理队列,由此减少进入待处理队列的数据量,避免处理成功的数据浪费计算资源做无用功。
参见图13,第十实施例提供了一种数据处理方法,包括步骤T100~T400。
步骤T100:将外部数据导入第一缓存系统的待存储队列。该步骤避免因存储速度的原因造成导入不及时。
步骤T200:通过处理系统多进程处理待存储队列中的数据,将待存储队列中的数据去重后存入存储系统。每个进程的生产脚本只负责单一的功能,不做其他逻辑处理,保证生产高效,能实时追上最新的数据,最大可能提高处理速度,减小造成的生产延迟;处理单一功能时,可以启动多个进程来处理,使数据处理更加高效可控。
步骤T300:将存储系统中的去重后数据存入第二缓存系统的待处理队列。
步骤T400:通过处理系统多进程处理待处理队列中的数据,得到结果数据并分批更新所处理的数据在存储系统中的处理状态,以及将处理失败的数据重新存入去重后数据并延时处理。运单采用分批更新,例如100条运单更新一次存储系统,由此降低存储系统压力。
其中,存储系统用于临时存储来自外部数据源的原始数据、经过海量数据处理机制处理后的去重数据和数据结果。第一缓存系统、第二缓存系统用于稳定、有序、高效地将数据释放出来。处理系统用于对原始数据和去重后数据进行处理,得到去重后数据和数据处理结果。将单流程分解为多阶段流程,并通过缓存队列以及多进程的方式,将高峰压力缓解到多时段,缓解系统高峰压力,增加处理速度,由此本实施例中的数据处理方法能胜任亿+级别的数据处理,高效、稳定、快速,经历双11、双12的考验,没有生产不及时或出现队列堆积的情况。
参见图14,第十一实施例提供了一种数据处理装置10,所述数据处理装置10包括处理存入模块101、数据组合模块102、批量处理模块103,处理存入模块101与数据组合模块102进行数据交互,数据组合模块102还与批量处理模块103进行数据交互。
处理存入模块101用于将存储系统中的数据存入待处理队列.
数据组合模块102用于将所述待处理队列中的数据组合成一个或多个数据集合;每个所述数据集合包括多条数据。
批量处理模块103用于调用接口,批量处理所述数据集合中的数据。
进一步优选地,所述批量处理模块103可以用于调用所述接口,通过多个进程批量处理所述数据集合中的数据。
进一步优选地,继续参见图14,所述数据处理装置10还可以包括处理再存模块104,用于将处理失败的数据重新存入所述待处理队列并延时处理。处理再存模块104与批量处理模块103进行数据交互。
进一步优选地,继续参见图14,所述数据处理装置10还可以包括错误存储模块105,用于将处理失败的数据对应的错误类型存储至所述存储系统。错误存储模块105与批量处理模块103进行数据交互。
进一步优选地,继续参见图14,所述数据处理装置10还可以包括状态调整模块106。状态调整模块106与批量处理模块103进行数据交互。
具体地,参见图15,所述状态调整模块106可以包括成功调整单元1061、失败调整单元1062,成功调整单元1061与失败调整单元1062进行数据交互。
成功调整单元1061用于将处理成功的数据在所述存储系统中的处理状态调整为处理成功。
失败调整单元1062用于将处理失败的数据在所述存储系统中的处理状态调整为处理失败。
进一步优选地,继续参见图14,所述数据处理装置10还可以包括数据导入模块107和数据存储模块108,数据导入模块107与数据存储模块108进行数据交互,数据存储模块108还与处理存入模块101进行数据交互。
所述数据导入模块107用于将数据导入待存储队列。
所述数据存储模块108用于若所述存储系统中不存在所述待存储队列中的数据对应的标识,则将所述待存储队列中的数据存储至所述存储系统,并将所述待存储队列中的数据在所述存储系统中的处理状态设置为未处理。
进一步优选地,继续参见图14,所述数据处理装置10还可以包括去重判断模块109,用于通过多个进程判断所述存储系统中是否存在所述待存储队列中的数据对应的标识。去重判断模块109分别与数据导入模块107、数据存储模块108进行数据交互。
进一步优选地,继续参见图14,所述数据处理装置10还可以包括存储再存模块110,用于将出现异常导致存储失败的数据重新存入所述待存储队列并延时处理。存储再存模块110与数据存储模块108进行数据交互。
进一步优选地,继续参见图14,所述处理存入模块101可以用于将所述存储系统中处理状态是未处理或者处理失败的数据存入所述待处理队列。
参见图16,第十二实施例提供了一种数据处理系统,包括数据处理装置10、第一缓存系统20、存储系统30、第二缓存系统40、处理系统50,数据处理装置10分别与第一缓存系统20、存储系统30、第二缓存系统40、处理系统50进行数据交互,第一缓存系统20还与存储系统30进行数据交互,存储系统30还与第二缓存系统40进行数据交互,第二缓存系统40还与处理系统50进行数据交互,处理系统50还与存储系统30进行数据交互。
数据处理装置10将外部数据导入第一缓存系统20的待存储队列。
数据处理装置10通过处理系统50多进程处理待存储队列中的数据,将待存储队列中的数据去重后存入存储系统30。
数据处理装置10将存储系统30中的去重后数据存入第二缓存系统40的待处理队列。
数据处理装置10通过处理系统50多进程处理待处理队列中的数据,得到结果数据并分批更新所处理的数据在存储系统30中的处理状态,以及将处理失败的数据重新存入去重后数据。
其中,存储系统30用于临时存储来自外部数据源的原始数据、经过海量数据处理机制处理后的去重数据和数据结果。第一缓存系统20、第二缓存系统40用于稳定、有序、高效地将数据释放出来。处理系统50用于对原始数据和去重后数据进行处理,得到去重后数据和数据处理结果。将单流程分解为多阶段流程,并通过缓存队列以及多进程的方式,将高峰压力缓解到多时段,缓解系统高峰压力,增加处理速度,由此本实施例中的数据处理方法能胜任亿+级别的数据处理,高效、稳定、快速,经历双11、双12的考验,没有生产不及时或出现队列堆积的情况。
第十三实施例提供了一种电子设备,该电子设备包括处理器和存储器,处理器执行存储器存储的计算机指令,使得电子设备执行上述任一项数据处理方法。
第十四实施例提供了一种计算机存储介质,该计算机存储介质包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述任一项数据处理方法。
本申请从使用目的上,效能上,进步及新颖性等观点进行阐述,其设置有的实用进步性,已符合专利法所强调的功能增进及使用要件,本申请以上的说明及附图,仅为本申请的较佳实施例而已,并非以此局限本申请,因此,凡一切与本申请构造,装置,特征等近似、雷同的,即凡依本申请专利申请范围所作的等同替换或修饰等,皆应属本申请的专利申请保护的范围之内。

Claims (6)

1.一种数据处理方法,其特征在于,所述数据处理方法应用于物流、电商和互联网行业的数据处理系统,所述方法包括:
将数据导入待存储队列;
通过多个进程判断存储系统中是否存在所述待存储队列中的数据对应的标识;
若所述存储系统中不存在所述待存储队列中的数据对应的标识,则将所述待存储队列中的数据存储至所述存储系统,并将所述待存储队列中的数据在所述存储系统中的处理状态设置为未处理;
将所述存储系统中处理状态是未处理的数据存入待处理队列;
将所述待处理队列中的数据按时间顺序组合成一个或多个数据集合;每个所述数据集合包括多条数据;
调用数据库接口,通过多个进程批量处理所述数据集合中的数据。
2.根据权利要求1所述的数据处理方法,其特征在于,所述方法还包括:
将处理失败的数据重新存入所述待处理队列并延时处理。
3.根据权利要求1所述的数据处理方法,其特征在于,所述方法还包括:
将处理失败的数据对应的错误类型存储至所述存储系统。
4.根据权利要求1所述的数据处理方法,其特征在于,所述方法还包括:
将处理成功的数据在所述存储系统中的处理状态调整为处理成功;
将处理失败的数据在所述存储系统中的处理状态调整为处理失败。
5.根据权利要求1所述的数据处理方法,其特征在于,所述方法还包括:
将出现异常导致存储失败的数据重新存入所述待存储队列并延时处理。
6.一种数据处理装置,所述数据处理装置应用于物流、电商和互联网行业的数据处理系统,其特征在于,所述数据处理装置包括:
数据导入模块,用于将数据导入待存储队列;
去重判断模块,用于通过多个进程判断存储系统中是否存在所述待存储队列中的数据对应的标识;
数据存储模块,用于若所述存储系统中不存在所述待存储队列中的数据对应的标识,则将所述待存储队列中的数据存储至所述存储系统,并将所述待存储队列中的数据在所述存储系统中的处理状态设置为未处理;
处理存入模块,用于将所述存储系统中处理状态是未处理的数据存入待处理队列;
数据组合模块,用于将所述待处理队列中的数据按时间顺序组合成一个或多个数据集合;每个所述数据集合包括多条数据;
批量处理模块,用于调用数据库接口,通过多个进程批量处理所述数据集合中的数据。
CN202010270178.3A 2020-04-08 2020-04-08 数据处理方法及装置 Active CN111400390B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010270178.3A CN111400390B (zh) 2020-04-08 2020-04-08 数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010270178.3A CN111400390B (zh) 2020-04-08 2020-04-08 数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN111400390A CN111400390A (zh) 2020-07-10
CN111400390B true CN111400390B (zh) 2023-11-17

Family

ID=71433090

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010270178.3A Active CN111400390B (zh) 2020-04-08 2020-04-08 数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN111400390B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112835932B (zh) * 2021-01-11 2024-05-28 中国邮政储蓄银行股份有限公司 业务表的批量处理方法及装置、非易失性存储介质
CN112948738A (zh) * 2021-03-18 2021-06-11 四川虹美智能科技有限公司 基于mqtt的数据处理方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5023832A (en) * 1989-01-12 1991-06-11 Honeywell Inc. Method of maintaining asynchronous real-time data
WO2017092582A1 (zh) * 2015-12-01 2017-06-08 阿里巴巴集团控股有限公司 一种数据处理方法和装置
CN108536532A (zh) * 2018-04-23 2018-09-14 中国农业银行股份有限公司 一种批量任务处理方法及系统
CN109344172A (zh) * 2018-08-31 2019-02-15 深圳市元征科技股份有限公司 一种高并发数据处理方法、装置及客户端服务器
CN109933611A (zh) * 2019-02-22 2019-06-25 深圳达普信科技有限公司 一种自适应的数据采集方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10019297B2 (en) * 2013-04-03 2018-07-10 Salesforce.Com, Inc. Systems and methods for implementing bulk handling in asynchronous processing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5023832A (en) * 1989-01-12 1991-06-11 Honeywell Inc. Method of maintaining asynchronous real-time data
WO2017092582A1 (zh) * 2015-12-01 2017-06-08 阿里巴巴集团控股有限公司 一种数据处理方法和装置
CN108536532A (zh) * 2018-04-23 2018-09-14 中国农业银行股份有限公司 一种批量任务处理方法及系统
CN109344172A (zh) * 2018-08-31 2019-02-15 深圳市元征科技股份有限公司 一种高并发数据处理方法、装置及客户端服务器
CN109933611A (zh) * 2019-02-22 2019-06-25 深圳达普信科技有限公司 一种自适应的数据采集方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于消息队列的多进程数据处理系统;杨超;徐如志;杨峰;;计算机工程与设计(13);全文 *
杨超 ; 徐如志 ; 杨峰 ; .基于消息队列的多进程数据处理系统.计算机工程与设计.(第13期),全文. *

Also Published As

Publication number Publication date
CN111400390A (zh) 2020-07-10

Similar Documents

Publication Publication Date Title
EP2695086B1 (en) Methods and systems for loading data into a temporal data warehouse
CN107818431B (zh) 一种提供订单轨迹数据的方法和系统
CN101719149B (zh) 数据同步方法及装置
CN108647357B (zh) 数据查询的方法及装置
CN111400390B (zh) 数据处理方法及装置
CN102236672A (zh) 一种数据导入方法及装置
CN102027457A (zh) 单独可访问数据单元的管理存储
CN111414362A (zh) 数据读取方法、装置、设备及存储介质
CN111708673A (zh) 一种日志数据压缩方法、装置、设备和存储介质
CN111611276A (zh) 数据查询方法、装置及存储介质
CN111797104A (zh) 数据变更情况的获取方法、装置及电子设备
CN103678314A (zh) 基于关联规则提取的海量数据处理系统、设备及方法
CN114385760A (zh) 增量数据实时同步的方法、装置、计算机设备及存储介质
CN110019169B (zh) 一种数据处理的方法及装置
CN110362553B (zh) 大批量征信数据处理方法、电子装置及计算机设备
CN105956046A (zh) 一种字典的更新方法、系统和服务器
CN112256674A (zh) 一种数据迁移方法、装置、电子设备和存储介质
CN109871394B (zh) 一种全量分布式高并发计算方法及装置
CN116089394A (zh) 数据库的数据回滚方法、存储介质与设备
CN114896641A (zh) 数据校验方法、装置、电子设备及计算机可读存储介质
CN114022279A (zh) 一种业务数据纠错方法、装置、设备及可读存储介质
CN114722045A (zh) 时间序列数据的存储方法及装置
CN113032368A (zh) 一种数据迁移方法、装置、存储介质及平台
CN111241191A (zh) 一种数据库的同步方法及装置
CN117131071B (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