CN103186614B - Electronic data synchronous method and electronic data System of Synchronous Processing - Google Patents

Electronic data synchronous method and electronic data System of Synchronous Processing Download PDF

Info

Publication number
CN103186614B
CN103186614B CN201110456946.5A CN201110456946A CN103186614B CN 103186614 B CN103186614 B CN 103186614B CN 201110456946 A CN201110456946 A CN 201110456946A CN 103186614 B CN103186614 B CN 103186614B
Authority
CN
China
Prior art keywords
data block
data
running program
change
program value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110456946.5A
Other languages
Chinese (zh)
Other versions
CN103186614A (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.)
Digiwin Software Co Ltd
Original Assignee
Digiwin Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Digiwin Software Co Ltd filed Critical Digiwin Software Co Ltd
Priority to CN201110456946.5A priority Critical patent/CN103186614B/en
Priority to TW101122659A priority patent/TWI461944B/en
Publication of CN103186614A publication Critical patent/CN103186614A/en
Application granted granted Critical
Publication of CN103186614B publication Critical patent/CN103186614B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A kind of electronic data synchronous method and electronic data System of Synchronous Processing, be applied between an issuing side and at least one receiving end, described electronic data synchronous method comprises the following steps: when issuing side generation data change, and changes generation module produce at least one change data block by one; By a data simultaneous module, according to the Major key in the mark of described at least one receiving end and described at least one change data block, set up or enable corresponding processing threads and memory headroom; By described data simultaneous module, sequentially store described at least one change data block in the memory headroom of correspondence; By the processing threads of described correspondence, analyze the running program value in the Article 1 data block that stores in described corresponding memory headroom and the running program value in the last item data block; And determine to transmit the step that change data block gives described at least one receiving end.

Description

