Data filtering method, device, equipment, medium and product

By configuring filtering rule messages on the data sending client and sending them to the middleware server, the problem of inflexible data filtering in the middleware architecture is solved, and flexibility and efficiency are improved, reducing communication costs.

CN120256167APending Publication Date: 2025-07-04INFORMATION2 SOFTWARE SHANGHAI
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510488774.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-18
Publication Date
2025-07-04

AI Technical Summary

Technical Problem

In the middleware architecture, data filtering can only be configured on the server side, resulting in inflexible filtering, and requires multiple communications with the sending side to increase communication costs.

Method used

The data sending client configures filtering rule messages and sends them to the middleware server, so that the server can filter data according to the rules, including generating configuration files and data serialization structures, methods and rules.

Benefits of technology

It realizes the flexibility and efficiency of data filtering, reduces the communication costs with the server, and meets personalized filtering needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120256167A_ABST
    Figure CN120256167A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a data filtering method and device, equipment, a medium and a product, the method is applied to a data sending client, and the method comprises the steps that configuration item information associated with a data filtering configuration operation is acquired based on the data filtering configuration operation, and the configuration item information corresponds to a data serialization structure, a data serialization method and a data filtering rule; generating a configuration file of the data filtering rule configuration item according to the configuration item information; and generating a data filtering rule message based on the configuration file, and sending the data filtering rule message to the middleware server, so that the middleware server performs data filtering according to the data filtering rule message. According to the technical scheme, the problem that current data filtering is not flexible is solved, the filtering rule message can be configured at the data sending client side and sent to the middleware server side, the middleware server side conducts data filtering according to the filtering rule message, the data filtering flexibility is high, the communication cost is reduced, and the filtering effect is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present invention relate to the field of computer technology, and in particular, to a data filtering method, device, equipment, medium and product. Background Art

[0002] In the current architecture using middleware, data filtering can only configure filtering services on the server side of the middleware. The data filtering is not flexible enough, and multiple communications with the sending end are required during the configuration process, resulting in high communication costs. Summary of the Invention

[0003] Embodiments of the present invention provide a data filtering method, device, equipment, medium and product, which can configure a filtering rule message on the data sending client and send it to the middleware server, so that the middleware server filters data according to the filtering rule message, with strong data filtering flexibility, reduced communication costs, and improved filtering effects.

[0004] In a first aspect, an embodiment of the present invention provides a data filtering method, which is applied to a data sending client, and the method includes:

[0005] Based on a data filtering configuration operation, obtain configuration item information associated with the data filtering configuration operation, where the configuration item information corresponds to a data filtering rule configuration item, and the data filtering rule configuration item includes a data serialization structure, a data serialization method, and a data filtering rule;

[0006] According to the configuration item information, generate a configuration file of the data filtering rule configuration item in a preset data exchange format;

[0007] Generate a data filtering rule message based on the configuration file, and send the data filtering rule message to the middleware server, so that the middleware server filters data according to the data filtering rule message.

[0008] In a second aspect, an embodiment of the present invention provides a data filtering method, which is applied to a middleware server, and the method includes:

[0009] When obtaining a data filtering rule message sent by a data sending client, parse the data filtering rule message to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client;

[0010] When obtaining a data acquisition request for corresponding first data sent by a data request end, deserialize the first data according to the data serialization structure and the data serialization method to obtain second data, where the first data is data sent by the data sending client after sending the data filtering rule message;

[0011] Filter the second data according to the data filtering rule to obtain the third data.

[0012] In a third aspect, an embodiment of the present invention provides a data filtering device, which is applied to a data sending client. The device includes:

[0013] A configuration item information acquisition module, configured to acquire configuration item information associated with a data filtering configuration operation based on the data filtering configuration operation, where the configuration item information corresponds to a data filtering rule configuration item, and the data filtering rule configuration item includes a data serialization structure, a data serialization method, and a data filtering rule;

[0014] A configuration file generation module, configured to generate a configuration file of the data filtering rule configuration item according to the configuration item information in a preset data exchange format;

[0015] A data filtering rule message sending module, configured to generate a data filtering rule message based on the configuration file and send the data filtering rule message to the middleware server, so that the middleware server filters data according to the data filtering rule message.

[0016] In a fourth aspect, an embodiment of the present invention provides a data filtering device, which is applied to a middleware server. The device includes:

[0017] A data filtering rule message parsing module, configured to parse the data filtering rule message to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client when the data filtering rule message sent by the data sending client is obtained;

[0018] A data deserialization module, configured to deserialize the first data according to the data serialization structure and data serialization method to obtain the second data when a data acquisition request for the corresponding first data sent by the data request end is obtained, where the first data is the data sent by the data sending client after sending the data filtering rule message;

[0019] A data filtering module, configured to filter the second data according to the data filtering rule to obtain the third data.

[0020] In a fifth aspect, an embodiment of the present invention further provides a computer device, which includes:

[0021] One or more processors;

[0022] A memory, configured to store one or more programs;

[0023] When the above one or more programs are executed by the above one or more processors, the above one or more processors implement the data filtering method provided in any embodiment of the present invention.

[0024] In a sixth aspect, an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, it implements the data filtering method provided in any embodiment of the present invention.

[0025] In a seventh aspect, an embodiment of the present invention further provides a computer program product, including a computer program, and when the computer program is executed by a processor, it implements the data filtering method provided in any embodiment of the present invention.

[0026] The embodiments in the above-mentioned invention have the following advantages or beneficial effects:

[0027] In the embodiment of the present invention, by performing a data filtering configuration operation, configuration item information associated with the data filtering configuration operation is obtained, where the configuration item information corresponds to a data filtering rule configuration item, and the data filtering rule configuration item includes a data serialization structure, a data serialization method, and a data filtering rule; according to the configuration item information, a configuration file of the data filtering rule configuration item is generated in accordance with a preset data exchange format; a data filtering rule message is generated based on the configuration file and sent to the middleware server, so that the middleware server performs data filtering according to the data filtering rule message. The technical solution of the embodiment of the present invention solves the problem of inflexible current data filtering. It is possible to configure a filtering rule message at the data sending client and send it to the middleware server, so that the middleware server performs data filtering according to the filtering rule message. The data filtering is highly flexible, reducing communication costs and improving the filtering effect. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] Figure 1 is a flowchart of a data filtering method provided by an embodiment of the present invention;

[0029] Figure 2 is a flowchart of a data filtering method provided by an embodiment of the present invention;

[0030] Figure 3 is a flowchart of a data filtering method provided by an embodiment of the present invention;

[0031] Figure 4 is a schematic diagram of a binary tree provided by an embodiment of the present invention;

