Specific implementation mode
A kind of data parallel processing method of this specification embodiment offer, device and server.
In order to make those skilled in the art more fully understand the technical solution in this specification, below in conjunction with this explanation
Attached drawing in book embodiment is clearly and completely described the technical solution in this specification embodiment, it is clear that described
Embodiment be only this specification a part of the embodiment, instead of all the embodiments.The embodiment of base in this manual,
Every other embodiment obtained by those of ordinary skill in the art without making creative efforts, should all belong to
The range of this specification protection.
A kind of a kind of specific embodiment of data parallel processing method of this specification introduced below.Fig. 1 is that this specification carries
A kind of flow diagram of embodiment of the data parallel processing method of confession, present description provides such as embodiment or flow chart institutes
The method operating procedure stated, but may include either more or less operating procedure without performing creative labour based on routine.
The step of being enumerated in embodiment sequence be only numerous step execution sequences in a kind of mode, do not represent uniquely execute it is suitable
Sequence.When system or client production in practice executes, it can be executed according to embodiment or method shown in the drawings sequence
Either execute (such as environment of parallel processor or multiple threads) parallel.It is specific as shown in Figure 1, the method can be with
Including:
S102:Default lock corresponding with the con current control mark in concurrent services request is obtained to configure.
In practical applications, when client is needed to server for services, service request can be sent to server.
When server receives service request, the service request can be intercepted, and allocation processing device comes by preset blocker
Handle the service request.Specifically, may determine that whether the concurrent services request of interception includes that con current control identifies, and works as judgement
The result gone out be can be asked the service request as concurrent services when being, and obtain it is in being asked with concurrent services and
The corresponding default lock configuration of hair control mark, specifically, can inquire with the presence or absence of the concurrently control in being asked with concurrent services
The corresponding default lock configuration of system mark;When the result of inquiry is to be, executes and obtain the default lock configuration.
In further embodiments, such as initially to ensure data consistency, the setting locked, correspondingly,
Will include con current control mark in service request, but subsequently in order to improve performance or assessment without concurrently influencing when, can be without
Con current control, has been deleted or modified corresponding default lock configuration, can not thus be found according to con current control mark corresponding pre-
If lock configuration, correspondingly, original service call can be continued, the corresponding business operation of concurrent services request is executed, according to
The information of the result feedback traffic operation success or failure of the business operation.
Specifically, the concurrent services request may include that concurrent services ask relevant parameter and identification information.Specifically
, parameter may include that concurrent services are asked corresponding to corresponding locking data (hereinafter referred to as locking data), the lock data
Body data etc..Specifically, identification information may include the con current control for distinguishing concurrent services request and non-concurrent service request
Mark.Specifically, whether con current control mark can need to carry out the identification mark of con current control as a service request here
Know, when a service request include con current control mark, generally can using the service request as concurrent services request, go forward side by side
The subsequent con current control processing of row.
In addition, the concurrent services mark may include the corresponding service identifiers of corresponding concurrent services request, it is described
Service identifiers carry out the identification information that can be used as finding corresponding default lock configuration.In a specific embodiment, institute
State the main body mark that service identifiers can be the corresponding main object of corresponding concurrent services request.
It can be used for based on the subordinate relation definition between data specifically, presetting lock configuration described in the embodiment of the present application
The lock grade of data, and the source for defining the corresponding concurrent data of concurrent services request.
Specifically, the source of the concurrent data may include main body identification parameter, lock Data Identification parameter and and data
Lock grade.Wherein, the main body identification parameter is for specified which the parameter acquiring main body mark asked from concurrent services;Institute
State lock Data Identification parameter needs the data object locked for specified which gain of parameter asked from concurrent services.The number
According to lock grade may include according between data subordinate relation divide processing grade.
In practical applications, between the data with subordinate relation when concurrent operations, it may appear that concurrent problem.Therefore, originally
The setting first post-processed according to the lock grade of data progress data in specification embodiment is to avoid concurrent problem.As shown in Fig. 2,
Fig. 2 is a kind of schematic diagram of embodiment of the lock grade for the data that this specification provides.It can be seen in fig. 2 that being with user information
Body data, and the dependency information that user information includes is drawn according to the subordinate relation between data with tree data structure
Divide and corresponding lock grade is set.Lock grade is divided into three-level in Fig. 2, the height according to lock grade can be L1, L2 successively
And L3.L1 is highest lock grade, and lock onto target is the entire user information of user;The lock grade of L2 is less than L1, the mesh of L2 lockings
Mark may include the dependency information of user information:Log-on message, social information, address information or assets.The lock grade of L3 is less than
The target of L2, L3 locking may include the dependency information of log-on message:Login name, password, the dependency information good friend of social information,
The dependency information of address information:The dependency information of ship-to and assets:Bank card.When the data interlock of high lock grade,
The relevant operation that the data of low lock grade of the data with subordinate relation of grade are locked with the height can not parallel processing;Without
It can be with parallel processing between the data of subordinate relation.For example, when the log-on message that lock grade is L2 is locked, have with log-on message
Having subordinate relation and lock relevant operation of the grade less than the login name, password of log-on message can not parallel processing.
In addition, it is necessary to explanation, between the dependency information and the information of the information institute subordinate of an information there is also from
Category relationship.For example, the dependency information of the log-on message in Fig. 2 includes login name and password, log-on message is subordinated to user information,
Therefore, there is also subordinate relation with user information for login name and password.
Can be the corresponding mark of each data setting to distinguish different data in this specification embodiment.It is each
The mark of data may include but be limited to the data that the particular content progress Hash operation based on data obtains.Specifically, here
The particular content of data may include the full content of data, can also include the partial content of data.In addition, when data are more
When, such as hundreds of good friends can carry out the particular content based on data what Hash operation obtain to reduce resource consumption
Data carry out truncation.For example, taking latter 2 of the data after Hash operation.
In this specification embodiment, the mark of data carries out the data that Hash operation obtains by the particular content of data.Cause
This, the mark of data can be used for identifying the subordinate relation between corresponding data.
From the foregoing, it can be seen that determining for the lock grade of data is carried out in this specification embodiment based on the subordinate relation between data
Justice can refine the data of locking, realize fine-grained lock control, reduce resource contention.
In practical applications, when locking unsuccessfully causes business operation to fail, corresponding failure strategy can be pre-set,
It discharges resource or carries out remedial measure.Correspondingly, the default lock configuration can be also used for the processing mode of definition locking failure.
Specifically, the processing mode of the locking failure can include at least one of the following:
Exit currently processed thread;
Retry business relevant operation;
Current business is operated and carries out idempotent processing.
Specifically, here when the failure strategy configuration includes retrying business relevant operation, due to retrying business correlation
Operation is the number of retries configured based on current service, repeats business relevant operation.Therefore, the processing data of the locking failure
It may include number of retries.
In some embodiments, the source of the concurrent data can also include idempotent abstract parameter.The idempotent abstract
Content information of the parameter for specified which the gain of parameter concurrent services request asked from concurrent services.
S104:Determine that the association of the corresponding lock grade of the concurrent services request is concurrently controlled based on the default lock configuration
Data processed.
In this specification embodiment, after obtaining the default lock configuration of concurrent services request, each concurrent services request
A con current control data will be corresponded to, the con current control data may include the corresponding lock data of concurrent services request
Lock Data Identification, the main body of the body data for locking data identifies, the lock grade and business release of the lock data.(when
When the lock data are main volume data, the lock Data Identification is identified as same mark with the main body).
Specifically, the business release can be used for reflecting the data of the lock condition of lock data.Specifically, when being locked into
When work(, concurrent services ask corresponding business operation that can smoothly execute, and corresponding business can be updated, can be by business version
This number plus one.
In some embodiments, the con current control data can also include the locking frequency of failure.Specifically, when locking is lost
When losing, concurrent services ask corresponding business operation failure, can the locking frequency of failure be added one.In addition, when locking successfully,
The locking frequency of failure can be reset.Here when the locking frequency of failure can be in order to subsequent retries business relevant operation, based on lock
The frequency of failure is determined to carry out the statistics of number of retries.
In practical applications, the concurrent operations for influencing currently to lock the business operation of grade include being subordinated to currently lock data
The lock grade of same body data higher than the data of current lock grade business operation, or with current business operation it is identical its
His concurrent operations.Therefore, the association con current control data of the corresponding lock grade of concurrent services request may include and institute
The lock data for stating concurrent services request are subordinated to same body data, and lock grade higher than the lock grade for locking data and
Send out the con current control data of data;Can also include the con current control data corresponding to the lock data of concurrent services request.
Correspondingly, in some embodiments, it is described that the corresponding lock etc. of the concurrent services request is determined based on the default lock configuration
Grade association con current control data may include:
Determined using the default lock configuration lock Data Identification of the lock data of concurrent services request, main body identify and
Lock grade;
Determine that there is the concurrent of subordinate relation with the lock data using the lock Data Identification and main body mark
The con current control data of data;
Lock grade, which is chosen, from the con current control data of the concurrent data with the lock data with subordinate relation is higher than institute
State the con current control data of the concurrent data of the lock grade of lock data;
By it is described lock grade higher than it is described lock data lock grade concurrent data con current control data and with the lock
The association that there are data the con current control data of the concurrent data of identical rope Data Identification to be asked as the concurrent services is concurrent
Control data.
In a specific embodiment, the subordinate relation and phase between the data in conjunction with corresponding to user information in Fig. 2
For the lock grade answered, it is assumed that current concurrent services request is " bank card 003 of modification user A ", and corresponding data of locking are " silver
Row blocks 003 ", " user information 001 " that the body data corresponding to bank card 003 is user A.Once getting and described concurrently taking
After the default lock configuration of business request, the concurrent services can be asked to carry out con current control, determine that corresponding association is concurrently controlled
Data processed, specifically, can be based on default lock configuration obtain " bank card 003 " mark (i.e. rope Data Identification, it is assumed here that
A003 is the mark of the bank card 003 of user A "), (i.e. main body identifies, here vacation for the mark of body data " user information 001 "
If A001 is the mark of the user information 001 of user A) and grade L3 is locked, then, determined based on A003 and A001 and L3 and rope
Data " bank card 003 " have subordinate relation and lock con current control data of the grade higher than the concurrent data of " bank card 003 ", with
And with " bank card 003 " there are the con current control data of the concurrent data of identical rope Data Identification " A003 " concurrently to be controlled as association
Data processed, correspondingly, obtained association con current control data may include:" user information 001 ", " user's assets 002 " and " silver
The con current control data of row card 003 ".As shown in table 1, table 1 is the association con current control data that this specification embodiment provides
A kind of example:
|
User information 001 |
User's assets 002 |
Bank card 003 |
Main body identifies |
A001 |
A001 |
A001 |
Lock grade |
L1 |
L2 |
L3 |
Rope Data Identification |
A001 |
A002 |
A003 |
Version information |
V4 |
V10 |
V20 |
Table 1
In further embodiments, described when failure strategy configuration includes operating to carry out idempotent processing to current business
Con current control data can also include idempotent summary info.Specifically, the idempotent summary info can be used for when locking failure
When, judge whether idempotent is successful for current concurrent services request, and the idempotent summary info may include asking for concurrent services request
Seek content information.In practical applications, if the content information of two concurrent services request is the same, idempotent abstract
It is identical.In a specific embodiment, it is assumed that the content of current concurrent services request is modified address information, and Current lock
Failure, but according to association con current control data determine identical content information concurrent services request business operation at
Work(can return to business operation successful information.
S106:Execute the corresponding business operation of the concurrent services request.
In practical applications, general default data locks successfully, after step 104, can execute the concurrent services
The corresponding business operation of request.If certainly follow-up find locking failure, it can ensure the accurate of data by way of rollback
Property.
In a specific embodiment, it is assumed that concurrent services request is changes the bank card of user, correspondingly, here may be used
To carry out the modification operation of the bank card of user.
S108:Based on the con current control data of concurrent services request described in the association con current control data update, when more
When new success, business operation successful information is returned.
In this specification embodiment, after executing the step S106, the association con current control data can be based on more
The con current control data of the new concurrent services request return to business operation successful information when being updated successfully.
Specifically, the con current control number based on concurrent services request described in the association con current control data update
According to when being updated successfully, returning to business operation successful information may include:
Lock Data Identification, the lock of the corresponding lock data of concurrent services request are determined based on the default lock configuration
The main body of the body data of data identifies, the lock grade of the lock data;
Judge whether the business release in the association con current control data is constant;
When the result judged is is, the business release is updated;
Will update treated business release, the lock Data Identification, the main body identifies and the lock grade is as institute
State the con current control data of concurrent services request;
Return to business operation successful information.
Will update treated business release, the lock Data Identification, the main body identifies and the lock grade is as institute
State the con current control data of concurrent services request.
It is " bank card 003 of modification user 001 " in conjunction with above-mentioned current concurrent services request in a specific embodiment
Example, it is assumed that association con current control data:The concurrently control of " user information 001 ", " user's assets 002 " and " bank card 003 "
Data processed do not change, correspondingly, may determine that the business release in association con current control data is constant, i.e., currently
Concurrent services ask corresponding data interlock success, correspondingly, the business release of " bank card 003 " adds one, are revised as " V21 ".
Furthermore it is possible to which the locking frequency of failure can be reset.
In another specific embodiment, in conjunction with the above-mentioned current concurrent services request " bank card of modification user 001
003 " example, it is assumed that the business operation success of " user's assets 002 ", correspondingly, the locking information pair in con current control data
The business release answered can be updated and (be updated to V11), at this point, when updating the con current control data corresponding to bank card 003, hair
The business release V10 of " the user's assets 002 " that are now associated in con current control data can not find, that is, judge that association is concurrently controlled
Business release in data processed changes, the data update failure of current concurrent services request, i.e. locking failure, correspondingly,
It can be with the corresponding business operation of concurrent services request described in rollback, to ensure the accuracy of data.
As shown in figure 3, Fig. 3 is the flow signal of another embodiment for the data parallel processing method that this specification provides
Figure, specifically, on the other hand additionally providing the counte-rplan of reply locking failure in this specification embodiment.The method may be used also
To include:
S110:When update failure, the corresponding business operation of concurrent services request described in rollback;
S112:The implementing result of processing mode based on the locking failure defined in the default lock configuration returns to the industry
Business operation success or failure information.
In some embodiments, described based on described when the processing mode of locking failure is to exit currently processed thread
The implementing result of the processing mode of locking failure defined in default lock configuration returns to the business operation success or failure information
May include:
S1122:Currently processed thread is exited, business operation failure information is returned.
In further embodiments, described to be based on institute when the processing mode of locking failure is to retry business relevant operation
The implementing result for stating the processing mode of the locking failure defined in default lock configuration returns to the business operation success or failure letter
Breath may include:
S1124:Monitor whether the corresponding number of retries of the concurrent services request is less than or equal to first threshold;
When the result of monitoring is to be, executes step S104 and determine that the concurrent services are asked based on the default lock configuration
The operation of the association con current control data of corresponding lock grade.
Further, the method can also include:
When the result of monitoring is no, business operation failure information is returned.
In practical applications, if the lock operation of current concurrent services request can not succeed always, secondary more than retrying
After several upper limits (the i.e. described first threshold), business operation failure information can be returned.Herein relative to directly exiting current place
Lineation journey returns to the scheme of business operation failure information, after repeatedly retrying, the time of response can be caused to increase.It therefore, can be with
The upper limit of number of retries is arranged to response time requirement in conjunction with concurrent services request in practical application.
In further embodiments, it if current have largely concurrently, in order to mitigate the burden of server, is carried out retrying
When, while the locking frequency of failure can be observed, if the locking frequency of failure is much higher than number of retries, at this point it is possible to consider to carry
Preceding end retries.Correspondingly, the method can also include:
Whether the locking frequency of failure for monitoring the concurrent services request is more than second threshold;
When the result of monitoring is to be, business operation failure information is returned.
In further embodiments, when the processing mode of locking failure is to operate to carry out idempotent processing to current business,
The implementing result of the processing mode based on the locking failure defined in the default lock configuration return the business operation at
Work(or failure information may include:
S1126:Determine that the idempotent of the concurrent services request is plucked according to the idempotent abstract parameter in the default lock configuration
Want information;
S1128:Whether judge the more corresponding business operations of concurrent services request based on the idempotent summary info
Idempotent success;
When the result judged is is, business operation successful information is returned.
Further, the method can also include:
When the result judged is is, business operation failure information is returned.
Specifically, the scene that idempotent processing here asks largely to retransmit mainly for identical concurrent services, i.e., identical to ask
When other concurrent services of content being asked to ask successfully, even if the request failure of current concurrent services, can also return business operation at
Work(information.It is handled by idempotent, it can be to avoid a large amount of repetitive requests.
It, can be by association con current control number that step S104 is obtained in this specification embodiment furthermore, it is necessary to explanation
According to first being cached, the con current control data for updating current concurrent services request later of step S106 are executed.It can also be in step
After rapid S104 obtains association con current control data, the concurrently control that current concurrent services request is updated in step S108 is directly executed
Then the step of data processed, returns to business operation successful information correspondingly, if step S106 can directly be executed by being updated successfully;
If the implementing result that update failure can be directly based upon the processing mode of the locking failure defined in the default lock configuration returns
The business operation success or failure information.
It can be seen that a kind of one or more embodiments of data parallel processing method of this specification are based between data
Subordinate relation carries out the definition of the lock grade of data, can refine the data of locking, realize fine-grained lock control.Then, it presses
According to the division of lock grade, the association con current control data corresponding to the concurrent operations for influencing current concurrent services request are obtained,
After the business operation for having executed the request of current concurrent services, association con current control data can be directly based upon update it is current and
The con current control data for sending out service request, the success or failure of data interlock are determined with newer success or failure, server end sheet may be implemented
The lock control of configurableization on ground makes called side not have to pay close attention to concurrent problem.Meanwhile fine-grained lock control can reduce resource
Competition improves system in parallel processing capacity.In addition, additionally providing the place of a variety of local locking failures in this specification embodiment
Reason mode, overcome the single mechanism that traditional locking is unsuccessfully exited and called side unreasonable the problem of retrying.
On the other hand this specification also provides a kind of parallel data processing device, Fig. 4 be the data that provide of this specification simultaneously
The structural schematic diagram of a kind of embodiment of row processing unit, as shown in figure 4, described device 400 may include:
Default lock configuration acquisition module 410 can be used for obtaining opposite with the con current control mark in concurrent services request
The default lock configuration answered, wherein the default lock is configured to define the lock grade of data based on the subordinate relation between data,
And the source for defining the corresponding concurrent data of concurrent services request;
It is associated with con current control data determining module 420, can be used for concurrently taking based on the default lock configuration determination is described
The association con current control data of the corresponding lock grade of business request;
Business operation execution module 430 can be used for executing the corresponding business operation of the concurrent services request;
Con current control data update module 440 can be used for based on concurrent described in the association con current control data update
The con current control data of service request return to business operation successful information when being updated successfully.
In another embodiment, the association con current control data determining module 420 may include:
First data determination unit can be used for determining the lock number of the concurrent services request using the default lock configuration
According to lock Data Identification, main body mark and lock grade;
First con current control data capture unit can be used for determining using the lock Data Identification and main body mark
Go out the con current control data of the concurrent data with the lock data with subordinate relation and with identical rope Data Identification;
Second con current control data capture unit can be used for from the concurrent data with the lock data with subordinate relation
Con current control data in choose lock grade higher than it is described lock data lock grade concurrent data con current control data;
Third con current control data capture unit can be used for the lock grade higher than the lock grade for locking data
The con current control data of concurrent data and with it is described lock data have identical rope Data Identification concurrent data con current control number
According to the association con current control data asked as the concurrent services.
In another embodiment, the con current control data update module 440 may include:
Second data determination unit can be used for determining corresponding to the concurrent services request based on the default lock configuration
Lock the lock Data Identification of data, the main body of the body data of the lock data identifies, the lock grade of the lock data;
Whether not business release judging unit can be used for judging the business release being associated in con current control data
Become;
Business release updating unit can be used for when the result that the business release judging unit judges is is, update
The business release;
Con current control data determination unit can be used for update treated business release, the lock Data Identification, institute
State the con current control data that main body mark and the lock grade are asked as the concurrent services;
Successful information returning unit can be used for returning to business operation successful information.
In another embodiment, the default lock configuration acquisition module 410 may include:
Query unit can be used for inquiring corresponding pre- with the presence or absence of the con current control mark in asking with concurrent services
If lock configuration;
Default lock configuration acquiring unit can be used for, when the result that the query unit is inquired is to be, executing and obtaining institute
State default lock configuration.
In another embodiment, described device 400 can also include:
First data processing module can be used for when the result that the query unit is inquired is no, execute described concurrent
Business operation corresponding to service request operates the information of success or failure according to the result feedback traffic of the business operation.
In another embodiment, described device can also include:
Blocking module can be used for matching in acquisition default lock corresponding with the con current control mark in concurrent services request
Before setting, the service request received is intercepted;
Whether judgment module can be used for judging in the service request intercepted including that con current control identifies;
Concurrent services ask determining module, for when the result judged is is, using the service request as concurrently taking
Business request.
In another embodiment, described device 400 can also include:
Business roll-back module can be used for when updating failure, the corresponding business behaviour of concurrent services request described in rollback
Make;
Second data processing module can be used for the processing mode based on the locking failure defined in the default lock configuration
Implementing result return to the business operation success or failure information.
In another embodiment, second data processing module may include:
Second data processing unit returns to business operation failure information for exiting currently processed thread.
In another embodiment, second data processing module may include:
First monitoring unit, can be used for monitoring whether the corresponding number of retries of the concurrent services request is less than or equal to
First threshold;
Third data processing unit can be used for when the result that first monitoring unit monitors is to be, execution is based on
The default lock configuration determines the operation of the association con current control data of the corresponding lock grade of the concurrent services request.
In another embodiment, described device 400 can also include:
Second monitoring unit can be used for, when the result that first monitoring unit monitors is to be, institute being based on executing
Before stating the operation of association con current control data that default lock configuration determines the corresponding lock grade of the concurrent services request, prison
Whether the locking frequency of failure for surveying the concurrent services request is more than second threshold;
4th data processing unit can be used for, when the result that second monitoring unit monitors is to be, returning to business
Operation failure information.
In another embodiment, described device can also include:
5th data processing unit can be used for, when the result that first monitoring unit monitors is no, returning to business
Operation failure information.
In another embodiment, second data processing module may include:
Idempotent summary info determination unit determines institute with idempotent abstract parameter that can be in being configured according to the default lock
State the idempotent summary info of concurrent services request;
Idempotent judgment module can be used for judging that the concurrent services request is mostly corresponding based on the idempotent summary info
Business operation whether idempotent success;
6th data processing unit can be used for when the result that the idempotent judgment module judges is is, return to business
Operate successful information.
In another embodiment, described device 400 can also include:
7th data processing unit can be used for when the result that the idempotent judgment module judges is is, return to business
Operation failure information.
The above-mentioned data parallel processing method or device that this specification embodiment provides can be in a computer by processors
Corresponding program instruction is executed to realize, such as using the c++ language of windows operating systems the ends PC realize or other for example
It is realized in intelligent terminal using android, iOS system programming language, and the processing logic based on quantum computer is real
Now etc..As shown in figure 5, Fig. 5 is the signal knot according to the parallel data processing server of an exemplary embodiment of this specification
Composition.In hardware view, which may include processor, internal bus, network interface, memory and non-volatile memories
Device is also possible that the required hardware of other business certainly.Processor reads corresponding calculating from nonvolatile memory
It is then run in machine program to memory, forms word string identification device on logic level.Certainly, in addition to software realization mode it
Outside, other realization methods, such as the mode etc. of logical device or software and hardware combining is not precluded in the application, that is to say, that with
The executive agent of lower process flow is not limited to each logic unit, can also be hardware or logical device.
Specifically, on the other hand this specification also provides a kind of parallel data processing server, including processor and storage
Device, the memory store the computer program instructions executed by the processor, and the computer program instructions may include:
It obtains default lock corresponding with the con current control mark in concurrent services request to configure, wherein the default lock
It is configured to define the lock grade of data based on the subordinate relation between data, and for defining corresponding to concurrent services request
Concurrent data source;
The association con current control number of the corresponding lock grade of the concurrent services request is determined based on the default lock configuration
According to;
Execute the corresponding business operation of the concurrent services request;
Based on the con current control data of concurrent services request described in the association con current control data update, when being updated successfully
When, return to business operation successful information.
In this specification embodiment, the processor may include central processing unit (CPU) or graphics processor
(GPU), naturally it is also possible to including other microcontroller, logic gates, integrated circuits with logic processing capability etc. or its
It is appropriately combined.Memory described in the embodiment of the present application can be for protecting stored memory device.In digital display circuit, energy
The equipment for preserving binary data can be memory;In integrated circuits, one not physical form have store function
Circuit may be memory, such as RAM, FIFO;In systems, the storage device with physical form can also be named storage
Device etc..When realization, which can also be realized by the way of cloud storage, specific implementation, and this specification is not
Mistake limits.
It can be seen that the embodiment of a kind of data parallel processing method of this specification, device or server be based on data it
Between subordinate relation carry out data lock grade definition, the data of locking can be refined, realize fine-grained lock control.So
Afterwards, according to the division of lock grade, the association con current control number corresponding to the concurrent operations for influencing current concurrent services request is obtained
According to after the business operations for having executed the request of current concurrent services, association con current control data being directly based upon and worked as to update
The con current control data of preceding concurrent services request, the success or failure of data interlock are determined with newer success or failure, may be implemented to service
The lock control of configurableization at device end makes called side not have to pay close attention to concurrent problem.Meanwhile fine-grained lock control can subtract
Few resource contention, improves system in parallel processing capacity.It is lost in addition, additionally providing a variety of local lockings in this specification embodiment
The processing mode lost, overcome the single mechanism that traditional locking is unsuccessfully exited and called side unreasonable the problem of retrying.
It is above-mentioned that this specification specific embodiment is described.Other embodiments are in the scope of the appended claims
It is interior.In some cases, the action recorded in detail in the claims or step can be come according to different from the sequence in embodiment
It executes and desired result still may be implemented.In addition, the process described in the accompanying drawings not necessarily require show it is specific suitable
Sequence or consecutive order could realize desired result.In some embodiments, multitasking and parallel processing be also can
With or it may be advantageous.
In the 1990s, the improvement of a technology can be distinguished clearly be on hardware improvement (for example,
Improvement to circuit structures such as diode, transistor, switches) or software on improvement (improvement for method flow).So
And with the development of technology, the improvement of current many method flows can be considered as directly improving for hardware circuit.
Designer nearly all obtains corresponding hardware circuit by the way that improved method flow to be programmed into hardware circuit.Cause
This, it cannot be said that the improvement of a method flow cannot be realized with hardware entities module.For example, programmable logic device
(Programmable Logic Device, PLD) (such as field programmable gate array (Field Programmable Gate
Array, FPGA)) it is exactly such a integrated circuit, logic function determines device programming by user.By designer
Voluntarily programming comes a digital display circuit " integrated " on a piece of PLD, designs and makes without asking chip maker
Dedicated IC chip.Moreover, nowadays, substitution manually makes IC chip, this programming is also used instead mostly " patrols
Volume compiler (logic compiler) " software realizes that software compiler used is similar when it writes with program development,
And the source code before compiling also write by handy specific programming language, this is referred to as hardware description language
(Hardware Description Language, HDL), and HDL is also not only a kind of, but there are many kind, such as ABEL
(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description
Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL
(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby
Hardware Description Language) etc., VHDL (Very-High-Speed are most generally used at present
Integrated Circuit Hardware Description Language) and Verilog.Those skilled in the art also answer
This understands, it is only necessary to method flow slightly programming in logic and is programmed into integrated circuit with above-mentioned several hardware description languages,
The hardware circuit for realizing the logical method flow can be readily available.
Controller can be implemented in any suitable manner, for example, controller can take such as microprocessor or processing
The computer for the computer readable program code (such as software or firmware) that device and storage can be executed by (micro-) processor can
Read medium, logic gate, switch, application-specific integrated circuit (Application Specific Integrated Circuit,
ASIC), the form of programmable logic controller (PLC) and embedded microcontroller, the example of controller includes but not limited to following microcontroller
Device:ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicone Labs C8051F320, are deposited
Memory controller is also implemented as a part for the control logic of memory.It is also known in the art that in addition to
Pure computer readable program code mode is realized other than controller, can be made completely by the way that method and step is carried out programming in logic
Controller is obtained in the form of logic gate, switch, application-specific integrated circuit, programmable logic controller (PLC) and embedded microcontroller etc. to come in fact
Existing identical function.Therefore this controller is considered a kind of hardware component, and to including for realizing various in it
The device of function can also be considered as the structure in hardware component.Or even, it can will be regarded for realizing the device of various functions
For either the software module of implementation method can be the structure in hardware component again.
Device, module or the unit that above-described embodiment illustrates can specifically be realized, Huo Zheyou by computer chip or entity
Product with certain function is realized.It is a kind of typically to realize that equipment is computer.Specifically, computer for example can be a
People's computer, laptop computer, cellular phone, camera phone, smart phone, personal digital assistant, media player, navigation
Any equipment in equipment, electronic mail equipment, game console, tablet computer, wearable device or these equipment
Combination.
For convenience of description, it is divided into various units when description apparatus above with function to describe respectively.Certainly, implementing this
The function of each unit is realized can in the same or multiple software and or hardware when specification.
It should be understood by those skilled in the art that, the embodiment of the present invention can be provided as method, apparatus or computer program
Product.Therefore, complete hardware embodiment, complete software embodiment or reality combining software and hardware aspects can be used in the present invention
Apply the form of example.Moreover, the present invention can be used in one or more wherein include computer usable program code computer
The computer program production implemented in usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.)
The form of product.
The present invention be with reference to according to the method for the embodiment of the present invention, the flow of equipment (device) and computer program product
Figure and/or block diagram describe.It should be understood that can be realized by computer program instructions every first-class in flowchart and/or the block diagram
The combination of flow and/or box in journey and/or box and flowchart and/or the block diagram.These computer programs can be provided
Instruct the processor of all-purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices to produce
A raw machine so that the instruction executed by computer or the processor of other programmable data processing devices is generated for real
The device for the function of being specified in present one flow of flow chart or one box of multiple flows and/or block diagram or multiple boxes.
These computer program instructions, which may also be stored in, can guide computer or other programmable data processing devices with spy
Determine in the computer-readable memory that mode works so that instruction generation stored in the computer readable memory includes referring to
Enable the manufacture of device, the command device realize in one flow of flow chart or multiple flows and/or one box of 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 count
Series of operation steps are executed on calculation machine or other programmable devices to generate computer implemented processing, in computer or
The instruction executed on other programmable devices is provided for realizing in one flow of flow chart or multiple flows and/or block diagram one
The step of function of being specified in a box or multiple boxes.
In a typical configuration, computing device includes one or more processors (CPU), input/output interface, net
Network interface and memory.
Memory may include computer-readable medium in volatile memory, random access memory (RAM) and/or
The forms such as Nonvolatile memory, such as read-only memory (ROM) or flash memory (flash RAM).Memory is computer-readable medium
Example.
Computer-readable medium includes permanent and non-permanent, removable and non-removable media can be by any method
Or technology realizes information storage.Information can be computer-readable instruction, data structure, the module of program or other data.
The example of the storage medium of computer includes, but are not limited to phase transition internal memory (PRAM), static RAM (SRAM), moves
State random access memory (DRAM), other kinds of random access memory (RAM), read-only memory (ROM), electric erasable
Programmable read only memory (EEPROM), fast flash memory bank or other memory techniques, read-only disc read only memory (CD-ROM) (CD-ROM),
Digital versatile disc (DVD) or other optical storages, magnetic tape cassette, tape magnetic disk storage, graphene stores or other
Magnetic storage apparatus or any other non-transmission medium can be used for storage and can be accessed by a computing device information.According to herein
In define, computer-readable medium does not include temporary computer readable media (transitory media), such as data of modulation
Signal and carrier wave.
It should also be noted that, the terms "include", "comprise" or its any other variant are intended to nonexcludability
Including so that process, method, commodity or equipment including a series of elements include not only those elements, but also wrap
Include other elements that are not explicitly listed, or further include for this process, method, commodity or equipment intrinsic want
Element.In the absence of more restrictions, the element limited by sentence "including a ...", it is not excluded that wanted including described
There is also other identical elements in the process of element, method, commodity or equipment.
It will be understood by those skilled in the art that the embodiment of this specification can be provided as method, apparatus or computer program production
Product.Therefore, complete hardware embodiment, complete software embodiment or implementation combining software and hardware aspects can be used in this specification
The form of example.Moreover, this specification can be used in one or more wherein include computer usable program code computer
The computer program production implemented in usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.)
The form of product.
This specification can describe in the general context of computer-executable instructions executed by a computer, such as journey
Sequence module.Usually, program module include routines performing specific tasks or implementing specific abstract data types, program, object,
Component, data structure etc..This specification can also be put into practice in a distributed computing environment, in these distributed computing environment
In, by executing task by the connected remote processing devices of communication network.In a distributed computing environment, program module
It can be located in the local and remote computer storage media including storage device.
Each embodiment in this specification is described in a progressive manner, identical similar portion between each embodiment
Point just to refer each other, and each embodiment focuses on the differences from other embodiments.Especially for device and
For server example, since it is substantially similar to the method embodiment, so description is fairly simple, related place is referring to side
The part of method embodiment illustrates.
The foregoing is merely the embodiments of this specification, are not limited to this specification.For art technology
For personnel, this specification can have various modifications and variations.It is all this specification spirit and principle within made by it is any
Modification, equivalent replacement, improvement etc., should be included within right.