Electronic data synchronous method and electronic data System of Synchronous Processing
Technical field
The present invention relates to the electro-nic message transmissions technical field of database, particularly relate to a kind of electronic data synchronous method and electronic data System of Synchronous Processing.
Background technology
The development of current business application software, along with Construction of Information Network is as the evolution of LAN (Local Area Network) (LAN), wide area network (WAN) or internet (Internet) and expansion, oneself is from the electronic information transmission of enterprises and share, expand to the transmission of electronic commerce information between (B2B) between enterprise or business to customer (B2C) and share, making the different main frames on each node of information network can share relevant data.For all departments of enterprises, for meeting enterprise operation and coml demand, different departments such as production control (plan, manufacture), logistics management (distribution, buying, stock control) and financial management (accounting, financial management) use different host computer systems, there are independently operating system and respective application system, again by inner or external information network sharing data, and a running body forms a kind of distributed processing system(DPS).Traditional distributed processing system(DPS), be first send information after service end inquiry by client, the data inquired are returned to client by service end again, make the efficiency of data processing not high.Particularly, enterprise is in the application system of different times or the transnational xenogenesis that builds or isomery or program, when by distributed processing system(DPS) one running body, if the data shared between the application system of xenogenesis or isomery have any change, also need synchronously to be consistent.For example, tackle in the framework of multiple data receiver (as multiple application client) in a data issuing side (as there is or connect the application program service end of master data base) at present and realize data synchronization updating, following several method can be carried out:
(1) regular summation method: after each interval time, issuing side by between buffer and timing regularly by tidal data recovering synchronously to deliver to receiving end, but receiving end can not change the content of received data.
(2) Timing Synchronization method: each receiving end, after each pre-determined interval time, is inquired by a cycle polling timer or visited issuing side and change with or without data; When inquiring that the data of issuing side have part to change, issuing side sends the data of change to each receiving end, with the Data Update content received.
(3) real-time synchronization method: when the data of issuing side have part to change, all receiving ends of voluntary notice at once, and only will change data transmission to corresponding receiving end, to carry out change process.
Regular summation method can account for issuing side and a large amount of system resource of receiving end and storage space, and cannot ensure the real time data synchronization between issuing side and receiving end.In Timing Synchronization method, each receiving end in each pre-determined interval time to after date, sequentially visit data issuing side to change with or without data, make to visit the frequent and issuing side data response one by one of number of times, cause the data-handling efficiency of issuing side poor, and the real time data synchronization between issuing side and receiving end cannot be ensured equally.Compare down, although real-time synchronization method is compared with ensureing that the real-time synchronization of data upgrades, but data issuing side needs to afford the power and responsibility of the data receiving state of the directly described multiple data receiver of management, abnormality processing when managing each data receiver synchronization failure, and sequentially analyze or comparison every bar Data Update task (comprising new and old data movement), so that expend data receiver comparatively multi-system resource, if when the change frequency of real time data synchronization is too high, the data synchronization processing speed of data issuing side will be affected.
Therefore, for application system in distributed system Data Update management for, need a kind of save system resource and ensure data consistent upgrade method of data synchronization.
Summary of the invention
The object of the present invention is to provide a kind of electronic data synchronous method and electronic data System of Synchronous Processing, except ensureing that the data between issuing side and multiple receiving end change unanimously, pass through the present invention, issuing side is without the need to bearing the abnormality processing management when management of the data receiving state of multiple receiving end, each data receiver synchronization failure, and sequentially analyze or the more new task of ratio to every bar data, therefore can reduce the consumption of the system resource of issuing side, the synchronous speed that data change can also be increased.
In order to solve the problem, the invention provides a kind of electronic data synchronous method, be applied between an issuing side and at least one receiving end, described electronic data synchronous method comprises the following steps:
(A) when issuing side generation data change, change generation module by one and produce at least one change data block;
(B) by a data synchronisation unit, according to the Major key in the mark of described at least one receiving end and described at least one change data block, set up or enable corresponding processing threads and memory headroom;
(C) by described data synchronisation unit, described at least one change data block is sequentially stored in the memory headroom of correspondence;
(D) by the processing threads of described correspondence, the running program value in the Article 1 data block that stores in the memory headroom of described correspondence and the running program value in the last item data block is analyzed; And
(E) determine to transmit the step that change data block gives described at least one receiving end.
Further, also comprise in described step (B): in a memory module, set up a corresponding queue.
Further, described at least one change data block comprises the content that described running program value (CRUD), Major key and described data change, and this running program value comprises insertion (insert), upgrades one of them value of (update) and deletion (delete).
Further, described Major key is for identifying a target electronic file.
Further, described electronic data synchronous method is further comprising the steps of:
(F) when the data syn-chronization of arbitrary receiving end changes generation extremely, by the running program value of described processing threads analysis by the last item data block in the running program value of the Article 1 data block in described processing threads and memory headroom, get back to step (E) afterwards.
Further, in described step (E), also comprise:
(E1) according to the running program value in described Article 1 data block and the running program value in the last item data block, determine that the running program value in described change data block gives described at least one receiving end to transmit determined change data block, or determine that not transmitting change data block gives described at least one receiving end; And
(E2) all change data blocks that corresponding memory headroom stores are removed.
Further, in described step (E1), further comprising the steps of: when the running program value in described Article 1 data block be insert and the last item data block in running program value for insert or upgrade time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for inserting, and transmit described the last item data block and give described at least one receiving end.
Further, in described step (E1), further comprising the steps of: when the running program value in described Article 1 data block be insert and the last item data block in running program value for delete time, remove all data blocks.
Further, in described step (E1), further comprising the steps of: when the running program value in described Article 1 data block be upgrade and the last item data block in running program value for insert or upgrade time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for upgrading, and transmit described the last item data block and give described at least one receiving end.
Further, in described step (E1), further comprising the steps of: when the running program value in described Article 1 data block be upgrade and the last item data block in running program value for delete time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for deleting, and transmit described the last item data block and give described at least one receiving end.
Further, in described step (E1), further comprising the steps of: when the running program value in described Article 1 data block be delete and the last item data block in running program value for insert or upgrade time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for upgrading, and transmit described the last item data block and give described at least one receiving end.
Further, in described step (E1), further comprising the steps of: when the running program value in described Article 1 data block be delete and the last item data block in running program value for delete time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for deleting, and transmit described the last item data block and give described at least one receiving end.
In order to solve the problem, present invention also offers a kind of electronic data System of Synchronous Processing, be applied between an issuing side and at least one receiving end, it comprises:
Change generation module, change according to the data in described issuing side, produce at least one change data block;
Data synchronisation unit, there is a queue management module, one memory module and a thread generation module, described data synchronisation unit is according to the Major key in the mark of described at least one receiving end and described at least one change data block, by described queue management module, set up in memory module or enable corresponding queue sequentially to store described at least one change data block, and by described thread generation module, set up or enable at least one change data block that corresponding processing threads stores to process described queue, wherein said alignment processing thread has a decision logic, for analyzing the running program value in the Article 1 data block that stores in corresponding memory headroom and the running program value in the last item data block, to determine the change data block transferring to described at least one receiving end, and
Change receiver module, according to the change data block that described at least one receiving end receives, the data obtaining issuing side change.
Advantageous Effects of the present invention is, by the data synchronisation unit arranged between issuing side and multiple receiving end, ensure that the data between issuing side and multiple receiving end change consistent, and issuing side is without the need to bearing the abnormality processing management when management of the data receiving state of multiple receiving end, each data receiver synchronization failure, and sequentially analyze or the more new task of ratio to every bar data, therefore can reduce the consumption of the system resource of issuing side, the synchronous speed that data change can also be increased.
Accompanying drawing explanation
Fig. 1, the block schematic illustration of electronic data System of Synchronous Processing of the present invention;
Fig. 2, electronic data System of Synchronous Processing of the present invention is applied to the block schematic illustration between issuing side and multiple receiving end;
Fig. 3, the decision logic table of the processing threads of the data synchronisation unit generation of electronic data System of Synchronous Processing of the present invention;
Fig. 4 to Fig. 8, according to the decision logic table of Fig. 3, illustrates the treatment state that each data syn-chronization changes;
Fig. 9 to Figure 14, according to the decision logic table of Fig. 3, when illustrating that the data syn-chronization of arbitrary receiving end changes generation exception, the treatment state that each data syn-chronization changes; And
Figure 15, the flow chart of steps of electronic data synchronous method of the present invention.
Embodiment
Elaborate below in conjunction with the embodiment of accompanying drawing to electronic data synchronous method provided by the invention and electronic data System of Synchronous Processing.
Please refer to Fig. 1, it is a kind of block schematic illustration of the electronic data System of Synchronous Processing according to preferred embodiment of the present invention, described electronic data System of Synchronous Processing is applied to an issuing side T1 and multiple receiving end R1, R2, between Rm, mainly comprise: change generation module 102, data synchronisation unit 20 and multiple change receiver module 302.In the present embodiment, described change generation module 102 is arranged at issuing side T1, and the data occurred when running according to described issuing side change, and independently sequentially produce at least one change data block.Described data synchronisation unit 20, be arranged on one and be positioned at issuing side T1 and multiple receiving end R1, R2, on intermediary end S1 between Rm, and there is queue management module 202, memory module 204 and a thread generation module 206, described multiple receiving end R1, R2 is reached for effectively managing and process issuing side T1 ... change data block between Rm.Described multiple change receiver module 302, is arranged at multiple receiving end R1, R2 respectively ... Rm, and according to described multiple receiving end R1, R2 ... at least one change data block that Rm receives, to obtain the data changed content of issuing side.More detailed applications about electronic data System of Synchronous Processing of the present invention please hold to be stated clearly.
Please further refer to Fig. 1 and Fig. 2, the electronic data System of Synchronous Processing of Fig. 2 key diagram 1 is applied to issuing side T1 and multiple receiving end R1, R2, between Rm, wherein said issuing side T1 can be a kind of application system server having or link a master data base, described multiple receiving end R1, R2, Rm can be a kind of client host of tool application system, the application system at these two ends can be identical or different version or heterologous systems, and one is connected to issuing side T1 and multiple receiving end R1, R2, intermediary end S1 between Rm can be middleware (Middleware), caching server, the webserver, transponder (Hub), the wherein one of wide area network interchanger or router (Router).Described issuing side T1, intermediary end S1 and described multiple receiving end R1, R2, between Rm three or intermediary end S1 and described multiple receiving end R1, R2, Rm is by information network system 30 short range or teletransmission electronic information between the two, described information network system can be LAN (Local Area Network) (LAN), wide area network (WAN) or internet (Internet) wherein a kind of or integrated.
Described data synchronisation unit 20, position what above-mentioned intermediary end S1, be mainly used in receiving at least one change data block D that the change generation module 102 of issuing side T1 transmits, described at least one change data block D carries a Major key (Key), running program value (CRUD) and described data changed content (Data) (as shown in Figure 2).Described running program value (CRUD) comprises insertion (insert), upgrades one of them value of (update) and deletion (delete), for notifying all receiving end R1, R2 ... the data change action that Rm should perform is data inserting, more new data or deletes data.Described Major key, for identifying the target electronic file of a generation data change as electron window, for issuing side T1 and described multiple receiving end R1, R2 ... the unified identification of Rm needs the synchronous e-file changed.Described data changed content, namely refers to that the data that should synchronously change in above-mentioned target electronic file are as the partial data in electron window.Execute in example at other Real, described data synchronisation unit 20 can directly rearrange in described issuing side T1.
In the application, with reference to figure 1 and Fig. 2, when described data synchronisation unit 20 receives at least one change data block D that issuing side T1 transmits, described data synchronisation unit 20 is according to all receiving end R1 established in it, R2, Major key (Key) in the mark (ID) of Rm and described at least one change data block D, judge whether described at least one change data block D had previously changed or new change data, and then by described queue management module 202, in memory module 204, declaration is set up a new corresponding dynamic queue 24 or is enabled existing corresponding dynamic queue 24 as a memory headroom, sequentially to store all change data blocks as U4, U3, U2, U1.Set up a new corresponding dynamic queue 24 when declaration or enable existing corresponding dynamic queue 24, also by described thread generation module 206, set up a new alignment processing thread 26 or enable existing alignment processing thread 26, to process the change data block U4 that described queue stores, U3, U2, U1.For Fig. 2, described data synchronisation unit 20 is according to establishing all receiving end R1 in it, R2, m the mark (ID) of Rm, and the Major key (Key) of at least one change data block D with process in change data block U4, U3, U2, U1 has identical Major key (Key), will enable an existing m queue 24 and m processing threads 26.Then, before described at least one change data block D is stored in m queue 24, described queue management module 202 can again by all receiving end R1, R2, m the mark (ID) of Rm adds at least one change data block D respectively, is formed as each change data block U4, U3 in m queue 24, the composition of U2, U1 is the same.When each processing threads 26 processes the change data block U4 stored in corresponding queue 24, U3, U2, after U1, described processing threads 26 changes data block U4, U3, U2 according to each, receiving end R1 in U1, R2 ... Rm identifies (ID), ensures that sending to described at least one change data block gives described multiple receiving end R1 respectively, R2 ... Rm.After processing threads 26 completes the synchronous change of current data block, again inspecting data block in queue 24, when there being transaction data to exist, above-mentioned flow process can be re-executed.When not having new data block in queue 24, described queue management module 202 can eliminate whole queue, and the execution of described thread generation module 206 terminate thread 26.
With reference to figure 1 and Fig. 2, described multiple receiving end R1, R2 ... the change receiver module 302 of Rm according at least one change data block received as U4, U3, U2, Major key (Key) in U1 and operational values characteristic (Crud), with the data changed content (Data) obtained, to multiple receiving end R1, R2 ... corresponding data in Rm does synchronous change.
Preferably, for processing the change data block U4 stored in corresponding queue 24, U3, U2, U1, described alignment processing thread 26 has a decision logic, for analyzing the running program value (Crud) in the Article 1 data block of described corresponding queue 24 storage and the running program value (Crud) in the last item data block, to determine that described multiple receiving end R1, R2 are given in transmission ... the composition of the change data block of Rm.Please further refer to Fig. 3, be the decision logic table that each processing threads 26 uses, and describe this decision logic table in detail and comprise following logic:
(1) when the running program value (Crud) in described 1st article of data block be insert and N article of (the last item) data block in running program value (Crud) for insert or upgrade time, remove all data blocks before N article of data block, and determine that running program value (Crud) in described N article of data block is for inserting, and transmit determined N article of data block and give described receiving end.
(2) when the running program value (Crud) in described 1st article of data block be insert and N article of data block in running program value (Crud) for delete time, remove the data block in all storages or in process, and determine not transmit change data block.
(3) when the running program value (Crud) in described 1st article of data block be upgrade and N article of data block in running program value (Crud) for insert or upgrade time, remove all data blocks before N article of data block, and determine that running program value (Crud) in described N article of data block is for upgrading, and transmit determined N article of data block and give described receiving end.
(4) when the running program value (Crud) in described 1st article of data block be upgrade and N article of data block in running program value (Crud) for delete time, remove all data blocks before N article of data block, and determine that running program value (Crud) in described N article of data block is for deleting, and transmit determined N article of data block and give described receiving end.
(5) when the running program value in described 1st article of data block be delete and N article of data block in running program value for insert or upgrade time, remove all data blocks before N article of data block, and determine that running program value (Crud) in described N article of data block is for upgrading, and transmit determined N article of data block and give described receiving end.
(6) when the running program value (Crud) in described N article of data block be delete and N article of data block in running program value (Crud) for delete time, remove all data blocks before N article of data block, and determine running program value (Crud) in described N article of data block still for deleting, and transmit determined N article of data block and give described receiving end.
Fig. 4 to Fig. 8 is so that the treatment state that each data syn-chronization changes to be described according to each exemplary application of the decision logic table of Fig. 3.In Fig. 4,4 data block U4, U3, U2 and I1 is sequentially stored in queue 24, wherein U represents running program value (Crud) for upgrading (Update), I represents running program value (Crud) for inserting (Insert), numeral 4 in data block, 3,2,1 represents order of storage.Corresponding processing threads 26 be to insert and running program value (Crud) in the 4th article of data block U4 is renewal according to the running program value (Crud) in the 1st article of data block I1, remove all data block U3, U2 and I1 before the 4th article of data block U4, and determine that the running program value (Crud) in script the 4th article of data block U4 changes insertion into, form the 4th article of new data block I4, and transmit determined 4th article of data block I4 and give described receiving end.
In Fig. 5, sequentially store 4 data block D4, U3, U2 and I1 in queue 24, wherein D represents running program value (Crud) for being deletion.Corresponding processing threads 26 be to insert and running program value (Crud) in the 4th article of data block D4 is deletion according to the running program value (Crud) in the 1st article of data block I1, just remove all data block D4, U3, U2 and I1, and determine that transmission block does not give described receiving end.
In Fig. 6, in queue 24, sequentially store 4 data block U4, U3, U2 and U1.Corresponding processing threads 26 be to upgrade and running program value (Crud) in the 4th article of data block U4 is renewal according to the running program value (Crud) in the 1st article of data block U1, remove all data block U3, U2 and U1 before the 4th article of data block U4, and determine that running program value (Crud) in originally the 4th article of data block U4 is still for upgrading, and transmit determined 4th article of data block U4 and give described receiving end.
In Fig. 7, in queue 24, sequentially store 4 data block U4, U3, I2 and D1.Corresponding processing threads 26 be to delete and running program value (Crud) in the 4th article of data block U4 is renewal according to the running program value (Crud) in the 1st article of data block D1, remove all data block U3, U2 and U1 before the 4th article of data block U4, and determine that running program value (Crud) in originally the 4th article of data block U4 is still for upgrading, and transmit determined 4th article of data block U4 and give described receiving end.
In Fig. 8, in queue 24, sequentially store 2 data block I2 and D1.Corresponding processing threads 26 be to delete and running program value (Crud) in the 2nd article of data block I2 is insertion according to the running program value (Crud) in the 1st article of data block D1, remove all data block D1 before the 2nd article of data block I2, and determine that the running program value (Crud) in originally the 2nd article of data block I2 changes renewal into, and transmit determined 2nd article of data block U2 and give described receiving end.
Fig. 9 to Figure 14, according to the decision logic table of Fig. 3, illustrates when the data syn-chronization of arbitrary receiving end changes generation exception, the treatment state that each data syn-chronization changes.In Fig. 9, when the data syn-chronization of a wherein receiving end change occur abnormal time, processing threads 26 is processing the 1st article of data block I1, and queue 24 sequentially stores 3 data block U4, U3 and U2.Now, described processing threads 26 according to the running program value (Crud) in the 1st article of data block I1 be insert and the 4th article of data block U4 in running program value (Crud) for upgrade, remove all data block U3, U2 and I1 before the 4th article of data block U4, and determine that the running program value (Crud) in originally the 4th article of data block U4 changes insertion into, and transmit determined 4th article of data block I4 and give described receiving end.
In Figure 10, when the data syn-chronization of receiving end changes generation exception, processing threads 26 is processing the 1st article of data block I1, and queue 24 sequentially stores 4 data block D5, U4, U3 and U2.Now, described processing threads 26 according to the running program value (Crud) in the 1st article of data block I1 be insert and the 5th article of data block U4 in running program value (Crud) for delete, remove all data block D5, U4, U3, U2 and I1, and determine that transmission block does not give described receiving end.
In Figure 11, when the data syn-chronization of receiving end changes generation exception, processing threads 26 is processing the 1st article of data block U1, and queue 24 sequentially stores 3 data block U4, U3 and U2.Now, described processing threads 26 according to the running program value (Crud) in the 1st article of data block U1 be upgrade and the 4th article of data block U4 in running program value (Crud) for upgrade, remove all data block U3, U2 and U1 before the 4th article of data block U4, and determine that running program value (Crud) in originally the 4th article of data block U4 is still for upgrading, and transmit determined 4th article of data block U4 and give described receiving end.
In Figure 12, when the data syn-chronization of receiving end changes generation exception, processing threads 26 is processing the 1st article of data block U1, and queue 24 sequentially stores 4 data block D5, U4, U3 and U2.Now, described processing threads 26 according to the running program value (Crud) in the 1st article of data block U1 be upgrade and the 5th article of data block D5 in running program value (Crud) for delete, remove all data block U4 before the 5th article of data block D5, U3, U2 and U1, and determine that running program value (Crud) in originally the 5th article of data block D5 is for deleting, and transmit determined 5th article of data block D5 and give described receiving end.
In Figure 13, when the data syn-chronization of receiving end changes generation exception, processing threads 26 is processing the 1st article of data block D1, and queue 24 sequentially stores 3 data block U4, U3 and I2.Now, described processing threads 26 according to the running program value (Crud) in the 1st article of data block D1 be delete and the 4th article of data block U4 in running program value (Crud) for upgrade, remove all data block U3, U2 and D1 before the 4th article of data block U4, and determine that running program value (Crud) in originally the 4th article of data block U4 is for upgrading, and transmit described 4th article of data block U4 and give described receiving end.
In Figure 14, when the data syn-chronization of receiving end changes generation exception, processing threads 26 is processing the 1st article of data block D1, and queue 24 stores 1 data block I2.Now, described processing threads 26 according to the running program value (Crud) in the 1st article of data block D1 be delete and the 2nd article of data block I2 in running program value (Crud) for insert, remove all data block D1 before the 2nd article of data block I2, and determine that the running program value (Crud) in originally the 2nd article of data block I2 changes renewal into, and transmit described 2nd article of data block U2 and give described receiving end.
Figure 15, for a kind of flow chart of steps of the electronic data synchronous method according to preferred embodiment of the present invention, be applied between an issuing side and at least one receiving end, and the electronic data System of Synchronous Processing of the Fig. 1 and 2 that arranges in pairs or groups, described electronic data synchronous method comprises the following steps:
S400, when issuing side generation data change, change generation module by one and produce at least one change data block, described at least one change data block comprises the content that described running program value (CRUD), Major key (Key) and described data change, this running program value comprises insertion (insert), upgrades one of them value of (update) and deletion (delete), wherein said Major key, for going out a target electronic file for issuing side and at least one receiving end common identification;
S410, by a data synchronisation unit, according to the Major key in the mark of described at least one receiving end and described at least one change data block, set up or enable corresponding processing threads and memory headroom, the foundation of the memory headroom of described correspondence or to enable be set up in a memory module or enable a corresponding queue;
S420, by described data synchronisation unit, sequentially stores described at least one change data block in the memory headroom of correspondence;
S430, by the decision logic (see Fig. 3) of the processing threads of described correspondence, analyze the running program value in the Article 1 data block that stores in the memory headroom of described correspondence and the running program value in the last item data block, with the synchronous change of process data block;
S440, determines that whether transmitting change data block gives described at least one receiving end; In step S440, also comprise: according to the running program value in described Article 1 data block and the running program value in the last item data block, determine that the running program value in described change data block gives described at least one receiving end to transmit determined change data block, then next step S450 is carried out, or determine that not transmitting change data block gives described at least one receiving end, then carries out next step S422;
S442, when determining that not transmitting change data block gives described at least one receiving end, removes all change data blocks that corresponding memory headroom stores; Get back to step S400 afterwards;
S450, when determining that transmitting change data block gives described at least one receiving end, removes all change data blocks that corresponding memory headroom stores;
S460, transmits determined change data block and gives described at least one receiving end;
Whether S470, have the data syn-chronization of arbitrary receiving end to change and occur extremely; If so, next step S480 is carried out; If no, get back to step S400; And
S480, by the running program value of described processing threads analysis by the last item data block in the running program value of the Article 1 data block in described processing threads and memory headroom; Get back to step 440 afterwards.
Advantageous Effects of the present invention is,
(1) the present invention is by carrying out process and the transmission of many dynamic queues and multithreading, to multiple receiving end, realizes the synchronized update of each data, promotes the efficiency of data synchronization updating.
(2) the present invention also arranges in pairs or groups the running program value (CRUD) of data manipulation characteristic, solves data that single queue stores as the problem of the continuous change action of bar data single in electron window, increases speed and the efficiency of data syn-chronization.Although when data syn-chronization changes and occurs abnormal, also can possess identical logic behavior.
(3) the present invention is synchronously by different queues and thread process to different pieces of information, therefore when arbitrary data syn-chronization of arbitrary receiving end changes generation exception, can process individually, data syn-chronization state of the present invention the synchronous change of other receiving end or other data can not be affected, so can do indivedual receiving end or data management.
(4) data synchronisation unit of the present invention by arranging between issuing side and multiple receiving end, ensure that the data between issuing side and multiple receiving end change consistent, and issuing side is without the need to bearing the abnormality processing management when management of the data receiving state of multiple receiving end, each data receiver synchronization failure, and sequentially analyze or the more new task of ratio to every bar data, therefore can reduce the consumption of the system resource of issuing side, the synchronous speed that data change can also be increased.
The above is only the preferred embodiment of the present invention; it should be pointed out that for those skilled in the art, under the premise without departing from the principles of the invention; can also make some improvements and modifications, these improvements and modifications also should be considered as protection scope of the present invention.

