Matching processing method, test processing method, related equipment and medium
By applying encoding rules to objects in the target feature group for encoding value retrieval and identifier addition, the problem of low matching efficiency of computer devices in the prior art is solved, and the efficiency and accuracy of object matching are improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2024-10-17
- Publication Date
- 2026-04-17
AI Technical Summary
Existing object matching methods involve the calculation of a large number of discrete and continuous features, resulting in low matching efficiency and excessive resource consumption by computer equipment.
By acquiring objects of the target feature group and applying encoding rules to encode values, the same object features are mapped to the same value, and identifiers are added for different object types, thus simplifying and efficiently processing object matching.
It effectively improves the efficiency and accuracy of computer equipment in the object matching process, simplifies the feature matching process, and transforms it into a comparison process of coded values and identifiers.
Smart Images

Figure CN121880947A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a matching processing method, a testing processing method, related equipment and media. Background Technology
[0002] With the continuous development of computer technology, the current object matching method involves traversing the object features of each object in a set and then matching based on the results of these features. However, the number of object features is large, including both discrete and continuous features. Therefore, directly matching object features results in a huge number of matches, leading to a large computational load. Furthermore, matching each object's features sequentially requires the computer to read data multiple times, consuming significant computer resources. Thus, the current matching method results in low matching efficiency for computer equipment. Therefore, improving the matching efficiency of computer equipment has become a current research hotspot. Summary of the Invention
[0003] This invention provides a matching processing method, a testing processing method, related equipment, and a medium that can improve matching efficiency.
[0004] On one hand, embodiments of the present invention provide a matching processing method, including:
[0005] Obtain the first and second objects belonging to the target feature group; the first and second objects belong to different object types.
[0006] Obtain the encoding rules associated with the target feature group; the encoding rules associated with the target feature group include: the value range when encoding the first object and the second object in the target feature group;
[0007] According to the value range, the first object in the target feature group is encoded to obtain the first encoded data, and the second object in the target feature group is encoded to obtain the second encoded data;
[0008] Based on the encoded values of the first encoded data and the second encoded data, a matching process is performed on the first object and the second object; the encoded values of the first object and the second object that match each other are the same.
[0009] In another aspect, embodiments of the present invention provide a matching processing apparatus, comprising:
[0010] The acquisition unit is used to acquire a first object and a second object belonging to the target feature group; the first object and the second object belong to different object types.
[0011] The acquisition unit is further configured to acquire the encoding rules associated with the target feature group; the encoding rules associated with the target feature group include: the value range when encoding the first object and the second object in the target feature group;
[0012] The processing unit is configured to encode and extract values for a first object in the target feature group according to the value range to obtain first encoded data, and to encode and extract values for a second object in the target feature group to obtain second encoded data;
[0013] The processing unit is further configured to perform matching processing on the first object and the second object based on the encoding values of the first encoded data and the second encoded data; the encoding values of the first object and the second object that match each other are the same.
[0014] In one embodiment, the acquisition unit is further configured to acquire a target object set, the target object set including at least one first object and at least one second object;
[0015] The processing unit is further configured to group the objects contained in the target object set according to the object characteristics of each object in the target object set, to obtain at least one feature group; wherein the target feature group is any one of the at least one feature group obtained.
[0016] In one embodiment, objects belonging to any feature group contain the same object features; the acquisition unit is further configured to acquire the object features of the objects contained in any feature group, and use the contained object features as the grouping value of the any feature group;
[0017] The processing unit is further configured to perform hash calculation on the grouping value to obtain a group hash, and to associate and store any feature group and objects belonging to any feature group based on the group hash.
[0018] In one embodiment, if the target feature group contains at least one first object and at least one second object, the acquisition unit is further configured to acquire the number of the first object and the number of the second object contained in the target feature group, and determine the minimum value between the number of the first object and the number of the second object as the target value.
[0019] The acquisition unit is further configured to acquire the minimum value of the value range contained in the encoding rule corresponding to the target feature group, and to use the sum of the minimum value of the value range and the target value as the maximum value of the value range contained in the encoding rule corresponding to the target feature group.
[0020] In one embodiment, there are multiple first and second objects in the target feature group; the processing unit is specifically used for:
[0021] According to the value range, determine the target number of encoding values for the multiple first objects and multiple second objects in the target feature group;
[0022] Encode and extract values for any first object of the target quantity to obtain first encoded data, and encode and extract values for any second object of the target quantity to obtain second encoded data.
[0023] In one embodiment, the encoding rule further includes: a mapping relationship for encoding the first object and the second object in the target feature group; the processing unit is specifically used for:
[0024] Obtain the object features of the first object in the target feature group, and select the first value corresponding to the object features of the first object from the value range according to the mapping relationship contained in the encoding rule;
[0025] A first identifier is added to the selected first value, and the first value with the added first identifier is used as the first encoded data of the first object in the target feature group.
[0026] In one embodiment, the mapping relationship is used to: correspond the same feature value of the first object and the second object in the target feature group to the same value in the value range;
[0027] In this context, the object features of the second object in the target feature group are encoded to obtain a second value, and the second value, after adding a second identifier, becomes the second encoded data of the second object.
[0028] In one embodiment, the first object and the second object belonging to the target feature group are determined by a computer cluster from the target object set. The computer cluster includes a first node and a second node. The first node is used to process a first subset of the target object set, and the second node is used to process a second subset of the target object set.
[0029] The processing unit is further configured to call the first node to group the objects contained in the first object subset according to the object characteristics of each object in the first object subset, so as to obtain at least one feature subgroup.
[0030] The processing unit is further configured to call the second node to group the objects contained in the second object subset according to the object characteristics of each object in the second object subset, so as to obtain at least one feature subgroup;
[0031] The processing unit is further configured to determine feature subgroups with the same grouping value from the obtained feature subgroups, and merge the objects in the feature subgroups with the same grouping value based on the object type to obtain at least one feature group.
[0032] In one embodiment, each node in the computer cluster contains at least one processing thread;
[0033] At least one processing thread on any node is used to obtain the object characteristics of an object in parallel, and to encode and extract values for the corresponding object based on the obtained object characteristics.
[0034] In one embodiment, both the first object and the second object are objects of the target business scenario, and the target business scenario includes: a scenario for testing whether the target version of the application version has any abnormalities;
[0035] The first object is the object whose corresponding application version is the target version, and the second object is the object whose corresponding application version is not the target version;
[0036] The object features referenced when encoding values are discrete features, which include at least one of the following: viewing duration, geographical location difference, and device difference.
[0037] In another aspect, embodiments of the present invention provide a test processing method, including:
[0038] Obtain a first object and a second object that match each other; wherein the first object and the second object belong to a target feature group, and the first object and the second object belonging to the target feature group are encoded and valued according to the value range defined by the encoding rules associated with the target feature group, and the encoded value of the first encoded data of the first object is the same as the encoded value of the second encoded data of the second object.
[0039] Obtain a first running result obtained by the first object after running the first version of the application, and a second running result obtained by the second object after running the second version of the application; wherein, the first version is the target version to be tested, and the second version is not the target version;
[0040] Based on the first and second running results, the application test results for the first version are determined.
[0041] In another aspect, embodiments of the present invention provide a test processing apparatus, comprising:
[0042] An acquisition unit is used to acquire a first object and a second object that match each other; wherein the first object and the second object belong to a target feature group, and the first object and the second object belonging to the target feature group are encoded and valued according to the value range defined by the encoding rules associated with the target feature group, and the encoded value of the first encoded data of the first object is the same as the encoded value of the second encoded data of the second object.
[0043] The acquisition unit is further configured to acquire a first running result obtained by the first object after running the first version of the application, and a second running result obtained by the second object after running the second version of the application; wherein, the first version is the target version to be tested, and the second version is not the target version;
[0044] The processing unit is configured to determine the application test results for the first version based on the first running results and the second running results.
[0045] In another aspect, embodiments of the present invention provide a computer device, including a processor, an input device, an output device, and a memory, wherein the processor, input device, output device, and memory are interconnected, wherein the memory is used to store a computer program that supports the computer device in executing the above-described method, the computer program including a first program instruction and a second program instruction, and the processor is configured to call the first program instruction to execute the method as described in the first aspect;
[0046] The processor is configured to invoke the second program instructions to execute the method described in the third aspect.
[0047] In another aspect, embodiments of the present invention provide a computer-readable storage medium storing a first computer program and a second computer program;
[0048] The first computer program includes first program instructions, which, when executed by a processor, cause the processor to perform the method described in the first aspect;
[0049] The second computer program includes second program instructions that, when executed by a processor, cause the processor to perform the method described in the third aspect.
[0050] In another aspect, embodiments of the present invention provide a computer program product, the computer program product including a first computer program and a second computer program, the first computer program including a first program instruction, which, when called by a processor, causes the processor to execute the method described in the first aspect;
[0051] The second computer program includes second program instructions that, when invoked by a processor, cause the processor to perform the method described in the third aspect.
[0052] In this embodiment, when matching objects in a target object set, the computer device can divide the objects in the target object set into different feature groups, and then encode the first and second objects in any target feature group respectively, thereby completing object matching in the target feature group based on the encoding results. When matching objects in a target feature group, the objects in the target feature group can first be encoded based on the encoding rules associated with that target feature group. Since the encoding rules associated with the target feature group map objects containing the same feature value to the same value when encoding corresponding objects, objects containing the same feature value can be encoded into encoded data with the same value based on the encoding rules associated with the target feature group. Furthermore, the encoding rules associated with the target feature group also specify different identifiers to be added to the first and second objects of different object types in the target feature group. In other words, when encoding the objects in the target feature group according to the encoding rules, not only can the codes containing the same object feature be mapped to the same value, but corresponding identifiers can also be added to the corresponding code values based on the object type. Thus, after the computer device completes the encoding, it can directly determine whether the feature values of two objects in the target feature group are the same and whether they belong to different object types based on the corresponding values of the encoded data. In this way, objects that belong to different object types but have the same feature value can be identified as matching objects. Based on this encoding matching method, when each object contains multiple different features, the division of feature groups enables the computer device to transform the matching process of a large number of scattered objects into a feature matching process of objects under a certain feature group, thereby achieving an initial simplification of the object matching process. In addition, based on the encoding processing of the feature values of the objects, the feature matching process for objects is also transformed into a comparison process of encoded values and corresponding identifiers, achieving an effective transformation of the feature matching process. Thus, the computer device can effectively improve the object matching efficiency of the computer device while ensuring matching accuracy. Attached Figure Description
[0053] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the following description of the embodiments will be briefly introduced. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0054] Figure 1This is a schematic diagram of a matching processing system provided in an embodiment of the present invention;
[0055] Figure 2 This is a schematic flowchart of a matching processing method provided in an embodiment of the present invention;
[0056] Figure 3a This is a schematic diagram illustrating grouping according to an embodiment of the present invention;
[0057] Figure 3b This is a schematic diagram illustrating a method of grouping by calling multiple threads, as provided in an embodiment of the present invention;
[0058] Figure 4a This is a schematic diagram of a computer cluster provided in an embodiment of the present invention;
[0059] Figure 4b This is a schematic diagram illustrating a computer cluster grouping method provided in an embodiment of the present invention;
[0060] Figure 4c This is a schematic diagram illustrating multi-threaded grouping of a computer cluster according to an embodiment of the present invention;
[0061] Figure 4d This is a schematic diagram of multi-threaded group matching of nodes in a computer cluster provided by an embodiment of the present invention;
[0062] Figure 5 This is a schematic flowchart of a test processing method provided in an embodiment of the present invention;
[0063] Figure 6 This is a schematic block diagram of a matching processing device provided in an embodiment of the present invention;
[0064] Figure 7 This is a schematic block diagram of a test processing device provided in an embodiment of the present invention;
[0065] Figure 8 This is a schematic block diagram of a computer device provided in an embodiment of the present invention;
[0066] Figure 9 This is a schematic block diagram of a computer device provided in an embodiment of the present invention. Detailed Implementation
[0067] The technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0068] This application proposes a matching processing method. When a computer device performs matching processing on a first object and a second object in a target feature group, it first encodes and values the first object and the second object respectively according to the encoding rules associated with the target feature group, obtaining first encoded data corresponding to the first object and second encoded data corresponding to the second object. Since the encoding rules associated with the target feature group define the value range when encoding objects belonging to the target feature group (including the first object and the second object), and the mapping relationship when encoding within this value range, when encoding and valuing the first object and the second object using these encoding rules, since the encoding is based on the corresponding object features, the same object features will obtain the same value according to the constraints of these encoding rules. Therefore, objects with the same encoded value can be used to indicate that the corresponding object features are the same (or similar). Thus, when the computer device matches the first object and the second object in the target feature group, it can consider the first object and the second object with the same encoded value as successfully matched objects, meaning that the successfully matched first object and the second object are considered homogeneous objects.
[0069] In this embodiment, the first object and the second object are different object types. Object type refers to whether the corresponding object belongs to the experimental group or the control group in the test scenario. Therefore, in the test scenario, if the first object is an experimental group object, the second object is a control group object. The matching process in this application embodiment is mainly for the pre-testing stage of application testing. Based on the matching process in this application embodiment, a matching first object and a matching second object can be determined, and the matching first object and the matching second object can be determined as homogeneous objects. Then, based on the running status of the application under test, the test result of the application under test can be determined. Below, to facilitate the understanding of the embodiments of this application, the relevant concepts involved in the matching process in the embodiments of this application will be explained.
[0070] (1) Feature groups and target feature groups.
[0071] A feature group refers to the result of grouping and partitioning features based on the feature values of object features. In one embodiment, each object feature can be represented by one feature value as a feature group, or the feature values corresponding to at least two different object features can be represented by one feature group. In this embodiment, the example is mainly based on the case where a feature group contains the feature values of two different object features.
[0072] Therefore, based on this feature group, different objects can be divided, thereby grouping objects containing the same feature values into the same feature group. The target feature group refers to any one of the multiple feature combinations obtained by dividing the object features.
[0073] (2) Grouping values.
[0074] Each feature group corresponds to a grouping value. Different feature groups correspond to different grouping values. Therefore, based on the grouping value, the corresponding feature group can be uniquely marked. The grouping value of a feature group can be determined by the feature values of the object features contained in the feature group. For example, the feature values of the object features in the feature group can be directly used as the grouping value of the feature group. Alternatively, the feature values of the object features contained in the feature group can be transformed according to certain transformation rules, and the transformed value can be used as the grouping value of the feature group.
[0075] The object features in this application embodiment are discrete features, which include at least one of the following: viewing duration, geographical location difference, device model, etc. Therefore, the feature value under the object features can be a specific value of the viewing duration, a specific geographical location, a specific device model, etc. More specifically, the object feature of an object 1 can be: a viewing duration of 4 hours and a specific geographical location of cell a, while the object feature of an object 2 can be: a viewing duration of 5 hours and a specific geographical location of cell b. The grouping value of the feature group to which object 1 belongs is determined based on 4 hours and cell a, while the grouping value of the feature group to which object 2 belongs is determined based on 5 hours and cell b. For example, 4 hours and cell a can be directly used as the grouping value of the feature group to which object 1 belongs, or the value obtained based on 4 hours and cell a (let's say A) can be used as the grouping value of the feature group to which object 1 belongs.
[0076] (3) Covariates.
[0077] Covariates are the data used for matching, such as the feature values of the object features mentioned above. Therefore, the feature groups obtained by grouping based on the feature values of the object features can also be called covariate groups.
[0078] In one embodiment, if the object features involved in determining the feature set (i.e., covariate set) are: geographic location features and viewing duration, and the feature values corresponding to the geographic location features include location 1 (denoted as x1) and location 2 (denoted as x2), and the feature values corresponding to the viewing duration include 0-100 (denoted as y1), 100-1000 (denoted as y2), and greater than 1000 (denoted as y3), then there are 6 covariate sets (or feature sets): x1+y1, x1+y2, x1+y3, x2+y1, x2+y2, and x2+y3. The target feature group can be any one of these 6 feature groups. For example, it can be x1+y1. Then, the objects in the target feature group x1+y1 are those whose corresponding feature value contains position 1 and whose viewing duration is between 0 and 100. For example, the feature value of the object feature of one object in the target feature group x1+y1 contains: position 1 and viewing duration 20, and the feature value of the object feature of another object is position 1 and viewing duration 30.
[0079] Please see Figure 1 , Figure 1 This is a schematic diagram of the network architecture of an application matching processing method provided in an embodiment of this application. For example... Figure 1 As shown, this network architecture may include a server 200 and a terminal device cluster. The terminal device cluster may include one or more terminal devices; the number of terminal devices is not limited here. Figure 1 As shown, multiple terminal devices can specifically include terminal device 1, terminal device 2, terminal device 3, ..., terminal device n, where n is a positive integer. For example... Figure 1 As shown, terminal device 1, terminal device 2, terminal device 3, ..., terminal device n can all connect to server 200 via the network, so that each terminal device can interact with server 200 through the network connection.
[0080] like Figure 1 The server 200 shown can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as 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 big data and artificial intelligence platforms. The terminal device can be a smartphone, tablet, laptop, desktop computer, smart TV, in-vehicle terminal, smart home device, or other smart terminal. The following description uses the communication between terminal device 1 and server 200 as an example to illustrate the specific implementation of this application.
[0081] In this context, terminal device 1 can be the target terminal, and it may contain a business client. This business client is a client capable of requesting the application under test, which can be software, a mini-program (a program that does not require installation), a webpage, etc. Server 200 can be the backend server to which this business client belongs. The following is a brief description of the process by which this matching method is executed in terminal device 1 and server 200. This process mainly includes the following steps ① to ⑤:
[0082] ① Terminal device 1 obtains the object characteristics and corresponding feature values of the corresponding object from the application to be tested, and uploads the object characteristics and feature values to server 200;
[0083] ② The server 200 obtains the object features and corresponding feature values of different objects from the terminal device 1 and other terminal devices, and divides them into feature groups based on the obtained object features and feature values to obtain at least one feature group;
[0084] ③ Server 200 takes any feature group as the target feature group and, based on the encoding rules corresponding to the target feature group, encodes the first object (i.e., the experimental group object) and the second object (i.e., the control group object) in the target feature group to obtain the first encoded data of the first object and the second encoded data of the second object.
[0085] ④ Server 200 performs matching processing on the first object and the second object based on the first encoded data and the second encoded data, thereby determining whether the first object and the second object match;
[0086] ⑤ Based on this matching method, the server 200 can determine the mutually matching objects from the objects contained in the target feature group.
[0087] Based on this object matching method, by dividing features into groups, different objects can be categorized into different feature groups. Within each feature group, corresponding encoding logic can be used to encode the objects, and the matching of objects within the feature group can be achieved based on the encoding results. This feature group division allows the server 200 to effectively distinguish objects from different feature groups, thus encoding the feature values of objects belonging to different feature groups according to different encoding rules, improving the effectiveness of encoding the corresponding object feature values. Matching the encoded values of object feature values effectively improves the efficiency and accuracy of object matching. Therefore, using the matching processing method of this application for object matching can effectively improve matching efficiency and ensure matching accuracy.
[0088] It should be specifically noted that the relevant data involved in the matching process of this application (such as the first object, the second object, the object characteristics (and corresponding feature values) of the first object, the object characteristics (and corresponding feature values) of the second object, etc.) are all subject to licensing or consent from the object. Furthermore, the collection, use, and processing of the relevant data must comply with the relevant laws, regulations, and standards of the region, adhering to the principles of legality, legitimacy, and necessity, and not involving the acquisition of data types prohibited or restricted by laws and regulations. In some optional embodiments, the relevant data involved in the embodiments of this application is obtained after separate authorization from the object. Additionally, when obtaining separate authorization from the object, the purpose of the relevant data is explained to the object.
[0089] Please see Figure 2 This is a schematic flowchart illustrating a matching processing method proposed in an embodiment of this application. This matching processing method can be executed by a computer device, which may be one of the aforementioned... Figure 1 The terminal device mentioned above can also be the aforementioned Figure 1 The server in the middle. For example... Figure 2 As shown, the method may include:
[0090] S201, Obtain the first object and the second object belonging to the target feature group; the first object and the second object belong to different object types.
[0091] The target feature group is any one of the multiple feature groups obtained after the computer device performs feature group division. In one embodiment, the multiple feature groups obtained can be divided according to the covariates (and object features) and covariate values (i.e., feature values of object features) involved in object matching under the corresponding test scenario. If the test scenario is to test whether the update of a certain application is abnormal, then the covariates involved in the test scenario may include viewing duration, geographical location difference, device difference, etc. The covariate value corresponding to the covariate of viewing duration can be multiple, such as 58, 68, etc. The covariate value corresponding to the covariate of geographical location difference can be location 1, location 2, and location 3, etc., and the covariate value corresponding to the covariate of device difference can be type A device, type B device, etc.
[0092] Taking viewing duration and geographical location difference as examples of covariates to be matched, viewing durations with different covariate values and geographical location differences with different covariate values can be randomly combined to obtain different covariate groups (i.e., feature groups). In one embodiment, a viewing duration of 58 and a geographical location of location 1 can be used as one covariate group. To reduce the overhead of combining different covariate groups and to reduce the number of covariate groups, the computer device can divide covariates with many covariate values according to the range of the corresponding covariate values, and then combine them based on the range division. This effectively reduces the number of covariate groups obtained by combination, reduces the storage pressure on the computer device, and also effectively reduces the computing resources required for the computer device to perform grouping processing.
[0093] In one embodiment, if the covariate value corresponding to viewing duration ranges from 0 to infinity, then this covariate value can be divided into three ranges: 0–100, 100–1000, and greater than 1000. These three ranges can then be combined with the covariate values of other covariates to obtain multiple covariate sets. For example, combining these three ranges with two covariate values from the device difference covariate yields six covariate sets.
[0094] Generally, when a covariate is discrete, meaning its value is discrete rather than continuous, the number of possible values for that covariate is typically finite. Discrete covariates can be exemplified by differences in equipment or geographical location, as mentioned earlier. Conversely, if a covariate is continuous, meaning its value is continuous, the number of possible values for that continuous covariate is infinite. Continuous covariates can be exemplified by viewing duration, as mentioned earlier. Therefore, to reduce the number of covariate pairs obtained by combining continuously valued covariates, the continuous covariates can be divided into ranges. This transforms the continuous covariates into discrete covariates within different ranges, effectively reducing the number of covariates obtained and saving computing resources.
[0095] When converting continuous covariates into discrete covariates, a computer device can divide the range of values of the continuous covariate based on its value range, and then use each of the divided ranges as a discrete value of the continuous covariate. In one embodiment, the computer device can divide the range of values of the continuous covariate based on a matching step size. For example, when dividing the range of values of the continuous covariate of viewing time, the matching step size can be set to 100. Then, the viewing time can be divided into three value ranges: 0 to 100, 100 to n*100, and greater than n*100. These three value ranges are then used as discrete values of the viewing time, where n is a positive integer greater than or equal to 1.
[0096] In another implementation, when classifying the range of values for continuous covariates, the computer device can also classify the range based on propensity score and matching step size. In one embodiment, the propensity score is used to indicate the probability of a corresponding object undergoing a version update in an application testing scenario after comprehensively considering various covariate factors. Therefore, the formula propensity score / matching step size can be used to calculate the range classification method for the continuous covariate, and the resulting range of values can be used as the discrete values of the continuous covariate.
[0097] By converting continuous covariates into discrete covariates, computer devices can group multiple offline covariates to obtain corresponding covariate groups. This enables the computer devices to match multiple continuous and discrete covariates, thereby achieving correct classification of related objects based on discrete covariates. This ensures that the feature values of related objects strictly correspond to the discrete covariates of the corresponding feature groups, thus improving the matching processing method for business scenarios involving discrete covariates.
[0098] After the computer device obtains multiple feature groups, the objects contained in the object set (i.e., the target object set) involved in the current test scenario can be divided into different feature groups, and any feature group that has been divided into objects can be used as the target feature group.
[0099] In one embodiment, when performing object partitioning, the computer device may first obtain a target object set, which includes at least one first object and at least one second object; then, the computer device may group the objects included in the target object set according to the object characteristics of each object in the target object set to obtain at least one feature group; wherein, the target feature group is any one of the at least one feature group obtained.
[0100] Following this object partitioning method, if objects belonging to any feature group share the same object characteristics, the computer device can obtain the object characteristics of the objects contained in any feature group and use these object characteristics as the grouping value of that feature group. Then, the computer device can perform a hash calculation on the grouping value to obtain a group hash, and associate and store any feature group and the objects belonging to that feature group based on the group hash. The number of object characteristics (i.e., covariate values) contained in any feature group can be one or more. When a feature group contains only one object characteristic, the hash value obtained by hashing that object characteristic is the hash value for that single object characteristic. For example, if the object characteristic in a feature group is position 1, then the grouping value for that feature group is the hash calculation result of position 1, which is equal to hash(position 1). When a feature group contains at least two object characteristics, then the grouping value for that feature group is the hash calculation result of these two object characteristics. For example, if the grouping value of a feature group is position 1 (viewing duration is) 0-100, then the grouping value for that feature group is hash(position 1, 0-100).
[0101] Below, in conjunction with Figure 3a The present application describes the process by which a computer device divides a set of target objects into different feature groups based on feature values (i.e., covariate values) in the embodiments of this application. The computer device may be... Figure 3a The device marked with 30, if the target object set contains 1000 objects, including 100 first objects (experimental group objects) and 900 second objects (control group objects), and the feature groups are assumed to be the aforementioned 6 feature groups: x1+y1, x1+y2, x1+y3, x2+y1, x2+y2, x2+y3, and the grouping values corresponding to these 6 feature groups are assumed to be A, B, C, D, E, and F, then the result of dividing these 1000 objects into different feature groups based on their respective feature values is as follows: Figure 3a The results are shown in the figure marked with 31.
[0102] In one embodiment, to further improve the matching efficiency of the computer, the computer device may use multi-threading to group and count the target user set obtained by the computer device, thereby determining the number of objects contained in each feature group. Below, in conjunction with... Figure 3b The process of using two threads to perform grouped counting for computer devices is explained.
[0103] like Figure 3bAs shown, after the computer device acquires 1000 objects, the computing power of the two threads that perform group counting based on the computer device is used to determine the number of objects that each thread can process (the number of the first object and the number of the second object are determined separately). Then, threads 1 and 2 can be called to identify the feature values of the corresponding objects in parallel, thereby dividing the 1000 objects into different feature groups.
[0104] Based on the computer device's division of acquired objects into different feature groups, any feature group can be used as a target feature group. The first and second objects belonging to this target feature group are then acquired. Based on the encoding rules corresponding to the target feature group, the first and second objects in the target feature group are encoded, thus proceeding to step S202. Note that, due to the computer device's grouping of objects, the number of first and / or second objects in a certain group may be zero. Figure 3b In the computer device in thread 1, the number of second objects in the feature group with a grouping value of E is 0. For example... Figure 3b In the computer device, under thread 1, the number of the first object and the second object in the feature group corresponding to group value F is 0. However, in this embodiment, for the convenience of subsequent explanation of the encoding matching process, the case where the target feature group contains both the first object and the second object is described. When the number of the first object and / or the second object in the target feature group is 0, the computer device can directly determine that there are no matching first and second objects in the target feature group, and set the encoding value of the corresponding object in the target feature group to 0 (or other fixed value). The object with a value of 0 (or other fixed value) is determined to be an object that cannot be matched.
[0105] S202, Obtain the encoding rules associated with the target feature group; the encoding rules associated with the target feature group include: the value range when encoding the first object and the second object in the target feature group.
[0106] S203, according to the value range, encode the first object in the target feature group to obtain the first encoded data, and encode the second object in the target feature group to obtain the second encoded data.
[0107] In steps S202 and S203, when the computer device encodes the first object and the second object in the target feature group, it may use an encoding rule associated with the target feature group to encode the values. In one embodiment, the encoding rule associated with the target feature group defines the range of encoded values for the objects in the target feature group, the mapping relationship for encoding the first object and the second object in the target feature group, and the different identifiers added to the encoded values of the first object and the second object of different object types.
[0108] The value range defined by this encoding rule constrains the maximum and minimum values during encoding. Generally, the minimum value of this range is 0 or the maximum value based on the value range defined by other encoding rules. Specifically, when the target feature group is the first feature group to be encoded, the minimum value of the value range defined by the corresponding encoding rule for that target feature group is 0. However, when the target feature group is not the first feature group to be encoded, the minimum value of the value range defined by the corresponding encoding rule is determined based on the maximum value of the value range of other feature groups that have already been encoded. For example, if the maximum value of the value range of other feature groups that have already been encoded is 252, then the minimum value of the value range for the target feature group can be 256, 258, 300, etc. In other words, the value ranges defined by the encoding rules associated with different feature groups do not overlap.
[0109] The maximum value of the range is determined based on the number of object pairs that can be contained in the target feature group. In a specific implementation, when the number of the first object and the number of the second object contained in the target feature group are both multiple, the computer device can obtain the number of the first object and the number of the second object contained in the target feature group, and determine the minimum value of the number of the first object and the number of the second object as the target value. Then, the minimum value of the range of values contained in the encoding rule corresponding to the target feature group can be obtained, and the sum of the minimum value of the range and the target value is taken as the maximum value of the range of values contained in the encoding rule corresponding to the target feature group. For example, if the target feature group contains 317 first objects and 252 second objects, the computer device determines that the minimum value between the number of first objects (317) and the number of second objects (252) in the target feature group is 252. This means the target feature group can support a maximum of 252 matching pairs. Therefore, when encoding the target feature group, if the minimum value of the encoding rule corresponding to the target feature group is determined to be 0, then the maximum value of the encoding rule corresponding to the target feature group is 252. In other words, the value range defined by the encoding rule corresponding to the target feature group is 0 to 252. Conversely, if the minimum value of the encoding rule corresponding to the target feature group is m (m > 0 and is a positive integer), then the maximum value of the encoding rule corresponding to the target feature group is m + 252. Therefore, the value range defined by the encoding rule corresponding to the target feature group is m to m + 252.
[0110] Furthermore, the mapping relationship defined by this encoding rule is used to indicate the corresponding values of different feature values of an object during encoding. Through this mapping relationship, the encoded value of the corresponding feature value can be determined from the value range corresponding to the encoding rule. For example, if the value range defined by the encoding rule is 0-252, and the target feature group contains object features of geographical location and viewing duration, then this mapping relationship can specify the value corresponding to the geographical location value of location 1 and viewing duration of 1 in the value range, for example, 8; and specify the value corresponding to the geographical location value of location 1 and viewing duration of 2 in the value range, for example, 9; and specify the value corresponding to the geographical location value of location 2 and viewing duration of 1 in the value range, and so on. In addition, this mapping relationship is also used to correspond the same feature value of the first and second objects in the target feature group to the same value in the value range, while different feature values correspond to different values.
[0111] The encoding rule defines the addition of identifiers as follows: A first identifier is added to the encoded value of the first object, and a second identifier is added to the encoded value of the second object. The first object can be an experimental group object, in which case the first identifier is a positive sign (+), and the second object can be a control group object, in which case the second identifier is a negative sign (-). For example, if the object at position 1 with a viewing duration of 1 is the first object, its corresponding first encoded data is +8; if the object is the second object, its corresponding second encoded data is -8.
[0112] According to the value range, mapping relationship, and identifier addition definition in the encoding rules, when the computer device encodes the first object in the target feature group according to the value range to obtain the first encoded data, it can first obtain the object features of the first object in the target feature group, and select the first value corresponding to the object features of the first object from the value range according to the mapping relationship contained in the encoding rules; then, a first identifier can be added to the selected first value, and the first value with the added first identifier can be used as the first encoded data of the first object in the target feature group. For the second object in the target feature group, the object features of the second object can be encoded to obtain the second value, and the second value with the added second identifier becomes the second encoded data of the second object.
[0113] When there are multiple first objects and multiple second objects in the target feature group, the computer device encodes the first objects in the target feature group according to the value range to obtain first encoded data, and encodes the second objects in the target feature group to obtain second encoded data. Then, according to the value range, the target number of first objects and second objects in the target feature group can be determined. Then, any first object in the target number can be encoded to obtain first encoded data, and any second object in the target number can be encoded to obtain second encoded data.
[0114] According to the encoding rules associated with the target feature group, the computer device can encode the first object and the second object with the same feature value into the same encoding value and add different identifiers. Then, when the computer device performs object matching, it can determine the first object and the second object with the same encoding value but different identifiers as mutually matching objects.
[0115] Specifically, if the target feature group contains multiple first objects, namely Object 1, Object 2, and Object 3, where Object 1 has a feature value of position 1 and viewing duration of 25, Object 2 has a feature value of position 1 and viewing duration of 30, and Object 3 has a feature value of position 2 and viewing duration of 25; and the target feature group contains multiple second objects, namely Object 4, Object 5, and Object 6, where Object 4 has a feature value of position 1 and viewing duration of 25, Object 5 has a feature value of position 2 and viewing duration of 33, and Object 6 has a feature value of position 2 and viewing duration of 50, then according to this encoding rule, Object 1 and Object 4 correspond to the same feature value. Therefore, the encoding value of Object 1 is the same as that of Object 4, but they correspond to positive and negative signs respectively.
[0116] S204, based on the encoding values of the first encoded data and the second encoded data, perform matching processing on the first object and the second object; the encoding values of the first object and the second object that match each other are the same.
[0117] Based on the encoding processing of the first and second objects in the target feature group, the computer device can perform matching processing based on the encoded values of the first and second encoded data, and determine the first and second objects with the same values as a matching object group. Based on the determined matching object group, the computer device can perform product testing within that object group. That is, the computer device considers the matched object group to be homogeneous objects. Therefore, product testing based on homogeneous objects can effectively control the variables affecting the test results, thereby ensuring the accuracy of the test results.
[0118] In one embodiment, assuming the encoding rule associated with the target feature group specifies a value range of 5, and assuming the target feature group contains 7 first objects and 5 second objects, based on the mapping relationship and identifiers defined by the encoding rule, assuming the first encoded data obtained by encoding the 7 first objects in the target feature group is: +1, +2, +2, +3, +4, +0, +0, and the second encoded data obtained by encoding the 5 second objects in the target feature group is: -1, -3, -4, -4, -5, then, based on the values of the first and second encoded data, it can be determined that the values of the encoded data corresponding to +1 and -1 are the same, but the identifiers are different, so these two first objects and second objects are matched. Furthermore, the two first objects and second objects corresponding to the values of +3 and -3 are also matched, as are the two first objects and second objects corresponding to the values of +4 and -4.
[0119] In this embodiment, when matching objects in a target object set, the computer device can divide the objects in the target object set into different feature groups, and then encode the first and second objects in any target feature group respectively, thereby completing object matching in the target feature group based on the encoding results. When matching objects in a target feature group, the objects in the target feature group can first be encoded based on the encoding rules associated with that target feature group. Since the encoding rules associated with the target feature group map objects containing the same feature value to the same value when encoding corresponding objects, objects containing the same feature value can be encoded into encoded data with the same value based on the encoding rules associated with the target feature group. Furthermore, the encoding rules associated with the target feature group also specify different identifiers to be added to the first and second objects of different object types in the target feature group. In other words, when encoding the objects in the target feature group according to the encoding rules, not only can the codes containing the same object feature be mapped to the same value, but corresponding identifiers can also be added to the corresponding code values based on the object type. Thus, after the computer device completes the encoding, it can directly determine whether the feature values of two objects in the target feature group are the same and whether they belong to different object types based on the corresponding values of the encoded data. In this way, objects that belong to different object types but have the same feature value can be identified as matching objects. Based on this encoding matching method, when each object contains multiple different features, the division of feature groups enables the computer device to transform the matching process of a large number of scattered objects into a feature matching process of objects under a certain feature group, thereby achieving an initial simplification of the object matching process. In addition, based on the encoding processing of the feature values of the objects, the feature matching process for objects is also transformed into a comparison process of encoded values and corresponding identifiers, achieving an effective transformation of the feature matching process. Thus, the computer device can effectively improve the object matching efficiency of the computer device while ensuring matching accuracy.
[0120] In one embodiment, the first and second objects belonging to the target feature group are determined by the computer cluster from the target object set. The computer cluster includes at least a first node and a second node. The first node is used to process the first subset of objects in the target object set, and the second node is used to process the second subset of objects in the target object set. That is, when performing object matching on objects in the target object set, it can also be implemented based on the computer cluster. That is, each object in the target object set is assigned to each node of the computer cluster, so that each node can divide the objects in the corresponding object subset into different feature groups based on the feature values of the first and second objects contained in the assigned object subset, and use each feature group as the target feature group, so as to perform the object matching process in each feature group. The object matching process performed by each node in the computer cluster in each feature group is the process of steps S201 to S204 mentioned above.
[0121] A computer cluster containing at least a first node and a second node is a distributed structure, and its architecture diagram can be shown as follows: Figure 4a As shown, the computer cluster contains N node devices from the first node to the Nth node, where N is a positive integer greater than 1. The nodes in the computer cluster can communicate through the cloud, which can also be a central node. That is, the nodes in the computer cluster can also communicate through a central node. This ensures that when different nodes in the computer device encode objects of a certain feature group, the same feature value under the feature group is mapped to the same encoded value, while the encoding rules used for different feature groups are different.
[0122] When the computer cluster contains a first node and a second node, after obtaining the target object, the computer cluster can call the first node to group the objects contained in the first object subset according to the object characteristics of each object in the first object subset, and obtain at least one feature subgroup; call the second node to group the objects contained in the second object subset according to the object characteristics of each object in the second object subset, and obtain at least one feature subgroup; wherein, the first object subset and the second object subset constitute the aforementioned target object set. Then, feature subgroups with the same grouping value can be determined from the feature subgroups obtained by the first node and the second node respectively, and the objects in the feature subgroups with the same grouping value can be merged based on the object type to obtain at least one feature group.
[0123] In one embodiment, the set of target objects processed by the computer cluster can be, for example, the aforementioned Figure 3a and Figure 3bThe target object set processed by the computer cluster comprises 1000 objects, and the aforementioned computer device can be any node in the computer cluster, which is not limited in this embodiment. For ease of subsequent explanation, the target object set processed by the computer cluster will be 3000 objects, consisting of 300 first objects (i.e., experimental group objects or treatment group objects) and 2700 second objects (control group objects). Therefore, when the computer cluster includes first and second nodes, the process of grouping the target object set by the computer cluster can be as follows: Figure 4b As shown, and specifically perform the following steps:
[0124] (1) The first node in the computer cluster performs feature recognition on the first subset of the target objects and divides them into the corresponding groups based on the results;
[0125] Suppose that the objects in the first object subset are divided into group A1 and group B2 respectively based on the results of feature recognition.
[0126] (2) The second node in the computer cluster performs feature recognition on the second subset of the target object set and divides it into the corresponding group according to the results;
[0127] Suppose that the objects in the second object subset are divided into group A2 and group B2 respectively based on the results of feature recognition.
[0128] (3) Merge the objects of group A1 and group A2 to form the objects of feature group A, and merge the objects of group B1 and group B2 to form the objects of feature group B. Then, the target feature group is either feature group A or feature group B.
[0129] In one embodiment, each node in the computer cluster contains at least one processing thread. At least one processing thread on any node is used to acquire object characteristics in parallel, and based on these acquired characteristics, group the corresponding objects and perform subsequent encoding and value retrieval. Therefore, the object grouping process can be executed in parallel by multiple nodes using multiple threads. Figure 4b Taking a scenario where both the first and second nodes contain two threads, the process of grouping objects by multi-node, multi-threaded execution can be specifically described as follows: Figure 4c As shown. Figure 4c As shown, each thread on each node in a computer cluster can acquire the object features of an object in parallel for identification and classify the corresponding object into a corresponding feature group. Based on communication between nodes, objects with the same feature group can be merged, and the target feature group is any one of the final merged feature groups. For example, if... Figure 4cThe number of first and second objects in group A1-1 of thread 1 in the first node is (10, 50), and the number of first and second objects in group A1-2 of thread 2 is (5, 100); the number of first and second objects in group A2-1 of thread 1 in the second node is (2, 100), and the number of first and second objects in group A2-2 of thread 2 is (300, 2); then, the first and second objects contained in group A are finally (317, 252). Therefore, the aforementioned target feature group can be group A containing 317 first objects and 252 second objects respectively.
[0130] In one embodiment, when nodes in a computer cluster determine a corresponding subset from a target object set, the features of each object in the target object set can be stored in the form of a data table. Each object's feature (i.e., covariate) is stored as a row in the data table. Therefore, each node in the computer cluster (which can be multi-threaded and parallel) reads the object features from each row of the data table and groups the objects based on the read object features. In another implementation, each node in the computer cluster can also, based on its own computing power, directly obtain a certain number of object features from the target object set as a corresponding object subset, and then identify and group the features in the object subset in parallel through multi-threading.
[0131] Below, in conjunction with Figure 4d The process of processing target object groups and performing object encoding matching based on computer clusters in the embodiments of this application will be described.
[0132] First, assume the target object set contains 3000 objects, the computer cluster contains node 1 and node 2, and each node contains two threads. If node 1 processes 1000 objects (including 100 first objects and 900 second objects), and node 2 processes 2000 objects (including 200 first objects and 1800 second objects); the covariate 1 involved is geographical location, with corresponding feature values of location 1 (denoted as x1) and location 2 (denoted as x2); the covariate 2 is viewing duration, with corresponding feature values of 0-100 (denoted as y1), 100-1000 (denoted as y2), and >1000 (denoted as y3); then, the resulting covariate set (i.e., feature set) has 6 possible values: x1+y1, x1+y2, x1+y3, x2+y1, x2+y2, and x2+y3.
[0133] Further assuming that the grouping values of the six covariate groups are A, B, C, D, E, and F.
[0134] Based on this assumption, the process by which a computer cluster groups target objects includes the following steps:
[0135] <1> The first and second nodes respectively call multiple threads to read object features from the target object set, and in parallel, based on the object features, divide the corresponding objects into the corresponding covariate groups;
[0136] <2> Each thread of the first and second nodes performs sample counting for each covariate group to determine the number of first objects and the number of second objects contained in each covariate group, respectively.
[0137] <3> The first and second nodes merge the group counts of each thread to obtain the matching count node_match_counts of each node in each group;
[0138] like Figure 4d As shown, the first node, after merging the two threads, has a matching count of (15, 150) in group A, which means that the first node contains a total of 15 first objects and 150 second objects belonging to group A; the second node, after merging the two threads, has a matching count of (302, 102) in group A, which means that the second node contains a total of 302 first objects and 102 second objects belonging to group A.
[0139] <4> The group counts of all nodes in the computer cluster are merged to obtain the total match counts of the target object set in each covariate group, match_counts;
[0140] like Figure 4d As shown, the match counts of the first node (node_match_counts = (15, 150)) and the match counts of the second node (node_match_counts = (302, 102)) are combined to obtain a total match count (match_counts = (315, 252). This total match count (315, 252) indicates that there are 315 first objects and 252 second objects belonging to group A in the target object set.
[0141] The same method is used to calculate the match count (node_match_counts) for each node and the total match count (match_counts) for objects belonging to that covariate group in the target object set. This completes the process of assigning objects in the target object set to different covariate groups.
[0142] After obtaining the total match counts (match_counts) indicating that objects in the target object set belong to each covariate group, the number of supported logs for each group can be obtained. Based on this number of supported logs, the range of values for the encoding rule associated with that group (i.e., covariate group or feature group) can be determined. In one embodiment, if... Figure 4dAs shown, the total matching count of the target object set in group A (i.e., the aforementioned target feature group) is (317, 252). Therefore, the total number of pairs that can be encoded is determined to be 252. In other words, the value range of the encoding rule associated with group A is from the minimum value (assumed to be 0) to the minimum value + 250. If the minimum value of the encoding rule associated with group A is 0, then the corresponding value range is 0 to 252.
[0143] Wherein, if the target object set is as follows Figure 4d If the ratio of the treatment group (experimental group, i.e., the object type of the first object) to the control group (i.e., the object type of the second object) is 1, then the total number of support codes determined based on the total match count (match_counts) satisfies: min(the total number of experimental group objects under the corresponding covariate group, the total number of control group objects under the same covariate group). If the ratio between the treatment group and the control group is k (k>1, and is a positive integer), then the total number of support codes determined based on the total match count (match_counts) satisfies: min(the total number of experimental group objects under the corresponding covariate group, the total number of control group objects under the same covariate group * k).
[0144] After determining the total number of matches supported by each covariate group (i.e., global matching information), the number of objects that need to be encoded on each node of the computer cluster can be determined based on the match count of each node, node_match_counts. For example... Figure 4d As shown, if the total number of pairs is 252 and the match count of the first node is (15, 150), then the match count of the first node can be used as the number of objects to be encoded in the first node. Therefore, the number of objects to be encoded in the second node is (237, 102). Since the second node contains a total of 317 first objects, but only 237 are encoded, the remaining 317 - 237 = 80 first objects are directly encoded as fixed values (e.g., 0), and the objects encoded as fixed values are not matched.
[0145] Using this method, after determining the number of first objects and second objects to be encoded and matched in the first and second nodes, taking the `node_match_counts` of the first node as an example, the first node will determine the encoding value based on the total number of logarithms (252). Then, according to the corresponding mapping relationship, the 15 first objects and 150 second objects contained in the first node will be encoded separately, resulting in the first and second encoded data of the first node. For the second node, the 237 first objects and 102 second objects will be encoded using the same encoding value and mapping relationship, resulting in the first and second encoded data of the second node. Then, by integrating the first encoded data of the first and second nodes, the first encoded data of the first objects in group A (target feature group) is obtained; by integrating the second encoded data of the first and second nodes, the second encoded data of the second objects in group A (target feature group) is obtained, and then matching is performed.
[0146] When encoding and matching in the first and second nodes, object features are identified and retrieved from the data table through multi-threading. After each object is encoded, the number of objects to be encoded in the corresponding node is decremented by one until the required number of objects are encoded.
[0147] In one embodiment, the computer device identifies mutually matching objects as homogeneous objects using this matching method, and then uses these homogeneous objects for business testing. In this case, the first and second objects in the aforementioned target feature group are both objects of the target business scenario, which includes scenarios such as whether the target version of the test application version is abnormal; if the first object corresponds to the target version of the application, and the second object corresponds to a different version of the application; then, based on the identified homogeneous objects, the computer device can determine whether the application version to be tested (i.e., the target version) is abnormal by observing the performance indicators of the homogeneous objects on different test application versions, thereby enabling testing of the application version to be tested when direct experimentation is not possible.
[0148] In one embodiment, the anomaly of the application version under test could be whether data is lost. This would be reflected in the data as a difference in the time spent using the application between the new version (i.e., the target version) and the old version. By identifying homogeneous objects, the influence of covariates (such as geographical location, device differences, activity levels, etc.) can be eliminated. Therefore, the difference in the duration of application use for homogeneous objects can be considered solely due to version variations, thus improving the accuracy of computer device testing.
[0149] Furthermore, since the computer device first groups the objects in the target object set during matching, and then performs encoding matching based on these groups, this grouping and encoding matching process only requires the computer device to traverse the target dataset once for each process, thus reducing data input / output (I / O) time and resource usage. When distinguishing between different covariate groups, the computer device uses the hash results of the corresponding group values for differentiation, further reducing the storage requirements for covariate group identifiers. Moreover, this encoding matching based on objects within covariate groups allows the computer device to directly reference object features for encoding, improving the accuracy of matching homogeneous objects. Furthermore, feature-based encoding matching eliminates the need for expensive join and sorting operations on large datasets, significantly reducing computational overhead. Practical experience shows that the matching time for different numbers of objects is detailed in Table 1 below.
[0150] Table 1
[0151] Number of objects Matching time 100k (thousands) 4.1s 1 million 13.1s 10 million 12.4s 100 million 15.7s
[0152] As shown in Table 1, when the object set contains 100 million objects and corresponds to 10,000 covariate groups, it only takes 15.7 seconds (s) to determine the first and second objects that match each other according to the matching method of the embodiment of this application, which significantly improves the matching efficiency.
[0153] Please see Figure 5 This is a schematic flowchart of a test processing method proposed in an embodiment of this application. This test processing method can be executed by a computer device, which can be one of the aforementioned... Figure 1 The terminal device mentioned above can also be the aforementioned Figure 1 The server in the middle. In addition, this computer device is also the aforementioned... Figure 4a Any node in, such as Figure 4a The first node in the array. For example... Figure 5 As shown, the method may include:
[0154] S501, retrieve the first and second objects that match each other.
[0155] In one embodiment, a computer device obtains two objects that match each other in a first object and a second object target object set. The computer device can divide the objects in the target object set into different feature groups, and after taking any feature group as the target feature group, it matches objects of different object types belonging to the target feature group, thereby obtaining two objects of different object types that match each other.
[0156] The process by which the computer device matches two objects of different types within a target feature set can be detailed in the aforementioned section. Figure 2 The explanation of steps S201 to S204 is that if the first object and the second object belong to the target feature group, after the first object and the second object belonging to the target feature group are encoded according to the value range defined by the encoding rules associated with the target feature group, the encoded value of the first encoded data of the first object is the same as the encoded value of the second encoded data of the second object.
[0157] After obtaining the first and second matching objects, the computer device considers them to be homogeneous objects, meaning they are objects that differ only in version under the current test scenario, while other object information (such as the object's geographical location, device model, etc.) is the same. Therefore, after obtaining the first and second matching objects, the computer device can determine the abnormal conditions of the application under test in the target version based on the running status of different versions of the application under test using these two matching objects, and then proceed to step S502.
[0158] S502, obtain the first running result obtained by the first object after running the first version of the application, and the second running result obtained by the second object after running the second version of the application; wherein, the first version is the target version to be tested, and the second version is not the target version.
[0159] S503, based on the first and second running results, determine the application test results for the first version.
[0160] In steps S502 and S503, after the computer device identifies the matching first object and second object, it can further obtain the first running result obtained by the first object running the first version of the application, and the second running result obtained by the second object running the second version of the application. Here, the first version is the target version to be tested, while the second version is not the target version. Therefore, if the target version to be tested is the latest version, the second version is an older version prior to the latest version.
[0161] Generally, older versions of applications are considered to be free of anomalies, while the latest version is an optimized and updated version based on the older version. Therefore, by running the latest version and the older version of the application on homogeneous objects (i.e., matching first and second objects), the differences in performance between the versions can be effectively demonstrated. Since homogeneous objects are considered to be two identical objects (excluding the difference in the running version), running the new and old versions on the same object on the first and second homogeneous objects effectively shows the different results of the new and old versions. Furthermore, since the older version is considered to be free of anomalies, the computer can determine whether the latest version contains anomalies by running both versions on homogeneous objects.
[0162] In one embodiment, the performance of the old and new versions within a homogeneous object can be represented by a first performance result and a second performance result, respectively. The variables representing these performance results can be one or more of the following: viewing duration, usage duration, number of views, etc. If viewing duration is used as the variable identifying this performance, then the first performance result obtained by the computer device is: the first viewing duration of the first object under the latest version of the application, and the second performance result is: the second viewing duration of the second object under the older version of the application. Therefore, when the computer device subsequently determines the test result for the first version of the application based on the first and second performance results, it can compare the first viewing duration and the second viewing duration to determine the test result of the first version of the application (i.e., the latest version of the application) based on the difference between the first viewing duration and the second viewing duration. This test result reflects whether the latest version of the application has issues such as data loss, application lag, or low interface attractiveness.
[0163] When a computer device obtains the test results of the latest version of an application based on the difference between a first viewing duration and a second viewing duration, in one implementation, the computer device can compare whether the first viewing duration and the second viewing duration are equal. If they are equal, the test results of the latest version of the application are determined to be without anomalies; if they are not equal, the test results of the latest version of the application are determined to be with anomalies. In another implementation, the computer device can compare the difference between the first viewing duration and the second viewing duration, which can be determined by the difference or ratio between the first viewing duration and the second viewing duration. Then, if the difference is less than or equal to a preset difference threshold, the test results of the latest version of the application are determined to be without anomalies; if the difference is greater than the difference threshold, the test results of the latest version of the application are determined to be with anomalies, thereby obtaining the test results for the application.
[0164] In this embodiment, when a computer device needs to test a first version of an application, it can first obtain a first object and a second object that match each other. Then, it can obtain the first running result of the first object running the first version of the application and the second running result of the second object running the second version of the application. Based on the determination of the first and second running results, the computer device can determine the test result for the first version of the application. Since the first object and the second object determined by the computer device are matched, they can be considered as the same two objects. Therefore, the computer device can determine the test result of the application under the latest version based on the running results of the two same objects on different versions of the application. This allows the computer device to complete the test evaluation of the application version even in scenarios where it is not possible to directly experiment with the latest version of the application, thus improving the effectiveness of the test while ensuring the accuracy of the test.
[0165] Please see Figure 6 , Figure 6 This is a schematic diagram of the structure of a matching processing device provided in an embodiment of this application. Figure 6 As shown, the matching processing device may include an acquisition unit 601 and a processing unit 602.
[0166] The acquisition unit 601 is used to acquire a first object and a second object belonging to the target feature group; the first object and the second object belong to different object types.
[0167] The acquisition unit 601 is further configured to acquire the encoding rules associated with the target feature group; the encoding rules associated with the target feature group include: the value range when encoding the first object and the second object in the target feature group;
[0168] The processing unit 602 is configured to encode and extract values for the first object in the target feature group according to the value range to obtain first encoded data, and to encode and extract values for the second object in the target feature group to obtain second encoded data;
[0169] The processing unit 602 is further configured to perform matching processing on the first object and the second object based on the encoding values of the first encoded data and the second encoded data; the encoding values of the first object and the second object that are matched with each other are the same.
[0170] In one embodiment, the acquisition unit 601 is further configured to acquire a target object set, the target object set including at least one first object and at least one second object;
[0171] The processing unit 602 is further configured to group the objects contained in the target object set according to the object characteristics of each object in the target object set, to obtain at least one feature group; wherein the target feature group is any one of the at least one feature group obtained.
[0172] In one embodiment, objects belonging to any feature group contain the same object features; the acquisition unit 601 is further configured to acquire the object features of the objects contained in any feature group, and use the contained object features as the grouping value of the any feature group.
[0173] The processing unit 602 is further configured to perform hash calculation on the grouping value to obtain a group hash, and to associate and store any feature group and objects belonging to any feature group based on the group hash.
[0174] In one embodiment, if the target feature group contains at least one first object and at least one second object, the acquisition unit 601 is further configured to acquire the number of the first object and the number of the second object contained in the target feature group, and determine the minimum value between the number of the first object and the number of the second object as the target value.
[0175] The acquisition unit 601 is further configured to acquire the minimum value of the value range contained in the encoding rule corresponding to the target feature group, and to use the sum of the minimum value of the value range and the target value as the maximum value of the value range contained in the encoding rule corresponding to the target feature group.
[0176] In one embodiment, there are multiple first and second objects in the target feature group; the processing unit 602 is specifically used for:
[0177] According to the value range, determine the target number of encoding values for the multiple first objects and multiple second objects in the target feature group;
[0178] Encode and extract values for any first object of the target quantity to obtain first encoded data, and encode and extract values for any second object of the target quantity to obtain second encoded data.
[0179] In one embodiment, the encoding rule further includes: a mapping relationship for encoding the first object and the second object in the target feature group; the processing unit 602 is specifically used for:
[0180] Obtain the object features of the first object in the target feature group, and select the first value corresponding to the object features of the first object from the value range according to the mapping relationship contained in the encoding rule;
[0181] A first identifier is added to the selected first value, and the first value with the added first identifier is used as the first encoded data of the first object in the target feature group.
[0182] In one embodiment, the mapping relationship is used to: correspond the same feature value of the first object and the second object in the target feature group to the same value in the value range;
[0183] In this context, the object features of the second object in the target feature group are encoded to obtain a second value, and the second value, after adding a second identifier, becomes the second encoded data of the second object.
[0184] In one embodiment, the first object and the second object belonging to the target feature group are determined by a computer cluster from the target object set. The computer cluster includes a first node and a second node. The first node is used to process a first subset of the target object set, and the second node is used to process a second subset of the target object set.
[0185] The processing unit 602 is further configured to call the first node to group the objects contained in the first object subset according to the object characteristics of each object in the first object subset, so as to obtain at least one feature subgroup.
[0186] The processing unit 602 is further configured to call the second node to group the objects contained in the second object subset according to the object characteristics of each object in the second object subset, so as to obtain at least one feature subgroup.
[0187] The processing unit 602 is further configured to determine feature subgroups with the same grouping value from the obtained feature subgroups, and merge the objects in the feature subgroups with the same grouping value based on the object type to obtain at least one feature group.
[0188] In one embodiment, each node in the computer cluster contains at least one processing thread;
[0189] At least one processing thread on any node is used to obtain the object characteristics of an object in parallel, and to encode and extract values for the corresponding object based on the obtained object characteristics.
[0190] In one embodiment, both the first object and the second object are objects of the target business scenario, and the target business scenario includes: a scenario for testing whether the target version of the application version has any abnormalities;
[0191] The first object is the object whose corresponding application version is the target version, and the second object is the object whose corresponding application version is not the target version;
[0192] The object features referenced when encoding values are discrete features, which include at least one of the following: viewing duration, geographical location difference, and device difference.
[0193] In this embodiment, when matching objects in a target object set, the processing unit 602 can divide the objects in the target object set into different feature groups, and then encode the first and second objects in any target feature group respectively, thereby completing object matching in the target feature group based on the encoding results. When matching objects in a target feature group, the acquisition unit 601 can first acquire the encoding rules associated with the target feature group, so that the processing unit 602 can encode the objects in the target feature group. Since the encoding rules associated with the target feature group map objects containing the same object feature value to the same value when encoding the corresponding objects, objects containing the same feature value can be encoded into encoded data with the same value based on the encoding rules associated with the target feature group. Furthermore, the encoding rules associated with the target feature group also specify different identifiers to be added to the first object and the second object of different object types in the target feature group. In other words, when the processing unit 602 encodes the objects in the target feature group according to the encoding rules, it can not only map the same object feature codes to the same value, but also add corresponding identifiers to the corresponding code values based on the object type. Thus, after the computer device completes the encoding, it can directly determine whether the feature values of two objects in the target feature group are the same and whether they belong to different object types based on the corresponding values of the encoded data. In this way, objects that belong to different object types but have the same feature value can be identified as mutually matching objects. Based on this encoding matching method, when each object contains multiple different features, the division of feature groups enables the computer device to transform the matching process of a large number of scattered objects into a feature matching process of objects under a certain feature group, thereby achieving an initial simplification of the object matching process. In addition, based on the encoding processing of the feature values of the objects, the feature matching process for objects is also transformed into a comparison process of encoded values and corresponding identifiers, achieving an effective transformation of the feature matching process. Thus, the computer device can effectively improve the object matching efficiency of the computer device while ensuring matching accuracy.
[0194] Please see Figure 7 , Figure 7 This is a schematic diagram of the structure of a test processing device provided in an embodiment of this application. For example... Figure 7 As shown, the test processing device may include an acquisition unit 701 and a processing unit 702.
[0195] The acquisition unit 701 is used to acquire a first object and a second object that match each other; wherein the first object and the second object belong to a target feature group, and the first object and the second object belonging to the target feature group are encoded and valued according to the value range defined by the encoding rules associated with the target feature group, and the encoded value of the first encoded data of the first object is the same as the encoded value of the second encoded data of the second object.
[0196] The acquisition unit 701 is further configured to acquire a first running result obtained by the first object after running the first version of the application, and a second running result obtained by the second object after running the second version of the application; wherein, the first version is the target version to be tested, and the second version is not the target version;
[0197] The processing unit 702 is used to determine the application test results for the first version based on the first running results and the second running results.
[0198] In this embodiment, when testing the first version of the application is required, the acquisition unit 701 can be invoked to first acquire a matching first object and a matching second object. Then, the acquisition unit 701 can acquire the first running result of the first object running the first version of the application and the second running result of the second object running the second version of the application. Based on the determination of the first and second running results, the processing unit 702 can determine the test result for the first version of the application. Since the first and second objects determined by the processing unit 702 are matching, they can be considered as the same two objects. Therefore, the computer device can determine the test result of the application under the latest version based on the running results of the two identical objects on different versions of the application. This enables the testing and evaluation of the application version in scenarios where it is not possible to directly experiment on the latest version of the application, thus improving the effectiveness of the test while ensuring the accuracy of the test.
[0199] According to one embodiment of this application, Figure 8 The modules in the matching processing device shown can be individually or entirely combined into one or more units, or some of the units can be further divided into multiple functionally smaller sub-units to achieve the same operation without affecting the technical effects of the embodiments of this application. The above modules are based on logical function division. In practical applications, the function of one module can also be implemented by multiple units, or the function of multiple modules can be implemented by one unit. In other embodiments of this application, the matching processing device may also include other units. In practical applications, these functions can also be implemented with the assistance of other units, and can be implemented collaboratively by multiple units.
[0200] In this application embodiment, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.
[0201] According to one embodiment of this application, a computer program capable of executing the steps involved in the corresponding methods shown in the various embodiments of this application can be run on a general-purpose computer device (which may include processing elements and storage elements such as a central processing unit (CPU), random access memory (RAM), and read-only memory (ROM)) to construct, as described in the embodiments of this application. Figure 6 The matching processing apparatus shown. The computer program described above can be recorded on a computer-readable recording medium, and can be loaded into the computer device described above through the computer-readable recording medium and run therein.
[0202] Please see Figure 8 , Figure 8 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. Figure 8 As shown, the computer device 1000 may include a processor 1001, a network interface 1004, and a memory 1005. In some embodiments, the computer device 1000 may also include a user interface 1003 and at least one communication bus 1002. The communication bus 1002 is used to enable communication between these components. The user interface 1003 may include a display screen and a keyboard; optionally, the user interface 1003 may also include a standard wired interface or a wireless interface. The network interface 1004 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface). The memory 1005 may be high-speed RAM or non-volatile memory, such as at least one disk storage device. Optionally, the memory 1005 may also be at least one storage device located remotely from the aforementioned processor 1001. Figure 8 As shown, the memory 1005, which serves as a computer storage medium, may include an operating system, a network communication module, a user interface module, and a device control application program.
[0203] exist Figure 8In the computer device 1000 shown, the network interface 1004 provides network communication functionality; the user interface 1003 is mainly used to provide an input interface for the user; and the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve:
[0204] Obtain the first and second objects belonging to the target feature group; the first and second objects belong to different object types.
[0205] Obtain the encoding rules associated with the target feature group; the encoding rules associated with the target feature group include: the value range when encoding the first object and the second object in the target feature group;
[0206] According to the value range, the first object in the target feature group is encoded to obtain the first encoded data, and the second object in the target feature group is encoded to obtain the second encoded data;
[0207] Based on the encoded values of the first encoded data and the second encoded data, a matching process is performed on the first object and the second object; the encoded values of the first object and the second object that match each other are the same.
[0208] In one embodiment, the processor 1001 can be used to invoke a device control application stored in the memory 1005 to achieve:
[0209] Obtain a target object set, wherein the target object set contains at least one first object and at least one second object;
[0210] Based on the object characteristics of each object in the target object set, the objects contained in the target object set are grouped to obtain at least one feature group; wherein, the target feature group is any one of the at least one feature group obtained.
[0211] In one embodiment, objects belonging to any feature group contain the same object characteristics; the processor 1001 can be used to invoke a device control application stored in the memory 1005 to achieve:
[0212] Obtain the object features of the objects contained in any feature group, and use the contained object features as the grouping value of the any feature group;
[0213] The grouping value is hashed to obtain the group hash, and the group hash is used to associate and store any feature group and the objects belonging to the group.
[0214] In one embodiment, if the target feature group includes at least one first object and one second object, the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve:
[0215] Obtain the number of first objects and the number of second objects contained in the target feature group, and determine the minimum value between the number of first objects and the number of second objects as the target value;
[0216] Obtain the minimum value of the value range contained in the encoding rule corresponding to the target feature group, and take the sum of the minimum value of the value range and the target value as the maximum value of the value range contained in the encoding rule corresponding to the target feature group.
[0217] In one embodiment, there are multiple first and second objects in the target feature group; the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve:
[0218] According to the value range, determine the target number of encoding values for the multiple first objects and multiple second objects in the target feature group;
[0219] Encode and extract values for any first object of the target quantity to obtain first encoded data, and encode and extract values for any second object of the target quantity to obtain second encoded data.
[0220] In one embodiment, the encoding rule further includes: a mapping relationship for encoding the first object and the second object in the target feature group; the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve:
[0221] Obtain the object features of the first object in the target feature group, and select the first value corresponding to the object features of the first object from the value range according to the mapping relationship contained in the encoding rule;
[0222] A first identifier is added to the selected first value, and the first value with the added first identifier is used as the first encoded data of the first object in the target feature group.
[0223] In one embodiment, the mapping relationship is used to: correspond the same feature value of the first object and the second object in the target feature group to the same value in the value range;
[0224] In this context, the object features of the second object in the target feature group are encoded to obtain a second value, and the second value, after adding a second identifier, becomes the second encoded data of the second object.
[0225] In one embodiment, the first and second objects belonging to the target feature group are determined by a computer cluster from a target object set. The computer cluster includes a first node and a second node. The first node processes a first subset of the target object set, and the second node processes a second subset of the target object set. The processor 1001 can be used to call a device control application stored in the memory 1005 to achieve:
[0226] The first node is invoked to group the objects contained in the first object subset according to the object characteristics of each object in the first object subset, so as to obtain at least one feature subgroup.
[0227] The second node is invoked to group the objects contained in the second object subset according to the object characteristics of each object in the second object subset, so as to obtain at least one feature subgroup;
[0228] From the obtained feature subgroups, identify the feature subgroups that belong to the same grouping value, and merge the objects in the feature subgroups with the same grouping value based on the object type to obtain at least one feature group.
[0229] In one embodiment, each node in the computer cluster contains at least one processing thread;
[0230] At least one processing thread on any node is used to obtain the object characteristics of an object in parallel, and to encode and extract values for the corresponding object based on the obtained object characteristics.
[0231] In one embodiment, both the first object and the second object are objects of the target business scenario, and the target business scenario includes: a scenario for testing whether the target version of the application version has any abnormalities;
[0232] The first object is the object whose corresponding application version is the target version, and the second object is the object whose corresponding application version is not the target version;
[0233] The object features referenced when encoding values are discrete features, which include at least one of the following: viewing duration, geographical location difference, and device difference.
[0234] It should be understood that the computer device 1000 described in the embodiments of this application can execute the matching processing method described in the embodiments of this application, and can also execute the foregoing description. Figure 6 The description of the matching processing device in the corresponding embodiments will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated.
[0235] According to one embodiment of this application, Figure 9The modules in the test processing apparatus shown can be individually or entirely combined into one or more units, or some of the units can be further divided into multiple functionally smaller sub-units to achieve the same operation without affecting the technical effects of the embodiments of this application. The above modules are based on logical function division. In practical applications, the function of one module can also be implemented by multiple units, or the function of multiple modules can be implemented by one unit. In other embodiments of this application, the test processing apparatus may also include other units. In practical applications, these functions can also be implemented with the assistance of other units, and can be implemented collaboratively by multiple units.
[0236] In this application embodiment, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.
[0237] According to one embodiment of this application, a computer program capable of executing the steps involved in the corresponding methods shown in the various embodiments of this application can be run on a general-purpose computer device (which may include processing elements and storage elements such as a central processing unit (CPU), random access memory (RAM), and read-only memory (ROM)) to construct, as described in the embodiments of this application. Figure 7 The test processing apparatus shown. The computer program described above can be recorded on a computer-readable recording medium, and can be loaded into the computer device described above through the computer-readable recording medium and run therein.
[0238] Please see Figure 9 , Figure 9 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application, wherein... Figure 9 The computer equipment shown and Figure 8 The computer devices shown can be the same computer device or different computer devices. For example... Figure 9As shown, the computer device 2000 may include a processor 2001, a network interface 2004, and a memory 2005. Furthermore, in some embodiments, the computer device 2000 may also include a user interface 2003 and at least one communication bus 2002. The communication bus 2002 is used to implement communication between these components. The user interface 2003 may include a display screen and a keyboard; optionally, the user interface 2003 may also include a standard wired interface or a wireless interface. The network interface 2004 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface). The memory 2005 may be high-speed RAM or non-volatile memory, such as at least one disk storage device. Optionally, the memory 2005 may also be at least one storage device located remotely from the aforementioned processor 2001. Figure 9 As shown, the memory 2005, which is a computer storage medium, may include an operating system, a network communication module, a user interface module, and a device control application program.
[0239] exist Figure 9 In the computer device 2000 shown, the network interface 2004 provides network communication functionality; the user interface 2003 is mainly used to provide an input interface for the user; and the processor 2001 can be used to call the device control application program stored in the memory 2005 to achieve:
[0240] Obtain a first object and a second object that match each other; wherein the first object and the second object belong to a target feature group, and the first object and the second object belonging to the target feature group are encoded and valued according to the value range defined by the encoding rules associated with the target feature group, and the encoded value of the first encoded data of the first object is the same as the encoded value of the second encoded data of the second object.
[0241] Obtain a first running result obtained by the first object after running the first version of the application, and a second running result obtained by the second object after running the second version of the application; wherein, the first version is the target version to be tested, and the second version is not the target version;
[0242] Based on the first and second running results, the application test results for the first version are determined.
[0243] It should be understood that the computer device 2000 described in the embodiments of this application can execute the matching processing method described in the embodiments of this application, and can also execute the methods described above. Figure 7The description of the test processing apparatus in the corresponding embodiments will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated.
[0244] Furthermore, it should be noted that this application also provides a computer-readable storage medium storing a computer program (including first program instructions and second program instructions). When a processor executes the computer program, it can perform the matching processing methods described in the various embodiments of this application; therefore, they will not be repeated here. Additionally, the beneficial effects of using the same method will also not be repeated. For technical details not disclosed in the embodiments of the computer storage medium involved in this application, please refer to the description of the method embodiments of this application.
[0245] As an example, the aforementioned computer program can be deployed and executed on a single computer device, or deployed and executed on multiple computer devices located in one location, or executed on multiple computer devices distributed across multiple locations and interconnected via a communication network. These multiple computer devices distributed across multiple locations and interconnected via a communication network can form a blockchain network.
[0246] The aforementioned computer-readable storage medium can be an internal storage unit of the computer device, such as a hard drive or memory. It can also be an external storage device, such as a plug-in hard drive, smart media card (SMC), secure digital card (SD) card, or flash card. Furthermore, the computer-readable storage medium can include both internal and external storage units of the computer device. This computer-readable storage medium is used to store the computer program and other programs and data required by the computer device. It can also be used to temporarily store data that has been output or will be output.
[0247] This application provides a computer program product comprising a computer program (including a first computer program and a second computer program) stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium and executes the computer program, causing the computer device to perform the matching processing method described in the embodiments of this application; therefore, it will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated. For technical details not disclosed in the embodiments of the computer-readable storage medium involved in this application, please refer to the description of the method embodiments of this application.
[0248] The terms "first," "second," etc., in the specification, claims, and drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the term "comprising," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, apparatus, product, or device that includes a series of steps or units is not limited to the listed steps or modules, but may optionally include steps or modules not listed, or may optionally include other step units inherent to these processes, methods, apparatuses, products, or devices.
[0249] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this application.
[0250] The above-disclosed embodiments are merely preferred embodiments of this application and should not be construed as limiting the scope of this application. Therefore, any equivalent variations made in accordance with the claims of this application shall still fall within the scope of this application.
Claims
1. A matching processing method characterized by comprising: include: Obtain the first and second objects belonging to the target feature group; the first and second objects belong to different object types. Obtain the encoding rules associated with the target feature group; The encoding rules associated with the target feature group include: the value range when encoding the first object and the second object in the target feature group; According to the value range, the first object in the target feature group is encoded to obtain the first encoded data, and the second object in the target feature group is encoded to obtain the second encoded data; Based on the encoded values of the first encoded data and the second encoded data, a matching process is performed on the first object and the second object; the encoded values of the first object and the second object that match each other are the same.
2. The method of claim 1, wherein, Before obtaining the first and second objects belonging to the target feature group, the method further includes: Obtain a target object set, wherein the target object set contains at least one first object and at least one second object; Based on the object characteristics of each object in the target object set, the objects contained in the target object set are grouped to obtain at least one feature group; wherein, the target feature group is any one of the at least one feature group obtained.
3. The method of claim 2, wherein, Objects belonging to any feature group contain the same object features; the method further includes: Obtain the object features of the objects contained in any feature group, and use the contained object features as the grouping value of the any feature group; The grouping value is hashed to obtain the group hash, and the group hash is used to associate and store any feature group and the objects belonging to the group.
4. The method of claim 1, wherein, If the target feature group contains at least one first object and one second object, the method further includes: Obtain the number of first objects and the number of second objects contained in the target feature group, and determine the minimum value between the number of first objects and the number of second objects as the target value; Obtain the minimum value of the value range contained in the encoding rule corresponding to the target feature group, and take the sum of the minimum value of the value range and the target value as the maximum value of the value range contained in the encoding rule corresponding to the target feature group.
5. The method of claim 1 or 4, wherein, The first and second objects of the target feature group are both multiple; the step of encoding the first object in the target feature group according to the value range to obtain first encoded data, and encoding the second object in the target feature group to obtain second encoded data, includes: According to the value range, determine the target number of encoding values for the multiple first objects and multiple second objects in the target feature group; Encode and extract values for any first object of the target quantity to obtain first encoded data, and encode and extract values for any second object of the target quantity to obtain second encoded data.
6. The method as described in claim 1, characterized in that, The encoding rule further includes: a mapping relationship for encoding the first object and the second object in the target feature group; the step of encoding the first object in the target feature group according to the value range to obtain the first encoded data includes: Obtain the object features of the first object in the target feature group, and select the first value corresponding to the object features of the first object from the value range according to the mapping relationship contained in the encoding rule; A first identifier is added to the selected first value, and the first value with the added first identifier is used as the first encoded data of the first object in the target feature group.
7. The method as described in claim 6, characterized in that, The mapping relationship is used to: correspond the same feature value of the first object and the second object in the target feature group to the same value in the value range; In this context, the object features of the second object in the target feature group are encoded to obtain a second value, and the second value, after adding a second identifier, becomes the second encoded data of the second object.
8. The method as described in claim 1, characterized in that, The first and second objects belonging to the target feature group are determined by a computer cluster from the target object set. The computer cluster includes a first node and a second node. The first node processes a first subset of the target object set, and the second node processes a second subset of the target object set. The method further includes: The first node is invoked to group the objects contained in the first object subset according to the object characteristics of each object in the first object subset, so as to obtain at least one feature subgroup. The second node is invoked to group the objects contained in the second object subset according to the object characteristics of each object in the second object subset, so as to obtain at least one feature subgroup; From the obtained feature subgroups, identify the feature subgroups that belong to the same grouping value, and merge the objects in the feature subgroups with the same grouping value based on the object type to obtain at least one feature group.
9. The method as described in claim 8, characterized in that, Each node in the computer cluster contains at least one processing thread; At least one processing thread on any node is used to obtain the object characteristics of an object in parallel, and to encode and extract values for the corresponding object based on the obtained object characteristics.
10. The method as described in claim 1, characterized in that, Both the first object and the second object are objects of the target business scenario, which includes: a scenario for testing whether the target version of the application version has any abnormalities; The first object is the object whose corresponding application version is the target version, and the second object is the object whose corresponding application version is not the target version; The object features referenced when encoding values are discrete features, which include at least one of the following: viewing duration, geographical location difference, and device difference.
11. A test processing method, characterized in that, include: Obtain a first object and a second object that match each other; wherein the first object and the second object belong to a target feature group, and the first object and the second object belonging to the target feature group are encoded and valued according to the value range defined by the encoding rules associated with the target feature group, and the encoded value of the first encoded data of the first object is the same as the encoded value of the second encoded data of the second object. Obtain a first running result obtained by the first object after running the first version of the application, and a second running result obtained by the second object after running the second version of the application; wherein, the first version is the target version to be tested, and the second version is not the target version; Based on the first and second running results, the application test results for the first version are determined.
12. A matching processing apparatus, characterized in that, include: The acquisition unit is used to acquire a first object and a second object belonging to the target feature group; the first object and the second object belong to different object types. The acquisition unit is further configured to acquire the encoding rules associated with the target feature group; the encoding rules associated with the target feature group include: the value range when encoding the first object and the second object in the target feature group; The processing unit is configured to encode and extract values for a first object in the target feature group according to the value range to obtain first encoded data, and to encode and extract values for a second object in the target feature group to obtain second encoded data; The processing unit is further configured to perform matching processing on the first object and the second object based on the encoding values of the first encoded data and the second encoded data; the encoding values of the first object and the second object that are matched with each other are the same.
13. A test processing apparatus, characterized in that, include: An acquisition unit is used to acquire a first object and a second object that match each other; wherein the first object and the second object belong to a target feature group, and the first object and the second object belonging to the target feature group are encoded and valued according to the value range defined by the encoding rules associated with the target feature group, and the encoded value of the first encoded data of the first object is the same as the encoded value of the second encoded data of the second object. The acquisition unit is further configured to acquire a first running result obtained by the first object after running the first version of the application, and a second running result obtained by the second object after running the second version of the application; wherein, the first version is the target version to be tested, and the second version is not the target version; The processing unit is configured to determine the application test results for the first version based on the first running results and the second running results.
14. A computer device, characterized in that, The system includes a processor, an input device, an output device, and a memory, wherein the processor, the input device, the output device, and the memory are interconnected, and the memory is used to store a computer program, the computer program including a first program instruction and a second program instruction, the processor being configured to call the first program instruction to execute the method as described in any one of claims 1 to 10, and the processor being configured to call the second program instruction to execute the method as described in claim 11.
15. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a first computer program and a second computer program; The first computer program includes first program instructions, which, when executed by a processor, cause the processor to perform the method as described in any one of claims 1 to 10; The second computer program includes second program instructions that, when executed by a processor, cause the processor to perform the method as described in claim 11.
16. A computer program product, characterized in that, The computer program product includes a first computer program and a second computer program. The first computer program includes a first program instruction. When the first program instruction is invoked by a processor, it causes the processor to execute the method as described in any one of claims 1 to 10. The second computer program includes second program instructions that, when invoked by a processor, cause the processor to perform the method as described in claim 11.