[0032] Figure 5 is a flowchart of a data filtering method provided by an embodiment of the present invention;

[0033] Figure 6 is a schematic structural diagram of a data filtering device provided by an embodiment of the present invention;

[0034] Figure 7 is a schematic structural diagram of a data filtering device provided by an embodiment of the present invention;

[0035] Figure 8 It is a schematic structural diagram of a computer device provided by an embodiment of the present invention. Detailed implementation manners

[0036] The present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It can be understood that the specific embodiments described herein are only used to explain the present invention, rather than limiting the present invention. Additionally, it should be noted that for the sake of description, only parts related to the present invention rather than all structures are shown in the accompanying drawings.

[0037] Figure 1 It is a flowchart of a data filtering method provided by an embodiment of the present invention. This embodiment is applicable to the scenario of data filtering. This method can be executed by a data filtering device, and this device can be implemented in a software and / or hardware manner and integrated into a data sending client.

[0038] As Figure 1 shown, the data filtering method of this embodiment includes the following steps:

[0039] S110. Based on a data filtering configuration operation, obtain configuration item information associated with the data filtering configuration operation.

[0040] Among them, the configuration item information corresponds to a data filtering rule configuration item, and the data filtering rule configuration item includes a data serialization structure, a data serialization method, and a data filtering rule.

[0041] When a data sending client needs to send data, it is usually necessary to filter the original data according to certain rules and then send it to the data request party. However, the current filtering rules can only be configured on the middleware server, and a large amount of communication with the data sending client is required during the configuration process, and the configuration method is very inflexible.

[0042] Therefore, in this embodiment, a configuration interface can be provided on the data sending client, enabling users to configure the data filtering rule configuration items through the configuration interface. The data sending client obtains the configuration item information associated with the data filtering configuration operation based on the obtained data filtering configuration operation. For example, the configuration interface can provide a form containing at least one configuration item information of the data filtering rule configuration item. Users can select the configuration item information corresponding to the data filtering rule configuration item by selecting list items in a drop-down menu list, or entering text or code in an input box, or checking checkboxes, radio boxes, etc.

[0043] A data serialization structure can be a way of organizing data when converting a data object into a byte stream or other transportable and storable format. In this embodiment, the data serialization structure can be a data organization method based on the Json structure. A data serialization method can be a specific operation method for converting a data object into a storable or transportable format. A data filtering rule can be a condition for filtering data, and the data to be retained and discarded can be determined through data filtering. In this embodiment, data filtering can determine the data that can be sent to the data acquisition end.

[0044] Exemplarily, the configuration item information of the data serialization structure can include the structure name, the names and data types of the member variables of the structure, etc. The configuration item information of the data serialization method can include the name of the data serialization method, such as the Avro method of Apache Avro. Apache Avro is a system for data serialization and remote procedure calls, with rich functions and methods, including data serialization and deserialization. The configuration item information of the data filtering rule can include the variable information constituting the filtering rule.

[0045] S120. Generate a configuration file for the data filtering rule configuration item according to the configuration item information in accordance with a preset data exchange format.

[0046] The preset data exchange format can be the Json format. According to the configuration item information and a preset code template, a configuration file for the filtering rule configuration item in the Json format is generated.

[0047] Exemplarily, the code template corresponding to the configuration item information of the data serialization method is: serialType: "", where serialType represents the name of the data serialization method. If the configuration item information of the data serialization method is Avro, the code content in the configuration file of the data serialization method is: serialType: "Avro".

[0048] The configuration item information of the data serialization structure can be in the form of C / C++ code, and the C / C++ code can be converted into the Json format through a C language Json parser and generator to obtain the configuration file of the data serialization structure.

[0049] S130. Generate a data filtering rule message based on the configuration file and send the data filtering rule message to the middleware server so that the middleware server filters data according to the data filtering rule message.

[0050] It is possible to integrate data from multiple configuration files, convert the integrated configuration file into a string form according to the syntax rules of Json, and obtain a data filtering rule message. The data filtering rule message is sent to the middleware server, so that when the data request end requests data, the middleware server can parse according to the data filtering rule message to obtain a data serialization structure, a data serialization method, and a data filtering rule, and then filter the data sent by the data sending client according to the data serialization structure, the data serialization method, and the data filtering rule. In this embodiment, after the filtering rule message is sent, there is no need to communicate with the middleware server about the remaining data filtering configurations, reducing the communication cost with the middleware server.

[0051] In an alternative embodiment, the configuration item information corresponding to the data filtering rule includes the configuration item information of the data filtering sub-rules included in the data filtering rule; wherein, the configuration item information of the data filtering sub-rules includes the variable names and preset matching values of the first filtering variable and the second filtering variable associated with the filtering process of the data filtering sub-rule, the preset matching rule configuration information associated with the second filtering variable, and the preset filtering operation on the filtered result data. The filtered result data is the data obtained after the data sent to the middleware server passes through the filtering process of the data filtering sub-rule.

[0052] The preset matching value includes the matching value of the first filtering variable and the matching value of the second filtering variable. The data filtering rule may include at least one data filtering sub-rule, the first filtering variable, and the matching value corresponding to the first filtering variable, which can indicate the middleware server to determine the data that needs to be filtered in the data sent by the data client. The data that needs to be filtered may be the structure data whose value of the first filtering variable is equal to the matching value.

[0053] The second filtering variable, the matching value corresponding to the second filtering variable, and the preset matching rule configuration information associated with the second filtering variable form a filtering matching condition. The filtered result data is determined according to the filtering matching condition. The filtered result data includes the data that satisfies the filtering matching condition and the data that does not satisfy the filtering matching condition. According to the preset filtering operation, the filtering operations on the data that satisfies the filtering matching condition and the data that does not satisfy the filtering matching condition are determined, such as deletion, retention, and continuing to filter according to the next data filtering sub-rule, etc.

[0054] The technical solution of this embodiment obtains the configuration item information associated with the data filtering configuration operation through the data filtering configuration operation. Among them, the configuration item information corresponds to the data filtering rule configuration item, and the data filtering rule configuration item includes the data serialization structure, the data serialization method, and the data filtering rule; according to the configuration item information, a configuration file of the data filtering rule configuration item is generated in accordance with a preset data exchange format; a data filtering rule message is generated based on the configuration file, and the data filtering rule message is sent to the middleware server so that the middleware server performs data filtering according to the data filtering rule message. The technical solution of the embodiment of the present invention solves the problem of inflexible data filtering at present. The filtering rule message can be configured on the data sending client and sent to the middleware server, so that the middleware server performs data filtering according to the filtering rule message, with strong data filtering flexibility, reduced communication costs, and improved filtering effects.