Claims (13)

1. an electronic data synchronous method, is applied between an issuing side and at least one receiving end, it is characterized in that, described electronic data synchronous method comprises the following steps:
(A) when issuing side generation data change, change generation module by one and produce at least one change data block;
(B) by a data synchronisation unit, according to the Major key in the mark of described at least one receiving end and described at least one change data block, judge whether described at least one change data block had previously changed or new change data, and then set up or enable corresponding processing threads and memory headroom;
(C) by described data synchronisation unit, described at least one change data block is sequentially stored in the memory headroom of correspondence;
(D) by the processing threads of described correspondence, the running program value in the Article 1 data block that stores in the memory headroom of described correspondence and the running program value in the last item data block is analyzed; And
(E) determine to transmit the step that change data block gives described at least one receiving end.
2. electronic data synchronous method as claimed in claim 1, is characterized in that, also comprise: in a memory module, set up a corresponding queue in the step (B) of memory headroom setting up described correspondence.
3. the method that electronic data as claimed in claim 1 is synchronous, it is characterized in that, described at least one change data block comprises the content that described running program value (CRUD), Major key and described data change, and this running program value comprises insertion (insert), upgrades one of them value of (update) and deletion (delete).
4. electronic data synchronous method as claimed in claim 3, it is characterized in that, described Major key is for identifying a target electronic file.
5. electronic data synchronous method as claimed in claim 1, is characterized in that, further comprising the steps of:
(F) when the data syn-chronization of arbitrary receiving end changes generation extremely, by the running program value of described processing threads analysis by the last item data block in the running program value of the Article 1 data block in described processing threads and memory headroom, get back to step (E) afterwards.
6. electronic data synchronous method as claimed in claim 1, is characterized in that, transmits change data block and gives in the step (E) of described at least one receiving end, also comprise in decision:
(E1) according to the running program value in described Article 1 data block and the running program value in the last item data block, determine that the running program value in described change data block gives described at least one receiving end to transmit determined change data block, or determine that not transmitting change data block gives described at least one receiving end; And
(E2) all change data blocks that corresponding memory headroom stores are removed.
7. electronic data synchronous method as claimed in claim 6, it is characterized in that, in step (E1), further comprising the steps of: when the running program value in described Article 1 data block be insert and the last item data block in running program value for insert or upgrade time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for inserting, and transmit described the last item data block and give described at least one receiving end.
8. electronic data synchronous method as claimed in claim 6, it is characterized in that, in step (E1), further comprising the steps of: when the running program value in described Article 1 data block be insert and the last item data block in running program value for delete time, remove all data blocks.
9. electronic data synchronous method as claimed in claim 6, it is characterized in that, in step (E1), further comprising the steps of: when the running program value in described Article 1 data block be upgrade and the last item data block in running program value for insert or upgrade time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for upgrading, and transmit described the last item data block and give described at least one receiving end.
10. electronic data synchronous method as claimed in claim 6, it is characterized in that, in step (E1), further comprising the steps of: when the running program value in described Article 1 data block be upgrade and the last item data block in running program value for delete time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for deleting, and transmit described the last item data block and give described at least one receiving end.
11. electronic data synchronous method as claimed in claim 6, it is characterized in that, in step (E1), further comprising the steps of: when the running program value in described Article 1 data block be delete and the last item data block in running program value for insert or upgrade time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for upgrading, and transmit described the last item data block and give described at least one receiving end.
12. electronic data synchronous method as claimed in claim 6, it is characterized in that, in step (E1), further comprising the steps of: when the running program value in described Article 1 data block be delete and the last item data block in running program value for delete time, remove all data blocks before the last item data block, and determine that running program value in described the last item data block is for deleting, and transmit described the last item data block and give described at least one receiving end.
13. 1 kinds of electronic data System of Synchronous Processings, are applied between an issuing side and at least one receiving end, it is characterized in that, described electronic data System of Synchronous Processing comprises:
Change generation module, change according to the data in described issuing side, produce at least one change data block;
Data synchronisation unit, there is a queue management module, one memory module and a thread generation module, described data synchronisation unit is according to the Major key in the mark of described at least one receiving end and described at least one change data block, judge whether described at least one change data block had previously changed or new change data, and then by described queue management module, set up in memory module or enable corresponding queue sequentially to store described at least one change data block, and by described thread generation module, set up or enable at least one change data block that corresponding processing threads stores to process described queue, wherein said alignment processing thread has a decision logic, for analyzing the running program value in the Article 1 data block that stores in corresponding memory headroom and the running program value in the last item data block, to determine the change data block transferring to described at least one receiving end, and
Change receiver module, according to the change data block that described at least one receiving end receives, the data obtaining issuing side change.
CN201110456946.5A 2011-12-30 2011-12-30 Electronic data synchronous method and electronic data System of Synchronous Processing Active CN103186614B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110456946.5A CN103186614B (en) 2011-12-30 2011-12-30 Electronic data synchronous method and electronic data System of Synchronous Processing
TW101122659A TWI461944B (en) 2011-12-30 2012-06-25 Electrical data synchronization method and electrical data synchronization system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110456946.5A CN103186614B (en) 2011-12-30 2011-12-30 Electronic data synchronous method and electronic data System of Synchronous Processing

