CN117009360A - Data processing method, device, electronic equipment, storage medium and program product - Google Patents

Data processing method, device, electronic equipment, storage medium and program product Download PDF

Info

Publication number
CN117009360A
CN117009360A CN202211505159.XA CN202211505159A CN117009360A CN 117009360 A CN117009360 A CN 117009360A CN 202211505159 A CN202211505159 A CN 202211505159A CN 117009360 A CN117009360 A CN 117009360A
Authority
CN
China
Prior art keywords
job
content
task
site
job content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211505159.XA
Other languages
Chinese (zh)
Inventor
乔江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202211505159.XA priority Critical patent/CN117009360A/en
Publication of CN117009360A publication Critical patent/CN117009360A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2336Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
    • G06F16/2343Locking methods, e.g. distributed locking or locking implementation details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Remote Sensing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The embodiment of the application provides a data processing method, a device, electronic equipment, a storage medium and a program product, and relates to the technical fields of map, traffic, cloud technology, artificial intelligence and the like. The method comprises the following steps: receiving a first request of a first operator for editing a target line, and generating a first job task; before the first job task is finished, if a second request of editing the target line by a second operator is received, generating a second job task; based on the first job content corresponding to the first job task and the second job content corresponding to the second job task, performing conflict judgment; if the first operation content and the second operation content have no conflict, the first operation content and the second operation content are updated to the database, namely, the embodiment of the application adopts an operation mode which is not occupied by a single person, and provides a conflict judging mechanism to solve the problem of data errors caused by the coverage of parallel operation results, thereby greatly improving the operation efficiency of line data, shortening the operation period and reducing the production and maintenance cost of bus data.

Description

