## 3 System Architecture and Key Technologies
### CMMN-Based Heterogeneous Cloud Resource Integration and Scheduling
#### 3.1.2 Task Scheduling Optimization Based on CMMN Algorithm
1 foreachtask in tasksdo
2 iftask.canBeScheduled(completedTasks)then
3// Original steps: \(preparationTime\gets getTaskPreparationTime(task)\) for each executionTime in task.executionTimesdo
4 increment executionTime by preparationTime
5// Improved:
6*for\(i\) from 0 to task.executionTimes.lengthdo
7*\(preTime\leftarrow\) task.getPreTime(resources.get\((i)\), tasksToRes)
8*\(task.executionTimes[i]\leftarrow\) task.executionTimes\([i]+\)preTime
9 addtask to alreadyTasks
10 foreachtask in alreadyTasksdo
11 removetask from tasks
12 ifalreadyTasks is not emptythen
13// Original steps: \(min\gets getMinExecutionTime(alreadyTasks)\) \(max\gets getMaxExecutionTime(alreadyTasks)\) // Improved:
14*\(minMed\gets getMinMedianExecutionTime(alreadyTasks)\)
15*\(maxMed\gets getMaxMedianExecutionTime(alreadyTasks)\)
16 foreachtask in alreadyTasksdo // Original steps: \(normalizedValue\leftarrow\frac{task.maxRecTime()-min}{max-min}\) // Improved:
17*\(normalizedValue\leftarrow\frac{task.maxRecTime()-minMod}{maxMed-minMed}\)
18 ifnormalizedValue\(\geqslant\)thresholdthen
19 addtask to bigTasks
20 else
21 addtask to smallTasks
22
23 schedule bigTasks using MinMinScheduling() schedule _smallTasks_ using MinMinScheduling()

### Dynamic Integration of Heterogeneous Geological Data via Block Models

The block model-based dynamic integration method for heterogeneous geological data uses a unified data model to integrate structured, semi-structured, and unstructured data, enabling efficient multi-source data fusion and management. It includes two key components: geological data fusion, which optimizes integration through semantic, attribute, and spatial mapping libraries, and dynamic data views built and interacted with in a modular, demand-driven manner to enhance decision support. #### 3.2.1 Block Model-Based Heterogeneous Geological Data Fusion

Due to the diversity and heterogeneity of data sources, the first step is to establish a semantic repository to resolve inconsistencies in naming the same attributes across different datasets. For example, \"silver content\" may be referred to as \"silver\", \"Ag\", or \"P-Ag\" in various files. The semantic repository can standardize these terms and map them to a unified concept. Secondly, constructing an attribute-to-file mapping repository establishes the correspondence between attributes and files, avoiding the need to search through massive datasets during the fusion process. Finally, creating a geographic name mapping repository enables the accurate association of place names in unstructured data with their corresponding spatial locations, ensuring that the data can be correctly mapped to the relevant geographical regions. When handling data conflicts, it is essential to establish data prioritization rules, as disputes may arise from different data sources for the exact spatial location and attribute. To address this, we prioritize different datasets by considering factors such as data source, time, attribute density, and type, ensuring that the most reliable data are prioritized. The priority score \(p\) can be calculated by using the following formula:

\[p=(S+T+\phi)*C+A, \tag{1}\]

where \(S\) represents the data source score, with authoritative sources receiving higher scores; \(T\) represents the data timeliness score, with newer data receiving higher scores; \(\phi\) represents the attribute density score, with higher attribute density in a given spatial unit resulting in a higher score; \(C\) represents the error coefficient score, with machine-measured error coefficients receiving higher scores than those derived from manual measurements; and \(A\) represents additional scores, awarded to specific data for special reasons. The data fusion process is illustrated in Figure 3. Initially, the attributes in the semantic repository are traversed, and files containing these attribute data are identified in the attribute-to-file mapping repository.