Model data acquisition method and system, electronic equipment, medium and program product

By classifying the collection tasks of the ship design model data into sub -tasks and distributing it to the collection terminal, monitoring the operating status and the number of database connections, the problem of poor duration and stability in the existing technology has achieved high efficiency, stability and completeness Data collection effect.

CN119377303APending Publication Date: 2025-01-28SHANGHAI WAIGAOQIAO SHIP BUILDING CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411407100.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-10
Publication Date
2025-01-28

AI Technical Summary

Technical Problem

In the prior art, the process of collecting ship design model data takes a long time, has poor stability, and requires frequent manual intervention, which cannot meet the collection needs of ship model data.

Method used

By determining the target collection task of each collection terminal, the total task is divided into several sub -tasks according to the type of task, and the sub -task is assigned to each collection terminal to monitor the operating status of the collection terminal and the number of database connections to achieve efficient collection and storage of data. Essence

Benefits of technology

It reduces the time required for the collection of the entire ship's data, improves the stability of the collection process and the integrity of the data, enhances the fault tolerance ability of the collection task, and ensures the efficiency and reliability of data collection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119377303A_ABST
    Figure CN119377303A_ABST
Patent Text Reader

Abstract

The invention provides a model data acquisition method and system, electronic equipment, a medium and a program product. The model data acquisition method comprises the following steps: determining a target acquisition task of each acquisition terminal; the target collection task comprises at least one sub-task, and the sub-task is obtained by dividing a general task; obtaining corresponding target data from a database according to the target collection task of each collection terminal; and summarizing and storing the target data. The corresponding target data is acquired from the database through the target acquisition task of each acquisition terminal, so that the time required for acquiring the data of the whole ship is shortened, and meanwhile, the stability of the acquisition process and the integrity of the data are improved. And moreover, the fault-tolerant capability of the acquisition task is enhanced, and even if part of the acquisition terminals fail, the continuation of the whole acquisition process is not influenced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of ship design, and in particular to a model data acquisition method, system, electronic equipment, medium and program product. Background Art

[0002] With the acceleration of digital transformation of shipbuilding enterprises, building data centers and realizing effective data collection have become key steps, among which the collection of ship design model data is particularly important. When facing traditional data collection technology, such as Tribon software, the collection process is complicated, time-consuming and lacks data integrity due to software limitations. Currently, data is mainly collected through secondary development of Tribon software. This method is suitable for small-scale and non-automated data collection, but cannot meet the needs of collecting data for the entire ship model. The existing solution takes a long time to collect data for the entire ship, has poor stability, and requires frequent manual intervention. Summary of the invention

[0003] The technical problem to be solved by the present disclosure is to overcome the defects of the prior art in that it takes a long time and has poor stability to collect data about the design model of a ship, and to provide a model data collection method, system, electronic equipment, medium and program product.

[0004] The present invention solves the above technical problems through the following technical solutions:

[0005] The present disclosure provides a model data collection method, the model data collection method comprising:

[0006] Determine a target collection task for each collection terminal; the target collection task includes at least one subtask, and the subtask is obtained by dividing the overall task;

[0007] Obtain corresponding target data from the database according to the target collection tasks of each collection terminal;

[0008] The target data are aggregated and stored.

[0009] Optionally, determining the target collection task of each collection terminal includes:

[0010] Determine the overall task of model data collection;

[0011] Divide the total task into a plurality of subtasks according to the type of model data; wherein the difference in workload between the subtasks is less than or equal to a difference threshold;

[0012] The plurality of subtasks are allocated to respective acquisition terminals as their respective target acquisition tasks.

[0013] Optionally, the allocating the plurality of subtasks to respective acquisition terminals as the respective target acquisition tasks includes:

[0014] Determine the current operating status of each acquisition terminal;

[0015] Allocating the subtasks that are not marked as allocated to the acquisition terminal according to the running status;

[0016] In response to the subtask being assigned to the collection terminal, the assigned subtask is marked as assigned.

[0017] Optionally, the model data collection method further includes:

[0018] Monitor the operating status of all acquisition terminals; the operating status includes: the load of the acquisition terminal and the execution status of the target acquisition task.

[0019] Optionally, the acquiring corresponding target data from the database according to the target collection tasks of each collection terminal includes:

[0020] In response to the execution status of the subtask in the target acquisition task being failed, the subtask with the execution status being failed is re-executed.

[0021] Optionally, the acquiring corresponding target data from the database according to the target collection tasks of each collection terminal includes:

[0022] Determining the number of connections between the acquisition terminal and the database when the acquisition terminal executes the target acquisition task;

[0023] In response to the number of connections being greater than a connection number threshold, execution of the new subtask is suspended; and / or, in response to the number of connections being less than or equal to the connection number threshold, execution of the new subtask continues.

[0024] The present disclosure provides a model data acquisition system, the model data acquisition system comprising:

[0025] A determination module, used to determine a target acquisition task for each acquisition terminal; the target acquisition task includes at least one subtask, and the subtask is obtained by dividing the overall task;

[0026] The acquisition module is used to obtain corresponding target data from the database according to the target acquisition tasks of each acquisition terminal;

[0027] The storage module is used to aggregate and store the target data.

[0028] Optionally, the determining module is specifically configured to:

[0029] Determine the overall task of model data collection;

[0030] Divide the total task into a plurality of subtasks according to the type of model data; wherein the difference in workload between the subtasks is less than or equal to a difference threshold;

[0031] The plurality of subtasks are allocated to respective acquisition terminals as their respective target acquisition tasks.

[0032] Optionally, the determining module is specifically configured to:

[0033] Determine the current operating status of each acquisition terminal;

[0034] Allocating the subtasks that are not marked as allocated to the acquisition terminal according to the running status;

[0035] In response to the subtask being assigned to the collection terminal, the assigned subtask is marked as assigned.

[0036] Optionally, the model data acquisition system further includes:

[0037] The detection module is used to monitor the operating status of all acquisition terminals; the operating status includes: the load of the acquisition terminal and the execution status of the target acquisition task.

[0038] Optionally, the acquisition module is specifically used to:

[0039] In response to the execution status of the subtask in the target acquisition task being failed, the subtask with the execution status being failed is re-executed.

[0040] Optionally, the acquisition module is specifically used to:

[0041] Determining the number of connections between the acquisition terminal and the database when the acquisition terminal executes the target acquisition task;

[0042] In response to the number of connections being greater than a connection number threshold, execution of the new subtask is suspended; and / or, in response to the number of connections being less than or equal to the connection number threshold, execution of the new subtask continues.

[0043] The present disclosure provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and used to run on the processor, wherein the processor implements any one of the above-mentioned model data acquisition methods when executing the computer program.

[0044] The present disclosure provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, any one of the above-mentioned model data acquisition methods is implemented.

[0045] The present disclosure provides a computer program product, including a computer program, and when the computer program is executed by a processor, the model data acquisition method described in any one of the above is implemented.

[0046] On the basis of being in accordance with the common sense in the art, the above-mentioned preferred conditions can be arbitrarily combined to obtain the preferred embodiments of the present disclosure.

[0047] The positive progress of the present disclosure is that the corresponding target data is obtained from the database through the target collection tasks of each collection terminal, which reduces the time required for collecting the data of the entire ship, while improving the stability of the collection process and the integrity of the data. And the fault tolerance of the collection task is enhanced, even if some collection terminals fail, it will not affect the continuation of the entire collection process. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] Figure 1 A flow chart of a model data acquisition method provided for an exemplary embodiment of the present disclosure;

[0049] Figure 2 A flowchart of step 101 is provided for an exemplary embodiment of the present disclosure;

[0050] Figure 3 A flowchart of another model data acquisition method provided for an exemplary embodiment of the present disclosure;

[0051] Figure 4 A schematic diagram of the architecture of a terminal management platform provided by an exemplary embodiment of the present disclosure;

[0052] Figure 5 A schematic diagram of subtask division provided for an exemplary embodiment of the present disclosure;

[0053] Figure 6 A flow chart of a fuse protection mechanism provided for an exemplary embodiment of the present disclosure;

[0054] Figure 7 A module schematic diagram of a model data acquisition system provided by an exemplary embodiment of the present disclosure;

[0055] Figure 8 The present invention provides a schematic structural diagram of an electronic device according to an exemplary embodiment of the present invention. DETAILED DESCRIPTION

[0056] The present disclosure is further described below by way of examples, but the present disclosure is not limited to the scope of the examples.

[0057] Prefixes such as "first" and "second" are used in the embodiments of the present disclosure only to distinguish different description objects, and have no limiting effect on the position, order, priority, quantity or content of the described objects. The use of prefixes such as ordinal numbers to distinguish description objects in the embodiments of the present disclosure does not constitute a limitation on the described objects. For the statement of the described objects, please refer to the description in the context of the claims or embodiments, and no unnecessary limitation should be constituted due to the use of such prefixes. In addition, in the description of the present embodiment, unless otherwise specified, the meaning of "plurality" is two or more.

[0058] Example 1

[0059] Figure 1 This is a flow chart of a model data collection method provided by an exemplary embodiment of the present disclosure. As can be seen from the figure, the model data collection method includes:

[0060] Step 101: Determine the target collection task of each collection terminal. The target collection task includes at least one subtask, and the subtask is obtained by dividing the overall task.

[0061] Optionally, Figure 2 A flowchart of step 101 is provided for an exemplary embodiment of the present disclosure. As can be seen from the figure, step 101 specifically includes:

[0062] Step 1011: Determine the overall task of model data collection.

[0063] In this step, you need to first clarify the overall task of model data collection, that is, the overall goals and requirements. This may include determining what types of data need to be collected, the total amount of data, and the deadline for data collection. Here we will use a specific example to illustrate the operation and importance of this step.

[0064] Suppose a company specializing in ship design plans to conduct a comprehensive collection of ship model data to support the innovation and optimization of its design. This overall task involves multiple types of data, including but not limited to hull structure, electrical system, piping layout, and mechanical devices. First, it is necessary to clarify which model data is necessary for this data collection. The ship model data involved can be model data for a particular ship or for several ships. The data types involved in the model data are also multifaceted. For example, hull structure data may include the size, model, and material information of steel plates; electrical system data may involve the layout of cables, specifications of electrical equipment, and power distribution. Next, estimating the amount of data to be collected is key, which includes understanding the number of each data type (such as how many electrical devices need to be recorded), the complexity of the data (two-dimensional drawings or three-dimensional models), and the difficulty of data conversion or processing. In this case, the hull structure data may be the largest data set because they include a large number of components and detailed specifications. If necessary, a practical data collection deadline can be set based on the company's project schedule and external factors (such as customer requirements, regulatory approvals, etc.) to determine when data collection must be completed. Based on the above information, a preliminary data collection plan is developed, which should include the collection priority of each data type, the required resources (such as staffing and technical tools), and the expected difficulties. For example, due to the large amount and importance of hull structure data, more collection terminals may need to be prioritized for collection. Through this step, the overall task of data collection is clarified, laying a solid foundation for the subsequent task division and allocation. This not only helps to improve the efficiency and accuracy of data collection, but also ensures the smooth progress of the entire design update project.

[0065] Step 1012: Divide the total task into a number of subtasks according to the type of model data, wherein the difference in workload between the subtasks is less than or equal to a difference threshold.

[0066] This step involves dividing the total task into multiple subtasks according to different data types or other logics, with the goal of balancing the workload of each subtask and ensuring that the tasks can be evenly distributed. Continuing with the above example, the task of collecting ship model data can be divided into multiple subtasks according to different data types, such as hull structure data collection tasks, electrical system data collection tasks, etc., and ensure that the workload difference between these subtasks does not exceed the preset threshold. The workload can be quantified by the amount of data, such as the amount of data contained in each subtask is roughly equal. Here we will use a specific example to illustrate the operation and importance of this step.

[0067] Assume that the data that a ship design company needs to collect includes various types of data, such as hull structure, electrical system, piping layout, and mechanical devices. In order to effectively manage this complex collection task, the data is classified and corresponding subtasks are created. The specific implementation is as follows:

[0068] 1. Data classification:

[0069] First, the data can be divided into several main categories based on its nature and source. For example, the data can be divided into the following categories:

[0070] Hull structure data: including steel plates, profiles, hull shape, etc.

[0071] Electrical system data: involving cable layout, generators, switchboards, etc.

[0072] Pipeline layout data: including water pipes, oil pipes, exhaust systems, etc.

[0073] Mechanical device data: involving main engine, pump, steering gear and other equipment.

[0074] 2. Subtask division:

[0075] Next, each data category is further broken down into specific collection subtasks. For example:

[0076] The hull structure data collection can be divided into the collection tasks of the bow part, the middle part of the hull and the stern part.

[0077] Electrical system data collection can be divided into tasks according to the type of electrical equipment or the area where it is located, such as main generator data, cab electrical equipment data, etc.

[0078] Pipeline layout data collection can be divided according to the different functions of the pipeline system, such as fresh water system, fuel system, etc.

[0079] Mechanical device data collection can be divided according to equipment type or installation location, such as main machine, auxiliary machinery, etc.

[0080] It should be understood that the principles of data classification and subtask division are not limited to the above categories. Different companies or projects can adjust and set them according to their own business logic. For example, they can be divided according to the type of model. For example, for hull structure model data, subtasks are divided according to sections; for outfitting model data, subtasks are divided according to outfitting majors and outfitting modules; for component library data, due to its special data distribution, subtasks are divided according to component type and component name.

[0081] 3. Workload assessment and balance:

[0082] Then, evaluate the workload of each subtask, which may include the amount of data, the complexity of the data, and the difficulty of collection and processing. Make sure that the workload of each subtask is similar to avoid overloading the collection terminal of some subtasks and affecting the overall data collection progress.

[0083] 4. Set the workload difference threshold:

[0084] Set a maximum workload difference threshold to ensure balanced task allocation. If the workload difference between two subtasks exceeds this threshold, the task boundaries or resource allocation need to be readjusted.

[0085] Through the above steps, it is possible to ensure that the workload of each data collection subtask is balanced, thereby efficiently and fairly allocating tasks to different collection terminals. This method not only improves the efficiency of data collection, but also helps to keep the overall progress of the project consistent.

[0086] Step 1013, assigning a number of subtasks to each collection terminal as their respective target collection tasks. Optionally, step 1013, assigning a number of subtasks to each collection terminal as their respective target collection tasks, includes: determining the current operating status of each collection terminal; assigning the subtasks that are not marked as assigned to the collection terminal according to the operating status; in response to the subtask being assigned to the collection terminal, marking the assigned subtask as assigned.

[0087] This step assigns subtasks to each collection terminal based on their performance, current load, and availability. Using the previous example, if one collection terminal is currently lightly loaded, it can be assigned more data collection tasks, while another terminal with a heavier load or poorer performance can be assigned fewer tasks. When assigning tasks, the system will mark these subtasks as assigned to avoid the same task being assigned repeatedly. Let's take a closer look at this step and give an example of how to do it in practice.

[0088] Suppose a ship design company has multiple acquisition terminals, including high-performance servers, laptops, and desktop computers. First, it is necessary to monitor the operating status of these terminals in real time to understand which devices are running, which are idle, and their system health (such as CPU usage, memory load, disk space, etc.). Once the operating status of each acquisition terminal is mastered, the next step is to assign tasks based on their performance and current load. When a subtask is assigned to a certain acquisition terminal, the system should immediately update the status of the subtask to "assigned". This can be achieved by updating the task status in the database or project management software to ensure the timeliness and accuracy of the information. The benefit of this practice is to prevent tasks from being repeatedly assigned to other terminals, thereby avoiding resource waste and potential conflicts. After receiving the assigned subtask, the acquisition terminal starts data collection according to the subtask requirements. If a certain acquisition terminal cannot complete the task due to an emergency, the system needs to be able to quickly reallocate the task to other suitable terminals.

[0089] In actual operation, automation tools and scripts can be used to help manage and assign tasks. For example, scripts written in Python can regularly check the status of all acquisition terminals and automatically assign new tasks according to preset rules and algorithms. At the same time, these scripts can also send notifications when tasks are completed or failed, so that timely adjustments can be made.

[0090] Through this systematic and automated approach, the ship design company’s data collection process is not only more efficient, but also reduces human errors, optimizes resource usage, and speeds up the overall project progress.

[0091] Step 102: Obtain corresponding target data from the database according to the target acquisition task of each acquisition terminal.

[0092] Optionally, step 102 specifically includes: in response to the execution status of a subtask in the target acquisition task being a failure, re-executing the subtask with a failed execution status.

[0093] In the process of data collection, it is crucial to ensure that the data is collected and processed accurately. In step 102, it involves obtaining target data corresponding to the target collection tasks of each collection terminal from the database, and includes a retry mechanism for subtasks that fail to execute.

[0094] Assume that a subtask assigned to a collection terminal is to collect data about the ship's electrical system. According to the task assignment in step 1013, the collection terminal needs to extract a specific data set related to this task from the database. This may include the model, layout diagram, power requirements, etc. of the electrical equipment. During the data collection process, some subtasks may fail to execute due to various reasons (such as network failure, database problem or equipment failure). Step 102 provides a mechanism for re-executing these failed subtasks to ensure the integrity and accuracy of the data. Assume that during the execution of the subtask of extracting hull structure data, a network connection interruption occurs, resulting in incomplete data collection. After the system detects this failure state, the retry mechanism can be automatically triggered. In this case, the system will mark the status of the subtask as "failed" and try to re-establish the database connection and execute the data extraction query again. If the number of consecutive failures exceeds the preset number (for example, 3 times), the system may send a warning notification to the administrator for manual intervention.

[0095] In actual operation, you can use automation tools to monitor the execution status of tasks and manage task retries. For example, use Python scripts to regularly check database task logs, identify failed subtasks, and automatically re-execute the data extraction process. At the same time, you can set up email or SMS notifications to notify administrators in a timely manner when tasks fail continuously.

[0096] This automation and monitoring approach not only improves the reliability of data collection, but also reduces the burden of manual monitoring, optimizes resource utilization, and speeds up problem solving. Through real-time monitoring and rapid response to failed subtasks, the data collection process can be smoother and more efficient, ensuring that the project proceeds as planned.

[0097] Optionally, step 102 specifically includes: determining the number of connections between the collection terminal and the database when the collection terminal executes the target collection task; in response to the number of connections being greater than a connection number threshold, pausing execution of a new subtask; and / or, in response to the number of connections being less than or equal to the connection number threshold, continuing execution of the new subtask.

[0098] In the process of data collection, managing the connection between the collection terminal and the database is critical, especially when a large amount of data is involved and multiple collection terminals are working at the same time. In the refinement of step 102, it is introduced how to adjust the execution of subtasks according to the number of connections between the collection terminal and the database to ensure the stable operation of the system and the rational use of resources. The following is a detailed interpretation of this step and an example to illustrate its operation.

[0099] The specific implementation is as follows:

[0100] 1. Determine the number of connections between the acquisition terminal and the database:

[0101] Assume that in a ship data collection project, there are multiple collection terminals working at the same time. Each terminal may open multiple connections to the central database at the same time to access data in real time. Monitoring the number of these connections is crucial to ensure that the system is not overloaded. You can set up a monitoring program or script to periodically check the number of currently active database connections.

[0102] 2. In response to the number of connections being greater than the connection number threshold:

[0103] When the number of active database connections exceeds the preset threshold, the execution of new subtasks needs to be suspended to prevent system overload. Assume that the connection number threshold is set to 50. When the monitoring program detects that the number of active connections reaches 50, the system automatically suspends the allocation of new subtasks to the acquisition terminal, or suspends the initiation of new connections for the subtasks that have been allocated to the acquisition segment. At this time, the system may send a signal or message to the task scheduling system, instructing it to temporarily stop the distribution of tasks or suspend new connections until the number of connections decreases.

[0104] 3. In response to the number of connections being less than or equal to the connection number threshold:

[0105] When the number of database connections is less than or equal to the threshold, it indicates that the system load is within the controllable range and new subtasks can continue to be executed. When the monitoring program detects that the number of active connections has dropped to 45, the system confirms that there are sufficient resources and can safely continue to assign new tasks to the acquisition terminal. At this time, the task scheduling system receives the recovery instruction and continues to assign suspended tasks on demand.

[0106] In actual operation, this strategy of dynamically adjusting task execution can be implemented through automated scripts, combined with the functions of the database management system and third-party monitoring tools. For example, you can write a Python script that uses the database API to obtain the number of connections in real time and control the suspension and resumption of tasks by calling the scheduling system API according to the preset threshold.

[0107] The advantage of this strategy is that it can adapt to the current load condition of the system, optimize resource usage, prevent the system from crashing due to overload, and ensure the continuity and efficiency of data collection work.

[0108] Step 103: Summarize and store the target data.

[0109] For this step, assume that a ship design company is working on a project that involves collecting data about ship structures, electrical systems, and mechanical components from different collection terminals. Each terminal collects specific types of data according to its assigned subtask. After the data is collected by each collection terminal, they need to be transferred to a central server or database. This may be achieved through automated scripts, for example, using FTP to transfer text files, or uploading data directly to the database through API calls. The collected data needs to be organized and stored in a unified location for easy access and analysis. This usually involves steps such as data cleaning and formatting to ensure data consistency and availability. For example, all data can be imported into a database and stored and managed using a SQL database management system. The database can set triggers and stored procedures to automatically update data and maintain data integrity.

[0110] Optionally, Figure 3 A flowchart of another model data collection method provided by an exemplary embodiment of the present disclosure is shown in the figure. As can be seen from the figure, the model data collection method further includes:

[0111] Step 104: monitor the operating status of all acquisition terminals; the operating status includes: the load of the acquisition terminal and the execution status of the target acquisition task.

[0112] The load of each acquisition terminal generally includes its CPU usage, memory usage, disk space, etc. It is necessary to monitor the load to ensure that it does not exceed the limit of its acquisition terminal. For example, the monitoring module installed on each terminal can collect this data in real time and send an alarm when any resource reaches a critical value.

[0113] Execution status monitoring of target collection tasks: In addition to resource load, the execution status of the tasks assigned to each terminal needs to be monitored. This includes whether the task is executed as planned, completed, or if an error occurs. For example, if a collection terminal is responsible for extracting data from a specific database, and this task fails, the monitoring system will record the failure and notify the technical support team to investigate and solve the problem.

[0114] In this way, not only can the data be ensured to be complete and accurate, but potential problems can also be discovered and resolved in a timely manner, ensuring the efficient operation of the entire data collection system.

[0115] Based on the above steps, we will take the model data collection of Tribon server as a specific scenario and give a specific example. This example takes improving data collection efficiency as the starting point and gives priority to solving the problem of long collection time. Based on efficient collection, the integrity and stability of data collection are achieved. At the same time, a Tribon server fuse protection mechanism is provided to ensure that the Tribon server will not be down due to excessive concurrency and service unavailability. The specific technical solution is as follows:

[0116] 1. Collect and manage available collection terminals

[0117] Deploy the collection service on the available collection terminals. After the collection terminals are started, they will automatically register with the terminal management platform. For details, see Figure 4 The acquisition terminal and the terminal management platform use the heartbeat mechanism to ensure that the acquisition terminal is alive and available at any time. At the same time, the heartbeat reports the status information of each acquisition terminal, including resource capabilities, task execution status, load status, etc., to provide parameter basis for the terminal management platform to distribute and schedule tasks.

[0118] 2. Data collection task division

[0119] The task of collecting the data of the whole ship's three-dimensional model is too large for a single collection terminal, and it takes too long, which directly results in poor data collection efficiency, integrity, and stability. In view of this situation, before collecting the data of the whole ship model, the task is divided according to a certain business logic and split into multiple relatively independent subtasks. The workload or estimated time of each subtask is relatively close. Then the data is collected by each collection terminal. For each subtask after the split, the collection terminal can ensure its collection efficiency, stability, and data integrity.

[0120] The division of acquisition tasks can adopt different division algorithms according to different model types. For hull structure model data, the subtasks are divided according to the sections; for outfitting model data, the subtasks are divided according to outfitting majors and modules; for component library data, due to its special data distribution, the subtasks are divided according to component types and component names. For details, see Figure 5 Regardless of the model data, the criterion of the partitioning algorithm is to ensure that the workload of each subtask is relatively close.

[0121] 3. Task Scheduling

[0122] After the collection task is divided, the management platform automatically triggers the execution of the subtask. The management platform notifies each collection terminal to execute the subtask through broadcasting. To prevent the task from being executed repeatedly and ensure data integrity, the management platform will lock the task being executed to prevent it from being executed repeatedly. After the task is executed, the task is unlocked and the task status is updated. The collection terminal will report its own load status during the execution of the task. For failed subtasks, the management platform will trigger the retry mechanism according to the load status of the collection terminal, and notify the collection terminal to retry to execute the failed subtask until the task is completed or the maximum number of retries is exceeded.

[0123] 4.Tribon server fuse protection mechanism

[0124] In order to ensure the stable acquisition of Tribon 3D model data and prevent Tribon server from downtime due to excessive concurrent connections, a fuse protection mechanism is added during task scheduling. Usually, one Tribon server can support the design and modeling of multiple ships. Figure 6 , the specific algorithm of the fuse protection mechanism is as follows:

[0125] 4-1. Virtualize the Tribon server into a resource quota and set the corresponding resource quota. At the same time, set the Tribon server to which the corresponding ship belongs. Reset the used resource quota to 0 before the mission starts.

[0126] 4-2. Before executing the task, the collection terminal requests the use of the corresponding Tribon server resources according to the ship number to which the task belongs. If the request is successful, the collection terminal starts to execute the task. If the request fails, it will change to another ship subtask and try to execute the task again.

[0127] 4-3. When the resource quota of the Tribon server is exhausted, all resource usage requests will be rejected to ensure that other subtasks currently being executed can be completed smoothly.

[0128] 4-4. After the acquisition terminal completes the subtask, it requests to release the Tribon server resource quota. The Tribon server restores the corresponding resource quota and receives resource usage requests from other acquisition terminals.

[0129] The above method significantly optimizes the data collection process of the three-dimensional model. It not only shortens the data collection time, improves stability and data integrity, but also enhances the high availability of the collection task, supports large-scale parallel computing, and allows the use of designers' work computers as collection terminals, reducing costs. Specifically, it is reflected in the following points: shortening the time consumption of data collection for the entire ship, improving collection stability and data integrity; improving the high availability of the collection task, even if the computing resources are offline, it will not affect the overall collection task; supporting large-scale parallel computing, and realizing the simultaneous collection of multi-ship model data; designers' work computers can be used as computing resources, without the need for expensive high-performance servers; computing resources based on virtualization technology can be flexibly increased or decreased, and have strong scalability.

[0130] Example 2

[0131] Corresponding to the aforementioned model data acquisition method embodiment, the present disclosure also provides an embodiment of a model data acquisition system.

[0132] Figure 7 A module schematic diagram of a model data acquisition system provided by an exemplary embodiment of the present disclosure, the model data acquisition system comprising:

[0133] A determination module 21 is used to determine the target acquisition task of each acquisition terminal; the target acquisition task includes at least one subtask, and the subtask is obtained by dividing the overall task;

[0134] The acquisition module 22 is used to obtain corresponding target data from the database according to the target acquisition tasks of each acquisition terminal;

[0135] The storage module 23 is used to aggregate and store the target data.

[0136] Optionally, the determination module 21 is specifically configured to:

[0137] Determine the overall task of model data collection;

[0138] Divide the total task into several subtasks according to the type of model data; wherein the difference in workload between the subtasks is less than or equal to the difference threshold;

[0139] Several subtasks are assigned to each acquisition terminal as their respective target acquisition tasks.

[0140] Optionally, the determination module 21 is specifically configured to:

[0141] Determine the current operating status of each acquisition terminal;

[0142] Allocate subtasks that are not marked as allocated to the acquisition terminal according to the running status;

[0143] In response to the subtask being assigned to the collection terminal, the assigned subtask is marked as assigned.

[0144] Optionally, the model data acquisition system further includes:

[0145] The detection module is used to monitor the operating status of all acquisition terminals; the operating status includes: the load of the acquisition terminal and the execution status of the target acquisition task.

[0146] Optionally, the acquisition module 22 is specifically configured to:

[0147] In response to the execution status of a subtask in the target acquisition task being failed, the subtask with the failed execution status is re-executed.

[0148] Optionally, the acquisition module 22 is specifically configured to:

[0149] Determine the number of connections between the collection terminal and the database when the collection terminal performs the target collection task;

[0150] In response to the number of connections being greater than the connection number threshold, execution of the new subtask is suspended; and / or, in response to the number of connections being less than or equal to the connection number threshold, execution of the new subtask continues.

[0151] The above system significantly optimizes the data collection process of the three-dimensional model. It not only shortens the data collection time, improves stability and data integrity, but also enhances the high availability of the collection task, supports large-scale parallel computing, and allows the use of designers' work computers as collection terminals, reducing costs. Specifically, it is reflected in the following points: shortening the time consumption of data collection for the entire ship, improving collection stability and data integrity; improving the high availability of the collection task, even if the computing resources are offline, it will not affect the overall collection task; supporting large-scale parallel computing, realizing the simultaneous collection of multi-ship model data; designers' work computers can be used as computing resources, without the need for expensive high-performance servers; computing resources based on virtualization technology can be flexibly increased or decreased, and have strong scalability.

[0152] As for the system embodiment, since it basically corresponds to the method embodiment, the relevant parts can refer to the partial description of the method embodiment. The system embodiment described above is only illustrative, wherein the units described as separate components may or may not be physically separated, and the components as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the disclosed solution.

[0153] Example 3

[0154] Figure 8This is a schematic diagram of the structure of an electronic device shown in an example embodiment of the present disclosure, the electronic device includes a memory, a processor, and a computer program stored in the memory and used to run on the processor, and the processor implements the model data acquisition method described in any of the above embodiments when executing the computer program. Figure 8 The electronic device 90 shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0155] like Figure 8 As shown, the electronic device 90 may be in the form of a general-purpose computing device, for example, it may be a server device. The components of the electronic device 90 may include, but are not limited to: at least one processor 91, at least one memory 92, and a processor that connects different system components (including the memory 92 and the processor). Processor 91)'s bus 93.

[0156] The bus 93 includes a data bus, an address bus, and a control bus.

[0157] The memory 92 may include a volatile memory, such as a random access memory (RAM) 921 and / or a cache memory 922 , and may further include a read-only memory (ROM) 923 .

[0158] The memory 92 may also include a program tool 925 (or utility) having a set (at least one) of program modules 924, such program modules 924 including but not limited to: an operating system, one or more application programs, other program modules and program data, each of which or some combination may include an implementation of a network environment.

[0159] The processor 91 executes various functional applications and data processing by running the computer program stored in the memory 92, such as the model data acquisition method provided in any of the above embodiments.

[0160] The electronic device 90 may also communicate with one or more external devices 94 (e.g., keyboards, pointing devices, etc.). Such communication may be performed via an input / output (I / O) interface 95. Furthermore, the electronic device 90 may also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter 96. As shown, the network adapter 96 communicates with other modules of the electronic device 90 via a bus 93. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 90, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID (disk array) systems, tape drives, and data backup storage systems, etc.

[0161] It should be noted that although several units / modules or sub-units / modules of the electronic device are mentioned in the above detailed description, this division is merely exemplary and not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more units / modules described above can be embodied in one unit / module. Conversely, the features and functions of one unit / module described above can be further divided into multiple units / modules to be embodied.

[0162] Example 4

[0163] The embodiments of the present disclosure further provide a computer-readable storage medium having a computer program stored thereon, and when the program is executed by a processor, the model data acquisition method provided in any of the above embodiments is implemented.

[0164] The readable storage medium may include but is not limited to: a portable disk, a hard disk, a random access memory, a read-only memory, an erasable programmable read-only memory, an optical storage device, a magnetic storage device or any suitable combination of the above.

[0165] Example 5

[0166] The embodiment of the present disclosure further provides a computer program product, including a computer program, which implements any of the above-mentioned model data collection methods when executed by a processor.

[0167] Among them, the program code for executing the computer program product of the present disclosure can be written in any combination of one or more programming languages, and the program code can be executed completely on the user device, partially on the user device, as an independent software package, partially on the user device and partially on a remote device, or completely on the remote device.

[0168] Although the specific embodiments of the present disclosure are described above, those skilled in the art should understand that this is only an example, and the protection scope of the present disclosure is defined by the appended claims. Those skilled in the art may make various changes or modifications to these embodiments without departing from the principles and essence of the present disclosure, but these changes and modifications all fall within the protection scope of the present disclosure.

Claims

1. A model data collection method, characterized in that: The model data acquisition method comprises: Determine a target collection task for each collection terminal; the target collection task includes at least one subtask, and the subtask is obtained by dividing the overall task; Obtain corresponding target data from the database according to the target collection tasks of each collection terminal; The target data are aggregated and stored.

2. The model data acquisition method according to claim 1, characterized in that: Determining the target acquisition task of each acquisition terminal includes: Determine the overall task of model data collection; Divide the total task into a plurality of subtasks according to the type of model data; wherein the difference in workload between the subtasks is less than or equal to a difference threshold; The plurality of subtasks are allocated to respective acquisition terminals as their respective target acquisition tasks.

3. The model data acquisition method according to claim 2, characterized in that: The allocating the plurality of subtasks to the respective acquisition terminals as the respective target acquisition tasks comprises: Determine the current operating status of each acquisition terminal; Allocating the subtasks that are not marked as allocated to the acquisition terminal according to the running status; In response to the subtask being assigned to the collection terminal, the assigned subtask is marked as assigned.

4. The model data acquisition method according to claim 1, characterized in that: The model data collection method also includes: Monitor the operating status of all acquisition terminals; the operating status includes: the load of the acquisition terminal and the execution status of the target acquisition task.

5. The model data acquisition method according to claim 1, characterized in that: The step of acquiring corresponding target data from the database according to the target acquisition tasks of each acquisition terminal includes: In response to the execution status of the subtask in the target acquisition task being failed, the subtask with the execution status being failed is re-executed.

6. The model data acquisition method according to claim 1, characterized in that: The step of acquiring corresponding target data from the database according to the target acquisition tasks of each acquisition terminal includes: Determining the number of connections between the acquisition terminal and the database when the acquisition terminal executes the target acquisition task; In response to the number of connections being greater than a connection number threshold, execution of the new subtask is suspended; and / or, in response to the number of connections being less than or equal to the connection number threshold, execution of the new subtask continues.

7. A model data acquisition system, characterized in that: The model data acquisition system comprises: A determination module, used to determine a target acquisition task for each acquisition terminal; the target acquisition task includes at least one subtask, and the subtask is obtained by dividing the overall task; The acquisition module is used to obtain corresponding target data from the database according to the target acquisition tasks of each acquisition terminal; The storage module is used to aggregate and store the target data.

8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and used to run on the processor, characterized in that: When the processor executes the computer program, the model data collection method according to any one of claims 1 to 6 is implemented.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the model data collection method according to any one of claims 1 to 6 is implemented.

10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the model data collection method according to any one of claims 1 to 6 is implemented.