[0055] Figure 2 FIG. is a flowchart of a data filtering method provided by an embodiment of the present invention. This embodiment is applicable to the scenario of data filtering. This method can be executed by a data filtering device, and the device can be implemented in a software and / or hardware manner and integrated into the middleware server.

[0056] As Figure 2 shown, the data filtering method of this embodiment includes the following steps:

[0057] S210. When a data filtering rule message sent by a data sending client is obtained, the data filtering rule message is parsed to obtain the data serialization structure, the data serialization method, and the data filtering rule of the data sending client.

[0058] There can be multiple data sending clients. Each data sending client can generate a data filtering rule message according to its own data filtering requirements and send it to the middleware server, so that the middleware server, after receiving the data sent by the data sending client, deserializes and filters the data according to the data serialization structure, the data serialization method, and the data filtering rule in the data filtering rule message.

[0059] Exemplarily, when a data filtering rule message in the form of a string sent by a data sending client is obtained, the data filtering rule message is parsed to obtain the data serialization structure, the data serialization method, and the data filtering rule in a preset data exchange format such as the Json format.

[0060] S220. When a data acquisition request for the corresponding first data sent by a data request end is obtained, the first data is deserialized according to the data serialization structure and the data serialization method to obtain the second data.

[0061] Among them, the first data is the data sent by the data sending client after sending the data filtering rule message. In this embodiment, the data sending client can first send a data filtering rule message including the data serialization structure, the data serialization method, and the data filtering rule to the middleware server, and then send the first data to be filtered to the middleware server. When the middleware server obtains a data acquisition request corresponding to the first data sent by the data request end, it can filter the received first data according to the data filtering rule message. When the data sending client has a new data filtering requirement, the client only needs to resend the updated data filtering rule message to the middleware server. For the same data filtering requirement, the data sending client and the middleware server do not need to communicate multiple times for filtering requirement configuration during the data filtering process, and only need to send the data filtering rule message once. By filtering data according to the data filtering rule messages sent by different data sending clients, this embodiment can meet the filtering requirements of diverse clients and improve flexibility.

[0062] In this embodiment, the type of the data serialization method is not limited and can be the Avro method of Apache Avro. The data serialization structure can be a data serialization structure including the structure definition, including the name and data type of the structure. According to the data serialization structure and the data serialization method, the first data is deserialized to obtain the second data, which can be to deserialize the first data into a structure data corresponding to the data serialization structure according to the deserialization method corresponding to the data serialization method and the data serialization structure. The structure data can be, for example, table data, and the first data can be deserialized into at least one table. When the number of tables is at least two, the structure of each table is the same, that is, the structure defined in the data serialization structure.

[0063] S230. Filter the second data according to the data filtering rule to obtain the third data.

[0064] The data filtering rule can include at least one data filtering sub-rule. According to the preset filtering order, the second data is matched according to the data filtering sub-rules in the data filtering rule, and the data that matches successfully and unsuccessfully is subjected to preset filtering operations such as deletion, retention, and continuing to enter the next data filtering sub-rule in the preset filtering order for matching. After the filtering process of the last data filtering sub-rule is completed, the third data is obtained.

[0065] In the technical solution of this embodiment, when a data filtering rule message sent by a data sending client is obtained, the data filtering rule message is parsed to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client; when a data acquisition request for corresponding first data sent by a data request client is obtained, the first data is deserialized according to the data serialization structure and data serialization method to obtain second data, where the first data is the data sent by the data sending client after sending the data filtering rule message; and the second data is filtered according to the data filtering rule to obtain third data. The technical solution of the embodiment of the present invention solves the problem of inflexible current data filtering. The data sent by the data sending client can be filtered through the filtering rule message sent by the data sending client, and the data filtering is highly flexible, reducing the communication cost with the data sending client in data filtering and meeting the personalized data filtering requirements of different data sending clients.

[0066] Figure 3 FIG. is a flowchart of a data filtering method provided by an embodiment of the present invention. This embodiment and the data filtering method in the second embodiment above belong to the same inventive concept and further describe the process of data deserialization. This method can be executed by a data filtering device, which can be implemented in a software and / or hardware manner and integrated into a middleware server.

[0067] As Figure 3 shown, the data filtering method of this embodiment includes the following steps:

[0068] S310. When a data filtering rule message sent by a data sending client is obtained, the data filtering rule message is parsed to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client.

[0069] S320. When a data acquisition request for corresponding first data sent by a data request client is obtained, a binary tree corresponding to the data serialization structure is generated according to each variable in the data serialization structure.

[0070] Wherein, the first data is the data sent by the data sending client after sending the data filtering rule message.

[0071] In the case of obtaining a data acquisition request corresponding to the first data sent by the data request end, a binary tree corresponding to the data serialization structure is generated according to each variable in the data serialization structure. The variables include structure variables and non-structure variables. A structure variable is a variable containing at least two member variables, and the member variables can be nested structure variables or non-structure variables. The non-structure variables can be basic data type variables, such as int (integer), float (single-precision floating-point number), char (character), and bool (Boolean value), etc.

[0072] A binary tree corresponding to the data serialization structure can be generated according to the inclusion relationship between the variables.

[0073] In an alternative embodiment, the data serialization structure includes a first structure. The first structure includes non-structure variables and / or structure variables nested in the first structure. Generating a binary tree corresponding to the data serialization structure according to each variable in the data serialization structure may include the following steps A1 - A3:

[0074] Step A1: Determine the structure variables and non-structure variables in the data serialization structure.

[0075] For example, in the data serialization structure "struct row{string op;string a;};struct table{uint8_t a;uint32_t b;row i;}" in the C++ code defined by the data sending client, where row and table are structure variables, table is the first structure variable, row i is the structure variable nested in table, and uint8_t a and uint32_t b are non-structure variables in table. Converting the C++ code into a Json format data serialization structure, that is, the data serialization structure obtained by the middleware server parsing the data filtering rule message is "meta:{a:\"uint8_t\",b:\"uint32_t\",i:{op:\"string\",a:\"string\",}}", meta corresponds to table, and the data serialization structure obtained by parsing the data filtering rule message is defined in the format of Json data name: "data type".

[0076] Step A2: Determine the left subtree node and the right subtree node according to the non-structure variables, structure variables, and member variables in the structure variables.

[0077] It is determined that the non-structure variables in the first structure meta are a of uint8_t type and b of uint32_t type, the structure variable is i, and the member variables in the structure variable i are op of string type and a of string type.