Publications (2)

Publication Number Publication Date
CN103186614A CN103186614A (en) 2013-07-03
CN103186614B true CN103186614B (en) 2016-04-13

Family

ID=48677783

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110456946.5A Active CN103186614B (en) 2011-12-30 2011-12-30 Electronic data synchronous method and electronic data System of Synchronous Processing

Country Status (2)

Country Link
CN (1) CN103186614B (en)
TW (1) TWI461944B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108170798A (en) * 2017-12-28 2018-06-15 武汉楚鼎信息技术有限公司 A kind of data buffer storage delivery method and system and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101136833A (en) * 2007-09-26 2008-03-05 深圳市迅雷网络技术有限公司 Method, system and device for across entity network to access data
CN101399656A (en) * 2007-09-27 2009-04-01 华为技术有限公司 Data synchronization method and system in synchronization makeup language
CN101551801A (en) * 2008-03-31 2009-10-07 国际商业机器公司 Data synchronization method and data synchronization system
CN101561795A (en) * 2009-05-20 2009-10-21 中兴通讯股份有限公司 Method and device for synchronizing data in distribution-type system
CN101697169A (en) * 2009-10-23 2010-04-21 中兴通讯股份有限公司 Method, device and system for data synchronization between source database and destination database

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI285486B (en) * 2002-12-11 2007-08-11 Inst Information Industry Method for synchronizing client end's data
US8131670B2 (en) * 2007-02-22 2012-03-06 Microsoft Corporation Techniques to cross-synchronize data
US8037110B2 (en) * 2007-12-27 2011-10-11 Microsoft Corporation Business data access client for online/offline client use
US8725679B2 (en) * 2008-04-07 2014-05-13 International Business Machines Corporation Client side caching of synchronized data
US9286369B2 (en) * 2009-12-30 2016-03-15 Symantec Corporation Data replication across enterprise boundaries

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101136833A (en) * 2007-09-26 2008-03-05 深圳市迅雷网络技术有限公司 Method, system and device for across entity network to access data
CN101399656A (en) * 2007-09-27 2009-04-01 华为技术有限公司 Data synchronization method and system in synchronization makeup language
CN101551801A (en) * 2008-03-31 2009-10-07 国际商业机器公司 Data synchronization method and data synchronization system
CN101561795A (en) * 2009-05-20 2009-10-21 中兴通讯股份有限公司 Method and device for synchronizing data in distribution-type system
CN101697169A (en) * 2009-10-23 2010-04-21 中兴通讯股份有限公司 Method, device and system for data synchronization between source database and destination database

