CN112632184A - 数据处理方法、装置、电子设备及存储介质 - Google Patents
数据处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112632184A CN112632184A CN202011483608.6A CN202011483608A CN112632184A CN 112632184 A CN112632184 A CN 112632184A CN 202011483608 A CN202011483608 A CN 202011483608A CN 112632184 A CN112632184 A CN 112632184A
- Authority
- CN
- China
- Prior art keywords
- data
- message system
- distributed message
- database
- backup database
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 claims abstract description 37
- 230000008569 process Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 9
- 230000036961 partial effect Effects 0.000 claims description 2
- 230000002411 adverse Effects 0.000 abstract description 7
- 238000004891 communication Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000002829 reductive effect Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- 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/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
Abstract
本公开实施例提供了一种数据处理方法、装置、电子设备及存储介质。所述方法包括:在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中,分批次地从分布式消息系统中读取第一数据中的部分数据,并将读取的数据写入至备份数据库中;每隔预设时间间隔,将所述备份数据库中存储的数据写入至所述第一数据库,直到写入成功时,将写入成功的数据从所述备份数据库中删除。因此,本公开的实施例,可以最大程度的降低数据丢失的风险,进而减轻给业务实现带来的不良影响。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种数据处理方法、装置、电子设备及存储介质。
背景技术
数据库(Database,DB),又称为数据管理系统,简而言之可视为电子化的文件柜,即存储电子文件的处所,用户可以对文件中的资料运行新增、截取、更新、删除等操作。MySQL是一种关联数据库管理系统。其中,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,从而可以增加数据处理速度以及灵活性。因而,目前应用程序的数据一般是基于MySQL的DB存储。
然而,虽然当前基于MySQL的DB的可用性较高,但是仍然会有因网络抖动、DB故障等问题导致DB短时甚至长时间不可用,造成数据写入的丢失。而数据的丢失对于一些比较核心的业务会产生比较大的影响。
由上述可知,现有技术中在网络抖动、DB故障时可能会存在数据丢失的问题,从而给业务的实现带来不良影响。
发明内容
为了解决背景技术中记载的技术问题,本公开实施例提供了一种数据处理方法、装置、电子设备及存储介质,本公开的技术方案如下:
根据本公开实施例的第一方面,提供了一种数据处理方法,所述方法包括:
在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中;
分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至备份数据库中;
每隔预设时间间隔,将所述备份数据库中存储的数据写入至所述第一数据库,直到写入成功时,将写入成功的数据从所述备份数据库中删除。
可选的,所述方法还包括:
在分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至所述备份数据库的过程中,所述备份数据库发生写入失败时,根据第二数据在所述分布式消息系统中的标识信息重置所述分布式消息系统的补偿参数,其中,所述第二数据为写入所述备份数据库失败的数据,所述补偿参数的取值表示读取所述分布式消息系统中的数据时的数据起始位置;
根据重置后的所述补偿参数从所述分布式消息系统中读取所述第二数据,并将所述第二数据重新写入所述备份数据库中。
可选的,所述将写入失败的第一数据发送至分布式消息系统中,包括:
在所述第一数据的数据量大于预设阈值时,将所述第一数据发送至分布式消息系统中。
可选的,所述方法还包括:
在所述第一数据的数据量小于或等于所述预设阈值时,直接将所述第一数据存储至所述备份数据库中。
根据本公开实施例的第二方面,提供了一种数据处理装置,所述装置包括:
发送模块,被配置为在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中;
第一备份模块,被配置为分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至备份数据库中;
处理模块,被配置为每隔预设时间间隔,将所述备份数据库中存储的数据写入至所述第一数据库,直到写入成功时,将写入成功的数据从所述备份数据库中删除。
可选的,所述装置还包括:
重置模块,被配置为在分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至所述备份数据库的过程中,所述备份数据库发生写入失败时,根据第二数据在所述分布式消息系统中的标识信息重置所述分布式消息系统的补偿参数,其中,所述第二数据为写入所述备份数据库失败的数据,所述补偿参数的取值表示读取所述分布式消息系统中的数据时的数据起始位置;
第二备份模块,被配置为根据重置后的所述补偿参数从所述分布式消息系统中读取所述第二数据,并将所述第二数据重新写入所述备份数据库中。
可选的,所述发送模块在将写入失败的第一数据发送至分布式消息系统中时,具体被配置为:
在所述第一数据的数据量大于预设阈值时,将所述第一数据发送至分布式消息系统中。
可选的,所述装置还包括:
第三备份模块,被配置为在所述第一数据的数据量小于或等于所述预设阈值时,直接将所述第一数据存储至所述备份数据库中。
根据本公开实施例的第三方面,提供一种电子设备,该电子设备包括:
处理器;
用于存储该处理器可执行指令的存储器;
其中,该处理器被配置为执行所述指令,以实现本公开提供的数据处理方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当该存储介质中的指令由电子设备的处理器执行时,使得电子设备实现本公开提供的数据处理方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现本公开提供的数据处理方法。
本公开实施例提供的技术方案,在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中,从而可以分批次地从分布式消息系统中读取第一数据中的部分数据,将读取的数据写入至备份数据库中,并每隔预设时间间隔,将备份数据库中存储的数据写入至第一数据库,直到写入成功时,将写入成功的数据从备份数据库中删除。由此可见,本公开实施例提供的技术方案,预先建立一个备份数据库,从而在第一数据库发生写入失败时,可以将写入失败的数据逐个批次地存储至该备份数据库中,进而可以多次尝试重新将写入失败的数据写入至第一数据库,直到写入成功时再将写入成功的数据从备份数据库中删除。
因此,本公开实施例提供的技术方案,无论在网络抖动,还是数据库故障长时间不可用导致写入失败时,都可以及时将写入失败的数据保存至备份数据库,并多次尝试重新将备份数据库中存储的数据写入至发生写入失败的数据库,直到写入成功,从而可以最大程度的降低数据丢失的风险,进而减轻了给业务实现带来的不良影响。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
图1是根据一示例性实施例示出的一种数据处理方法的流程图;
图2是根据一示例性实施例示出的另一种数据处理方法的流程图;
图3是根据一示例性实施例示出的数据处理方法的原理示意图;
图4是根据一示例性实施例示出的一种数据处理装置的框图;
图5是根据一示例性实施例示出的一种电子设备的框图;
图6是根据一示例性实施例示出的另一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
为了解决现有技术中在网络抖动、DB故障导致的数据丢失,给业务实现带来不良影响的问题。本公开实施例提供了一种数据处理方法、装置、系统、电子设备及存储介质。
根据本公开实施例的第一方面,提供了一种数据处理方法,如图1所示,该数据处理方法可以包括以下步骤:
步骤101:在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中。
其中,所述第一数据库可以为数据管理系统(Database,DB),其可视为电子化的文件柜,即为存储电子文件的处所,用户可以对文件中的资料运行新增、截取、更新、删除等操作。
步骤102:分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至备份数据库中。
其中,上述分布式消息系统具体可以为Kafka。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据,以可水平扩展和高吞吐率而被广泛使用。
另外,分布式消息系统允许平缓消费,即允许每次读取较少的数据,因此,本公开的实施例中,在第一数据库发生写入失败时,可以将写入失败的数据发送至分布式消息系统中,从而可以分批次地从分布式消息系统中读取数据,以将读取的数据写入至备份数据库中。例如本次写入失败的第一数据包括100条数据,则可以将这100条数据发送至分布式消息系统,从而将每10条作为一个批次,即每次从分布式消息系统中读取10条,以存储至备份数据库中。
步骤103:每隔预设时间间隔,将所述备份数据库中存储的数据写入至所述第一数据库,直到写入成功时,将写入成功的数据从所述备份数据库中删除。
由步骤103可知,本公开的实施例中,是周期性的将备份数据库中存储的数据写入至第一数据库,直到写入成功。即每当预设时间间隔到达时,则将此时备份数据库中存储的数据写入至第一数据库,直到写入成功为止。
由上述可知,本公开实施例提供的技术方案,在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中,从而可以分批次地从分布式消息系统中读取第一数据中的部分数据,将读取的数据写入至备份数据库中,并每隔预设时间间隔,将备份数据库中存储的数据写入至第一数据库,直到写入成功时,将写入成功的数据从备份数据库中删除。由此可见,本公开实施例提供的技术方案,预先建立一个备份数据库,从而在第一数据库发生写入失败时,可以将写入失败的数据逐个批次地存储至该备份数据库中,进而可以多次尝试重新将写入失败的数据写入至第一数据库,直到写入成功时再将写入成功的数据从备份数据库中删除。
因此,本公开实施例提供的技术方案,无论在网络抖动,还是数据库故障长时间不可用导致写入失败时,都可以及时将写入失败的数据保存至备份数据库,并多次尝试重新将备份数据库中存储的数据写入至发生写入失败的数据库,直到写入成功,从而可以最大程度的降低数据丢失的风险,进而减轻了给业务实现带来的不良影响。
此外,还需说明的是,上述步骤102与步骤103的执行顺序,可以是步骤102先执行,步骤103后执行,也可以是步骤102与步骤103并行执行。
其中,在步骤102与步骤103并行执行时,分批次地从分布式消息系统中读取数据,并将读取的数据写入至备份数据库的过程,与周期性地将备份数据库中的数据写入至第一数据库的过程是并行执行的。则在此种情况下,逐个批次地从分布式消息系统中读取数据并将读取的数据存储至备份数据库中,并且在每一次将备份数据库中的数据成功写入至第一数据库中后将写入成功的该部分数据从备份数据库中删除,使得可以并行地在备份数据库中增加数据和减少数据,则可以减轻备份数据库的存储压力。这样,备份数据库设置较小的存储空间即可满足使用要求。
根据本公开实施例的第二方面,提供了一种数据处理方法,如图2所示,该数据处理方法可以包括以下步骤:
步骤201:在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中。
其中,所述第一数据库可以为DB,其可视为电子化的文件柜,即为存储电子文件的处所,用户可以对文件中的资料运行新增、截取、更新、删除等操作。
步骤202:分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至所述备份数据库中。
其中,上述分布式消息系统具体可以为Kafka。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据,以可水平扩展和高吞吐率而被广泛使用。
另外,分布式消息系统允许平缓消费,即允许每次读取较少的数据,因此,本公开的实施例中,在第一数据库发生写入失败时,可以将写入失败的数据发送至分布式消息系统中,从而可以分批次地从分布式消息系统中读取数据,以将读取的数据写入至备份数据库中。例如本次写入失败的第一数据包括100条数据,则可以将这100条数据发送至分布式消息系统,从而将每10条作为一个批次,即每次从分布式消息系统中读取10条,以存储至备份数据库中。
步骤203:每隔预设时间间隔,将所述备份数据库中存储的数据写入至所述第一数据库,直到写入成功时,将写入成功的数据从所述备份数据库中删除。
由步骤203可知,本公开的实施例中,是周期性的将备份数据库中存储的数据写入至第一数据库,直到写入成功。即每当预设时间间隔到达时,则将此时备份数据库中存储的数据写入至第一数据库,直到写入成功为止。
此外,还需说明的是,上述步骤202与步骤203的执行顺序,可以是步骤202先执行,步骤203后执行,也可以是步骤202与步骤203并行执行。
其中,在步骤202与步骤203并行执行时,分批次地从分布式消息系统中读取数据,并将读取的数据写入至备份数据库的过程,与周期性地将备份数据库中的数据写入至第一数据库的过程是并行执行的。则在此种情况下,逐个批次地从分布式消息系统中读取数据并将读取的数据存储至备份数据库中,并且在每一次将备份数据库中的数据成功写入至第一数据库中后将写入成功的该部分数据从备份数据库中删除,使得可以并行地在备份数据库中增加数据和减少数据,则可以减轻备份数据库的存储压力。这样,备份数据库设置较小的存储空间即可满足使用要求。
步骤204:在分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至所述备份数据库的过程中,所述备份数据库发生写入失败时,根据第二数据在所述分布式消息系统中的标识信息重置所述分布式消息系统的补偿参数。
其中,所述第二数据为写入所述备份数据库失败的数据,所述补偿参数的取值表示读取所述分布式消息系统中的数据时的数据起始位置。因此,本公开实施例中,根据第二数据在分布式消息系统中的标识信息重置分布式消息系统的补偿参数,即为将分布式消息系统的补偿参数的取值修改为所述第二数据在分布式消息系统中的位置,从而后续跟进重置后的补偿参数读取分布式消息系统中的数据时,可以从所述第二数据开始读取。
步骤205:根据重置后的所述补偿参数从所述分布式消息系统中读取所述第二数据,并将所述第二数据重新写入所述备份数据库中。
其中,在从分布式消息系统中读取数据,并将读取的数据写入至备份数据库的过程中,可能会出现网络抖动、数据库故障等情况,从而导致某一次从分布式消息系统中读取的数据无法成功写入至备份数据库中。此种情况下,本公开的实施例中,会记录本次备份数据库写入失败的数据在分布式消息系统中的标识信息,从而根据该标识信息重置分布式消息系统中的补偿参数,以使得下一次仍然可以从该部分数据开始读取,并将读取的数据重新写入备份数据库中。
具体的,当上述分布式消息系统为Kafka时,根据一补偿参数(offset)的取值读取数据,则当某一次从Kafka中读取的数据无法成功写入至备份数据库中时,可以记录本次备份数据库写入失败的数据在Kafka中的标识信息,从而根据该标识信息重置offset,以使得下一次可以根据重置的offset直接从该标识信息所指示的数据开始读取,并将读取的数据重新写入备份数据库中。
由上述可知,在备份数据库发生写入失败时,本公开的实施例可以记录本次写入失败的数据在分布式消息系统中的标识信息,以使得后续可以从该部分数据开始读取,并重新写入备份数据库中,从而进一步降低了数据丢失的风险。
可选的,所述将写入失败的第一数据发送至分布式消息系统中,包括:
在所述第一数据的数据量大于预设阈值时,将所述第一数据发送至分布式消息系统中。
由此可知,本公开的实施例中,在第一数据量大于预设阈值时,可以将第一数据分成多个批次,并逐个批次地存储至备份数据库中,以减少不必要分批处理时的处理过程,进而进一步提升数据处理速度。
可选的,所述方法还包括:
在所述第一数据的数据量小于或等于所述预设阈值时,直接将所述第一数据存储至所述备份数据库中。
由此可知,在第一数据的数据量小于或等于预设阈值时,可以直接将第一数据存储至备份数据库中,以进一步提升数据处理速度。
综上所述,本公开实施例的数据处理方法的具体实施方式的原理如图3所示,具体如下所述:
在客户端将数据写入原DB的过程中,如果原DB发生写入失败,则将写入失败的数据发送到Kafka中,然后分批次读取Kafka中的数据,并将读取的数据写入至预先建立的备份DB中。
其中,在分批次读取Kafka中的数据,并将读取的数据写入至备份DB的过程中,启动一个轮刷任务,以每隔预设时间间隔将备份DB中的数据同步到之前要写入的原DB中,如果写入成功,则写入成功的数据从备份DB中删除,如果写入失败,则会保留失败的数据,下一次再尝试写入,直到写入成功。
另外,在写入备份DB的过程中,备份DB也可能出现写入失败的情况,则可以重置Kakfa的offset,从而使得下一次可以从本次失败的数据开始读取。
此外,备份DB仅仅用于在原DB数据写入失败时使用,且较少的几率会出现大量数据写入失败的情况,因而,备份DB可以设置较小的空间。而Kafka允许平缓消费,即允许多次读取较少数据,因而为了进一步解决大量数据写入失败给备份DB带来的压力,可以引入Kafka。即本公开的实施例中,通过Kafka可以缓解瞬间写入备份DB的数据峰值。
综上所述,本公开的实施例,通过引入消息队列和备份DB机制,最大程度的降低了数据丢失的风险,进而减轻了给业务实现带来的不良影响。
根据本公开实施例的第三方面,提供了一种数据处理装置,如图4所示,该数据处理装置400可以包括:
发送模块401,被配置为在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中;
第一备份模块402,被配置为分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至备份数据库中;
处理模块403,被配置为每隔预设时间间隔,将所述备份数据库中存储的数据写入至所述第一数据库,直到写入成功时,将写入成功的数据从所述备份数据库中删除。
可选的,所述装置还包括:
重置模块404,被配置为在分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至所述备份数据库的过程中,所述备份数据库发生写入失败时,根据第二数据在所述分布式消息系统中的标识信息重置所述分布式消息系统的补偿参数,其中,所述第二数据为写入所述备份数据库失败的数据,所述补偿参数的取值表示读取所述分布式消息系统中的数据时的数据起始位置;
第二备份模块405,被配置为根据重置后的所述补偿参数从所述分布式消息系统中读取所述第二数据,并将所述第二数据重新写入所述备份数据库中。
可选的,所述发送模块401在将写入失败的第一数据发送至分布式消息系统中时,具体被配置为:
在所述第一数据的数据量大于预设阈值时,将所述第一数据发送至分布式消息系统中。
可选的,所述装置还包括:
第三备份模块406,被配置为在所述第一数据的数据量小于或等于所述预设阈值时,直接将所述第一数据存储至所述备份数据库中。
本公开实施例提供的数据处理装置,在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中,从而可以分批次地从分布式消息系统中读取第一数据中的部分数据,将读取的数据写入至备份数据库中,并每隔预设时间间隔,将备份数据库中存储的数据写入至第一数据库,直到写入成功时,将写入成功的数据从备份数据库中删除。由此可见,本公开实施例提供的数据处理装置,预先建立一个备份数据库,从而在第一数据库发生写入失败时,可以将写入失败的数据逐个批次地存储至该备份数据库中,进而可以多次尝试重新将写入失败的数据写入至第一数据库,直到写入成功时再将写入成功的数据从备份数据库中删除。
因此,本公开实施例提供的数据处理装置,无论在网络抖动,还是数据库故障长时间不可用导致写入失败时,都可以及时将写入失败的数据保存至备份数据库,并多次尝试重新将备份数据库中存储的数据写入至发生写入失败的数据库,直到写入成功,从而可以最大程度的降低数据丢失的风险,进而减轻了给业务实现带来的不良影响。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
根据本公开实施例的第四方面,提供了一种电子设备。参照图5,该电子设备包括:
处理器510;
用于存储所述处理器可执行指令的存储器520;
其中,所述处理器被配置为执行所述指令,以实现上述所述的数据处理方法。
根据本公开实施例的第五方面,还提供了一种电子设备。如图6所示,该电子设备600可以是移动电话,计算机,数字广播电子设备,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图6,电子设备600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制电子设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在电子设备600的操作。这些数据的示例包括用于在电子设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为电子设备600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为电子设备600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述电子设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当电子设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当电子设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为电子设备600提供各个方面的状态评估。例如,传感器组件614可以检测到电子设备600的打开/关闭状态,组件的相对定位,例如所述组件为电子设备600的显示器和小键盘,传感器组件614还可以检测电子设备600或电子设备600一个组件的位置改变,用户与电子设备600接触的存在或不存在,电子设备600方位或加速/减速和电子设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于电子设备600和其他设备之间有线或无线方式的通信。电子设备600可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、8G或5G),或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述所述的数据处理方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子设备600的处理器620执行以完成上述方法。可选地,例如,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在本公开实施的又一方面,本公开实施例还提供了一种计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行上述所述的数据处理方法。
根据本公开实施例的又一方面,提供了一种包含指令的计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述所述的数据处理方法。
在此提供的数据处理方案不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造具有本发明方案的系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本公开的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本公开实施例的信息提取方案中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法包括:
在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中;
分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至备份数据库中;
每隔预设时间间隔,将所述备份数据库中存储的数据写入至所述第一数据库,直到写入成功时,将写入成功的数据从所述备份数据库中删除。
2.根据权利要求1所述的数据处理方法,其特征在于,所述方法还包括:
在分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至所述备份数据库的过程中,所述备份数据库发生写入失败时,根据第二数据在所述分布式消息系统中的标识信息重置所述分布式消息系统的补偿参数,其中,所述第二数据为写入所述备份数据库失败的数据,所述补偿参数的取值表示读取所述分布式消息系统中的数据时的数据起始位置;
根据重置后的所述补偿参数从所述分布式消息系统中读取所述第二数据,并将所述第二数据重新写入所述备份数据库中。
3.根据权利要求1所述的数据处理方法,其特征在于,所述将写入失败的第一数据发送至分布式消息系统中,包括:
在所述第一数据的数据量大于预设阈值时,将所述第一数据发送至分布式消息系统中。
4.根据权利要求3所述的数据处理方法,其特征在于,所述方法还包括:
在所述第一数据的数据量小于或等于所述预设阈值时,直接将所述第一数据存储至所述备份数据库中。
5.一种数据处理装置,其特征在于,所述装置包括:
发送模块,被配置为在第一数据库发生写入失败时,将写入失败的第一数据发送至分布式消息系统中;
第一备份模块,被配置为分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至备份数据库中;
处理模块,被配置为每隔预设时间间隔,将所述备份数据库中存储的数据写入至所述第一数据库,直到写入成功时,将写入成功的数据从所述备份数据库中删除。
6.根据权利要求5所述的数据处理装置,其特征在于,所述装置还包括:
重置模块,被配置为在分批次地从所述分布式消息系统中读取所述第一数据中的部分数据,并将读取的数据写入至所述备份数据库的过程中,所述备份数据库发生写入失败时,根据第二数据在所述分布式消息系统中的标识信息重置所述分布式消息系统的补偿参数,其中,所述第二数据为写入所述备份数据库失败的数据,所述补偿参数的取值表示读取所述分布式消息系统中的数据时的数据起始位置;
第二备份模块,被配置为根据重置后的所述补偿参数从所述分布式消息系统中读取所述第二数据,并将所述第二数据重新写入所述备份数据库中。
7.根据权利要求5所述的数据处理装置,其特征在于,所述发送模块在将写入失败的第一数据发送至分布式消息系统中时,具体被配置为:
在所述第一数据的数据量大于预设阈值时,将所述第一数据发送至分布式消息系统中。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至4中任一项所述的数据处理方法。
9.一种计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够实现如权利要求1至4中任一项所述的数据处理方法。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现权利要求1至4中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011483608.6A CN112632184A (zh) | 2020-12-15 | 2020-12-15 | 数据处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011483608.6A CN112632184A (zh) | 2020-12-15 | 2020-12-15 | 数据处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112632184A true CN112632184A (zh) | 2021-04-09 |
Family
ID=75314181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011483608.6A Pending CN112632184A (zh) | 2020-12-15 | 2020-12-15 | 数据处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112632184A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113392098A (zh) * | 2021-06-11 | 2021-09-14 | 北京沃东天骏信息技术有限公司 | 一种数据写入方法、装置、设备及存储介质 |
CN114297175A (zh) * | 2021-11-01 | 2022-04-08 | 浙江百应科技有限公司 | 一种基于多数据库的数据存储方法、装置及电子设备 |
CN114675983A (zh) * | 2022-02-21 | 2022-06-28 | 青岛海尔科技有限公司 | 业务数据处理方法、装置、存储介质以及电子设备 |
CN115098474A (zh) * | 2022-06-21 | 2022-09-23 | 马上消费金融股份有限公司 | 一种数据处理方法、装置及存储介质 |
CN115617763A (zh) * | 2022-09-23 | 2023-01-17 | 中电金信软件有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103313240A (zh) * | 2012-03-15 | 2013-09-18 | 中国移动通信集团公司 | 一种安全访问方法、装置及系统 |
CN104899506A (zh) * | 2015-05-08 | 2015-09-09 | 深圳市雪球科技有限公司 | 基于可信执行环境中虚拟安全元件的安全系统实现方法 |
CN105701219A (zh) * | 2016-01-14 | 2016-06-22 | 北京邮电大学 | 一种分布式缓存的实现方法 |
CN106228072A (zh) * | 2016-07-21 | 2016-12-14 | 恒宝股份有限公司 | 一种通用ta支付平台和支付方法 |
CN106407398A (zh) * | 2016-09-21 | 2017-02-15 | 福建中金在线信息科技有限公司 | 一种数据存储方法及系统 |
US20190227888A1 (en) * | 2018-01-23 | 2019-07-25 | International Business Machines Corporation | Handling node failure in multi-node data storage systems |
CN110134525A (zh) * | 2019-03-25 | 2019-08-16 | 杭州比智科技有限公司 | 一种消息补偿方法及装置 |
CN112035292A (zh) * | 2020-07-31 | 2020-12-04 | 北京金山云网络技术有限公司 | 一种数据写入异常的处理方法、装置、设备及存储介质 |
-
2020
- 2020-12-15 CN CN202011483608.6A patent/CN112632184A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103313240A (zh) * | 2012-03-15 | 2013-09-18 | 中国移动通信集团公司 | 一种安全访问方法、装置及系统 |
CN104899506A (zh) * | 2015-05-08 | 2015-09-09 | 深圳市雪球科技有限公司 | 基于可信执行环境中虚拟安全元件的安全系统实现方法 |
CN105701219A (zh) * | 2016-01-14 | 2016-06-22 | 北京邮电大学 | 一种分布式缓存的实现方法 |
CN106228072A (zh) * | 2016-07-21 | 2016-12-14 | 恒宝股份有限公司 | 一种通用ta支付平台和支付方法 |
CN106407398A (zh) * | 2016-09-21 | 2017-02-15 | 福建中金在线信息科技有限公司 | 一种数据存储方法及系统 |
US20190227888A1 (en) * | 2018-01-23 | 2019-07-25 | International Business Machines Corporation | Handling node failure in multi-node data storage systems |
CN110134525A (zh) * | 2019-03-25 | 2019-08-16 | 杭州比智科技有限公司 | 一种消息补偿方法及装置 |
CN112035292A (zh) * | 2020-07-31 | 2020-12-04 | 北京金山云网络技术有限公司 | 一种数据写入异常的处理方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
王亚玲等: "数据库系统应用分片中间件", 《计算机系统应用》, vol. 24, no. 10, pages 1 - 2 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113392098A (zh) * | 2021-06-11 | 2021-09-14 | 北京沃东天骏信息技术有限公司 | 一种数据写入方法、装置、设备及存储介质 |
CN114297175A (zh) * | 2021-11-01 | 2022-04-08 | 浙江百应科技有限公司 | 一种基于多数据库的数据存储方法、装置及电子设备 |
CN114297175B (zh) * | 2021-11-01 | 2025-01-03 | 浙江百应科技有限公司 | 一种基于多数据库的数据存储方法、装置及电子设备 |
CN114675983A (zh) * | 2022-02-21 | 2022-06-28 | 青岛海尔科技有限公司 | 业务数据处理方法、装置、存储介质以及电子设备 |
CN115098474A (zh) * | 2022-06-21 | 2022-09-23 | 马上消费金融股份有限公司 | 一种数据处理方法、装置及存储介质 |
CN115617763A (zh) * | 2022-09-23 | 2023-01-17 | 中电金信软件有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105955766B (zh) | 应用预加载方法及装置 | |
CN112632184A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
EP3188066B1 (en) | A method and an apparatus for managing an application | |
JP6348989B2 (ja) | ファームウェアの復元方法、装置、端末、プログラム及び記録媒体 | |
CN104951335B (zh) | 应用程序安装包的处理方法及装置 | |
CN106598488B (zh) | 分布式数据读取方法及装置 | |
CN106534562B (zh) | 文件删除方法及装置 | |
CN109669730B (zh) | 一种进程保活方法、装置、电子设备及介质 | |
CN105930213B (zh) | 应用运行方法及装置 | |
RU2642843C2 (ru) | Способ и устройство обработки записи контактов | |
CN112506553B (zh) | 服务网格的数据面容器的升级方法、装置及电子设备 | |
US20180007420A1 (en) | Method, device and system for recording television program | |
CN108984098B (zh) | 基于社交软件的信息显示的控制方法及装置 | |
CN107391128B (zh) | 监控虚拟文件对象模型vdom的方法和装置 | |
CN113596175A (zh) | 场景同步方法、终端、服务器及系统 | |
CN109634762B (zh) | 一种数据回收方法、装置、电子设备及存储介质 | |
CN108153488B (zh) | 数据自增方法及装置 | |
CN115357277A (zh) | 热更新方法、装置、电子设备、存储介质及程序产品 | |
CN108153540B (zh) | 系统升级的方法、装置、终端及存储介质 | |
CN112506700B (zh) | 冲突处理方法、装置、电子设备及存储介质 | |
CN114077461A (zh) | 应用程序的运行方法、装置、设备及存储介质 | |
CN105824513A (zh) | 消息处理方法及装置 | |
CN113467854B (zh) | 应用程序启动方法、装置、电子设备及存储介质 | |
CN108762944B (zh) | 一种业务系统的处理方法、装置、设备及介质 | |
CN110995767B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210409 |