[0078] Determine the left subtree node and right subtree node of each variable in the binary tree. For each variable, if the variable itself is a non-struct variable, then use the next variable defined in the first struct as the right subtree node of this variable. If the variable itself is a struct variable, then use the first member variable defined in this variable as the left subtree node of this variable. As Figure 4 shown, for example, in the binary tree of meta, according to the defined order, the first binary tree node is a: uint8_t. Since a: uint8_t is a non-struct variable, use the next variable b: uint32_t of a: uint8_t as the right subtree node of a: uint8_t. Similarly, use the next variable i of b: uint32_t as the right subtree node of b: uint32_t. Since the variable i is a struct variable, the first member variable op: string of the variable i needs to be used as the left subtree node of i, and the next variable a: string of op: string is used as the right subtree node of op: string.

[0079] Step A3: Generate a binary tree of the corresponding data serialization structure according to the left subtree node and right subtree node.

[0080] As Figure 4 shown, generate a binary tree of the corresponding data serialization structure according to the left subtree node and right subtree node of each variable.

[0081] S330: Deserialize the first data according to the binary tree and the data serialization method to obtain the second data.

[0082] In this embodiment, the defined order of the variables in the data serialization structure is the same as the order of the variables during data serialization, which is convenient for the middleware server to perform deserialization, extract data for filtering, that is, according to the data serialization method, the attribute value sequence corresponding to the first data, and the order of the attribute values in the attribute value sequence corresponds to the order of the variables corresponding to the attribute values in the data serialization structure.

[0083] Traverse the binary tree. Every time a non-struct variable is traversed, the non-struct variable is associated with the attribute value in the attribute value sequence. Loop this process until all the variables corresponding to the attribute values are determined to obtain the second data.

[0084] In an alternative embodiment, according to the binary tree and the data serialization method, the first data is deserialized to obtain the second data, which may be that the first data is deserialized according to the data serialization method to obtain the fourth data; the binary tree is in-order traversed, and the first nodes corresponding to the non-struct variables and all levels of non-struct member variables nested in the struct variables in the binary tree are matched with the data items in the fourth data to obtain the second data; wherein, the second data includes at least one struct data corresponding to the data serialization structure.

[0085] According to the data serialization method, the first data is deserialized to obtain the fourth data, and the fourth data is a sequence of attribute values. For example, when in-order traversing the binary tree as Figure 4 shown, the in-order traversal order is left subtree - root node - right subtree, and the traversal result is a: uint8_t, b: uint32_t, op: string, a: string, i: row. The attribute values of the struct variable i: row are not corresponded. Then, if the fourth data, that is, the sequence of attribute values or the sequence of data items, is 1, 10, 13, 5, 6, 2, 9, 14, the attribute value corresponding to a: uint8_t in the first struct data, that is, the data item, is 1, and the attribute value corresponding to b: uint32_t in the second struct data is 2. It should be noted that in this embodiment, only non-struct variables, that is, the first nodes corresponding to the non-struct variables at the highest level in the binary tree and all levels of non-struct member variables nested in the struct variables at the same level as the non-struct variables, can be matched with the data items in the fourth data, that is, the attribute values.

[0086] S340. Filter the second data according to the data filtering rule to obtain the third data.

[0087] In the technical solution of this embodiment, when a data filtering rule message sent by a data sending client is obtained, the data filtering rule message is parsed to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client; when a data acquisition request for corresponding first data sent by a data request client is obtained, a binary tree corresponding to the data serialization structure is generated according to each variable in the data serialization structure; where the first data is the data sent by the data sending client after sending the data filtering rule message; the first data is deserialized according to the binary tree and the data serialization method to obtain second data; and the second data is filtered according to the data filtering rule to obtain third data. The technical solution of the embodiment of the present invention solves the problem of inflexible current data filtering. It can deserialize and filter the data sent by the data sending client through the filtering rule message sent by the data sending client, with strong data filtering flexibility, reducing the communication cost with the data sending client in data filtering, and meeting the personalized data filtering requirements of different data sending clients.

[0088] Figure 5 FIG. 4 is a flowchart of a data filtering method provided by an embodiment of the present invention. This embodiment and the data filtering method integrated in the middleware server in the above embodiment belong to the same inventive concept, and further describes the process of data filtering. This method can be executed by a data filtering device, and the device can be implemented in a software and / or hardware manner and integrated into the middleware server.

[0089] As Figure 5 shown, the data filtering method of this embodiment includes the following steps:

[0090] S410. When a data filtering rule message sent by a data sending client is obtained, the data filtering rule message is parsed to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client.

[0091] S420. When a data acquisition request for corresponding first data sent by a data request client is obtained, the first data is deserialized according to the data serialization structure and the data serialization method to obtain second data.

[0092] Where the first data is the data sent by the data sending client after sending the data filtering rule message.

[0093] S430. For any data filtering sub-rule, the second data is matched according to the matching condition in the data filtering sub-rule to obtain fifth data that matches successfully and sixth data that fails to match in the second data.

[0094] The data filtering rule includes at least one data filtering sub-rule.

[0095] The data filtering sub - rule includes a first filtering variable and a second filtering variable. According to the first filtering variable and the preset matching value corresponding to the first filtering variable, for the structural data in the second data that contains data items identical to the preset matching value, the data that needs to be filtered is determined. Through the second filtering variable, the preset matching value corresponding to the second filtering variable, and the preset matching rule, the data item corresponding to the second filtering variable in the data that needs to be filtered is matched with the preset matching value corresponding to the second filtering variable to determine the fifth data with successful matching and the sixth data with failed matching.

[0096] S440. According to the preset first filtering operation and the preset second filtering operation corresponding to the fifth data and the sixth data respectively in the data filtering sub - rule, filter the fifth data and the sixth data until the filtering process corresponding to all the data filtering sub - rules is completed to obtain the third data.

[0097] It can be understood that for data with different matching results, different filtering operations can be taken, that is, the preset first filtering operation and the preset second filtering operation, until the filtering process corresponding to all the data filtering sub - rules is completed to obtain the third data.

[0098] The preset first filtering operation and / or the preset second filtering operation includes determining the fifth data and / or the sixth data as the data that needs to be sent to the data acquisition end; deleting the fifth data and / or the sixth data; and continuing to filter the fifth data and / or the sixth data according to the next data filtering sub - rule of the data filtering sub - rule. For example, if the preset second filtering operation corresponding to the sixth data of the data filtering sub - rule rule1 is to continue filtering according to the next data filtering sub - rule of the data filtering sub - rule, then the filtering process corresponding to rule2 is performed on the sixth data.