Also Published As

Publication number Publication date
CN103186614A (en) 2013-07-03
TWI461944B (en) 2014-11-21
TW201327234A (en) 2013-07-01

Similar Documents

Publication Publication Date Title
CN101551801B (en) Data synchronization method and data synchronization system
CN103078941B (en) A kind of method for scheduling task of distributed computing system
CN102521712B (en) A kind of process instance data processing method and device
CN110737643B (en) Big data analysis processing management middle platform based on catering information management system
CN108009258B (en) Data acquisition and analysis platform capable of being configured online
CN103425734A (en) Database, apparatus, and method for storing encoded triples
CN111125260A (en) Data synchronization method and system based on SQL Server
CN111339073A (en) Real-time data processing method and device, electronic equipment and readable storage medium
CN102043682A (en) Workflow exception handing method and system
CN101685452B (en) Data warehouse scheduling method and scheduling system
CN106846024B (en) Redis-based coupon issuing method, system and computer-readable storage medium
EP2696297B1 (en) System and method for generating information file based on parallel processing
CN106802947A (en) The data handling system and method for entity relationship diagram
CN110704465A (en) Method, device and storage medium for processing service work order table
JP5268589B2 (en) Information processing apparatus and information processing apparatus operating method
CN109284294A (en) Acquire method and device, the storage medium, processor of data
CN105550238A (en) Architecture system of database appliance
US11061926B2 (en) Data warehouse management and synchronization systems and methods
CN105069029A (en) Real-time ETL (extraction-transformation-loading) system and method
CN103744901A (en) Intelligent substation double-host history data synchronously-storing system and device
CN103186614B (en) Electronic data synchronous method and electronic data System of Synchronous Processing
CN103338160B (en) Based on optimization system and the optimization method of the polling service of buffer queue
CN104750849A (en) Method and system for maintaining tree structure-based directory relationship
CN107295059A (en) The statistical system and method for service propelling amount
CN109558223A (en) A kind of multi-process promotes workflow dispositions method and system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant