Page 47 - Kaleidoscope Academic Conference Proceedings 2024
P. 47
Innovation and Digital Transformation for a Sustainable World
continuous optimization of data quality. We will now delve [ ( ) ℎ ] ( ) (1)
into detailed introductions of these two main perspectives.
That is, satisfying certain preconditions(precondition),
2.1 Design of scenario-based dynamic inspection executing rules based on certain inputs (input) and execute
methodology rule(ruleExr). Note that in some simple scenarios,
preconditions may not exist and can be omitted, allowing
2.1.1 Construction of general inspection formulas direct execution of rule judgment.
The content of the data itself, as well as the logical 2.1.2 Expression engine semantic expansion
relationships between data, are generally complex and
strongly tied to business processes. Taking CMDB as an Although the expression engine inherently supports basic
example, there are currently over 700 logical rules in CMDB, data types and simple comparison operations, it still cannot
and these rules may change frequently with business handle complex inspection semantics. For instance, in the
dynamics. To adapt to this dynamic scenario, it is necessary CMDB inspection rule scenarios, except for scenarios 1 and
to categorize these rules into scenarios, extract common 2, where native expression functionalities can be utilized,
formulas, so that all rules can be fitted into these formulas, scenarios 3 to 7 are business-specific and cannot be natively
forming a solution with high generality. Additionally, to supported by the expression engine. To address the inability
address complex application scenarios, the formulas need to of the expression engine to natively support business-
support a mechanism for nested usage. Through the analysis specific rules, we need to extend its functionality, combining
of inspection rules based on customer requirements, seven the extended features with the native ones to meet the
common scenarios have been identified, including: "simple requirements of various business scenarios. The relationship
comparisons such as size and non-emptiness", "regular between the extended engine functionality and business
expression validation", "comparison after mapping values scenarios is illustrated in Figure 2.
through enumeration", "values must be within an
enumeration range", "rules maintaining uniqueness within a
certain range", "rules requiring special semantic conversion
to values" and "rules needing to meet specific business
scope," as shown in Table 1.
Table 1 – Division and examples of inspection rule
scenarios in CMDB
Rule
Scenario Rule Example
The allocated bare metal image cannot be empty and
1) Simple must not be the string 'null'
comparison The allocatable memory should be greater than or Figure 2 – Relationship between engine functionality
equal to the allocated memory and scenarios
The IPv4 address of the business network must adhere
2) Regular to the IPv4 format. If there are multiple IPv4 addresses
expression for the bare metal business network, please separate A brief explanation of each extension in the Figure 2 is
comparison
them with a semicolon, for example: 1.1.1.1 provided below:
3) Enum The CPU specification of the bare metal template <= ⑴enum mapping extension. This extension takes one
mapping CPU quantity * cores per CPU * threads(2) parameter to map the enumeration values of the input
comparison parameter x in the CMDB, following the formula (2) referred
4) Enum The run type for bare metal is enum, and the to as the “Enumeration Value Mapping Formula”:
Based enumeration values should be selected from 0, 1, and 2
comparison
5) Unique The management IP of bare metal servers within the ( ) = ( ) (2)
comparison same cluster must be unique
6) Conversi Allocatable VCPU cores < CPU quantity * cores per ⑵isEnum extension. This extension takes two parameters
on based CPU * threads (2) * oversubscription ratio to determine if the parameter x is an enumeration value
comparison
7) Business The image should match the current operating system within the range of parameter y, following the formula (3)
based referred to as the “Enumeration Judgment Formula”:
comparison
( , ) = ( , ) (3)
In the context of complex applications, these seven major
scenarios do not exist in isolation; there are conditional ⑶isUnique extension. This extension takes two parameters
causal relationships between different scenarios that need to to determine if the parameter x is unique within the range
be combined for use. Through research, we can abstract any specified by parameter y, following the formula (4) referred
rule into a formula (1) referred to as “Inspection General to as the “Uniqueness Formula”:
Formula”:
– 3 –