[0099] In an alternative embodiment, the second data is matched according to the matching conditions in the data filtering sub - rules to obtain the fifth data that matches successfully and the sixth data that fails to match in the second data. Specifically, the preset first matching variable value of the first filtering variable in the data filtering sub - rules is compared with the first filtering variable value corresponding to the first filtering variable in the second data to obtain a comparison result; the first filtering variable value that is the same as the preset first matching variable value in the comparison result is used as the second filtering variable value, and the first structure data corresponding to the second filtering variable value in the second data is determined; according to the preset second matching variable value and the preset matching rule of the second filtering variable in the data filtering sub - rules, a matching analysis is performed on the third filtering variable value corresponding to the second filtering variable in the first structure data to determine the second structure data that matches successfully and the third structure data that fails to match; the second structure data is used as the fifth data that matches successfully in the second data, and the third structure data is used as the sixth data that fails to match in the second data.

[0100] For example, the data filtering sub - rule is "rule: [{id: \"0\", / / Rule serial number id

[0101] type: \"map\", / / Indicates that the rule uses the map form and is also stored in map on the server - side

[0102] ktype: \"uint32_t\",

[0103] kname: \"b\",

[0104] vtype: \"string\",

[0105] vname: \"i.a\", / / Name, different levels need to be separated by \".\"

[0106] kvalue: [\"10\", \"100\", \"1000\"],. / / Key value

[0107] vvalue: [\"20\", \"200\", \"2000\"], / / Value value

[0108] cmp: \"000\", / / Matching method, such as greater than, less than, equal to, greater than or equal to, less than or equal to, represented by numbers 0, 1, 2, 3, 4, and the number of digits is equal to the number of values in value

[0109] success: \"0\", / / Operation when matching the current rule successfully, 0 means forward, 1 means discard, 2 means continue to match the next one, 3 means terminate

[0110] failed: "1" / / Operation when matching fails. 0 means forwarding, 1 means discarding, 2 means continuing to match the next one, 3 means terminating

[0111] }, ],}”

[0112] Table 1 shows the meanings of each field in the rule.

[0113] Table 1

[0114]

[0115]

[0116] The middleware server stores the data filtering rules according to the data storage types used in the data filtering sub - rules, such as map or set types. For example, if the storage structure is map, fill in the key - value pairs of the configuration items for each data filtering sub - rule in the map, that is, the key - value pairs of the configuration items in Table 1, and store the data filtering sub - rules.

[0117] After the data filtering sub - rules are stored, when filtering, for the preset first matching variable value kvalue of the first filtering variable k in the data filtering sub - rules, the preset first matching variable value can be one or more and is given in the form of an array. Compare kvalue: ["10", "100", "1000"] with the first filtering variable value corresponding to the first filtering variable in the second data, that is, compare with the attribute value corresponding to uint32_b, to obtain the comparison result.

[0118] In the comparison result, use the first filtering variable value that is the same as the preset first matching variable value ["10", "100", "1000"] as the second filtering variable value, and determine the first structure data corresponding to the second filtering variable value in the second data. That is, use the variable values of uint32_b = 10, uint32_b = 100, and uint32_b = 1000 as the second filtering variable values, and determine the structure data including the second filtering variable value as the first structure data.

[0119] According to the preset second matching variable value vvalue: ["20", "200", "2000"] and the preset matching rule cmp: "000" of the second filtering variable v in the data filtering sub - rules, perform a matching analysis on the third filtering variable value corresponding to the second filtering variable vname: "i.a" in the first structure data, to determine the successfully - matched second structure data and the unsuccessfully - matched third structure data; use the second structure data as the fifth data successfully matched in the second data, and use the third structure data as the sixth data unsuccessfully matched in the second data.

[0120] Filter the fifth data and the sixth data according to the preset first filtering operation success corresponding to the fifth data and the preset second filtering operation failed corresponding to the sixth data.

[0121] It should be noted that when there are multiple preset first matching variable values, for the first structure data determined according to different preset first matching variable values, when performing the matching operation related to the second filtering variable, the corresponding matching is performed through different preset second matching variable values at the same position. For example, for the first structure data with kvalue of 100, the matching rule is whether vvalue is greater than 200. The matching rule of "greater than" is determined by the second 0 in cmp: "000", where 0 represents greater than.

[0122] In the operations of success or failed, accept means determining the fifth data and / or the sixth data as the data to be sent to the data acquisition end, drop means deleting the fifth data and / or the sixth data, abort means aborting the filtering, and continue means continuing to filter the fifth data and / or the sixth data according to the next data filtering sub-rule of the data filtering sub-rules.

[0123] In the technical solution of this embodiment, when a data filtering rule message sent by a data sending client is obtained, the data filtering rule message is parsed to obtain the data serialization structure, data serialization method, and data filtering rules of the data sending client; when a data acquisition request for corresponding first data sent by a data request client is obtained, the first data is deserialized according to the data serialization structure and data serialization method to obtain second data; where the first data is the data sent by the data sending client after sending the data filtering rule message; for any one data filtering sub-rule, the second data is matched according to the matching condition in the data filtering sub-rule to obtain fifth data that matches successfully and sixth data that fails to match in the second data; according to the preset first filtering operation and preset second filtering operation corresponding to the fifth data and the sixth data respectively in the data filtering sub-rule, filtering operations are performed on the fifth data and the sixth data until the filtering process corresponding to all data filtering sub-rules is completed to obtain third data; where the preset first filtering operation and / or preset second filtering operation includes: determining the fifth data and / or the sixth data as the data to be sent to the data acquisition end; and deleting the fifth data and / or the sixth data; and continuing to filter the fifth data and / or the sixth data according to the next data filtering sub-rule of the data filtering sub-rule. The technical solution of the embodiment of the present invention solves the problem of inflexible current data filtering. The filtering rules can be parsed from the filtering rule message sent by the data sending client, and the data sent by the data sending client can be filtered according to the filtering rules. The data filtering is highly flexible, and the filtering rules include a complete filtering process, reducing the communication cost with the data sending client in data filtering and meeting the personalized data filtering requirements of different data sending clients.

[0124] Figure 6 FIG. is a schematic structural diagram of a data filtering device provided by an embodiment of the present invention. This embodiment is applicable to the scenario of data filtering. The data filtering device can be implemented in software and / or hardware and integrated into the data sending client.

[0125] As Figure 6 shown, the data filtering device includes: a configuration item information acquisition module 510, a configuration file generation module 520, and a data filtering rule message sending module 530.

[0126] Among them, the configuration item information acquisition module 510 is used to obtain the configuration item information associated with the data filtering configuration operation based on the data filtering configuration operation. The configuration item information corresponds to the data filtering rule configuration item, and the data filtering rule configuration item includes the data serialization structure, the data serialization method, and the data filtering rule. The configuration file generation module 520 is used to generate a configuration file for the data filtering rule configuration item according to the configuration item information in a preset data exchange format. The data filtering rule message sending module 530 is used to generate a data filtering rule message based on the configuration file and send the data filtering rule message to the middleware server, so that the middleware server performs data filtering according to the data filtering rule message.

[0127] The technical solution of this embodiment obtains the configuration item information associated with the data filtering configuration operation by means of the data filtering configuration operation. The configuration item information corresponds to the data filtering rule configuration item, and the data filtering rule configuration item includes the data serialization structure, the data serialization method, and the data filtering rule. A configuration file for the data filtering rule configuration item is generated according to the configuration item information in a preset data exchange format. A data filtering rule message is generated based on the configuration file and sent to the middleware server, so that the middleware server performs data filtering according to the data filtering rule message. The technical solution of the embodiment of the present invention solves the problem of inflexible current data filtering. The filtering rule message can be configured on the data sending client and sent to the middleware server, so that the middleware server performs data filtering according to the filtering rule message. The data filtering is highly flexible, the communication cost is reduced, and the filtering effect is improved.

[0128] In an optional implementation manner, the configuration item information corresponding to the data filtering rule includes the configuration item information of the data filtering sub-rule included in the data filtering rule. The configuration item information of the data filtering sub-rule includes the variable names and preset matching values of the first filtering variable and the second filtering variable associated with the filtering process of the data filtering sub-rule, the preset matching rule configuration information associated with the second filtering variable, and the preset filtering operation on the filtered result data. The filtered result data is the data obtained after the data sent to the middleware server passes through the filtering process of the data filtering sub-rule.

[0129] The data filtering device provided by the embodiment of the present invention can execute the data filtering method provided by the embodiment of the present invention integrated in the data sending client, and has the corresponding functional modules and beneficial effects of the execution method.

[0130] Figure 7 It is a schematic structural diagram of a data filtering device provided by an embodiment of the present invention. This embodiment is applicable to the scenario of data filtering. The data filtering device can be implemented in a software and / or hardware manner and integrated into the middleware server.

[0131] As shown Figure 7 in FIG. 1, the data filtering device includes: a data filtering rule message parsing module 610, a data deserialization module 620, and a data filtering module 630.

[0132] Among them, the data filtering rule message parsing module 610 is configured to parse the data filtering rule message to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client when the data filtering rule message sent by the data sending client is obtained; the data deserialization module 620 is configured to deserialize the first data according to the data serialization structure and data serialization method to obtain the second data when the data acquisition request for the corresponding first data sent by the data request end is obtained, where the first data is the data sent by the data sending client after sending the data filtering rule message; the data filtering module 630 is configured to filter the second data according to the data filtering rule to obtain the third data.

[0133] The technical solution of this embodiment, by parsing the data filtering rule message when the data filtering rule message sent by the data sending client is obtained, obtains the data serialization structure, data serialization method, and data filtering rule of the data sending client; when the data acquisition request for the corresponding first data sent by the data request end is obtained, deserializes the first data according to the data serialization structure and data serialization method to obtain the second data, where the first data is the data sent by the data sending client after sending the data filtering rule message; filters the second data according to the data filtering rule to obtain the third data. The technical solution of the embodiment of the present invention solves the problem of inflexible current data filtering, can filter the data sent by the data sending client through the filtering rule message sent by the data sending client, has strong data filtering flexibility, reduces the communication cost with the data sending client in data filtering, and meets the personalized data filtering requirements of different data sending clients.

[0134] In an optional implementation manner, the data deserialization module 620 is specifically configured to:

[0135] generate a binary tree corresponding to the data serialization structure according to each variable in the data serialization structure; deserialize the first data according to the binary tree and the data serialization method to obtain the second data.

[0136] In an optional implementation manner, the data deserialization module 620 is further configured to:

[0137] Identify the structure variables and non-structure variables in the data serialization structure; determine the left subtree nodes and right subtree nodes according to the non-structure variables, structure variables, and member variables in the structure variables; generate a binary tree corresponding to the data serialization structure according to the left subtree nodes and right subtree nodes.

[0138] In an alternative embodiment, the data deserialization module 620 is further configured to:

[0139] Deserialize the first data according to the data serialization method to obtain the fourth data; perform an in-order traversal of the binary tree, and match the first nodes corresponding to the non-structure variables and all levels of non-structure member variables nested in the structure variables in the binary tree with the data items in the fourth data to obtain the second data; wherein, the second data includes at least one structure data corresponding to the data serialization structure.

[0140] In an alternative embodiment, the data filtering module 630 is specifically configured to:

[0141] For any data filtering sub-rule, match the second data according to the matching condition in the data filtering sub-rule to obtain the fifth data that matches successfully and the sixth data that fails to match in the second data;

[0142] According to the preset first filtering operation and the preset second filtering operation corresponding to the fifth data and the sixth data respectively in the data filtering sub-rule, perform filtering operations on the fifth data and the sixth data until the filtering process corresponding to all the data filtering sub-rules is completed to obtain the third data; wherein, the preset first filtering operation and / or the preset second filtering operation includes: determining the fifth data and / or the sixth data as the data to be sent to the data acquisition end; and deleting the fifth data and / or the sixth data; and continuing to filter the fifth data and / or the sixth data according to the next data filtering sub-rule of the data filtering sub-rule.

[0143] In an alternative embodiment, the data filtering module 630 is further configured to:

[0144] Compare the preset first matching variable value of the first filtering variable in the data filtering sub - rule with the first filtering variable value of the corresponding first filtering variable in the second data to obtain a comparison result; use the first filtering variable value that is the same as the preset first matching variable value in the comparison result as the second filtering variable value, and determine the first structure data corresponding to the second filtering variable value in the second data; according to the preset second matching variable value and the preset matching rule of the second filtering variable in the data filtering sub - rule, perform a matching analysis on the third filtering variable value corresponding to the second filtering variable in the first structure data to determine the successfully matched second structure data and the unsuccessfully matched third structure data; use the second structure data as the fifth data successfully matched in the second data, and use the third structure data as the sixth data failed to be matched in the second data.

[0145] The data filtering device provided by the embodiments of the present invention can execute the data filtering method provided by the embodiments of the present invention integrated in the middleware server, and has the corresponding functional modules and beneficial effects of the execution method.

[0146] Figure 8 It is a schematic structural diagram of a computer device provided by an embodiment of the present invention. Figure 8 It shows a block diagram of an exemplary computer device 12 suitable for implementing the embodiments of the present invention. Figure 8 The shown computer device 12 is merely an example and should not impose any limitation on the functions and usage scope of the embodiments of the present invention. The computer device 12 can be any terminal device with computing capabilities, such as intelligent controllers, servers, mobile phones and other terminal devices.