Data processing method, device, electronic equipment, storage medium and program product
Technical Field
The present application relates to the field of data processing technologies, and in particular, to a data processing method, apparatus, electronic device, storage medium, and program product.
Background
Public transportation (may be simply referred to as public transportation) data management is an essential ring in the maintenance process of urban public transportation lines. The bus route data has the characteristics of sequence, continuity and the like, and if a plurality of people work simultaneously to modify the bus route data, the sequence and the continuity of the station list can be damaged, and error data can be generated.
At present, in the process of manufacturing, maintaining and the like, the whole bus line data is generally adopted to be submitted together so as to ensure the accuracy of the line data. In the multi-person operation mode, a single person is required to occupy the whole line to perform data operation so as to avoid the problem that the data operation results are mutually covered. The data operation mode occupied by the line has large operation granularity, so that the operation efficiency is lower, and the data on-line period is long.
Disclosure of Invention
The embodiment of the application aims to solve the technical problem of how to improve the operation efficiency of bus line data.
According to an aspect of an embodiment of the present application, there is provided a data processing method, including:
Receiving a first request of a first operator for editing a target line, and generating a first job task;
before the first job task is finished, if a second request of editing the target line by a second operator is received, generating a second job task;
based on the first job content corresponding to the first job task and the second job content corresponding to the second job task, performing conflict judgment;
and if the first job content and the second job content have no conflict, updating the first job content and the second job content to a database.
According to another aspect of an embodiment of the present application, there is provided a data processing apparatus including:
the first generation module is used for receiving a first request of a first operator for editing the target line and generating a first job task;
the second generating module is used for generating a second job task if a second request of editing the target line by a second operator is received before the first job task is finished;
the judging module is used for carrying out conflict judgment based on the first job content corresponding to the first job task and the second job content corresponding to the second job task;
and the updating module is used for updating the first operation content and the second operation content to the database if the first operation content and the second operation content have no conflict.
In an alternative embodiment, the determining module is further configured to, after performing conflict determination based on the first job content corresponding to the first job task and the second job content corresponding to the second job task: if the first job content and the second job content conflict, a conflict task is generated;
the update module is also for: and obtaining a solution result of the conflict task, and updating the solution result to the database.
In an alternative embodiment, the updating module, when used for obtaining the solution result of the conflict task and updating the solution result to the database, is specifically used for:
updating the job contents of the first submitter of the job contents in the first operator and the second operator to a database;
distributing the conflict task to a post-submitter of the job content;
the method comprises the steps that after job content is obtained, a submitter solves a conflict task;
and updating the solution result to the database.
In an alternative embodiment, the update module, when used to forward the conflicting task stream to the second operator, is specifically configured to:
acquiring the latest version data updated after the job content of the job content submitter is updated to the database;
and allocating the conflict task to a job content post-submitter, and carrying the latest version data.
In an alternative embodiment, the target line is a public transportation line, and the public transportation line includes at least one station, and the determining module is further configured to, before performing conflict determination based on the first job content corresponding to the first job task and the second job content corresponding to the second job task:
and receiving a third request submitted by a corresponding operator for each of the first job task and the second job content, and acquiring the job content submitted in the form of a site segment.
In an alternative embodiment, the judging module is specifically configured to, when performing conflict judgment based on the first job content corresponding to the first job task and the second job content corresponding to the second job task, at least one of the following:
determining whether the first job content and the second job content each include edits to the first attribute;
determining whether the first attribute edited in the first job content and the first attribute edited in the second job content relate to the same site or adjacent sites;
whether the first job content and the second job content relate to conflicting scenes.
In an alternative embodiment, the first attribute comprises at least one of the following attributes:
Station attributes; a standing sequence attribute; track attributes.
In an alternative embodiment, the determining module is specifically configured to, when performing conflict determination based on a first job content corresponding to a first job task and a second job content corresponding to a second job task:
based on the data of the first operator and the second operator, which are updated by the job content of the first submitter, determining whether the job content of the second submitter is at least one of the following conditions:
the edited site does not exist;
editing the site to change depending on the site up and down;
at least one first attribute of the edited site changes;
at least one first attribute of a dependent site on the edited site is changed;
the edited site or the site-dependent position attribute thereof changes;
there are conflicting sites in the submitted site segment.
In an alternative embodiment, the judging module is further configured to: for each first attribute of each of the edited site and the last dependent site of the edited site, determining whether the first attribute has changed by:
acquiring historical version information corresponding to the first attribute before editing the second job task;
Acquiring latest version information corresponding to the first attribute from a database;
based on the historical version information and the latest version information, it is determined whether the first attribute has changed.
In an alternative embodiment, the judging module is specifically configured to, when determining whether the first attribute edited in the first job content and the first attribute edited in the second job content relate to the same site or neighboring sites:
simplifying the first operation content and the second operation content based on at least one preset alternative relation of the first attribute editing;
it is determined whether the first attribute of the reduced first job content edit and the first attribute of the edit in the reduced second job content relate to the same site or neighboring sites.
In an alternative embodiment, the apparatus further comprises a submit module for, for each of the first job content and the second job content:
responding to a submitting request for submitting the job content, and acquiring a distributed lock;
if the distributed lock is successfully obtained, submitting the operation content;
if the distributed lock acquisition fails, a commit request to commit the job content is reinitiated.
According to still another aspect of the embodiments of the present application, there is provided an electronic device including a memory, a processor, and a computer program stored on the memory, the processor executing the computer program to implement the data processing method provided by the embodiments of the present application.
According to still another aspect of the embodiments of the present application, there is provided a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the data processing method provided by the embodiments of the present application.
According to a further aspect of the embodiments of the present application, there is provided a computer program product comprising a computer program which, when executed by a processor, implements a data processing method provided by the embodiments of the present application.
The data processing method, the device, the electronic equipment, the storage medium and the program product provided by the embodiment of the application receive a first request of editing a target line by a first operator and generate a first job task; before the first job task is finished, if a second request of editing the target line by a second operator is received, generating a second job task; based on the first job content corresponding to the first job task and the second job content corresponding to the second job task, performing conflict judgment; if the first operation content and the second operation content have no conflict, the first operation content and the second operation content are updated to the database, namely, the embodiment of the application adopts an operation mode which is not occupied by a single person, and a conflict judgment mechanism is provided to solve the problem of data errors caused by the coverage of parallel operation results, thereby greatly improving the operation efficiency of line data, shortening the operation period and reducing the production and maintenance cost of bus data.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings that are required to be used in the description of the embodiments of the present application will be briefly described below.
FIG. 1 is a schematic diagram of a prior art data job in a multi-person mode of operation;
FIG. 2 is a schematic flow chart of a data processing method according to an embodiment of the present application;
FIG. 3 is a flowchart illustrating another data processing method according to an embodiment of the present application;
FIG. 4 is a schematic diagram of a data processing method for performing data operations in a multi-user operation mode according to an embodiment of the present application;
FIG. 5 is a schematic diagram of a job scenario provided in an embodiment of the present application;
fig. 6a is a schematic diagram of a 1 st collision scenario provided in an embodiment of the present application;
fig. 6b is a schematic diagram of a 2 nd collision scenario provided in an embodiment of the present application;
fig. 6c is a schematic diagram of a 3 rd collision scenario provided in an embodiment of the present application;
fig. 7a is a schematic diagram of a 4 th collision scenario provided in an embodiment of the present application;
fig. 7b is a schematic diagram of a 5 th collision scenario provided in an embodiment of the present application;
fig. 7c is a schematic diagram of a 6 th collision scenario provided in an embodiment of the present application;
fig. 7d is a schematic diagram of a 7 th collision scenario provided in an embodiment of the present application;
FIG. 8a is a schematic diagram of an 8 th collision scenario provided by an embodiment of the present application;
fig. 8b is a schematic diagram of a 9 th collision scenario provided in an embodiment of the present application;
fig. 8c is a schematic diagram of a 10 th collision scenario provided in an embodiment of the present application;
fig. 8d is a schematic diagram of a 11 th collision scenario provided in an embodiment of the present application;
FIG. 9 is a schematic diagram of a distributed lock mechanism provided by an embodiment of the present application;
FIG. 10 is a schematic diagram of a data processing apparatus according to an embodiment of the present application;
fig. 11 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
Embodiments of the present application are described below with reference to the drawings in the present application. It should be understood that the embodiments described below with reference to the drawings are exemplary descriptions for explaining the technical solutions of the embodiments of the present application, and the technical solutions of the embodiments of the present application are not limited.
As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless expressly stated otherwise, as understood by those skilled in the art. It will be further understood that the terms "comprises" and "comprising," when used in this specification, specify the presence of stated features, information, data, steps, operations, elements, and/or components, but do not preclude the presence or addition of other features, information, data, steps, operations, elements, components, and/or groups thereof, all of which may be included in the present specification. It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element or intervening elements may be present. Further, "connected" or "coupled" as used herein may include wirelessly connected or wirelessly coupled. The term "and/or" as used herein indicates that at least one of the items defined by the term, e.g., "a and/or B" may be implemented as "a", or as "B", or as "a and B".
For the purpose of making the objects, technical solutions and advantages of the present application more apparent, the embodiments of the present application will be described in further detail with reference to the accompanying drawings.
First, several terms related to the present application are described and explained:
(1) Public transportation: all modes of transportation that are open to the public and provide transportation services are broadly referred to, including but not limited to buses, rail traffic (e.g., subways, light rails, high-speed railways, maglev vehicles, etc.), bus travel specialty lines, coaches, etc.
(2) And (3) line: the roads traversed by a bus typically include a list of stops.
(3) Station: the buses stop according to the regulations, and the places for passengers to get on or off and waiting exist in a way.
(4) The track: the route of the bus reaching any station route is usually divided into tracks and stored in association with the corresponding station, for example, the tracks from station a to station b are stored in association with station b.
(5) And (3) standing: the order of the stops of the bus from the start point to any stop route is also usually stored in association with the corresponding stops.
(6) An operator: the job (production or maintenance) of the public transport data can be a person or a program.
(7) Tasks: and (5) a carrier of the operation behavior flows in each link of the operation, and the operation state is recorded.
Fig. 1 shows an example of data job using the existing line occupation mode in the multi-person job mode. Specifically, when an operator requests to operate a certain line, the operator needs to acquire the line lock corresponding to the line, and only after acquiring the line lock, the operator can generate an operation task of the line for editing the line by the operator. After the job task is completed, the line lock can be released and the job data of the line can be updated to the database. After the line lock is acquired by one operator, until the line lock is released (the task of the operator ends), if other operators request to operate the line, the line lock fails to be acquired, and the task of the line cannot be generated to operate.
The mode that needs to take the line as dimension to carry out the whole operation has the following characteristics:
(1) The line occupation is that in order to prevent the conflict of the multi-task parallel operation, the operation is usually carried out in a mode of occupying the whole line, and other tasks cannot edit the line and all the associated information during the occupation period. The job cycle is long, and when a plurality of people work, the job needs to wait for the end of other tasks in turn, so that the work efficiency is low.
(2) The rough granularity operation, the data of each link circulation is a complete data set containing lines, sites and various associated attributes, so that the data utilization rate is low, and meanwhile, a large amount of redundant data is generated in the operation links, so that the storage and bandwidth are wasted.
The application provides a data processing method, a data processing device, electronic equipment, a storage medium and a program product, and aims to solve the technical problems in the prior art.
The technical solutions of the embodiments of the present application and technical effects produced by the technical solutions of the present application are described below by describing several exemplary embodiments. It should be noted that the following embodiments may be referred to, or combined with each other, and the description will not be repeated for the same terms, similar features, similar implementation steps, and the like in different embodiments.
An embodiment of the present application provides a data processing method, as shown in fig. 2, where the method includes:
step S201: receiving a first request of a first operator for editing a target line, and generating a first job task;
in the embodiment of the present application, the operator may refer to a person, for example, a related operator serving public transportation data management, but is not limited thereto, and the first request may be generated by a terminal used by the first operator. Or the operator may be a program, for example a program for public transportation data mining, the first request may be generated by the terminal where the first operator is located.
Wherein the first request may carry an identification of the target line, such as a name, an identification number, etc., but is not limited thereto. The target line identifier may be obtained by the first operator selecting from the provided line list, or may be directly input by the first operator, and may be set by a person skilled in the art according to the actual situation, which is not limited herein.
For the embodiment of the application, when the first request of the first operator for editing the target line is received, the first operation task aiming at the target line can be directly generated without acquiring the line lock corresponding to the target line, and the first operation task is parallel-flow transferred to the first operator for data operation.
Step S202: before the first job task is finished, if a second request of editing the target line by a second operator is received, generating a second job task;
the descriptions of the second operator and the second request may be similar to those of the first operator and the first request, and will not be described herein.
For the embodiment of the application, the first job task does not occupy the line, and before the first job task is finished, a second request of editing the target line by a second operator can be received, so that the second job task is generated and is parallel-flow transferred to the second operator for data operation.
In the embodiment of the application, the first operator and the second operator can work the same target line in parallel so as to improve the working efficiency.
It can be understood that, for more than two parallel jobs for the target line, the second job task can be regarded as being processed after the first job task, that is, there may be one or more second job tasks, and the same processing procedure will not be described in detail.
Step S203: based on the first job content corresponding to the first job task and the second job content corresponding to the second job task, performing conflict judgment;
the job content corresponding to the job task refers to job content obtained after the corresponding operator performs data operation based on the job task. And receiving a third request submitted by an operator for the job content of the third request to obtain the corresponding job content.
In the embodiment of the application, in order to solve the problem that the data error is possibly generated due to the data coverage of the job contents generated by the parallel job, a conflict processing mechanism is provided, and conflict judgment is carried out on the first job contents and the second job contents so as to determine whether the contents to be covered by the first job contents and the second job contents are dependent or not. If there is a dependency, that is, the former data is covered, the latter may generate data errors due to data changes, it may be determined that the first job content and the second job content may collide. If there is no dependency, that is, the data coverage of the first and second job contents do not affect each other, it can be determined that there is no conflict between the first and second job contents.
Step S204: and if the first job content and the second job content have no conflict, updating the first job content and the second job content to a database.
In the embodiment of the application, under the condition that the first operation content and the second operation content are judged to have no conflict, i.e. the first operation content and the second operation content are not dependent on the content to be covered and are not mutually influenced, the first operation content and the second operation content can be directly updated to the database.
Specifically, the method of updating the job content to the database may be a method of fusing the job content and the data of the target line in the database, but the method is not limited thereto, and other updating methods may be adopted.
The data processing method provided by the embodiment of the application adopts an operation mode which is not occupied by a single person, and provides a conflict judging mechanism to solve the problem of data errors caused by overlapping of parallel operation results, so that the line data operation efficiency can be effectively improved, the operation period is shortened, and the production and maintenance cost of bus data is reduced.
In an embodiment of the present application, on the basis of fig. 2, as shown in fig. 3, after step S203, the method may further include:
step S205: if the first job content and the second job content conflict, a conflict task is generated;
In the embodiment of the application, when the first job content and the second job content are judged to have conflict, the data is not updated to the database, and the conflict task flow is generated and transferred to the hand of an operator to continue the job.
In the embodiment of the application, the tasks are divided into a job task and a conflict task, and the two tasks are identical in that task circulation is needed; the difference is that the conflict task is generated when the job content generates conflict, and conflict information can be contained.
Wherein the conflict information may include, but is not limited to, at least one of:
(1) A first job content and a second job content;
namely, the conflict task directly carries the first job content and the second job content, and the conflict content is analyzed by a processor after the conflict task flows, so that higher freedom degree can be provided for the processor.
(2) Conflict information between the first job content and the second job content;
namely, the conflict task carries a conflict part between the first job content and the second job content, so that more visual conflict content can be provided for a processor after the conflict task flows.
(3) Updating the first job content to the latest version data and the second job content updated after the database;
(4) Conflict information between the latest version data updated after the first job content is updated to the database and the second job content;
for at least one of the two embodiments, the first job task is a first-submitted job task, and the second job task is a second-submitted job task.
(5) Updating the second job content to the latest version data and the first job content updated after the database;
(6) Conflict information between the latest version data updated after the second job content is updated to the database and the first job content;
for at least one of the two embodiments, the second job task is a first-submitted job task, and the first job task is a later-submitted job task.
Step S206: and obtaining a solution result of the conflict task, and updating the solution result to the database.
For the embodiment of the present application, the conflict task may be forwarded to the first operator or the second operator, or may be forwarded to other operators other than the first operator and the second operator, for example, a third operator or a specific conflict resolution operator, etc., or may be forwarded to a neural network to resolve the conflict, which may be set by a person skilled in the art according to the actual situation, and the embodiment of the present application is not limited herein.
If the conflicting task flows are forwarded to the first operator or the second operator, whether the conflicting task flows are forwarded to the first operator or the second operator can be judged according to the request generation sequence of the job tasks, the submitting sequence of the job tasks and/or the conflicting condition of the job tasks.
Further, after the conflict is resolved, the resolved result of the conflict task is obtained and updated to the database in the same manner as the processing manner of the job content, and the specific updating manner can be referred to the description above, which is not repeated here.
The data processing method provided by the embodiment of the application adopts the operation mode which is not occupied by a single person, and provides an effective conflict solution to solve the possible data errors, so that the operation efficiency and the accuracy of line data can be effectively improved.
In the embodiment of the present application, an optional implementation manner is provided for step S206, which specifically includes: allocating the conflicting tasks to a third operator; obtaining a solution result of the third operator to the conflict task; and updating the solution result to the database.
For the embodiment of the application, the conflict processing principle is to solve the conflict by a third operator except the first operator and the second operator, the conflict can be solved based on at least one conflict information, the solution result of the conflict task can be the result of combining the first job content and the second job content, and the conflict processing mode is divided into manual operation and program automation processing, wherein the manual operation processing can be used for the condition that the program is difficult to identify, such as complex data modification operation.
In the embodiment of the present application, an optional implementation manner is provided for step S206, which specifically includes: updating the job contents of the first submitter of the job contents in the first operator and the second operator to a database; assigning conflicting tasks to post-submitters of job content (among the first and second operators); the method comprises the steps that after job content is obtained, a submitter solves a conflict task; and updating the solution result to the database.
The step of allocating the conflict task to the post-submitter of the job content may specifically include: acquiring the latest version data updated after the job content of the job content submitter is updated to the database; and allocating the conflict task to the post-job-content submitter, carrying the latest version data, and carrying the original task job content of the post-job-content submitter.
For the embodiment of the application, the conflict processing principle is that the presenter resolves the conflict after the job content, the conflict is required to be resolved from the operation content of the presenter to the latest version data updated after the operation content of the presenter is updated to the database, the resolving result of the conflict task is the result of merging the latest version data and the operation content of the presenter after the operation content, and the conflict processing mode is similar to the description above and is not repeated here.
In the embodiment of the application, after receiving the third request submitted by the operator for the operation content, the operation content can be subjected to the processes of quality inspection, acceptance check and the like before the conflict judgment is carried out based on the operation content so as to ensure the qualification of the operation content. Step S203 makes a conflict judgment based on the first job contents passed by the quality inspection and/or acceptance, and the second job contents passed by the quality inspection and/or acceptance.
Fig. 4 shows an example of performing a data job in a multi-person job mode by using the data processing method provided by the embodiment of the present application. Specifically, when a plurality of operators simultaneously request to edit the target line, the operation task does not occupy the line, a plurality of operators can parallelly operate the same target line, namely, the corresponding operation task aiming at the target line can be generated, each operator can submit the operation content obtained by editing, the operation content needs to pass through the process links such as quality inspection, acceptance inspection and the like, and the operation task is completed after the inspection is qualified. Based on the job content obtained after the job task of each operator is completed, conflict judgment is carried out, if the job content edited by multiple persons is not dependent on each other, the job content can be directly updated to the database, if the job content edited by multiple persons has a dependency relationship, the job content is not updated to the database, but the conflict task is generated, the job is transferred to the operator to continue the job, the job after the conflict processing can be updated to the database, the scheme can effectively avoid data errors possibly caused by the parallel operation of multiple persons, the job mode of the parallel operation of the multiple persons can greatly improve the line data operation efficiency, shorten the operation period and reduce the production and maintenance cost of bus data.
In the embodiment of the application, the target line is a public traffic line, and the public traffic line includes, but is not limited to, data of at least one station, platform, entrance, exit, channel surface and the like. In the embodiment of the application, bus data is regarded as data containing a lot of attribute information, and the operation editing, the operation content conflict judgment and/or the operation content updating are carried out according to attribute-level information. Wherein the job editing includes, but is not limited to, modification, addition, deletion, etc. of at least one attribute information of the line.
Specifically, the attributes of the bus data may be largely divided into two attributes, in which:
the first attribute refers to a dependent attribute, such as an attribute that the station sequence and the track of a station may depend on the station sequence and the position of an adjacent station, and the station sequence and the track of the station need to be updated simultaneously. Thus, conflict judgments may relate not only to the edited site, but also to the site on which the edited site depends. Specifically, the first attribute includes at least one of the following attributes: station attributes; a standing sequence attribute; track attributes. For ease of understanding, the following may be schematically illustrated by way of example with respect to lines and stations, and not be construed as limiting embodiments of the present application, as other attributes may be similarly processed.
The second attribute refers to an attribute that is not dependent, such as line identification information (for example, but not limited to, name, number, color, etc.), site identification, fare information, etc., and can be updated directly without performing conflict judgment.
Based on this, the collision judgment in step S203 may include at least one of:
judgment 1: determining whether the first job content and the second job content each include edits to the first attribute;
based on the above-mentioned attribute division, the conflict mainly occurs on the first attribute with mutual dependence, and the root is that in the process of multi-person operation, the operation content submitted first causes the change of the site or the dependent site data, so that the operation content submitted later cannot be fused normally, and the conflict can be generated. No conflict will occur for properties that are not dependent, so the conflict description may default to editing based on the first property that has a dependency.
In practical applications, the determining step is optional, that is, the determining step can reduce the data volume of subsequent processing and improve the processing efficiency.
Specifically, if it is determined that only one of the first job content and the second job content includes editing of the first attribute, or neither of the first job content and the second job content includes editing of the first attribute, it may be determined directly that there is no conflict, and step S204 is performed.
And if the first job content and the second job content both comprise the editing of the first attribute, continuing to execute the subsequent conflict judgment.
Judging 2: it is determined whether the first attribute of the first job content edit and the first attribute of the edit in the second job content relate to the same site or neighboring sites.
In the embodiment of the application, the dependency relationship of the stations is the stations on the upstream and downstream sides of the station, because editing a certain station may cause the station sequence and track of the next station to change. If multiple people work simultaneously to edit the data of the same site or adjacent sites, the sequence and continuity of the site list may be destroyed, so that the later submitted work contents cannot be fused normally, and conflicts may occur. Since no conflict occurs in the case that the first attribute of the multi-person edit does not relate to the same site or the adjacent site, the conflict can be described as the first attribute of the different job content edits relates to the same site or the adjacent site, or the subsequent conflict judgment is performed on the basis that the first attribute of the different job content edits relates to the same site or the adjacent site, so that the data amount of subsequent processing can be reduced, the processing efficiency can be improved, and the judgment step is optional, namely unnecessary for the latter implementation.
Specifically, if it is determined that the first attribute edited in the first job content and the first attribute edited in the second job content do not relate to the same site or neighboring sites, it may be directly determined that there is no conflict, and step S204 is performed.
If it is determined that the first attribute edited in the first job content and the first attribute edited in the second job content relate to the same site or neighboring sites, it may be directly determined that a conflict is generated, and step S205 and step S206 are performed. In this case, the content of the conflicting task may also include checking and confirming the conflict. The resolution of the conflicting tasks in step S206 may include confirming that there is no conflict, updating the original job content to the database. The others may be similar to those described above and will not be described again here.
Or determining that the first attribute edited in the first job content and the first attribute edited in the second job content relate to the same site or adjacent sites, and continuing to execute the subsequent conflict judgment.
In the embodiment of the application, the site dependence relationship is considered to be the site on the upstream and downstream sides, so that the submitting mode after site editing is in the form of site segments. I.e., the submitted first job content and second job content may include edited site segments instead of the entire target line. Specifically, before step S203, the method may further include the steps of: and receiving a third request submitted by a corresponding operator for each of the first job task and the second job content, and acquiring the job content submitted in the form of a site segment. The operation content submitted in the form of the site segment can be correctly fused to carry out the target line data, and the sequence and the continuity of the data are ensured.
Alternatively, the sites in the site segment are all expressed in terms of fine-grained attributes.
Alternatively, the sites in the site segment commit in real site order.
Alternatively, there may be multiple updated site segments in one data commit.
Alternatively, depending on the location of the edited site, the submit site segment rule may be set to:
editing station: a first station; submitting a site segment: current station, next station;
editing station: an intermediate station; submitting a site segment: a previous station, a current station and a next station;
editing station: a final station; submitting a site segment: last station, current station.
According to the data processing method provided by the embodiment of the application, the editing of the target line is performed by taking the attribute as the dimension, the edited site is submitted by taking the site segment as the dimension, and the conflict judgment and update strategy of the attribute level is only used for updating the part with the changed data, so that the data volume of the operation can be effectively reduced, the conditions of low data utilization rate of the operation link, large amount of redundant data generation and the like are avoided, the storage and bandwidth are saved, and the sequence and the continuity of the update of the first attribute data can be supported.
FIG. 5 illustrates, by way of one example of a job, the relationship of editing stations and submitting site segments. As shown in fig. 5, it is assumed that there are 3 operators editing one target line at the same time, wherein:
The operator A modifies the site b, and submitted site segments are a, b and c;
the operator B newly adds a site d, and the submitted site segment is c, d, e, f, wherein the site f is required to be submitted because the newly added site d can cause the change of the sequence and track of the site e, and the change of the site e requires the information of the adjacent sites to be submitted;
the operator C deletes the station g, and the submitted station segments are f and g, and it should be noted that in this example, g is the last station, and if g is the intermediate station, the next station information needs to be carried.
In this example, since three operators do not edit the same site or adjacent sites, i.e., the edited contents are independent of each other, no influence is produced. But if three operators edit the same site or neighboring sites, a conflict may occur. For example, an operator A deletes site B, and operator B modifies site B, and when operator A submits the data, operator B cannot fuse the data normally; as another example, if operator A modifies site b, the trajectory of site C may change, and if operator C modifies site C based on the original data, site C may be erroneous.
In the embodiment of the present application, an optional implementation manner is provided for step S203, specifically, it is determined whether the first job content and the second job content relate to a conflict scenario.
In the embodiment of the application, the editing operation comprises adding, modifying and deleting. For each site, each editing operation corresponds to 3 cases, 9 in total. In the following, a conflict scene existing in a scene composed of different editing operations of a job content first submitter (hereinafter, referred to as job content 2) is given by taking a modification operation performed by a job content post-submitter (hereinafter, referred to as job content 1) as an example. Other operations of the post-submitter of the job content can be similarly performed, and will not be described in detail.
(1) Job content 1 (left side of arrow in fig. 6a to 6 c) performs a modification operation, and job content 2 (right side of arrow in fig. 6a to 6 c) performs a new addition operation:
as shown in fig. 6a, the job content 2 is added with a site b ', the site b is changed to a site b', b and c depending on the up and down of the site b, the job content 1 modifies the site b, and fusion errors occur after submission (a, b and c), so as to generate a conflict scene;
as shown in fig. 6b, the job content 2 is added with a site b ', the site b is changed to a site a, b and b' depending on the upper and lower sides, the job content 1 modifies the site b, and fusion errors occur after submission (a, b and c), so as to generate a conflict scene;
as shown in fig. 6c, the job content 2 is added with the sites b 'and b ", the site b is changed to the site b' b and b", the job content 1 modifies the site b, and the fusion error occurs after the submission (a, b and c), so as to generate a conflict scene.
(2) Job content 1 (left side of arrow in fig. 7a to 7 d) performs a modification operation, and job content 2 (right side of arrow in fig. 7a to 7 d) performs a modification operation:
as shown in fig. 7a, the job content 2 and the job content 1 modify the same site b at the same time, so that a conflict scene is generated;
as shown in fig. 7b, the site a of the job content 2 is modified, the last station of the up-down dependent site of the site b is changed, and because the first attribute such as the track is up-dependent, the site b generates a conflict scene based on the job content of the site a when being modified;
as shown in fig. 7c, the site c of the job content 2 is modified, the next station of the up-down dependent site of the site b is changed, and because the first attribute such as the track is upward dependent, the site b is irrelevant to the job content of the site c when being modified, and a conflict scene is not generated;
as shown in fig. 7d, both site a and site c of job content 2 are modified, resulting in a conflicting scenario, as in the scenario shown in fig. 7 b.
(3) Job content 1 (left side of arrow in fig. 8a to 8 d) performs a modification operation, and job content 2 (right side of arrow in fig. 8a to 8 d) performs a deletion operation:
as shown in fig. 8a, the job content 2 deletes the site b, the job content 1 modifies the site b to be deleted, and fusion errors occur after submission, so as to generate a conflict scene;
As shown in fig. 8b, the job content 2 deletes the site a, the job content 1 modifies the site b, the upper and lower dependent sites of the site b are deleted, fusion errors occur after submission, and a conflict scene is generated;
as shown in fig. 8c, the job content 2 deletes the site c, the job content 1 modifies the site b, the upper and lower dependent sites of the site b are deleted, fusion errors occur after submission, and a conflict scene is generated;
as shown in fig. 8d, the job content 2 deletes the site a and the site c, the job content 1 modifies the site b, the up-down dependent site of the site b is deleted, and fusion errors occur after submission, so as to generate a conflict scene.
If it is determined that the first job content and the second job content do not relate to the conflict scene, it may be determined directly that there is no conflict, and step S204 is performed. If at least one conflict scene is involved in the first job content and the second job content, it may be determined that a conflict is generated, and step S205 and step S206 are performed.
Alternatively, this embodiment may be performed directly, or may be performed based on the determination result of the above-described determination 1 and/or determination 2.
In the embodiment of the present application, another optional implementation manner is provided for step S203, specifically, based on the data of the first operator and the second operator, where the job content of the first presenter is updated, it is determined whether at least one of the following conditions exists in the job content of the second presenter:
(1) The edited site does not exist;
(2) Editing a site to change (e.g., change or miss) depending on the site;
(3) At least one first attribute of the edited site changes;
(4) At least one first attribute of a dependent site on the edited site is changed;
(5) The edited site or its site-dependent location (e.g., coordinates) attribute changes;
(6) If there are conflicting sites within the submitted site segment, then conflicting tasks may be generated based on the site segment.
Wherein for each first attribute of each of the edited site and the last dependent site of the edited site, whether the first attribute changes may be determined by: acquiring historical version information corresponding to the first attribute before editing the second job task (for example, the historical version information can be carried when the job content is submitted); acquiring latest version information corresponding to the first attribute from a database; based on the historical version information and the latest version information, it is determined whether the first attribute has changed. Wherein the version information may be determined by hashcode or version number, but is not limited thereto.
The algorithm rules can effectively judge conflicts, including the conflict scenes generated by editing a single site, complex scenes of various operation combinations can be judged, and the judgment efficiency is higher.
If it is determined that the job content of the presenter does not exist after determining the job content based on the data updated by the job content of the presenter, it may be determined that there is no conflict, and step S204 is executed. If it is determined that at least one of the above conditions exists in the job content of the job content post-submitter based on the data of the job content post-update of the job content pre-submitter, it is determined that a conflict is generated, and step S205 and step S206 are performed.
Alternatively, this embodiment may be performed directly, or may be performed based on the determination result of the above-described determination 1 and/or determination 2.
In an embodiment of the present application, a further alternative implementation manner is provided for step S203, where conflict judgment is performed on the first job content and the second job content through a neural network.
In practical applications, a person skilled in the art may select an appropriate neural network according to practical situations, and use an appropriate training manner to obtain the neural network, which is not limited herein.
If the judgment result of no conflict is output after the judgment of the neural network, step S204 is executed. If the determination result of the collision is output, step S205 and step S206 are performed.
Alternatively, this embodiment may be performed directly, or may be performed based on the determination result of the above-described determination 1 and/or determination 2.
In the embodiment of the present application, for the execution of the above determination 2 and the first attribute related determination, a feasible implementation manner is provided, which specifically includes: simplifying the first operation content and the second operation content based on at least one preset alternative relation of the first attribute editing; it is determined whether the first attribute of the reduced first job content edit and the first attribute of the edit in the reduced second job content relate to the same site or neighboring sites.
The alternative relationship of the first attribute editing may also be understood as a similar editing of the first attribute, for example, deleting the site a and adding the site b, and modifying the site a to the site b is an alternative relationship, which is also a similar editing. The person skilled in the art can set editing operations that can be replaced with each other according to the actual situation to simplify the contents of the job. In practical application, the situation of frequently modifying the site in parallel may have more conflicts, so that in order to improve the conflict judging efficiency and the updating efficiency of the operation content, the similarity judgment is performed on the updating of the site segment to simplify the operation content, and the conflict judging strategy is applied, so that the occurrence probability of the conflict can be obviously reduced.
In the embodiment of the application, in order to solve the problem of inaccurate conflict judgment caused by the concurrent submission of the job content, a distributed lock mechanism can be added during the submission of the job content.
Specifically, for each of the first job content and the second job content to which the first job content belongs, the method further includes: responding to a submitting request for submitting the job content, and acquiring a distributed lock; if the distributed lock is successfully obtained, submitting the operation content; if the distributed lock acquisition fails, a commit request to commit the job content is reinitiated.
As shown in fig. 9, when an operator requests to submit the job content, the operator needs to acquire the distributed lock, the job content can be submitted only after the distributed lock is acquired, the distributed lock can be released after the job content is submitted successfully, after the distributed lock is acquired by one operator until the distributed lock is released, if other operators request to submit the job content, the distributed lock is failed to acquire, sleep (sleep) is performed for a preset time, and the request for submitting the job content is reinitiated. In practical applications, the person skilled in the art may set the predetermined time according to practical situations, for example, 50ms, which is not limited herein.
In the embodiment of the application, the operation content can be prevented from being submitted by different operators at the same time through the distributed locking mechanism.
Since the distributed lock is in the millisecond level, the time consuming process of submitting is basically not perceived by the operator, and a person skilled in the art may select an appropriate distributed lock to implement according to the actual situation, such as dis (Remote Dictionary Server, remote dictionary service), zookeeper (reliable coordination system of the distributed system), and the embodiment of the present application is not limited herein.
The data processing method provided by the embodiment of the application adopts the unoccupied attribute-level fine-granularity operation mode to process the update of the public transportation data, and simultaneously provides a conflict processing mechanism to solve the problem of data errors possibly caused by parallel operation, thereby effectively reducing the operation data quantity, avoiding the conditions of low operation link data utilization rate, generating a large amount of redundant data and the like, saving storage and bandwidth, greatly improving the operation efficiency of the line data, shortening the operation period and reducing the production and maintenance cost of the public transportation data.
From the foregoing description, it will be appreciated that embodiments of the present application may be applied to a variety of scenarios, including, but not limited to, the fields of maps, traffic, cloud technology (e.g., databases), artificial intelligence (e.g., for bus data mining, collision determination, collision handling, etc.), and the like.
The intelligent transportation system (Intelligent Traffic System, ITS) is also called an intelligent transportation system (Intelligent Transportation System), and is an integrated transportation system for effectively and comprehensively applying advanced scientific technologies (information technology, computer technology, data communication technology, sensor technology, electronic control technology, automatic control theory, operation study, artificial intelligence and the like) to traffic information management, traffic transportation, service control and vehicle manufacturing, and enhancing the connection among vehicles, roads and users, so as to form a comprehensive transportation system for guaranteeing safety, improving efficiency, improving environment and saving energy.
The Database (Database), which can be considered as an electronic filing cabinet, is a place for storing electronic files, and users can perform operations such as adding, inquiring, updating, deleting and the like on the data in the files. A "database" is a collection of data stored together in a manner that can be shared with multiple users, with as little redundancy as possible, independent of the application.
The database management system (Database Management System, abbreviated as DBMS) is a computer software system designed for managing databases, and generally has basic functions of storage, interception, security, backup and the like. The database management system may classify according to the database model it supports, e.g., relational, XML (Extensible Markup Language ); or by the type of computer supported, e.g., server cluster, mobile phone; or by the query language used, such as SQL (structured query language (Structured Query Language), XQuery, or by the energy impact emphasis, such as maximum-scale, maximum-speed, or other classification means, regardless of which classification means is used, some DBMSs can cross-category, for example, while supporting multiple query languages.
Artificial intelligence (Artificial Intelligence, AI) is the theory, method, technique and application system that uses a digital computer or a machine controlled by a digital computer to simulate, extend and extend human intelligence, sense the environment, acquire knowledge and use the knowledge to obtain optimal results. In other words, artificial intelligence is an integrated technology of computer science that attempts to understand the essence of intelligence and to produce a new intelligent machine that can react in a similar way to human intelligence. Artificial intelligence, i.e. research on design principles and implementation methods of various intelligent machines, enables the machines to have functions of sensing, reasoning and decision.
The artificial intelligence technology is a comprehensive subject, and relates to the technology with wide fields, namely the technology with a hardware level and the technology with a software level. Artificial intelligence infrastructure technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technologies, operation/interaction systems, mechatronics, and the like. The artificial intelligence software technology mainly comprises a computer vision technology, a voice processing technology, a natural language processing technology, machine learning/deep learning and other directions.
With research and progress of artificial intelligence technology, research and application of artificial intelligence technology are being developed in various fields, such as common smart home, smart wearable devices, virtual assistants, smart speakers, smart marketing, unmanned, automatic driving, unmanned aerial vehicle, robot, intelligent customer service, internet of vehicles, automatic driving, intelligent transportation, etc., and it is believed that with the development of technology, artificial intelligence technology will be applied in more fields and become more and more important value.
An embodiment of the present application provides a data processing apparatus, as shown in fig. 10, the data processing apparatus 100 may include: a data processing 1001, a second generating module 1002, a judging module 1003, and an updating module 1004, wherein,
the first generating module 1001 is configured to receive a first request from a first operator to edit a target line, and generate a first job task;
the second generating module 1002 is configured to generate a second job task if a second request for editing the target line by a second operator is received before the first job task ends;
the judging module 1003 is configured to perform conflict judgment based on a first job content corresponding to the first job task and a second job content corresponding to the second job task;
the update module 1004 is configured to update the first job content and the second job content to the database if the first job content and the second job content have no conflict.
In an alternative embodiment, the determining module 1003 is further configured to, after performing conflict determination based on the first job content corresponding to the first job task and the second job content corresponding to the second job task: if the first job content and the second job content conflict, a conflict task is generated;
The update module 1004 is further configured to: and obtaining a solution result of the conflict task, and updating the solution result to the database.
In an alternative embodiment, the updating module 1004, when configured to obtain a solution to the conflicting task and update the solution to the database, is specifically configured to:
updating the job contents of the first submitter of the job contents in the first operator and the second operator to a database;
distributing the conflict task to a post-submitter of the job content;
the method comprises the steps that after job content is obtained, a submitter solves a conflict task;
and updating the solution result to the database.
In an alternative embodiment, the update module 1004, when configured to forward the conflicting task stream to the second operator, is specifically configured to:
acquiring the latest version data updated after the job content of the job content submitter is updated to the database;
and allocating the conflict task to a job content post-submitter, and carrying the latest version data.
In an alternative embodiment, the destination route is a public transportation route, where the public transportation route includes at least one station, and the determining module 1003 is further configured to, before performing the conflict determination based on the first job content corresponding to the first job task and the second job content corresponding to the second job task:
And receiving a third request submitted by a corresponding operator for each of the first job task and the second job content, and acquiring the job content submitted in the form of a site segment.
In an alternative embodiment, the determining module 1003 is specifically configured to, when performing conflict determination based on the first job content corresponding to the first job task and the second job content corresponding to the second job task, at least one of the following:
determining whether the first job content and the second job content each include edits to the first attribute;
determining whether the first attribute edited in the first job content and the first attribute edited in the second job content relate to the same site or adjacent sites;
whether the first job content and the second job content relate to conflicting scenes.
In an alternative embodiment, the first attribute comprises at least one of the following attributes:
station attributes; a standing sequence attribute; track attributes.
In an alternative embodiment, the determining module 1003 is specifically configured to, when performing conflict determination based on the first job content corresponding to the first job task and the second job content corresponding to the second job task:
Based on the data of the first operator and the second operator, which are updated by the job content of the first submitter, determining whether the job content of the second submitter is at least one of the following conditions:
the edited site does not exist;
editing the site to change depending on the site up and down;
at least one first attribute of the edited site changes;
at least one first attribute of a dependent site on the edited site is changed;
the edited site or the site-dependent position attribute thereof changes;
there are conflicting sites in the submitted site segment.
In an alternative embodiment, the determining module 1003 is further configured to: for each first attribute of each of the edited site and the last dependent site of the edited site, determining whether the first attribute has changed by:
acquiring historical version information corresponding to the first attribute before editing the second job task;
acquiring latest version information corresponding to the first attribute from a database;
based on the historical version information and the latest version information, it is determined whether the first attribute has changed.
In an alternative embodiment, the determining module 1003 is specifically configured to, when determining whether the first attribute edited in the first job content and the first attribute edited in the second job content relate to the same site or a neighboring site:
Simplifying the first operation content and the second operation content based on at least one preset alternative relation of the first attribute editing;
it is determined whether the first attribute of the reduced first job content edit and the first attribute of the edit in the reduced second job content relate to the same site or neighboring sites.
In an alternative embodiment, the apparatus further comprises a submit module 1005 for each of the first job content and the second job content:
responding to a submitting request for submitting the job content, and acquiring a distributed lock;
if the distributed lock is successfully obtained, submitting the operation content;
if the distributed lock acquisition fails, a commit request to commit the job content is reinitiated.
The device of the embodiment of the present application may perform the method provided by the embodiment of the present application, and its implementation principle is similar, and actions performed by each module in the device of the embodiment of the present application correspond to steps in the method of the embodiment of the present application, and detailed functional descriptions and resulting beneficial effects of each module of the device may be specifically referred to the descriptions in the corresponding methods shown in the foregoing, which are not repeated herein.
An embodiment of the present application provides an electronic device, including a memory, a processor, and a computer program stored on the memory, where the processor executes the computer program to implement the steps of the foregoing method embodiments. Alternatively, the electronic device may refer to an operator's terminal, including but not limited to a cell phone, a computer, an intelligent voice interaction device, an intelligent home appliance, a vehicle-mounted terminal, an aircraft, and the like. The electronic device may be a server, an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network ), and basic cloud computing (cloud computing) services such as big data and an artificial intelligence platform.
In an alternative embodiment, an electronic device is provided, as shown in fig. 11, the electronic device 1100 shown in fig. 11 includes: a processor 1101 and a memory 1103. The processor 1101 is coupled to a memory 1103, such as via a bus 1102. Optionally, the electronic device 1100 may further include a transceiver 1104, where the transceiver 1104 may be used for data interaction between the electronic device and other electronic devices, such as transmission of data and/or reception of data, etc. It should be noted that, in practical applications, the transceiver 1104 is not limited to one, and the structure of the electronic device 1100 is not limited to the embodiment of the present application.
The processor 1101 may be a CPU (Central Processing Unit ), general purpose processor, DSP (Digital Signal Processor, data signal processor), ASIC (Application Specific Integrated Circuit ), FPGA (Field Programmable Gate Array, field programmable gate array) or other programmable logic device, transistor logic device, hardware components, or any combination thereof. Which may implement or perform the various exemplary logic blocks, modules and circuits described in connection with this disclosure. The processor 1101 may also be a combination that performs computing functions, such as a combination comprising one or more microprocessors, a combination of a DSP and a microprocessor, or the like.
Bus 1102 may include a path that communicates information between the components. Bus 1102 may be a PCI (Peripheral Component Interconnect, peripheral component interconnect Standard) bus or an EISA (Extended Industry Standard Architecture ) bus, or the like. Bus 1102 may be divided into address bus, data bus, control bus, and the like. For ease of illustration, only one thick line is shown in FIG. 11, but not only one bus or one type of bus.
The Memory 1103 may be a ROM (Read Only Memory) or other type of static storage device that can store static information and instructions, a RAM (Random Access Memory ) or other type of dynamic storage device that can store information and instructions, an EEPROM (Electrically Erasable Programmable Read Only Memory ), a CD-ROM (Compact Disc Read Only Memory, compact disc Read Only Memory) or other optical disk storage, optical disk storage (including compact discs, laser discs, optical discs, digital versatile discs, blu-ray discs, etc.), magnetic disk storage media, other magnetic storage devices, or any other medium that can be used to carry or store a computer program and that can be Read by a computer, without limitation.
The memory 1103 is used for storing a computer program for executing an embodiment of the present application, and is controlled to be executed by the processor 1101. The processor 1101 is configured to execute a computer program stored in the memory 1103 to implement the steps shown in the foregoing method embodiments.
Embodiments of the present application provide a computer readable storage medium having a computer program stored thereon, which when executed by a processor, implements the steps of the foregoing method embodiments and corresponding content.
The embodiment of the application also provides a computer program product, which comprises a computer program, wherein the computer program can realize the steps and corresponding contents of the embodiment of the method when being executed by a processor.
The terms "first," "second," "third," "fourth," "1," "2," and the like in the description and in the claims and in the above figures, if any, are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate, such that the embodiments of the application described herein may be implemented in other sequences than those illustrated or otherwise described.
It should be understood that, although various operation steps are indicated by arrows in the flowcharts of the embodiments of the present application, the order in which these steps are implemented is not limited to the order indicated by the arrows. In some implementations of embodiments of the application, the implementation steps in the flowcharts may be performed in other orders as desired, unless explicitly stated herein. Furthermore, some or all of the steps in the flowcharts may include multiple sub-steps or multiple stages based on the actual implementation scenario. Some or all of these sub-steps or phases may be performed at the same time, or each of these sub-steps or phases may be performed at different times, respectively. In the case of different execution time, the execution sequence of the sub-steps or stages can be flexibly configured according to the requirement, which is not limited by the embodiment of the present application.
The foregoing is only an optional implementation manner of some implementation scenarios of the present application, and it should be noted that, for those skilled in the art, other similar implementation manners based on the technical ideas of the present application are adopted without departing from the technical ideas of the scheme of the present application, which also belongs to the protection scope of the embodiments of the present application.

Claims (15)

1. A method of data processing, comprising:
receiving a first request of a first operator for editing a target line, and generating a first job task;
before the first job task is finished, if a second request of a second operator for editing the target line is received, generating a second job task;
performing conflict judgment based on the first job content corresponding to the first job task and the second job content corresponding to the second job task;
and if the first job content and the second job content have no conflict, updating the first job content and the second job content to a database.
2. The method according to claim 1, wherein after performing conflict judgment based on the first job content corresponding to the first job task and the second job content corresponding to the second job task, further comprising:
If the first job content and the second job content conflict, a conflict task is generated;
and obtaining a solution result of the conflict task, and updating the solution result to a database.
3. The data processing method according to claim 2, wherein the obtaining the solution to the conflicting task and updating the solution to a database includes:
updating the job contents of the first submitter of the job contents in the first operator and the second operator to a database;
distributing the conflict task to a post-submitter of the job content;
acquiring a solution result of the conflict task by a submitter after the job content is acquired;
and updating the solution result to a database.
4. A data processing method according to claim 3, wherein said assigning the conflicting task to a post-job-content presenter comprises:
acquiring the latest version data updated after the job content of the job content submitter is updated to a database;
and distributing the conflict task to the post-job-content submitter, and carrying the latest version data.
5. The data processing method according to claim 1, wherein the target line is a public transportation line, the public transportation line includes at least one site, and before the conflict judgment is performed based on the first job content corresponding to the first job task and the second job content corresponding to the second job task, the method further includes:
And receiving a third request for submitting the job contents by a corresponding operator aiming at each of the first job task and the second job contents, and acquiring the job contents submitted in the form of site segments.
6. The data processing method according to any one of claims 1 to 5, wherein the target line is a public transportation line, the public transportation line includes at least one site, and the conflict judgment is performed based on a first job content corresponding to the first job task and a second job content corresponding to the second job task, including at least one of:
determining whether the first job content and the second job content both comprise edits to a first attribute;
determining whether the first attribute edited in the first job content and the first attribute edited in the second job content relate to the same site or adjacent sites;
whether the first job content and the second job content relate to conflicting scenes.
7. The method according to claim 6, wherein the performing conflict judgment based on the first job content corresponding to the first job task and the second job content corresponding to the second job task includes:
Based on the data of the first operator and the second operator, which are updated by the job content of the first submitter, determining whether the job content of the second submitter exists in at least one of the following conditions:
the edited site does not exist;
editing the site to change depending on the site up and down;
at least one first attribute of the edited site changes;
at least one first attribute of a dependent site on the edited site is changed;
the edited site or the site-dependent position attribute thereof changes;
there are conflicting sites in the submitted site segment.
8. The data processing method of claim 6, wherein the first attribute comprises at least one of:
station attributes;
a standing sequence attribute;
track attributes.
9. The data processing method of claim 7, further comprising:
for each first attribute of each of the edited site and the last dependent site of the edited site, determining whether the first attribute has changed by:
acquiring historical version information corresponding to the first attribute before editing the second job task;
Acquiring latest version information corresponding to the first attribute from the database;
based on the historical version information and the latest version information, whether the first attribute changes is determined.
10. The data processing method according to claim 6, wherein the determining whether the first attribute edited in the first job content and the first attribute edited in the second job content relate to the same site or neighboring sites comprises:
simplifying the first operation content and the second operation content respectively based on at least one preset alternative relation of first attribute editing;
it is determined whether the first attribute of the reduced first job content edit and the first attribute of the edit in the reduced second job content relate to the same site or neighboring sites.
11. The data processing method according to any one of claims 1 to 5, characterized in that for each of the first job content and the second job content, the method further comprises:
responding to a submitting request for submitting the job content, and acquiring a distributed lock;
submitting the operation content if the distributed lock is successfully acquired;
and if the distributed lock acquisition fails, reinitiating a submitting request for submitting the job content.
12. A data processing apparatus, comprising:
the first generation module is used for receiving a first request of a first operator for editing the target line and generating a first job task;
the second generating module is used for generating a second job task if a second request of a second operator for editing the target line is received before the first job task is finished;
the judging module is used for carrying out conflict judgment based on the first job content corresponding to the first job task and the second job content corresponding to the second job task;
and the updating module is used for updating the first operation content and the second operation content to a database if the first operation content and the second operation content have no conflict.
13. An electronic device comprising a memory, a processor and a computer program stored on the memory, characterized in that the processor executes the computer program to implement the method of any one of claims 1-11.
14. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the method of any of claims 1-11.
15. A computer program product comprising a computer program, characterized in that the computer program, when executed by a processor, implements the method of any of claims 1-11.
CN202211505159.XA 2022-11-28 2022-11-28 Data processing method, device, electronic equipment, storage medium and program product Pending CN117009360A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211505159.XA CN117009360A (en) 2022-11-28 2022-11-28 Data processing method, device, electronic equipment, storage medium and program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211505159.XA CN117009360A (en) 2022-11-28 2022-11-28 Data processing method, device, electronic equipment, storage medium and program product

Publications (1)

Publication Number Publication Date
CN117009360A true CN117009360A (en) 2023-11-07

Family

ID=88571627

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211505159.XA Pending CN117009360A (en) 2022-11-28 2022-11-28 Data processing method, device, electronic equipment, storage medium and program product

Country Status (1)

Country Link
CN (1) CN117009360A (en)

Similar Documents

Publication Publication Date Title
CN109582943B (en) Method for automatically generating engineering data table
CN106672022B (en) A kind of rail traffic interlocking table generating method and system
CN112606881A (en) Automatic turnout triggering method and device based on vehicle-vehicle communication
CN106777310B (en) Information verification method and device
CN114281821A (en) Data chart sharing system and method
CN112329277B (en) Indoor roadster test sequence compiling method and device based on CTCS-2
US20180276552A1 (en) Vehicle usage pattern evaluation
CN117009360A (en) Data processing method, device, electronic equipment, storage medium and program product
CN116795425A (en) Chip front-end development system and method based on git
CN113781018B (en) Automatic classification monitoring operation method and device of railway traffic safety monitoring system
CN113247057B (en) Data system based on global present vehicle management system and data processing method thereof
CN114519440A (en) Passenger ticket data processing method, device, equipment and storage medium
CN114169544A (en) Management method for MSI analysis of civil aircraft planned maintenance requirements
Guo et al. Model of Wagons’ Placing‐In and Taking‐Out Problem in a Railway Station and Its Heuristic Algorithm
CN107705387B (en) Vehicle entering and exiting data processing method and parking lot controller
WO2015024639A1 (en) Ground-transportation network representation
KR102446088B1 (en) Method and apparatus for processing bus usage record record
Bhatnagar et al. On the challenges of on-the-fly knowledge acquisition for automated planning applications
CN116434358A (en) Expressway charging processing method, system and electronic equipment
Zhang et al. Rationality analysis of test sequence for CTCS-1 train control system based on expert system
Huang et al. A Function Area Division Approach for Autonomous Transportation System Based on Text Similarity
CN117350472A (en) Multi-field train dispatching processing method, equipment and storage medium
CN114841716A (en) Individual user-oriented Robotaxi implementation method, server and system
Zheng et al. Construction of Scene Library System for Commercial Vehicle Products Based on Multidimensional Terminal
CN113934774A (en) Train turning back capacity improving method, electronic device and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication