CN110083614A - A kind of data processing method and server - Google Patents

A kind of data processing method and server Download PDF

Info

Publication number
CN110083614A
CN110083614A CN201910272205.8A CN201910272205A CN110083614A CN 110083614 A CN110083614 A CN 110083614A CN 201910272205 A CN201910272205 A CN 201910272205A CN 110083614 A CN110083614 A CN 110083614A
Authority
CN
China
Prior art keywords
data
group
check value
block
information
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
CN201910272205.8A
Other languages
Chinese (zh)
Other versions
CN110083614B (en
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.)
China Unionpay Co Ltd
Original Assignee
China Unionpay 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 China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201910272205.8A priority Critical patent/CN110083614B/en
Publication of CN110083614A publication Critical patent/CN110083614A/en
Priority to PCT/CN2020/072336 priority patent/WO2020199724A1/en
Application granted granted Critical
Publication of CN110083614B publication Critical patent/CN110083614B/en
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/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the invention discloses a kind of data processing method and servers, and wherein method includes: after server obtains the first information that client device is sent, to divide to N number of first data block, obtain M group data, and determine the corresponding check information of every group of data;Further, server determines different information, and different information is sent to client device according to the corresponding check information of M group data and the second data packet, so that client device updates the first data packet according to different information.In the embodiment of the present invention, different information can be transferred to client device by server, without entire first data packet is sent to client device, so as to avoid transmitting duplicate data information, reduced the loss of network flow, improved the synchronous efficiency of data;And communication interaction process can be only performed once between client device and server in present invention implementation, so as to mitigate the pressure of network communication, reduce network traffic flow.

Description

A kind of data processing method and server
Technical field
The present invention relates to field of computer technology more particularly to a kind of data processing method and servers.
Background technique
It is a kind of common data processing method that data, which synchronize, by distinct device (such as client device and service Device, client device and storage equipment or server with store equipment) on data synchronize, can keep on distinct device The integrality and uniformity of data.By taking isochronous resources packet data between client device and server as an example, a kind of normal In the data method of synchronization, if server detects that the resource data packet installed on server upgrades to from resource data packet 1 Resource data packet 2 then can be sent to client device, so that client device will be on client device by resource data packet 2 The resource data packet of installation is updated to resource data packet 2 from resource data packet 1, to keep on server and client device The consistency of resource data packet.
However, it is different to only exist partial data in actual operation, between resource data packet 2 and resource data packet 1, And most data are identical;For example, the total amount of data of resource data packet 1 and resource data packet 2 is 50M, number of resources According to that there is only the data of 5M is different from resource data packet 1 in packet 2, and in resource data packet 2 other 45M data and resource data It is identical to wrap 1.According to aforesaid way, then client device can send the number of 50M included by resource data packet 2 to server According to, wherein may include in the data of this 50M and the data of the identical 45M of resource data packet 1 and different with resource data packet 1 5M data.It follows that duplicate data may be transmitted using aforesaid way server, to lose more network flow Amount, the efficiency for causing data synchronous are lower.
To sum up, a kind of data processing method is needed at present, to improve the synchronous efficiency of data.
Summary of the invention
The embodiment of the present invention provides a kind of data processing method, to improve the synchronous efficiency of data.
In a first aspect, a kind of data processing method provided in an embodiment of the present invention, which comprises
Server obtains the first information that client device is sent, and the first information includes the corresponding N of the first data packet The check value of a first data block, the server carry out first time division to N number of first data block, obtain M group data, And at least one corresponding check value of the first data block and corresponding with first data packet for according to every group of data including Two data packets generate the corresponding check information of every group of data;Further, the server is according to the M group data pair The check information answered and second data packet determine the corresponding different information of first data packet, and the difference are believed Breath is sent to the client device, so that the client device updates first data packet according to the different information.
In above-mentioned technical proposal, the second data packet is verified by using the first data packet, server can be made Different information is transferred to client device, without entire first data packet is sent to client device, so as to keep away Exempt to transmit duplicate data information, reduce the loss of network flow, improves the synchronous efficiency of data;And in the embodiment of the present invention The mode of the check value of data group is determined by using the check value of data block, can make client device and server it Between be only performed once communication interaction synchronizing process can be completed, without executing multiple communication interaction, so as to mitigate network The pressure of communication reduces network traffic flow.That is, the data processing method in the embodiment of the present invention be adapted to it is low The network environment of bandwidth and flow-sensitive.
Optionally, described at least one corresponding check value of the first data block for including according to every group of data and with described Corresponding second data packet of one data packet, before generating the corresponding check information of every group of data, further includes: the server Determine that the maximum amount of data in the M group data is greater than or equal to the minimum data in the data volume of N number of first data block Amount.
Optionally, further include the data volume of N number of first data block in the first information, wrapped in the first information The corresponding check value of N number of first data block included is corresponding first check value of N number of first data block; Described at least one corresponding check value of the first data block for including according to every group of data and corresponding with first data packet Second data packet generates the corresponding check information of every group of data, comprising: includes Y data group, institute in the M group data Stating in Y data group includes T the first data blocks, and the Y data group being directed in the M group data executes: the server T corresponding first check values of the first data block for including according to the Y data group, determine the Y data group pair The second check value answered;The server is obtained since the i-th bit data in corresponding second data packet of Y-1 data group First object data group identical with the data volume of the Y data group, and the first object data group is divided, it obtains Data volume to T the second data blocks, the T the second data blocks is identical as a data volumes of first data block of the T;According to First check value of the T the second data blocks determines corresponding second check value of the first object data group;According to described Corresponding second check value of Y data group the second check value corresponding with the first object data group generates the Y data The check information of group;The server is updated corresponding second data packet of the Y-1 group data, obtains Y data Corresponding second data packet of group.
In above-mentioned technical proposal, the first check value can be strong check value, and the second check value can be weak check value, pass through By the way of first comparing weak check value and comparing strong check value again, on the one hand purpose data group can be filtered out by weak check value In with the obvious identical data information of Y data group, thus the efficiency for mitigating workload, improving data processing;On the other hand, lead to It crosses and the corresponding check information of Y data group is determined using strong check value and weak check value jointly, it is corresponding that Y data group can be improved Check information accuracy.
Optionally, described corresponding with the first object data group according to corresponding second check value of the Y data group The second check value, generate the check information of the Y data group, comprising: the server is if it is determined that the Y data group pair The second check value answered the second check value corresponding with the first object data group is identical, then according to the Y data group packet T corresponding first check values of the first data block included, determine corresponding first check value of the Y data group, and root Corresponding first check value of the first object data group is determined according to the first check value of the T the second data blocks;If it is determined that Corresponding first check value of the Y data group the first check value corresponding from the first object data group is different, then generates First check information of the Y data group;The server is if it is determined that corresponding second check value of the Y data group and institute It is different to state corresponding second check value of first object data group, then from corresponding second data packet of the Y-1 data group I+1 position data start, and obtain the second target set of data identical with the data volume of the Y data group.
In above-mentioned technical proposal, by way of first comparing weak check value and comparing strong check value again, it can simplify at data The process of reason improves the efficiency of data processing.
Optionally, the method also includes: the server determines corresponding first check value of the Y data group and institute State corresponding first check value of first object data group it is identical when, however, it is determined that the data volume of the Y data group be equal to it is described N number of Minimum data amount in first data block then generates the second check information of the Y data group;If it is determined that the Y data The data volume of group is greater than the minimum data amount in N number of first data block, then from corresponding second number of the Y-1 data group Start according to the i+1 position data in packet, obtains the second target set of data identical with the data volume of the Y data group.
In above-mentioned technical proposal, check information may include the first check information and the second check information, the first verification letter Breath is the corresponding check information of identical with Y data group data information in target set of data, and the second check information can be mesh Mark the corresponding check information of data information different from Y data group in data group.By obtaining the first check information and second Check information, the available more complete check information of server, so that the difference that server is synchronous to client device Different information is more accurate.
Optionally, the method also includes: the server if it is determined that corresponding second data packet of the M group data Data volume is greater than or equal to preset data amount threshold value, then carries out second to N number of first data block and divide.
In above-mentioned technical proposal, check information is obtained by using the mode of more wheel verifications, server acquisition can be improved The accuracy of the check information arrived, so that the data synchronization process between client device and server is more accurate;Into One step, the data volume that the second wheel verifies corresponding every group of data can be less than the data for the first round verifying corresponding every group of data Amount, that is to say, that above-mentioned technical proposal, can be to avoid only with data caused by a wheel verification by way of taking turns verification more Information repeats the technical issues of transmitting, and so as to saving network flow, improves the synchronous efficiency of data.
Optionally, the server carries out second of division to N number of first data block and obtains P group data;The clothes Device be engaged in if it is determined that the maximum amount of data in the P group data is less than the minimum data in the data volume of N number of first data block Amount, then be sent to the client device for first to M group data check information.
Second aspect, a kind of server provided in an embodiment of the present invention, the server include:
Module is obtained, for obtaining the first information of client device transmission, the first information includes the first data packet The check value of corresponding N number of first data block;
Processing module obtains M group data, and according to every group for carrying out first time division to N number of first data block At least one corresponding check value of the first data block and the second data packet corresponding with first data packet that data include, it is raw At the corresponding check information of every group of data;
Transceiver module, for according to the corresponding check information of the M group data and second data packet, determining described the The corresponding different information of one data packet, and the different information is sent to the client device, so that the client is set It is standby that first data packet is updated according to the different information.
Optionally, the processing module includes according to every group of data at least one corresponding check value of the first data block and The second data packet corresponding with first data packet is also used to before generating the corresponding check information of every group of data: really Maximum amount of data in the fixed M group data is greater than or equal to the minimum data amount in the data volume of N number of first data block.
Optionally, further include the data volume of N number of first data block in the first information, wrapped in the first information The corresponding check value of N number of first data block included is corresponding first check value of N number of first data block; The processing module is used for: includes Y data group in the M group data, includes T the first data blocks in the Y data group, The Y data group being directed in the M group data, executes: the of T the first data blocks for including according to the Y data group One check value determines corresponding second check value of the Y data group;From corresponding second data packet of Y-1 data group I-th bit data start, and obtain first object data group identical with the data volume of the Y data group, and to first mesh Mark data group is divided, and T the second data blocks, the data volume and the T the first data of the T the second data blocks are obtained The data volume of block is identical;Determine that the first object data group is corresponding according to the first check value of the T the second data blocks Second check value;According to corresponding first check value of the Y data group the second school corresponding with the first object data group Value is tested, the check information of the Y data group is generated;Corresponding second data packet of the Y-1 group data is updated, is obtained To corresponding second data packet of Y data group;
Optionally, the processing module is used for: if it is determined that corresponding second check value of the Y data group and described first Corresponding second check value of target set of data is identical, then the T for including according to the Y data group the first data blocks respectively correspond The first check value, determine corresponding first check value of the Y data group, and according to the first of the T the second data blocks Check value determines corresponding first check value of the first object data group;If it is determined that corresponding first school of the Y data group It tests that value the first check value corresponding from the first object data group is different, then generates the first verification letter of the Y data group Breath;If it is determined that corresponding second check value of the Y data group the second check value corresponding with the first object data group is not Together, then it since the i+1 position data in corresponding second data packet of the Y-1 data group, obtains and the Y data group Identical second target set of data of data volume.
Optionally, the processing module is also used to: determining corresponding first check value of the Y data group and described first When corresponding first check value of target set of data is identical, however, it is determined that the data volume of the Y data group is equal to N number of first number According to the minimum data amount in block, then the second check information of the Y data group is generated;If it is determined that the number of the Y data group It is greater than the minimum data amount in N number of first data block according to amount, then from corresponding second data packet of the Y-1 data group I+1 position data start, obtain identical with the data volume of Y data group third target set of data.
Optionally, the processing module is also used to: if it is determined that the data volume of corresponding second data packet of the M group data More than or equal to preset data amount threshold value, then second is carried out to N number of first data block and divided.
Optionally, the processing module is used for: being carried out second of division to N number of first data block and is obtained P group data; If it is determined that the maximum amount of data in the P group data is less than the minimum data amount in the data volume of N number of first data block, then First to M group data check information is sent to the client device.
A kind of computer readable storage medium provided in an embodiment of the present invention, including instruction, when it runs on computers When so that computer execute as above-mentioned first aspect or first aspect arbitrarily as described in data processing method.
A kind of computer program product provided in an embodiment of the present invention, when run on a computer, so that computer Execute as above-mentioned first aspect or first aspect arbitrarily as described in data processing method.
These implementations or other implementations of the invention can more straightforward in the following description.
Detailed description of the invention
To describe the technical solutions in the embodiments of the present invention more clearly, make required in being described below to embodiment Attached drawing is briefly introduced, it should be apparent that, drawings in the following description are only some embodiments of the invention, for this For the those of ordinary skill in field, without any creative labor, it can also be obtained according to these attached drawings His attached drawing.
Fig. 1 is a kind of corresponding flow diagram of data processing method provided in an embodiment of the present invention;
Fig. 2 is the schematic diagram interacted between a kind of client device and server provided in an embodiment of the present invention;
Fig. 3 a is a kind of embodiment schematic diagram provided in the embodiment of the present invention;
Fig. 3 b is a kind of embodiment schematic diagram provided in the embodiment of the present invention;
Fig. 4 is a kind of structural schematic diagram of server provided in an embodiment of the present invention.
Specific embodiment
To make the objectives, technical solutions, and advantages of the present invention clearer, below in conjunction with attached drawing to the present invention make into It is described in detail to one step, it is clear that described embodiments are only a part of the embodiments of the present invention, rather than whole implementation Example.Based on the embodiments of the present invention, obtained by those of ordinary skill in the art without making creative efforts All other embodiment, shall fall within the protection scope of the present invention.
During client device is synchronous with server progress data, in order to avoid transmitting duplicate data information, A kind of possible implementation are as follows: the resource data that will be installed in the resource data packet 2 installed in server and client device Packet 1 compares, and determines that the check information between resource data packet 2 and resource data packet 1, check information can be used for identifying text Different information between part a2 and file a1, so that different information can be sent to client device by server, so that Client device is updated resource data packet 1.In this implementation, determine that the executing subject of check information can be visitor Family end equipment, or it is also possible to server, specifically it is not construed as limiting.
For determining that the executing subject of check information is server, according to above content it is found that if what server determined Check information is more accurate, then server can obtain accurate different information according to accurate check information, so that clothes Accurate different information can be sent to client device by business device, improve the synchronous efficiency of data.That is, check information Accuracy will affect the accuracy of different information, if want guarantee different information accuracy, need server to get standard True check information.However, there are no a kind of accurate modes for obtaining check information at this stage, therefore, at this stage in client Carried out between equipment and server data it is synchronous when, exist the duplicate data information of transmission, network flow loss it is larger and The lower technical problem of the synchronous efficiency of data.
To sum up, a kind of data processing method is needed at present, to improve the synchronous efficiency of data.
Fig. 1 is a kind of corresponding flow diagram of data processing method provided in an embodiment of the present invention, this method comprises:
Step 101, server obtains the first information that client device is sent.
It can store the first data packet in the embodiment of the present invention, in client device, can store in server Two data packets.Wherein, the second data packet in server can be to be updated to the third data packet stored in server The data packet arrived, third data packet can be identical as the first data packet, or can also be different from the first data packet, do not make specifically It limits.For example, can be equipped with same resource data packet in server and client side's equipment, installed on client device Resource data packet be the corresponding resource data packet of version V1.1 (i.e. the first data packet), and the resource data installed on server Packet is the corresponding resource data packet of version V1.3 (i.e. the second data packet);In one example, if the version installed on server The corresponding resource data packet of V1.3 is corresponding resource data packet (the i.e. third data of version V1.1 to installation former on server Packet) upgraded, i.e., version V1.3 is upgraded to obtain to version V1.1, then in this example, the first data Packet and third data packet can be identical (being the corresponding resource data packet of version V1.1);In another example, if server The corresponding resource data packet of the version V1.3 of upper installation is the corresponding resource data packet of version V1.2 to installation former on server (i.e. third data packet) is upgraded, i.e., version V1.3 is upgraded to obtain to version V1.2, and version V1.2 It is to be upgraded to version V1.1, then in this example, the first data packet and third data packet can be different, the first number It can be the corresponding resource data packet of version V1.1 according to packet, third data packet can be the corresponding resource data packet of version V1.2.
The following example of the invention is to use the second data packet in server to the first data in client device Illustrate the scheme in the embodiment of the present invention for the synchronous process of packet progress data, it is possible to understand that, it is carried out between other equipment The data synchronization process that the synchronous process of data is also referred in the embodiment of the present invention is realized, is specifically not construed as limiting.
In the embodiment of the present invention, the first information may include the data volume of corresponding N number of first data block of the first data packet Check value corresponding with N number of first data block.In specific implementation, client device can be according to the data of the first data packet First data packet is divided into N number of first data block by amount.Wherein, the mode the first data packet divided can there are many, In one possible implementation, the first data packet can be divided into N number of first according to preset data amount by client device The data volume of data block, each first data block can be identical.For example, the data volume of the first data packet is 905M, to the One data packet carries out dividing the available first data block data block of b1~first b10;Wherein, the first data block b1~the nine the The data volume of each first data block can be 100M in one data block b9, and the data volume of the first data block b10 can be 5M.
Further, it is directed to the first data block of each of the first data block of data block b1~first b10, can be determined The corresponding check value of each first data block.The corresponding check value of each first data block can be the of each first data block One check value (strong check value), or may be the second check value (strong check value) of each data block.Correspondingly, the first letter The check value for the first data block of data block b1~first b10 for including in breath can be the first data block of data block b1~first The first check value of b10 perhaps may be the second check value of the first data block of data block b1~first b10 or may be used also With the second of the first check value of the first data block of data block b1~first b10 and the first data block of data block b1~first b10 Check value is specifically not construed as limiting.
First check value can be a kind of strong check value, such as MD5 check value.MD5 check value can add salt to pass through band MD5 hash mode or without the key for adding the MD5 hash mode of salt to obtain, acquisition process is irreversible encrypted Journey can not obtain the information of the data by the corresponding MD5 check value of a certain data.Correspondingly, according to identical encryption After mode (such as MD5 hash mode of band plus salt) encrypts the first data of file and the second data respectively, the first data Corresponding key key corresponding with the second data is identical, it can be said that bright first data are identical as the second data.To determine the For the first check value of one data block b1, in specific implementation, the first data block b1 can be divided into 512 first point in advance Group, and each first grouping is divided into 32 the first subgroups.Further, by using the mode of MD5 Hash to 512 First grouping is encrypted, available four 32 the second subgroups, this four 32 second subgroup is carried out grade After connection, available one 128 hashed values.Wherein, which can be for corresponding first school the first data block b1 Test value.The reliability of first check value is stronger, and verification is obtained according to corresponding first check value of N number of first data block Information can submit the accuracy of check information.
Second check value can be a kind of weak check value, for example determined based on checksum algorithm (i.e. Asler32 algorithm) Check value.Specifically, the weak check value of the first data block can be to add in the first data group to each field for including With obtain, can will obtain and value is as the first checksum value;It correspondingly, can will be in the mistake for determining the first checksum value The sum of Stage Value of each step is used as the second checksum value in journey.Wherein, the first checksum value and the second checksum value can be with For 16 numerical value, it is possible to further which the second checksum value of 16 the first checksum values and 16 are spliced into one 32 integers, i.e. the second check value of the first data block.
Step 102, server divides N number of first data block, obtains M group data.
In specific implementation, mode that N number of first data block is divided can there are many, in a kind of possible realization side In formula, N number of first data block can be divided into M group data according to preset data number of blocks by server, wherein every group of data Including the quantity of data block can be identical.For example, server can draw the first data block of data block b1~first b10 It is divided into the first data group~the 4th data group, wherein the number that each data group in the first data group~third data group includes Quantity according to block can be 3, and the quantity for the data block that the 4th data group includes can be 1.For example, the first data group includes First data block of data block b1~first b3, the second data group include the first data block b6 of data block b4~first, third data Group includes the first data block of data block b7~first b9, and the 4th data group includes the first data block b10.That is, the first number It can be 300M according to the data volume of each data group in group~third data group, the data volume of the 4th data group can be 5M.
Step 103, server determines the check information of every group of data in M group data.
In one possible implementation, server if it is determined that maximum amount of data in M group data be greater than or equal to it is N number of Minimum data amount in the data volume of first data block, the then process for illustrating that server verifies the second data packet are not tied Beam can continue to execute subsequent step.Herein, the minimum data amount in the data volume of N number of first data block can refer to N number of The data volume of the smallest first data block of data volume in first data block.For example, the first data block of data block b1~first b10 Minimum data amount in data volume can refer to the data volume of the first data block b10, i.e. 5M.
It should be noted that above-mentioned implementation is only a kind of illustrative simple declaration, cited by determine service The unclosed condition of the process that device verifies the second data packet is merely for convenience and purposes of illustration of scheme, does not constitute to scheme It limits.In specific implementation, determine that the unclosed condition of process that server verifies the second data packet can be by ability Field technique personnel are configured according to the actual situation, for example preset data amount threshold value can be set, however, it is determined that in M group data most Big data quantity is greater than or equal to preset data amount threshold value, then can determine process that server verifies the second data packet not Terminate;Wherein, preset data amount threshold value can be fixed numerical value, or may be according to the minimum number in the first data block Obtained numerical value is determined according to amount, for example can be 3/4 of the minimum data amount in the first data block, is specifically not construed as limiting.
It may include the first data block b6 of data block b4~first by taking the second data group as an example, in the second data group, specifically In implementation, the corresponding check value of the first data block of data block b4~first b6 that can include according to the second data group, really The fixed corresponding check value of second data group.Several possible feelings of the corresponding check value of determining second data group are described separately below Condition.
The first situation
In the first situation, the check value of the first data block for including in the first information can be the of the first data block One check value, i.e., what is sent in step 101 is corresponding first check value of the first data block of data block b4~first b6.? In the first situation, the second number can be determined according to corresponding first check value of the first data block of data block b4~first b6 According to corresponding first check value of group, or can also be according to corresponding first school the first data block of data block b4~first b6 It tests value and determines corresponding second check value of the second data group, or can also be according to the first data block of data block b4~first b6 points Not corresponding first check value determines corresponding first check value of the second data group and the second check value, is specifically not construed as limiting.Under Face is described from these three sub- situations respectively.
First sub- situation
If determining the second data group pair according to corresponding first check value of the first data block of data block b4~first b6 Corresponding first check value of first data block of data block b4~first b6 then can be divided into 3 by the first check value answered A grouping, and each grouping is divided into 32 subgroups.Further, by using the mode of MD5 Hash to 3 be grouped into Row encryption, available multiple 32 subgroups, after multiple 32 subgroups are cascaded, available one 128 The hashed value of position.The hashed value can be for corresponding first check value of the second data group.
Second sub- situation
If determining the second data group pair according to corresponding first check value of the first data block of data block b4~first b6 The second check value answered can then sum it up the first check value of the first data block of data block b4~first b6, and can incite somebody to action Arrive and value is as the first checksum value;It correspondingly, can be by the stage of step each during determining the first checksum value The sum of value is used as the second checksum value.It is possible to further by the first checksum value and the second checksum value be spliced into one it is whole Number, which both can be corresponding second check value of the second data group.
For example, if corresponding first check value of the first data block of data block b4~first b6 is respectively R1, R2 and R3, Each byte in R1, R2 and R3 can then be summed up, using obtain and value as the first checksum value;Correspondingly, may be used Using by the sum of Stage Value of step each during determining the first checksum value as the second checksum value.Wherein, the first school It tests and numerical value that value and the second checksum value all can be 16, it is possible to further by 16 the first checksum values and 16 Second checksum value of position is spliced into one 32 integers, i.e. corresponding second check value of the second data group.
The sub- situation of third
If determining the second data group pair according to corresponding first check value of the first data block of data block b4~first b6 The first check value and the second check value answered can then determine corresponding first verification of the second data group respectively in the manner described above Value and the second check value, details are not described herein again.
Second case
In second case, the check value of the first data block for including in the first information can be the of the first data block Two check values, i.e., what is sent in step 101 is corresponding second check value of the first data block of data block b4~first b6.? In second case, the second number can be determined according to corresponding second check value of the first data block of data block b4~first b6 According to corresponding first check value of group, or can also be according to corresponding second school the first data block of data block b4~first b6 It tests value and determines corresponding second check value of the second data group, or can also be according to the first data block of data block b4~first b6 points Not corresponding second check value determines corresponding first check value of the second data group and the second check value, is specifically not construed as limiting.Under Face is described from these three sub- situations respectively.
4th sub- situation
If determining the second data group pair according to corresponding second check value of the first data block of data block b4~first b6 Corresponding second check value of first data block of data block b4~first b6 then can be divided into 3 by the first check value answered A grouping, and each grouping is divided into 32 subgroups.Further, by using the mode of MD5 Hash to 3 be grouped into Row encryption, available multiple 32 subgroups, after multiple 32 subgroups are cascaded, available one 128 The hashed value of position.The hashed value can be for corresponding second check value of the second data group.
5th sub- situation
If determining the second data group pair according to corresponding second check value of the first data block of data block b4~first b6 The second check value answered can then sum it up the second check value of the first data block of data block b4~first b6, and can incite somebody to action Arrive and value is as the first checksum value;It correspondingly, can be by the stage of step each during determining the first checksum value The sum of value is used as the second checksum value.It is possible to further by the first checksum value and the second checksum value be spliced into one it is whole Number, which both can be corresponding second check value of the second data group.
6th sub- situation
If determining the second data group pair according to corresponding second check value of the first data block of data block b4~first b6 The first check value and the second check value answered can then determine corresponding first verification of the second data group respectively in the manner described above Value and the second check value, details are not described herein again.
Further, server can be according to check value the second data packet corresponding to the first data group of the second data group It is verified.Wherein, corresponding second data packet of the first data group can be to be directed to after the first data group executes step 103 to obtain The data packet arrived.Specifically, after being verified according to the check value of the first data group to the second data packet, it can be to second Data packet is updated, and obtains corresponding second data packet of the first data group;Correspondingly, in the check value according to the second data group After the second data packet corresponding to the first data group verifies, can corresponding to the first data group the second data packet carry out more Newly, corresponding second data packet of the second data group is obtained.It should be noted that obtaining corresponding second data packet of third data group The process of the second data packet corresponding with the 4th data group is referred to the first data group and the second data group executes, no longer superfluous It states.
In specific implementation, server can in obtaining server corresponding second data packet of the first data group that store Afterwards, it since the i-th bit data in corresponding second data packet of the first data group, obtains identical as the data volume of the first data group Target set of data, and target set of data can be divided, obtain T the second data blocks;Wherein, T the second data blocks The data volumes of data volume and T the first data blocks can be identical.Further, server can be according to T the second data blocks Check value determine the corresponding check value of target set of data, for example, in the first sub- situation, server can be according to T second First check value of data block determines corresponding first check value of target set of data, and can be according to the first school of the second data group Value and corresponding first check value of target set of data are tested, the second data packet is verified, generates the corresponding school of the second data group Test information;In the second sub- situation, server can determine target set of data pair according to the first check value of T the second data blocks The second check value answered, and can according to corresponding second check value of the second check value and target set of data of the second data group, Second data packet is verified, the corresponding check information of the second data group is generated;In the sub- situation of third, server can root Corresponding first check value of target set of data and the second check value are determined according to the first check value of T the second data blocks, and can be with According to corresponding first check value of the first check value and target set of data of the second data group, the second check value of the second data group The second check value corresponding with target set of data, verifies the second data packet, generates the corresponding verification letter of the second data group Breath.Correspondingly, in the 4th sub- situation, server can determine target data according to the second check value of T the second data blocks Corresponding first check value of group, and can be according to corresponding first verification of the first check value and target set of data of the second data group Value, verifies the second data packet, generates the corresponding check information of the second data group;In the 5th sub- situation, server can To determine corresponding second check value of target set of data according to the second check value of T the second data blocks, and can be according to second Corresponding second check value of the second check value and target set of data of data group, verifies the second data packet, generates second The corresponding check information of data group;In the 6th sub- situation, server can be true according to the second check value of T the second data blocks Corresponding first check value of the data group that sets the goal and the second check value, and can be according to the first check value and mesh of the second data group The second check value and corresponding second check value of target set of data of corresponding first check value of data group, the second data group are marked, Second data packet is verified, the corresponding check information of the second data group is generated.
In the following example of the invention by taking the second sub- situation as an example specifically describe to the second data packet carry out verification and Generate the realization process of the corresponding check information of the second data group.
In specific implementation, the (the from corresponding second data packet of the first data group the 1st by taking the process that first time executes as an example Position data start), if in the second data group including the first data block b6 of data block b4~first, and the first data block b4~the first The data volume of the first data block of each of data block b6 is 100M, then in first time implementation procedure, server can be from A data in corresponding second data packet of first data group starts, and successively obtains the data of 300M as target data Group, and target set of data is divided into the second data block of data block c4~second c6;Wherein, the second data of data block c4~second The data volume of the second data block of each of block c6 can be 100M.Further, server can determine the second data block The first check value of the data block of c4~second c6, and can be according to the first check value of the second data block of data block c4~second c6 Determine target set of data the second check value (be referred to determine that the process of the second check value of the second data group is executed, It repeats no more).
Further, server can be by corresponding second check value corresponding with target set of data second of the second data group Check value compares, however, it is determined that corresponding second check value of the second data group the second check value phase corresponding with target set of data Together, then the second data group can be determined according to the T that the second data group includes corresponding first check values of the first data block Corresponding first check value, and target set of data corresponding first can be determined according to the first check value of T the second data blocks Check value.For determining the process of corresponding first check value of the second data group, specifically, if the second data group includes Corresponding first check value of first data block of data block b4~first b6 is respectively R1, R2 and R3, then can by by R1, R2 and R3 is combined into a numerical value, and then asks HD5 cryptographic Hash, i.e. corresponding first check value of the second data group to the numerical value.
If it is determined that corresponding first check value of the second data group the first check value corresponding with target set of data is identical, then take The first check information of the second data group can be generated in business device.Wherein, may include in the first check information of the second data group Position information (i.e. identification information) corresponding to target set of data identical with the first data packet in second data packet.In an example In, if corresponding second data packet of the first data group is the second data packet, the first check information of the second data group can be with Are as follows: the second data group (data of 301M in the data Yu the first data packet of 1M to 300M in the second data packet The data of 601M) it is identical.
It, can also be to the first data group pair after the first check information for generating the second data group in the embodiment of the present invention The second data packet answered is updated.For example, can be by the target set of data in corresponding second data packet of the first data group (i.e. The data of 1M to 300M) cavity is replaced with, or can also be spcial character by the data modification of 1M to 300M, or Person can also be labeled the data of 1M to 300M, specifically be not construed as limiting.
Further, server can execute above-mentioned step since the next bit data of target set of data.It needs Bright, if target set of data is identical as the second data group, during executing for second, server can be from the second number According in packet remove target set of data after the 1st data start, execute the above process.When the second data group of use is to the first data group After each data in corresponding second data packet are finished, server can be by above-mentioned execution step successively to first Corresponding second data packet of data group is updated, and obtains corresponding second data packet of the second data group.
In one possible implementation, however, it is determined that corresponding second check value of the second data group and target set of data pair The second check value answered is different, then illustrates that target set of data is different from the second data group, divided at this point, server can determine Whether journey terminates that (whole position data in the second data packet become cavity and/or have all been marked or the number of the second data group It is equal to the minimum data amount in N number of first data block according to amount, it is determined that partition process has terminated).If server determination divided Journey is not finished, then third data group can be used since the corresponding a data of the second data group, executes above-mentioned verified Journey.If server determine partition process terminated (i.e. the data volume of the second data group be equal to N number of first data block in minimum number According to amount), then the second check information of the second data group can be generated in server, and third data group can be used from the second data The corresponding a data of group starts, and executes above-mentioned checking procedure.It wherein, may include the second data packet in the second check information In position information (i.e. identification information) corresponding to the target set of data different from the first data packet.In one example, if first Corresponding second data packet of data group is the second data packet, then the second check information of the second data group can be with are as follows: the second number Data according to 1M to 300M in packet are different from the first data packet.
In the embodiment of the present invention, the first check value can be strong check value, and the second check value can be weak check value, pass through By the way of first comparing weak check value and comparing strong check value again, on the one hand purpose data group can be filtered out by weak check value In with the obvious identical data information of Y data group, thus the efficiency for mitigating workload, improving data processing;On the other hand, lead to It crosses and the corresponding check information of Y data group is determined using strong check value and weak check value jointly, it is corresponding that Y data group can be improved Check information accuracy.Further, check information may include the first check information and the second check information, the first school Testing information is the corresponding check information of identical with Y data group data information in target set of data, and the second check information can be with For the corresponding check information of data information different from Y data group in target set of data.By obtain the first check information and Second check information, the available more complete check information of server, so that client device is to server sync Data it is more accurate.
Step 104, server is if it is determined that the data volume of corresponding second data packet of M data group is less than preset data amount threshold Value, thens follow the steps 105;If it is determined that the data volume of corresponding second data packet of M data group is greater than or equal to preset data amount Threshold value thens follow the steps 102.
In the embodiment of the present invention, server is carried out using third data group the second data packet corresponding to the second data group After verification, can the second data packet corresponding to the second data group be updated, generate corresponding second data of third data group Packet.Further, server if it is determined that corresponding second data packet of third data group data volume be less than preset data amount threshold value, Then illustrate total data (i.e. whole digits in the second data packet identical as the data in the first data packet in the second data packet According to become cavity and/or all be marked, checking procedure terminates);At this point, server can execute step 105.Wherein, in advance If data-quantity threshold can be rule of thumb configured by those skilled in the art, specifically it is not construed as limiting.
Correspondingly, server is if it is determined that the data volume of corresponding second data packet of third data group is greater than or equal to present count According to amount threshold value, then illustrate that (i.e. checking procedure is not tied in the presence of the data different from the data in the first data packet in the second data packet Beam);At this point, server can execute step 102 again.In specific implementation, server can carry out the to N number of first data block Secondary division, if N number of first data are divided into P data group, the data for including in each data group in P data group The quantity of block can be less than or equal to the data block for dividing for the first time and including in each data group in M obtained data group Quantity.That is, P can be greater than or equal to M.
Further, server is if it is determined that the data volume of every group of data is respectively less than the number of N number of first data block in P group data According to the minimum data amount in amount, then the process for illustrating that server verifies the second data packet has terminated, at this point, server can The corresponding check information of M group data is sent to client device.Correspondingly, server is if it is determined that data volume in P group data Maximum data volume be greater than or equal to N number of first data block in minimum data amount, then illustrate server to the second data packet into Row verification process be not finished, at this point, server can be directed to each data group in P data group execution step 103~ Step 105 (or 102).
In the embodiment of the present invention, check information is obtained by using the mode of more wheel verifications, server acquisition can be improved The accuracy of the check information arrived, so that the data synchronization process between client device and server is more accurate;Into One step, the data volume that the second wheel verifies corresponding every group of data can be less than the data for the first round verifying corresponding every group of data Amount, that is to say, that the embodiment of the present invention, can be to avoid only with data caused by a wheel verification by way of taking turns verification more Information repeats the technical issues of transmitting, and so as to saving network flow, improves the synchronous efficiency of data.
Step 105, server determines different information according to the check information and the second data packet of M group data, and by difference Information is sent to client device.
Herein, if server is after first time divides, the checking procedure of the second data packet is terminated, then M group data Check information can only include the first check information, perhaps can also only include the second check information or can also include the One check information and the second check information.If the check information of M group data only includes the first check information, illustrate the second data packet In data it is identical as the data in the first data packet;If the check information of M group data only includes the second check information, illustrate Data in two data packets and the data in the first data packet are entirely different;If the check information of M group data includes the first verification Information and the second check information illustrate that a part of data in the second data packet are identical as the data in the first data packet, another Partial data is different from the data in the first data packet.
By taking the second data group as an example, if the check information of the second data group are as follows: 1M is to 300M's in the second data packet Data are different from the first data packet, then data (the i.e. difference of the 1M to 300M in available second data packet of server Information), and the second information is generated according to different information, the second information is sent to client device.Correspondingly, client device The second information can be parsed after receiving the second information, obtain different information, and the second data are updated according to different information Packet.For example, if the data that the different information that client device parses is the 1M to 300M in the second data packet, visitor The data of 1M to 300M in first data packet can be updated to the 1M in the second data packet to by family end equipment The data of 300M.
It should be noted that above-mentioned steps number is only to execute a kind of example of process, do not constitute to each step Execute the restriction of sequencing.
In the above embodiment of the present invention, the second data packet is verified by using the first data packet, can be made Different information is transferred to client device by server, without entire first data packet is sent to client device, thus The loss of network flow can be reduced to avoid duplicate data information is transmitted, improve the synchronous efficiency of data;And the present invention is real The mode for determining the check value of data group in example by using the check value of data block is applied, client device and clothes can be made Being only performed once communication interaction between business device can be completed synchronizing process, without executing multiple communication interaction, so as to subtract The pressure of light network communication, reduces network traffic flow.That is or, data processing method in the embodiment of the present invention can be with It is adapted to the network environment of low bandwidth and flow-sensitive.
The angle for carrying out data interaction between client device and server below describes the side in the embodiment of the present invention Case, it is corresponding with data processing method illustrated in Figure 1.
Fig. 2 is a kind of flow diagram that client device is interacted with server provided in an embodiment of the present invention, this method Include:
Step 201, client device sends the first information to server.
It herein, may include the data volume and corresponding first verification of N number of data block of N number of data block in the first information Value, wherein what N number of data block can divide the first data packet for client device.
It in one example, can also be including other information relevant to the first data packet, such as first in the first information It the identification information of data packet, the position information of N number of data block and renewal time of N number of data block etc., is specifically not construed as limiting.
Step 202, server determines check information according to the first information, and is determined according to check information and the second data packet Different information.
In one possible implementation, server can be right after receiving the first information that client device is sent The first information is parsed, and the identification information for the first data packet for including in the first information is obtained.Further, server can be with According to the identification information of the first data packet, the second data packet corresponding with the first data packet of server memory storage is obtained, and can With the second data packet, to determine check information according to the first information.Concrete implementation process is referred to step 102~step 105 (or the process illustrated in step 102), specifically it is not construed as limiting.
If check information is that the third position data in the second data packet are different from the first data packet to the 9th data, take Business device can determine that the third position data in the second data packet to the 9th data are different information.Wherein, position refers to serial logical Position data in letter may include 6 bits, or also may include 9 bits, specifically be not construed as limiting.
Step 203, different information is sent to client device by server.
Herein, different information can be sent to client device by wired mode (such as cable, optical fiber) by server, Or (such as bluetooth, electromagnetic wave) different information can also be sent to client device wirelessly, it does not limit specifically It is fixed.
Step 204, client device updates the first data packet stored in client device according to different information.
It in one possible implementation, may include variance data and identification information in different information, client is set It is standby data in first data packet to be updated to by variance data according to identification information.
It should be noted that Fig. 2 is only a kind of illustrative simple declaration, use server as determining check information Executing subject be merely for convenience and purposes of illustration of scheme, do not constitute the restriction to scheme.It in specific implementation, can also be using visitor Family end equipment is not construed as limiting as the executing subject for determining check information, the embodiment of the present invention.
The scheme in the embodiment of the present invention is specifically described with example one and example two below.
Example one
Fig. 3 a is a kind of schematic diagram of the corresponding embodiment of data processing method provided in an embodiment of the present invention, such as Fig. 3 a institute Show, the resource data packet a that has been friends in the past is stored on client device, and (referred to as data a), it is corresponding new that server is stored with data a Resource data packet b (referred to as data b).Wherein, as shown in Figure 3a, data a and data b all can be 48 data.Wherein, 1 Position, which can refer to, to be the lesser data volume such as 1 byte, 1 bit, or the biggish data such as may also mean that 1M, 1G Amount, does not limit this.
It should be noted that following example (i.e. example one and example two) of the invention be only two kinds it is illustrative briefly It is bright, cited by data a and data b be merely for convenience and purposes of illustration of scheme, do not constitute the restriction to scheme, be embodied In, the data volume of data a and data b can be far longer than 48, for example can be 100G or 10T.
Specific implementation procedure is as follows:
The first information is sent to server by first stage, client.
In specific implementation, client device can be divided data a, obtain data block S1~data block S8, wherein Data block S1~data block S8In each data block may each comprise 6 data.As shown in Figure 3a, data block S1Including first Position data~six data, i.e. data ABCD12;Data block S2Including the 7th data~12nd data, i.e. data ACDE23;Data block S3Including the 13rd data~the tenth eight bit data, i.e. data ABDE34;Data block S4Including the 19th Position data~the 20th four figures evidence, i.e. data ADEF45;Data block S5Including the 20th five-digit number evidence~third ten bit data, That is data BDEF56;Data block S6Including 30 a datas~third sixteen bit data, i.e. data BCEF67;Data block S7 Including the 37th data~42nd data, i.e. data BEDA78;Data block S8Including the 42nd data~ 40th eight bit data, i.e. data CEDF89.
Further, client device can calculate separately data block S1~data block S8The first detected value and second inspection Measured value, the first detected value can be strong check value, and the second detected value can be weak check value.With data block S1For, in one kind In possible implementation, client device can determine data block S by checksum algorithm1Weak check value, and can lead to It crosses MD5 hash algorithm and determines data block S1Strong check value.It should be noted that data block packet can be used in the embodiment of the present invention The data included calculate the strong check value and weak check value of data block, for example, data block S can be used1Including data ABCD12 calculates data block S1Strong check value and weak check value.
In the embodiment of the present invention, client device can be according to data block S1~data block S8Identification information, data volume letter Breath, weak check value and strong check value generate in the first information, and the first information is sent to server.Wherein, the mark of data block Knowing information can be the mark for the position data that data block includes, such as data block S3Identification information be the 19th data~the 20 four figures evidences;The data amount information of data block can be the quantity for the position data that data block includes, such as data block S3's Data amount information is six data.
In one possible implementation, data block S1~data block S8Identification information, data amount information, weak verification Value and strong check value can be stored in the first information in table form, and table 1 is one kind of the table stored in the first information Example.As shown in table 1, with data block S1For, data block S1Identification information be a data~six data, data Amount information is six data, and weak check value is H1, strong check value is U1
A kind of table 1: signal of table in the first information
Second stage, server is to data block S1~data block S8Carry out first time division.
After server receives the first information of client device transmission, it can parse the first information and obtain data block S1~ Data block S8Identification information, data amount information, weak check value and strong check value, and can be to data block S1~data block S8Into Row divides for the first time, obtains data group M11.Wherein, data group M11In may include data block S1~data block S8, i.e. data group M11Identification information be a data~the 40th eight bit data, data amount information be 48 data;And server can root According to data block S1~data block S8Strong check value (i.e. U1~U8) determine data group M11Weak check value.
Further, server can obtain and data group M since a data of data b11Data volume it is identical Target set of data, target set of data may include 48 data in data b, as shown in Figure 3a, target set of data be count According to b, 48 data that target set of data includes can be for " ABCD12ACDE23ABDE34ADEF45BDEF56BCEF67BEDA7 8DECA90".Target set of data can be divided into and data block S by server1~data block S8Identical eight data of data volume Block (eight data blocks anticipated as shown in Figure 3a), and can determine the weak check value and strong check value of each data block, Jin Ergen The weak check value of target set of data is determined according to the strong check value of eight data blocks.Server is by data group M11Weak check value and mesh The weak check value of mark data group compares, and determines data group M11Weak check value U11Not with the weak check value of target set of data Together.At this point, server can determine data group M11It is different from target set of data.
Phase III, server is to data block S1~data block S8Second is carried out to divide.
Due to data group M11Data volume be greater than data block S1~data block S8The data volume of middle any data block, therefore, Server can be to data block S1~data block S8It carries out second to divide, obtains data group M21With data group M22.Wherein, data Group M21In may include data block S1~data block S4, data group M11Identification information be a data~the 20th four figures According to data amount information is 24 data, this 24 data can be for " ABCD12ACDE23ABDE34ADEF45 ";Data group M22In It may include data block S5~data block S8, i.e. data group M22Identification information be the 20th five-digit number according to the~the four ten eight-digit number According to data amount information is 24 data, this 24 data can be for " BDEF56BCEF67BEDA78CEDF89 ".And server It can be according to data block S1~data block S4Strong check value (i.e. U1~U4) determine data group M21Weak check value, and can root According to data block S5~data block S8Strong check value (i.e. U5~U8) determine data group M22Weak check value.
Further, server can obtain and data group M since a data of data b21Data volume it is identical Target set of data (data group M' as shown in Figure 3a21).Wherein, data group M'21It may include the first digit in data b According to the 20th four figures evidence, data amount information is 24, this 24 data can with for "ABCD12ACDE23ABDE34ADEF45".Server can be by data group M'21It is divided into and data block S1~data block S4's Identical four data blocks of data volume (i.e. each data block may include 6 data), and determine the weak verification of each data block Value and strong check value, and then data group M' is determined according to the strong check value of four data blocks21Weak check value.Server is by data Group M21Weak check value and data group M'21Weak check value compare, can determine M21Weak check value and data group M'21 Weak check value it is identical;At this point, server can be according to data block S1~data block S4Strong check value (i.e. U1~U4) determine number According to a group M21Strong check value, and can be according to target set of data M'21In the strong check values of four data blocks determine target set of data M'21Strong check value;Further, server can be by data group M21Strong check value and target set of data M'21Strong verification Value compares, and determines data group M21Strong check value and target set of data M'21Strong check value it is identical, i.e. data group M21With Data group M'21It is identical;At this point, the first check information can be generated in server.
Table 2 is a kind of example of the first check information.As shown in table 2, the first check information can be with are as follows: in data a A data~the 20th four figures evidence is with a data~the 20th four figures in data b according to identical.
Table 2: the check results of second stage
Data a Data b Check results
A data~the 20th four figures evidence A data~the 20th four figures evidence It is identical
Server can be updated data b after generating the first check information, in a kind of update mode, service Device can be by a data in data b~the 20th four figures according to cavity is updated to, to obtain updated data b. Wherein, a data in updated data b~the 20th four figures evidence can be cavity.Further, server can To execute the process of verification according to updated data b, specifically, server can be from first of updated data b The data (i.e. the 20th five-digit number evidence) in non-cavity start, and obtain and data group M21The identical target set of data of data volume (for Convenient for description, referred to as data group M'22), data group M'22It may include the 20th five-digit number in data b according to the 48th Data, data amount information are 24, this 24 data can be for " BDEF56BCEF67BEDA78DECA90 ".Server can incite somebody to action Data group M'22It is divided into and data block S1~data block S4Identical four data blocks of data volume, and can determine every number Data group M' is determined according to the weak check value and strong check value of block, and then according to the strong check value of four data blocks22Weak check value. Server is by data group M21Weak check value and data group M'22Weak check value compare, can determine data group M21It is weak Check value and data group M'22Weak check value it is different, at this point, server can determine data group M21With data group M'22It is different.
So far step is executed, server is completed using data group M21To the checking procedure of updated data b, into one Data group M can be used in step ground, server22Updated data b is verified, specifically implementation procedure is referred to above-mentioned Content specifically repeats no more.Server uses data group M22During being verified to updated data b, in data b not In the presence of with data group M22Identical data, therefore, server does not generate check information.
Phase III, server is to data block S1~data block S8Carry out third time division.
Due to data group M21With data group M22Data volume be greater than data block S1~data block S8The number of middle any data block According to amount, therefore, server can be to data block S1~data block S8Third time division is carried out, data group M is obtained31, data group M32、 Data group M33With data group M34.Wherein, data group M31In may include data block S1With data block S2, data group M31Mark Information can be first data~12nd data, and data amount information can be 12-bit data, this 12-bit data can be "ABCD12ACDE23";Data group M32In may include data block S3With data block S4, data group M32Identification information can be 13rd data~the 20th four figures evidence, data amount information can be 12-bit data, this 12-bit data can be "ABDE34ADEF45";Data group M33In may include data block S5With data block S6, data group M33Identification information can be 20th five-digit number evidence~third sixteen bit data, data amount information can be 12-bit data, this 12-bit data can be "BDEF56BCEF67";Data group M34In may include data block S7With data block S8, i.e. data group M33Identification information be the 37 data~the 40th eight bit data, data amount information are 12-bit data, this 12-bit data can be “BEDA78CEDF89”。
Further, server can be according to data block S1With data block S2Strong check value (i.e. U1And U2) determine data Group M31Weak check value, according to data block S3With data block S4Strong check value (i.e. U3And U4) determine data group M32Weak verification Value, according to data block S5With data block S6Strong check value (i.e. U5And U6) determine data group M34Weak check value, according to data block S7~data block S8Strong check value (i.e. U7~U8) determine data group M34Weak check value.
With data group M33For, server is opened from a data (i.e. the 20th five-digit number evidence) of updated data b Begin, obtains and data group M33The identical target set of data of the data volume (M' to anticipate as shown in Figure 3a31).Wherein, data group M'31 It may include the 20th five-digit number in data b according to third sixteen bit data, data amount information is 12, this 12-bit data can Think " BDEF56BCEF67 ".Server can be by data group M'31It is divided into and data block S1With data block S2Data volume phase Two same data blocks, and determine the weak check value and strong check value of each data block, and then according to the strong school of two data blocks It tests value and determines data group M'31Weak check value.Server is by data group M33Weak check value and data group M'31Weak check value It compares, can determine data group M33Weak check value and data group M'31Weak check value it is identical;At this point, server can be with According to data block S1With data block S2Strong check value (i.e. U1And U2) determine data group M33Strong check value, and can be according to mesh Mark data group M'31In the strong check values of two data blocks determine target set of data M'31Strong check value;Further, server It can be by data group M33Strong check value and target set of data M'31Strong check value compare, determine data group M33Strong school Test value and target set of data M'31Strong check value it is identical, i.e. data group M33With data group M'31It is identical;At this point, server can be with The first check information is generated, as shown in table 3.
Table 3: the check results of phase III
Further, the 20th five-digit number evidence~third sixteen bit data in data b can be become cavity by server, Obtain updated data b.Wherein, a data~third sixteen bit data in updated data b can be cavity. Further, server can obtain and data group M since the 37th data of data b33The identical mesh of data volume Data group is marked, according to data group M33Weak check value and target set of data weak check value comparing result and data group M33 Strong check value and target set of data strong check value comparing result, execute checking procedure, be specifically referred to above content, It repeats no more.
Fourth stage, server is to data block S1~data block S8Carry out the 4th division.
Due to data group M31, data group M32, data group M33With data group M34Data volume be greater than data block S1~data block S8The data volume of middle any data block, therefore, server can be to data block S1~data block S8The 4th division is carried out, is obtained Data block S1~data block S8.It is directed to data block S1~data block S8 and updated data b is verified, obtain verification knot Fruit, specific implementation process are referred to above content, repeat no more.
In one example, the check results of fourth stage can be as shown in table 4.Wherein, the 37th digit of data a It is identical as the 37th data~42nd data of data b according to~the four ten two data, and the 40th of data a Two data~the 40th eight bit data is different from the 42nd data~the 40th eight bit data of data b.
Table 4: the check results of fourth stage
Different information is sent to client device by the 5th stage, server.
Server, can basis after getting first stage~fourth stage check results (i.e. shown in 2~table of table 4) Check results determine identical data in data b and data a, and identification information of the available identical data in data a With the identification information (i.e. different information) in data b, and then two identification informations can be sent to client device.Citing For, according to the content of 2~table of table 4 it is found that a data~the 20 four figures in data a according to the in data b A data~the 20th four figures is according to identical, in the 20th five-digit number evidence~third sixteen bit data and data b in data a The 20th five-digit number evidence~third sixteen bit data it is identical, the 37th data~42nd data in data a It is identical as the 37th data~42nd data in data b, and the 42nd data~4th in data a Ten eight bit datas are different from the 42nd data~the 40th eight bit data in data b;At this point, server can will be identical Data are sent to client device in the mark in data a and the mark in data b.
Table 5 is a kind of schematic table of different information provided in an embodiment of the present invention.
A kind of table 5: signal of different information
Data a Data b
A data~the 20th four figures evidence A data~the 20th four figures evidence
20th five-digit number evidence~third sixteen bit data 20th five-digit number evidence~third sixteen bit data
37th data~42nd data 37th data~42nd data
After client device receives the different information of server transmission, the first data packet can be determined from different information With the identification information where data identical in the second data packet, however, it is determined that identification information of the identical data in data a with Identification information in data b is identical, then may not need the data a updated in client device according to the check results;Server If it is determined that identification information (such as the of the identical data in the identification information (such as the 4th data) and data b in data a 12-bit data) it is different, then the 12-bit data in data a can be replaced with to the 12-bit data in data a.For example, Check results as shown in Table 2, a data~the 20th four figures of data a is according to a data~the with data b 20 four figures are according to identical, then server may not need a data to data a~the 20th four figures according to being updated, I.e. server, which may not need, is directed to any operation of check results execution.
Further, the data a data different from data b are directed to, client device can be obtained using a variety of methods Different data, for example can be downloaded by network, specifically it is not construed as limiting.In one possible implementation, it is directed to school The different data of result are tested, are different from the data of data a in the available data b of server, and be sent to client device.Tool It says to body, server can determine the 42nd data~the 40th eight bit data and data of data a according to the content of table 4 The 42nd data of b~the 40th eight bit data is different, therefore, the 42nd digit of the available data b of server According to the~the four ten eight bit data (i.e. DECA90), and by identification information (the 42nd data~4th of DECA90 and data a Ten eight bit datas) it is sent to client device, so that client device is by the 42nd data~48th of data a Data (i.e. CEDF89) are updated to DECA90.
Example two
Fig. 3 b is the schematic diagram of the corresponding embodiment of another data processing method provided in an embodiment of the present invention, such as Fig. 3 b Shown, storage is had been friends in the past on client device, and (referred to as data c), server are stored with the corresponding new money of data c to resource data packet c Data d (the referred to as data d) of source data packet.Wherein, data c may include 60 data, this 60 data are " ABCD12A CDE23ABDE34ADEF45BDEF56BCEF67BEDA78CEDF89CFAD90CDFB01";Data d may include 44 data, This 44 data are " 38AFABCD12ACDE23ABDE34ADEF45BDEF5691EBCEDF89 ".Using data d to data c into The implementation procedure that row updates is as follows:
The first information is sent to server by first stage, client.
In specific implementation, client device can be divided data c, obtain data block Q1~data block Q10, wherein Data block Q1~data block Q10In each data block may each comprise 6 data.As shown in Figure 3b, data block Q1Including first Position data~six data, i.e. data ABCD12;Data block Q2Including the 7th data~12nd data, i.e. data ACDE23;Data block Q3Including the 13rd data~the tenth eight bit data, i.e. data ABDE34;Data block Q4Including the 19th Position data~the 20th four figures evidence, i.e. data ADEF45;Data block Q5Including the 20th five-digit number evidence~third ten bit data, That is data BDEF56;Data block Q6Including 30 a datas~third sixteen bit data, i.e. data BCEF67;Data block Q7 Including the 37th data~42nd data, i.e. data BEDA78;Data block Q8Including the 42nd data~ 40th eight bit data, i.e. data CEDF89;Data block Q9Including the 49th data~the 50th four figures evidence, i.e. data CFAD90;Data block Q10Including the 50th five-digit number according to the~the six ten bit data, i.e. data CDFB01.
Further, client device can calculate separately data block Q1~data block Q10Weak check value and strong verification Value, and can be according to data block Q1~data block Q10Identification information, data amount information, weak check value and strong check value generate the The first information is sent to server by one information.
Second stage, server is to data block Q1~data block Q10Carry out first time division.
It, can be to data block Q after server receives the first information of client device transmission1~data block Q10Carry out the It is primary to divide, obtain data group E11, data group E12With data group E13.Wherein, data group E11In may include data block Q1~number According to block Q4, data group E11Identification information be a data~the 20th four figures evidence, data amount information be 24 data, this 24 data are " ABCD12ACDE23ABDE34ADEF45 ";Data group E12In may include data block Q5~data block Q8, number According to a group E12Identification information be the 20th five-digit number according to the~the four ten eight bit data, data amount information is 24 data, this 24 Data are " BDEF56BCEF67BEDA78CEDF89 ";Data group E13In may include data block Q9~data block Q10, data group E13Identification information be the 49th data~the 6th ten bit data, data amount information is 12-bit data, this 12-bit data is "CFAD90CDFB01".And server can be according to data block Q1~data block Q4Strong check value determine data group E11It is weak Check value, according to data block Q5~data block Q8Strong check value determine data group E12Weak check value, and can be according to data Block Q9~data block Q10Strong check value determine data group E13Weak check value.
Further, server can obtain and data group E since a data of data d11Data volume it is identical Target set of data.Wherein, target set of data may include 24 data in data b, this 24 data are "38AFABCD12ACDE23ABDE34AD".Target set of data can be divided into and data block Q by server1~data block Q4's Identical four data blocks of data volume, and can determine the weak check value and strong check value of each data block, and then according to four The strong check value of data block determines the weak check value of target set of data.Server is by data group E11Weak check value and target data The weak check value of group compares, and determines data group E11Weak check value and target set of data weak check value it is different.At this point, clothes Business device can determine data group E11With data group E'11Between have differences information.
Server can obtain and data group E since the second data of data d11The identical number of targets of data volume According to group.Wherein, target set of data may include 24 data in data b, this 24 data are "8AFABCD12ACDE23ABDE34ADE".Server determines data group E12Weak check value and target set of data weak check value Difference, and determine data group E12Strong check value and target set of data strong check value it is different;At this point, server can determine number According to a group E11It is different from target set of data.Further, server can be since the third position data of data d, acquisition and data Group E11The identical target set of data of data volume.Wherein, target set of data may include 24 data in data b, and this 24 Data are " AFABCD12ACDE23ABDE34ADEF ".Server determines data group E12Weak check value and target set of data it is weak Check value is different, at this point, server can determine data group E11It is different from target set of data.
As procedure described above, server can successively be executed from a data of data d to last a data, held Row to five-digit number according to when, server can determine got according to since the five-digit number of data d target set of data (as scheme The data group E' that 3b is illustrated11) and data group E11It is identical, at this point, server can be according to data block Q1~data block Q4It is strong Check value determines data group E11Strong check value, and the strong check value of four data blocks of target set of data determines target set of data E'11Strong check value;Server is by data group E11Strong check value and target set of data E'11Strong check value compare, really Determine data group E11Strong check value and target set of data E'11Strong check value it is identical, therefore, server can be generated verification knot Fruit.Wherein, data group E'11It may include 24 data in data d, this 24 data are "ABCD12ACDE23ABDE34ADEF45".Server after generating check results, can by data d five-digit number according to~ 29th data are updated to cavity, obtain updated data d;And it can make since the third ten bit data of data d With data group E11It is verified.
If data group E11The checking procedure of data d is terminated, then server can be directed to the first of updated data d Position data (i.e. third ten bit data) start, and use data group E12With data group E13Data d is verified respectively.Specifically hold Row process is referred to above content, repeats no more.Using data group E12With data group E13The mistake that data d is verified It is not present and data group E in Cheng Zhong, data d12Or data group E13Identical data, therefore, server do not generate in this process Check results.
In one example, the check results of second stage can be as shown in table 6.Wherein, a data of data c~ 20th four figures is according to identical as 29 data of the five-digit number of data d evidence~the.
Table 6: the check results of second stage
Data c Data d Check results
A data~the 20th four figures evidence 29 data of five-digit number evidence~the It is identical
Phase III, server is to data block Q1~data block Q10Second is carried out to divide.
Server can be to data block Q1~data block Q10It carries out second to divide, obtains data group E21, data group E22、 Data group E23, data group E24With data group E25.Using data group E21, data group E22, data group E23, data group E24And data Group E5During to data d verification, it is not present and data group E in data d21, data group E22, data group E23, data group E24Or Data group E25Identical data, therefore, server does not generate check information in this process.
Fourth stage, server is to data block Q1~data block Q10Carry out third time division.
Server can be to data block Q1~data block Q10Third time division is carried out, data block Q is obtained1~data block Q10。 It is directed to data block Q1~data block Q10It is verified with updated data d, obtains check results.
In one example, the check results of fourth stage can be as shown in table 7.Wherein, the 37th digit of data a It is identical as the 37th data~42nd data of data b according to~the four ten two data, and the 40th of data a Two data~the 40th eight bit data is different from the 42nd data~the 40th eight bit data of data b.
Table 7: the check results of fourth stage
Different information is sent to client device by the 5th stage, server.
Server is directed to verification knot after getting first stage~fourth stage check results (i.e. table 6 and table 7) The identical data of fruit, for the check results shown in the table 6, a data~the 20th four figures of data c according to and data d Five-digit number it is identical according to~the two ten nine data, therefore, server can be by the identical data of check results in data c Identification information (i.e. a data~the 20th four figures evidence) and data d in identification information (i.e. five-digit number is according to~the 29 data) it is sent to client device, so that client device is according to a data~24th in data c 29 data of five-digit number evidence~the in the data more new data c of position, i.e., by the five-digit number evidence~the 20 in data c Nine data 12ACDE23ABDE34ADEF45BDEF are updated to a data~the 20th four figures evidence in former data c ABCD12ACDE23ABDE34ADEF45。
In one possible implementation, the different data of check results are directed to, in the available data d of server Different from the data of data c, and it is sent to client device.As shown in table 7, server can determine the first digit of data d Different from data c according to the~the four figures evidence, 30 eight bit data of the 30th five-digit number evidence~the, therefore, server is available The a data of data d~four figures evidence (i.e. 38AF) and 30 eight bit data of the 30th five-digit number evidence~the are (i.e. 91EB), and by the identification information (a data~four figures evidence) of 38AF and data d, the identification information of 91EB and data d (the 30th five-digit number is according to the~the three ten eight bit data) is sent to client device, so that client device is by the first of data c Position data~four figures is updated to 38AF according to (i.e. ABCD), by 30 eight bit data of the 30th five-digit number evidence~the of data c (i.e. 67BE) is updated to 91EB.
In the above embodiment of the present invention, after server obtains the first information that client device is sent, to N number of first number First time division is carried out according to block, obtains M group data, and at least one the corresponding school of the first data block for including according to every group of data Value and the second data packet corresponding with the first data packet are tested, generates the corresponding check information of every group of data, wherein first information packet Include the data volume and the corresponding check value of N number of first data block of corresponding N number of first data block of the first data packet;Further Ground, server determine the corresponding different information of the first data packet according to the corresponding check information of M group data and the second data packet, And different information is sent to client device, so that client device updates the first data packet according to different information.The present invention In embodiment, the second data packet is verified by using the first data packet, can server be transmitted different information To client device, without entire first data packet is sent to client device, so as to avoid transmitting duplicate number It is believed that breath, reduces the loss of network flow, the synchronous efficiency of data is improved;And by using data block in the embodiment of the present invention Check value determine the mode of the check value of data group, can be only performed once between client device and server logical Synchronizing process can be completed in letter interaction, without executing multiple communication interaction, so as to mitigate the pressure of network communication, reduces Network traffic flow.
For above method process, the embodiment of the present invention also provides a kind of server, and the particular content of the server can be with Implement referring to the above method.
Fig. 4 is a kind of structural schematic diagram of server provided in an embodiment of the present invention, comprising:
Module 401 is obtained, for obtaining the first information of client device transmission, the first information includes the first data Wrap the data volume and the corresponding check value of N number of first data block of corresponding N number of first data block;
Processing module 402 obtains M group data for carrying out first time division to N number of first data block, and according to At least one corresponding check value of the first data block and the second data corresponding with first data packet that every group of data include Packet generates the corresponding check information of every group of data;
Transceiver module 403, for determining institute according to the corresponding check information of the M group data and second data packet The corresponding different information of the first data packet is stated, and the different information is sent to the client device, so that the client End equipment updates first data packet according to the different information.
Optionally, at least one corresponding verification of the first data block that the processing module 402 includes according to every group of data Value and the second data packet corresponding with first data packet are also used before generating the corresponding check information of every group of data In:
Determine that the maximum amount of data in the M group data is greater than or equal in the data volume of N number of first data block Minimum data amount.
Optionally, the corresponding check value of N number of first data block for including in the first information is described N number of Corresponding first check value of first data block;
The processing module 402 is used for:
Include Y data group in the M group data, includes T the first data blocks in the Y data group, be directed to institute The Y data group in M group data is stated, is executed:
T corresponding first check values of the first data block for including according to the Y data group, determine the Y Corresponding second check value of data group;
Since the i-th bit data in corresponding second data packet of Y-1 data group, obtain and the Y data group The identical first object data group of data volume, and the first object data group is divided, T the second data blocks are obtained, The data volume of the T the second data blocks is identical as the T data volumes of the first data block;According to the T the second data First check value of block determines corresponding second check value of the first object data group;It is corresponding according to the Y data group Second check value the second check value corresponding with the first object data group generates the check information of the Y data group;
Corresponding second data packet of the Y-1 group data is updated, corresponding second data of Y data group are obtained Packet.
Optionally, the processing module 402 is used for:
If it is determined that the second verification corresponding with the first object data group of corresponding second check value of the Y data group It is worth T identical, then to include according to the Y data group corresponding first check values of the first data block, determines the Y Corresponding first check value of data group, and the first object number is determined according to the first check value of the T the second data blocks According to corresponding first check value of group;If it is determined that corresponding first check value of Y data group and the first object data group Corresponding first check value is different, then generates the first check information of the Y data group;
If it is determined that the second verification corresponding with the first object data group of corresponding second check value of the Y data group Value is different, then since the i+1 position data in corresponding second data packet of the Y-1 data group, obtains and the Y number According to identical second target set of data of the data volume of group.
Optionally, the processing module 402 is also used to:
Determine corresponding first check value of the Y data group the first check value corresponding with the first object data group When identical, however, it is determined that the data volume of the Y data group is equal to the minimum data amount in N number of first data block, then generates Second check information of the Y data group;If it is determined that the data volume of the Y data group is greater than N number of first data block In minimum data amount, then since the i+1 position data in corresponding second data packet of the Y-1 data group, obtain with The identical third target set of data of the data volume of the Y data group.
Optionally, the processing module 402 is also used to:
If it is determined that the data volume of corresponding second data packet of the M group data is greater than or equal to preset data amount threshold value, Then second is carried out to N number of first data block to divide.
Optionally, the processing module 402 is used for:
Second of division is carried out to N number of first data block and obtains P group data;
If it is determined that the maximum amount of data in the P group data is less than the minimum in the data volume of N number of first data block First to M group data check information is then sent to the client device by data volume.
It can be seen from the above: in the above embodiment of the present invention, server obtains that client device is sent After one information, first time division is carried out to N number of first data block, obtains M group data, and include according to every group of data at least one A corresponding check value of first data block and the second data packet corresponding with the first data packet, generate the corresponding verification of every group of data Information, wherein the first information includes the data volume and N number of first data block point of corresponding N number of first data block of the first data packet Not corresponding check value;Further, server determines first according to the corresponding check information of M group data and the second data packet The corresponding different information of data packet, and different information is sent to client device, so that client device is according to different information Update the first data packet.In the embodiment of the present invention, the second data packet is verified by using the first data packet, can be made Different information is transferred to client device by server, without entire first data packet is sent to client device, thus The loss of network flow can be reduced to avoid duplicate data information is transmitted, improve the synchronous efficiency of data;And the present invention is real The mode for determining the check value of data group in example by using the check value of data block is applied, client device and clothes can be made Being only performed once communication interaction between business device can be completed synchronizing process, without executing multiple communication interaction, so as to subtract The pressure of light network communication, reduces network traffic flow.
Based on the same inventive concept, the embodiment of the present invention also provides a kind of computer readable storage medium, including instruction, when When it runs on computers, so that computer executes the data processing method as described in above-mentioned Fig. 1 or Fig. 2.
Based on the same inventive concept, the embodiment of the present invention also provides a kind of computer program product, which is characterized in that when it When running on computers, so that computer executes the data processing method as described in above-mentioned Fig. 1 or Fig. 2.
It should be understood by those skilled in the art that, the embodiment of the present invention can provide as method or computer program product. Therefore, complete hardware embodiment, complete software embodiment or embodiment combining software and hardware aspects can be used in the present invention Form.It is deposited moreover, the present invention can be used to can be used in the computer that one or more wherein includes computer usable program code The shape for the computer program product implemented on storage media (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) Formula.
The present invention be referring to according to the method for the embodiment of the present invention, the process of equipment (system) and computer program product Figure and/or block diagram describe.It should be understood that every one stream in flowchart and/or the block diagram can be realized by computer program instructions The combination of process and/or box in journey and/or box and flowchart and/or the block diagram.It can provide these computer programs Instruct the processor of general purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices to produce A raw machine, so that being generated by the instruction that computer or the processor of other programmable data processing devices execute for real The device for the function of being specified in present one or more flows of the flowchart and/or one or more blocks of the block diagram.
These computer program instructions, which may also be stored in, is able to guide computer or other programmable data processing devices with spy Determine in the computer-readable memory that mode works, so that it includes referring to that instruction stored in the computer readable memory, which generates, Enable the manufacture of device, the command device realize in one box of one or more flows of the flowchart and/or block diagram or The function of being specified in multiple boxes.
These computer program instructions also can be loaded onto a computer or other programmable data processing device, so that counting Series of operation steps are executed on calculation machine or other programmable devices to generate computer implemented processing, thus in computer or The instruction executed on other programmable devices is provided for realizing in one or more flows of the flowchart and/or block diagram one The step of function of being specified in a box or multiple boxes.
Although preferred embodiments of the present invention have been described, it is created once a person skilled in the art knows basic Property concept, then additional changes and modifications may be made to these embodiments.So it includes excellent that the following claims are intended to be interpreted as It selects embodiment and falls into all change and modification of the scope of the invention.
Obviously, various changes and modifications can be made to the invention without departing from essence of the invention by those skilled in the art Mind and range.In this way, if these modifications and changes of the present invention belongs to the range of the claims in the present invention and its equivalent technologies Within, then the present invention is also intended to include these modifications and variations.

Claims (16)

1. a kind of data processing method, which is characterized in that the described method includes:
Server obtains the first information that client device is sent, and the first information includes the corresponding N of first data packet The check value of a first data block;
The server carries out first time division to N number of first data block, obtains M group data, and according to every group of data packet The check value of the first data block of at least one included and the second data packet corresponding with first data packet generate described every group The corresponding check information of data;
The server determines first data according to the corresponding check information of the M group data and second data packet Wrap corresponding different information, and the different information be sent to the client device so that the client device according to The different information updates first data packet.
2. the method according to claim 1, wherein described at least one first number for including according to every group of data Check value and the second data packet corresponding with first data packet according to block generate the corresponding check information of every group of data Before, further includes:
The server determines that the maximum amount of data in the M group data is greater than or equal to the data of N number of first data block Minimum data amount in amount.
3. the method according to claim 1, wherein further including N number of first data in the first information The data volume of block, the corresponding check value of N number of first data block for including in the first information is described N number of first Corresponding first check value of data block;
The check value of at least one first data block for including according to every group of data and corresponding with first data packet Second data packet generates the corresponding check information of every group of data, comprising:
Include Y data group in the M group data, includes T the first data blocks in the Y data group, be directed to the M group Y data group in data executes:
First check value of T the first data blocks that the server includes according to the Y data group, determines the Y number According to corresponding second check value of group;
The server obtains and the Y number since the i-th bit data in corresponding second data packet of Y-1 data group It is divided according to the identical first object data group of the data volume of group, and to the first object data group, obtains T second number According to block, the data volume of the T the second data blocks is identical as the T data volumes of the first data block;According to the T second First check value of data block determines corresponding second check value of the first object data group;According to the Y data group pair The second check value answered the second check value corresponding with the first object data group generates the verification letter of the Y data group Breath;
The server is updated corresponding second data packet of the Y-1 group data, obtains Y data group corresponding Two data packets.
4. according to the method described in claim 3, it is characterized in that, described according to corresponding second verification of the Y data group It is worth the second check value corresponding with the first object data group, generates the check information of the Y data group, comprising:
The server is if it is determined that corresponding second check value of the Y data group corresponding with the first object data group Two check values are identical, then T corresponding first check values of the first data block for including according to the Y data group determine Corresponding first check value of the Y data group, and described first is determined according to the first check value of the T the second data blocks Corresponding first check value of target set of data;If it is determined that corresponding first check value of Y data group and the first object Corresponding first check value of data group is identical, then generates the first check information of the Y data group;
The server is if it is determined that corresponding second check value of the Y data group corresponding with the first object data group Two check values are different, then since the i+1 position data in corresponding second data packet of the Y-1 data group, acquisition and institute State identical second target set of data of data volume of Y data group.
5. according to the method described in claim 4, it is characterized in that, the method also includes:
The server determines corresponding first check value of the Y data group and the first object data group corresponding first When check value is identical, however, it is determined that the data volume of the Y data group is equal to the minimum data amount in N number of first data block, Then generate the second check information of the Y data group;If it is determined that the data volume of the Y data group is greater than described N number of first Minimum data amount in data block, then since the i+1 position data in corresponding second data packet of the Y-1 data group, Obtain third target set of data identical with the data volume of the Y data group.
6. the method according to any one of claims 1 to 5, which is characterized in that the method also includes:
The server is if it is determined that the data volume of corresponding second data packet of the M group data is greater than or equal to preset data amount Threshold value then carries out second to N number of first data block and divides.
7. according to the method described in claim 6, it is characterized in that, the server carries out the to N number of first data block Secondary division obtains P group data;
The server is if it is determined that the maximum amount of data in the P group data is less than in the data volume of N number of first data block Minimum data amount, then first to M group data check information is sent to the client device.
8. a kind of server, which is characterized in that the server includes:
Module is obtained, for obtaining the first information of client device transmission, the first information is corresponding including the first data packet N number of first data block check value;
Processing module obtains M group data, and according to every group of data for carrying out first time division to N number of first data block Including at least one the first data block check value and the second data packet corresponding with first data packet, generate described every The corresponding check information of group data;
Transceiver module, for determining first number according to the corresponding check information of the M group data and second data packet According to the corresponding different information of packet, and the different information is sent to the client device, so that the client device root First data packet is updated according to the different information.
9. server according to claim 8, which is characterized in that the processing module includes at least according to every group of data It is corresponding to generate every group of data for the check value of one the first data block and the second data packet corresponding with first data packet Check information before, be also used to:
Determine that the maximum amount of data in the M group data is greater than or equal to the minimum in the data volume of N number of first data block Data volume.
10. server according to claim 8, which is characterized in that further include N number of first number in the first information According to the data volume of block, the corresponding check value of N number of first data block for including in the first information is described N number of the Corresponding first check value of one data block;
The processing module is used for:
Include Y data group in the M group data, includes T the first data blocks in the Y data group, be directed to the M group Y data group in data executes:
According to the first check value of T the first data blocks that the Y data group includes, determine that the Y data group is corresponding Second check value;
Since the i-th bit data in corresponding second data packet of Y-1 data group, the data with the Y data group are obtained Identical first object data group is measured, and the first object data group is divided, obtains T the second data blocks, the T The data volume of a second data block is identical as the T data volumes of the first data block;According to the of the T the second data block One check value determines corresponding second check value of the first object data group;According to corresponding second school of the Y data group Value the second check value corresponding with the first object data group is tested, the check information of the Y data group is generated;
Corresponding second data packet of the Y-1 group data is updated, corresponding second data packet of Y data group is obtained.
11. server according to claim 10, which is characterized in that the processing module is used for:
If it is determined that corresponding second check value of the Y data group the second check value phase corresponding with the first object data group Together, then T corresponding first check values of the first data block for including according to the Y data group, determine the Y data Corresponding first check value of group, and the first object data group is determined according to the first check value of the T the second data blocks Corresponding first check value;If it is determined that corresponding first check value of the Y data group is corresponding with the first object data group The first check value it is different, then generate the first check information of the Y data group;
If it is determined that corresponding second check value of the Y data group the second check value corresponding with the first object data group is not Together, then it since the i+1 position data in corresponding second data packet of the Y-1 data group, obtains and the Y data group Identical second target set of data of data volume.
12. server according to claim 11, which is characterized in that the processing module is also used to:
Determine that corresponding first check value of the Y data group the first check value corresponding with the first object data group is identical When, however, it is determined that the data volume of the Y data group is equal to the minimum data amount in N number of first data block, then described in generation Second check information of Y data group;If it is determined that the data volume of the Y data group is greater than in N number of first data block Minimum data amount, then since the i+1 position data in corresponding second data packet of the Y-1 data group, obtain with it is described The identical third target set of data of the data volume of Y data group.
13. the server according to any one of claim 8 to 12, which is characterized in that the processing module is also used to:
If it is determined that the data volume of corresponding second data packet of the M group data is greater than or equal to preset data amount threshold value, then it is right N number of first data block carries out second and divides.
14. server according to claim 13, which is characterized in that the processing module is used for:
Second of division is carried out to N number of first data block and obtains P group data;
If it is determined that the maximum amount of data in the P group data is less than the minimum data in the data volume of N number of first data block Amount, then be sent to the client device for first to M group data check information.
15. a kind of computer readable storage medium, which is characterized in that including instruction, when run on a computer, make to succeed in one's scheme Calculation machine executes method as described in any one of claim 1 to 7.
16. a kind of computer program product, which is characterized in that when run on a computer, so that computer is executed as weighed Benefit requires 1 to 7 described in any item methods.
CN201910272205.8A 2019-04-04 2019-04-04 Data processing method and server Active CN110083614B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910272205.8A CN110083614B (en) 2019-04-04 2019-04-04 Data processing method and server
PCT/CN2020/072336 WO2020199724A1 (en) 2019-04-04 2020-01-15 Data processing method, server and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910272205.8A CN110083614B (en) 2019-04-04 2019-04-04 Data processing method and server

Publications (2)

Publication Number Publication Date
CN110083614A true CN110083614A (en) 2019-08-02
CN110083614B CN110083614B (en) 2023-06-06

Family

ID=67414244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910272205.8A Active CN110083614B (en) 2019-04-04 2019-04-04 Data processing method and server

Country Status (2)

Country Link
CN (1) CN110083614B (en)
WO (1) WO2020199724A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020199724A1 (en) * 2019-04-04 2020-10-08 中国银联股份有限公司 Data processing method, server and device
CN112612852A (en) * 2020-12-29 2021-04-06 中国农业银行股份有限公司 Data synchronization method and device, electronic equipment and storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117271655A (en) * 2022-06-14 2023-12-22 华为技术有限公司 Data synchronization method, system, medium, program product and electronic device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101854241A (en) * 2009-03-30 2010-10-06 上海聚力传媒技术有限公司 Method and device for verifying data block transmitted in network
CN105682183A (en) * 2016-01-14 2016-06-15 美的集团股份有限公司 Method and device for controlling household appliance to access to network
US20160226633A1 (en) * 2013-10-23 2016-08-04 Huawei Technologies Co., Ltd. Data Transmission Method and Apparatus
CN108255647A (en) * 2018-01-18 2018-07-06 湖南麒麟信安科技有限公司 A kind of high-speed data backup method under samba server clusters

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297482B (en) * 2012-03-05 2016-12-14 联想(北京)有限公司 Information processing method and equipment
CN104243508A (en) * 2013-06-07 2014-12-24 富鸿康科技(深圳)有限公司 Server, client side and file synchronization method
CN106528125A (en) * 2016-10-26 2017-03-22 腾讯科技(深圳)有限公司 Data file incremental updating method, server, client and system
CN110083614B (en) * 2019-04-04 2023-06-06 中国银联股份有限公司 Data processing method and server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101854241A (en) * 2009-03-30 2010-10-06 上海聚力传媒技术有限公司 Method and device for verifying data block transmitted in network
US20160226633A1 (en) * 2013-10-23 2016-08-04 Huawei Technologies Co., Ltd. Data Transmission Method and Apparatus
CN105682183A (en) * 2016-01-14 2016-06-15 美的集团股份有限公司 Method and device for controlling household appliance to access to network
CN108255647A (en) * 2018-01-18 2018-07-06 湖南麒麟信安科技有限公司 A kind of high-speed data backup method under samba server clusters

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020199724A1 (en) * 2019-04-04 2020-10-08 中国银联股份有限公司 Data processing method, server and device
CN112612852A (en) * 2020-12-29 2021-04-06 中国农业银行股份有限公司 Data synchronization method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
WO2020199724A1 (en) 2020-10-08
CN110083614B (en) 2023-06-06

Similar Documents

Publication Publication Date Title
CN107862216B (en) Privacy protection method, device and storage medium for anonymous cross-link transaction
CN110083614A (en) A kind of data processing method and server
CN108256353B (en) Data integrity checking method and device and client
CN109561106B (en) Ship communication message real-time analysis and filtering method
CN108011741B (en) Method and system for simulating and testing blockchains of distributed networks
CN107679863A (en) A kind of method of block catenary system and fast verification block
KR20180089670A (en) Method for generating and verifying an digital signature or message authentication code based on a block chain that does not require key management
CN110264354A (en) It creates block chain account and verifies the method and device of block chain transaction
CN109829294A (en) A kind of firmware validation method, system, server and electronic equipment
CN110324115A (en) A kind of data transmission method, device, storage medium and terminal device
CN105933876B (en) Recognition methods, mobile phone terminal, server and the system of counterfeit short message
CN110535654A (en) Parallel system dispositions method, device and computer equipment based on block chain
CN108062243A (en) Generation method, task executing method and the device of executive plan
CN109583896A (en) Transaction verification method, block chain node and storage medium
CN108243001B (en) A kind of data encryption communication means
CN110175916A (en) Cash flow checking method and device
CN110289997A (en) A kind of log message checking method, apparatus and system
CN104639390B (en) The test method and device of system
CN109246704A (en) Safety auditing system and method for remotely connecting
CN111814201A (en) Network drone aircraft data recording method, device and system and electronic equipment
KR102139370B1 (en) Traffic generating apparatus, traffic agent and traffic generating system comprising same
CN108874456A (en) A kind of generation method of server software, device, equipment and storage medium
CN106845926A (en) A kind of Third-party payment supervisory systems distributed data method for stream processing and system
CN109981291A (en) A kind of mixing packet signature method
CN108882005A (en) A kind of barrage verification method, computer equipment and storage medium

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