[0147] Such as Figure 8 As shown, the computer device 12 is presented in the form of a general - purpose computing device. The components of the computer device 12 may include, but are not limited to: one or more processors or processing units 16, a system memory 28, and a bus 18 connecting different system components (including the system memory 28 and the processing unit 16).

[0148] The bus 18 represents one or more of several types of bus structures, including a memory bus or a memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the multiple bus structures. For example, these architectures include, but are not limited to, Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MAC) bus, Enhanced ISA bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.

[0149] The computer device 12 typically includes a variety of computer - system - readable media. These media can be any available media that can be accessed by the computer device 12, including volatile and non - volatile media, removable and non - removable media.

[0150] The system memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and / or cache memory 32. The computer device 12 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, the storage system 34 may be used for reading and writing on non-removable, non-volatile magnetic media ( Figure 8 not shown, commonly referred to as a "hard disk drive"). Although Figure 8 not shown in, a disk drive for reading and writing on removable non-volatile disks (such as a "floppy disk") and an optical disk drive for reading and writing on removable non-volatile optical disks (such as CD-ROM, DVD-ROM or other optical media) may be provided. In these cases, each drive may be connected to the bus 18 through one or more data media interfaces. The system memory 28 may include at least one program product having a set (such as at least one) of program modules configured to perform the functions of the embodiments of the present invention.

[0151] A program / utilities 40 having a set (at least one) of program modules 42 may be stored, for example, in the system memory 28. Such program modules 42 include, but are not limited to, an operating system, one or more application programs, other program modules, and program data. Each or some combination of these examples may include an implementation of a network environment. The program modules 42 generally perform the functions and / or methods in the embodiments described in the present invention.

[0152] The computer device 12 may also communicate with one or more external devices 14 (such as a keyboard, a pointing device, a display 24, etc.), and may also communicate with one or more devices that enable a user to interact with the computer device 12, and / or communicate with any device that enables the computer device 12 to communicate with one or more other computing devices (such as a network card, a modem, etc.). Such communication may be carried out through the input / output (I / O) interface 22. Moreover, the computer device 12 may also communicate with one or more networks (such as a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) through the network adapter 20. As shown in the figure, the network adapter 20 communicates with other modules of the computer device 12 through the bus 18. It should be understood that although Figure 8 not shown in, other hardware and / or software modules may be used in conjunction with the computer device 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, etc.

[0153] The processing unit 16 executes various functional applications and data processing by running programs stored in the system memory 28, for example, implementing the data filtering method provided in any embodiment of the present invention. The method integrated into the data sending client includes:

[0154] Based on the data filtering configuration operation, obtain the configuration item information associated with the data filtering configuration operation, where the configuration item information corresponds to the data filtering rule configuration item, and the data filtering rule configuration item includes a data serialization structure, a data serialization method, and a data filtering rule;

[0155] According to the configuration item information, generate a configuration file for the data filtering rule configuration item in accordance with a preset data exchange format;

[0156] Generate a data filtering rule message based on the configuration file, and send the data filtering rule message to the middleware server so that the middleware server filters data according to the data filtering rule message.

[0157] The method integrated into the middleware server includes:

[0158] When obtaining the data filtering rule message sent by the data sending client, parse the data filtering rule message to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client;

[0159] When obtaining a data acquisition request for the corresponding first data sent by the data request end, deserialize the first data according to the data serialization structure and the data serialization method to obtain the second data, where the first data is the data sent by the data sending client after sending the data filtering rule message;

[0160] Filter the second data according to the data filtering rule to obtain the third data.

[0161] An embodiment of the present invention also provides a computer-readable storage medium, on which a computer program is stored. When the program is executed by a processor, it implements the data filtering method provided in any embodiment of the present invention. The method integrated into the data sending client includes:

[0162] Based on the data filtering configuration operation, obtain the configuration item information associated with the data filtering configuration operation, where the configuration item information corresponds to the data filtering rule configuration item, and the data filtering rule configuration item includes a data serialization structure, a data serialization method, and a data filtering rule;

[0163] According to the configuration item information, generate a configuration file for the data filtering rule configuration item in accordance with a preset data exchange format;

[0164] Generate a data filtering rule message based on a configuration file and send the data filtering rule message to a middleware server so that the middleware server filters data according to the data filtering rule message.

[0165] The method integrated in the middleware server includes:

[0166] When a data filtering rule message sent by a data sending client is obtained, parse the data filtering rule message to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client;

[0167] When a data acquisition request for corresponding first data sent by a data request client is obtained, deserialize the first data according to the data serialization structure and data serialization method to obtain second data, where the first data is the data sent by the data sending client after sending the data filtering rule message;

[0168] Filter the second data according to the data filtering rule to obtain third data.

[0169] The computer storage medium of the embodiments of the present invention may adopt any combination of one or more computer-readable media. The computer-readable media may be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples (a non-exhaustive list) of the computer-readable storage medium include: an electrical connection having one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this document, the computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0170] The computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries the computer-readable program code. Such a propagated data signal may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer-readable signal medium may also be any computer-readable medium other than the computer-readable storage medium, which can send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0171] The program code contained on a computer-readable medium can be transmitted with any appropriate medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the above.

[0172] The computer program code for performing the operations of the present invention can be written in one or more programming languages or combinations thereof. The programming languages include object-oriented programming languages such as Java, Smalltalk, Python, C++, and also include conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (e.g., by using an Internet service provider to connect through the Internet).

[0173] An embodiment of the present invention also provides a computer program product, including a computer program which, when executed by a processor, implements the data filtering method provided in any embodiment of the present application.

[0174] In the process of implementing the computer program product, the computer program code for performing the operations of the present invention can be written in one or more programming languages or combinations thereof. The programming languages include object-oriented programming languages such as Java, Smalltalk, Python, C++, and also include conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network - including a local area network (LAN) or a wide area network (WAN) - or can be connected to an external computer (e.g., by using an Internet service provider to connect through the Internet).

[0175] Those of ordinary skill in the art should understand that the above-mentioned modules or steps of the present invention can be implemented by a general-purpose computing device. They can be concentrated on a single computing device or distributed over a network composed of multiple computing devices. Optionally, they can be implemented with program codes executable by a computer device, so that they can be stored in a storage device and executed by the computing device, or they can be separately fabricated into individual integrated circuit modules, or multiple modules or steps among them can be fabricated into a single integrated circuit module for implementation. Thus, the present invention is not limited to any specific combination of hardware and software.

[0176] Note that the above is only a preferred embodiment of the present invention and the technical principles applied. Those skilled in the art will understand that the present invention is not limited to the specific embodiments described herein. Various obvious changes, re-adjustments and substitutions can be made by those skilled in the art without departing from the protection scope of the present invention. Therefore, although the present invention has been described in detail through the above embodiments, the present invention is not limited to the above embodiments. Without departing from the concept of the present invention, more other equivalent embodiments can be included, and the scope of the present invention is determined by the scope of the appended claims.

Claims

1. A data filtering method, characterized in that, Applied to a data sending client, including: Based on data filtering configuration operations, obtain configuration item information associated with the data filtering configuration operations, where the configuration item information corresponds to data filtering rule configuration items, and the data filtering rule configuration items include data serialization structures, data serialization methods, and data filtering rules; According to the configuration item information, generate a configuration file for the data filtering rule configuration items in a preset data exchange format; Generate a data filtering rule message based on the configuration file and send the data filtering rule message to a middleware server so that the middleware server filters data according to the data filtering rule message.

2. The method according to claim 1, characterized in that, The configuration item information corresponding to the data filtering rule includes the configuration item information of the data filtering sub-rules included in the data filtering rule; Among them, the configuration item information of the data filtering sub-rules includes the variable names and preset matching values of the first filtering variable and the second filtering variable associated with the filtering process of the data filtering sub-rules, the preset matching rule configuration information associated with the second filtering variable, and the preset filtering operation on the filtered result data, where the filtered result data is the data obtained after the data sent to the middleware server passes through the filtering process of the data filtering sub-rules.

3. A data filtering method, characterized in that, Applied to a middleware server, including: When obtaining a data filtering rule message sent by a data sending client, parse the data filtering rule message to obtain the data serialization structure, data serialization method, and data filtering rule of the data sending client; When obtaining a data acquisition request for the corresponding first data sent by a data request client, deserialize the first data according to the data serialization structure and the data serialization method to obtain second data, where the first data is the data sent by the data sending client after sending the data filtering rule message; Filter the second data according to the data filtering rule to obtain third data.

4. The method according to claim 3, characterized in that, The deserialize the first data according to the data serialization structure and the data serialization method to obtain second data includes: Generate a binary tree corresponding to the data serialization structure according to each variable in the data serialization structure; Deserialize the first data according to the binary tree and the data serialization method to obtain second data.

5. The method according to claim 4, wherein The data serialization structure includes a first structure, and the first structure includes non-structural variables and / or structural variables nested in the first structure. The generate a binary tree corresponding to the data serialization structure according to each variable in the data serialization structure includes: Determine the structural variables and non-structural variables in the data serialization structure; Determine the left subtree node and the right subtree node according to the non-structural variables, the structural variables, and the member variables in the structural variables; Generate a binary tree corresponding to the data serialization structure according to the left subtree node and the right subtree node.

6. The method according to claim 5, wherein Deserializing the first data according to the binary tree and the data serialization method to obtain second data, including: Deserializing the first data according to the data serialization method to obtain fourth data; Inorder traversing the binary tree, and matching first nodes corresponding to the non-struct variables and all levels of non-struct member variables nested in the struct variables in the binary tree with data items in the fourth data to obtain second data; Wherein, the second data includes at least one struct data corresponding to the data serialization structure.

7. The method according to claim 3, characterized in that, The data filtering rule includes at least one data filtering sub-rule. Filtering the second data according to the data filtering rule to obtain third data, including: For any one of the data filtering sub-rules, matching the second data according to a matching condition in the data filtering sub-rule to obtain fifth data that matches successfully and sixth data that matches unsuccessfully in the second data; According to a preset first filtering operation and a preset second filtering operation corresponding to the fifth data and the sixth data respectively in the data filtering sub-rule, performing filtering operations on the fifth data and the sixth data until the filtering process corresponding to all the data filtering sub-rules is completed to obtain third data; Wherein, the preset first filtering operation and / or the preset second filtering operation includes: Determining the fifth data and / or the sixth data as data to be sent to the data acquisition end; and Deleting the fifth data and / or the sixth data; and Continuing to filter the fifth data and / or the sixth data according to the next data filtering sub-rule of the data filtering sub-rule.

8. The method according to claim 7, characterized in that, Matching the second data according to the matching condition in the data filtering sub-rule to obtain fifth data that matches successfully and sixth data that matches unsuccessfully in the second data, including: Comparing a preset first matching variable value of a first filtering variable in the data filtering sub-rule with a first filtering variable value corresponding to the first filtering variable in the second data to obtain a comparison result; Using the first filtering variable value that is the same as the preset first matching variable value in the comparison result as a second filtering variable value, and determining a first struct data corresponding to the second filtering variable value in the second data; According to a preset second matching variable value and a preset matching rule of the second filtering variable in the data filtering sub-rule, performing matching analysis on a third filtering variable value corresponding to the second filtering variable in the first struct data to determine second struct data that matches successfully and third struct data that does not match successfully; Taking the second struct data as the fifth data that matches successfully in the second data, and taking the third struct data as the sixth data that matches unsuccessfully in the second data.

9. A data filtering device, characterized in that, Applied to a data sending client, including: A configuration item information acquisition module, configured to acquire configuration item information associated with the data filtering configuration operation based on the data filtering configuration operation, where the configuration item information corresponds to a data filtering rule configuration item, and the data filtering rule configuration item includes a data serialization structure, a data serialization method, and a data filtering rule; A configuration file generation module, configured to generate a configuration file for the data filtering rule configuration item according to the configuration item information in a preset data exchange format; A data filtering rule message sending module, configured to generate a data filtering rule message based on the configuration file and send the data filtering rule message to a middleware server, so that the middleware server filters data according to the data filtering rule message.

10. A data filtering device, characterized in that, Applied to a middleware server, including: A data filtering rule message parsing module, configured to parse the data filtering rule message to obtain the data serialization structure, the data serialization method, and the data filtering rule of the data sending client when the data filtering rule message sent by the data sending client is obtained; A data deserialization module, configured to deserialize the first data according to the data serialization structure and the data serialization method to obtain second data when a data acquisition request for the corresponding first data sent by the data request end is obtained, where the first data is data sent by the data sending client after sending the data filtering rule message; A data filtering module, configured to filter the second data according to the data filtering rule to obtain third data.

11. A computer device, characterized in that, The computer device includes: One or more processors; A memory, configured to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the data filtering method according to any one of claims 1-8.

12. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the data filtering method according to any one of claims 1-8.

13. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the data filtering method according to any one of claims 1-8.