A user filtering method and device, electronic equipment and storage medium

By querying target user data from multiple data dimensions and constructing logical expressions, the problem of long processing time and poor real-time performance in existing user filtering technologies is solved, and efficient and real-time user filtering result determination is achieved.

CN117009652BActive Publication Date: 2026-06-12SHENZHEN LEXIN SOFTWARE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310819903.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-07-05
Publication Date
2026-06-12
Estimated Expiration
2043-07-05

AI Technical Summary

Technical Problem

Existing user filtering methods require querying all user data from all data sources, resulting in long processing times, poor real-time performance, and low availability. Furthermore, if a data source for one dimension malfunctions, the filtering results cannot be determined.

Method used

The system queries the target user data from data sources corresponding to at least two data dimensions, retrieves the current user data, constructs the target logical expression, performs calculations based on logical value judgment conditions, and determines the filtering result if successful, thus avoiding waiting for all data sources to complete the query.

Benefits of technology

It reduces the time users spend filtering, improves filtering efficiency and real-time performance, and ensures that filtering results can still be determined when the data source is abnormal.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117009652B_ABST
    Figure CN117009652B_ABST
Patent Text Reader

Abstract

The application discloses a user filtering method and device, electronic equipment and storage medium. Based on the received target user filtering request, target user data is queried in at least two data sources corresponding to at least two data dimensions; first user data and second user data obtained by historical query are obtained, so as to obtain current user data; the current data dimension corresponding to the current user data is obtained; based on the logical relationship between the current data dimensions, a target logical expression composed of the current data dimensions is determined; based on the logical value judgment condition corresponding to the current user data and the current data dimension, the target logical value corresponding to each current user data is determined, and the target logical value is substituted into the target logical expression for operation; if the operation is successful, the target filtering result corresponding to the target user is determined based on the operation result. Through the technical scheme of the application, the user filtering time is reduced, and the filtering efficiency, real-time performance and availability of the user are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data processing technology, and in particular to a user filtering method, apparatus, electronic device, and storage medium. Background Technology

[0002] In internet business processes, each business node filters out users who do not meet the criteria to ensure the legality, compliance, and smooth operation of the business.

[0003] Currently, the existing user filtering method involves querying relevant data about a target user from multiple data sources when the target user passes through a certain business node. This includes data such as the target user's age, gender, and user behavior data. Based on all relevant data retrieved from all data sources, condition checks are performed, and users who do not meet the conditions are filtered out.

[0004] However, existing user filtering methods require querying all user data from all data sources before filtering can be performed. Querying data sources across all dimensions involves lengthy waiting times, and if any dimension's data source experiences an anomaly, the filtering results cannot be determined. Therefore, existing user filtering methods suffer from technical problems such as long processing time, poor real-time performance, and low availability. Summary of the Invention

[0005] This invention provides a user filtering method, apparatus, electronic device, and storage medium to reduce user filtering time and improve user filtering efficiency, real-time performance, and availability.

[0006] In a first aspect, the present invention provides a user filtering method, the method comprising:

[0007] Receive filtering requests from the application targeting specific users;

[0008] Based on the received target user filtering request, query the target user data in at least two data sources corresponding to at least two data dimensions;

[0009] Obtain the first user data of the target user found in the query and the second user data of the target user found in the historical query. Based on the first user data and the second user data, obtain the current user data.

[0010] Obtain the current data dimension corresponding to the current user data;

[0011] Based on the logical relationships between the current data dimensions, determine the target logical expression composed of the current data dimensions;

[0012] Based on the current user data and the logical value judgment conditions corresponding to the current data dimension, a target logical value corresponding to each current user data is determined, and the target logical value is substituted into the target logical expression for calculation.

[0013] If the calculation is successful, the target filtering result corresponding to the target user is determined based on the calculation result.

[0014] In a second aspect, the present invention provides a user filtering device, the device comprising:

[0015] The filtering request receiving module is used to receive filtering requests from the application for target users.

[0016] The user data query module is used to query target user data in at least two data sources corresponding to at least two data dimensions based on the received target user filtering request.

[0017] The current data acquisition module is used to acquire the first user data of the target user found in the query and the second user data of the target user found in the historical query, and to obtain the current user data based on the first user data and the second user data;

[0018] The data dimension acquisition module is used to acquire the current data dimension corresponding to the current user data.

[0019] The target expression determination module is used to determine the target logical expression composed of the current data dimensions based on the logical relationship between the current data dimensions.

[0020] The target expression calculation module is used to determine the target logical value corresponding to each current user data based on the current user data and the logical value judgment condition corresponding to the current data dimension, and to substitute the target logical value into the target logical expression for calculation;

[0021] The filtering result determination module is used to determine the target filtering result corresponding to the target user based on the calculation result if the calculation is successful.

[0022] Thirdly, the present invention provides an electronic device, comprising:

[0023] At least one processor; and

[0024] A memory that is communicatively connected to at least one processor; wherein,

[0025] The memory stores a computer program that can be executed by at least one processor, such that the at least one processor is able to perform the user filtering method of any embodiment of the present invention.

[0026] Fourthly, the present invention provides a computer-readable storage medium storing computer instructions that, when executed by a processor, implement the user filtering method of any embodiment of the present invention.

[0027] The technical solution provided by this invention receives a filtering request for a target user from an application, and then queries the target user data in at least two data sources corresponding to at least two data dimensions based on the received filtering request. It further obtains the first user data of the queried target user and the second user data of the target user obtained in previous queries. Based on the first and second user data, it obtains the current user data and the current data dimension corresponding to the current user data. Then, based on the logical relationship between the current data dimensions, it determines the target logical expression composed of the current data dimensions. This achieves the effect of constructing the target logical expression in real time. Since the target logical expression is constructed based on the current data dimension corresponding to the currently queried user data, it avoids the situation where the filtering result cannot be determined if the data source of one dimension is abnormal. Based on the logical value judgment conditions corresponding to the current user data and the current data dimension, it determines the target logical value corresponding to each current user data, and substitutes the target logical value into the target logical expression for calculation. If the calculation is successful, the target filtering result corresponding to the target user is determined based on the calculation result. If the target logical expression can be successfully calculated based on the logical value corresponding to the current user data, the final filtering result will not be output after all user data from all dimension data sources has been queried. Instead, the target filtering result corresponding to the target user will be returned in advance, thereby reducing the user filtering time and improving the user filtering efficiency, real-time performance, and availability.

[0028] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0029] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0030] Figure 1 This is a flowchart of a user filtering method provided in Embodiment 1 of the present invention;

[0031] Figure 2This is a flowchart of a user filtering method provided in Embodiment 2 of the present invention;

[0032] Figure 3 This is a schematic diagram of a user filtering device provided in Embodiment 3 of the present invention;

[0033] Figure 4 This is a schematic diagram of the structure of an electronic device provided in Embodiment 4 of the present invention. Detailed Implementation

[0034] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0035] It should be noted that the terms "first preset condition," "second preset condition," etc., used in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0036] It should be noted that the collection, updating, analysis, use, transmission, and storage of user personal information involved in the technical solution disclosed herein all comply with relevant laws and regulations, are used for legitimate and reasonable purposes, and are not shared, disclosed, or sold outside of these legitimate uses, and are subject to supervision and management by national regulatory authorities. Necessary measures should be taken to selectively block the use or access to personal information data to prevent unauthorized access to such personal information data, ensure that personnel authorized to access personal information data comply with relevant laws and regulations, and ensure the security of user personal information. Furthermore, once this user personal information data is no longer needed, the risk should be minimized by restricting or even prohibiting data collection and / or deleting the data.

[0037] Example 1

[0038] Figure 1This is a flowchart of a user filtering method provided in Embodiment 1 of the present invention. This embodiment is applicable to situations where target users who do not meet the conditions are filtered when a target user passes through a target service node. This method can be executed by a user filtering device, which can be implemented in hardware and / or software. The device can be configured on a computer device, such as a laptop, desktop computer, or smart tablet. Figure 1 As shown, the method includes:

[0039] S110: Receive a filtering request from the application for the target user.

[0040] The application side is the server that carries the target business. The target user is the user who will pass through the target business node. The filtering request is a request signal generated on the application side when the target user passes through the target business node. The filtering request carries the target user's identity information and the encoded information of the data source to be queried.

[0041] In this embodiment, when a target user is about to pass through a target business node, a control to request passage through the target business node can be triggered on the terminal device corresponding to the application. At this time, a filtering request can be generated, thereby receiving a filtering request for the target user.

[0042] S120. Based on the received target user filtering request, query the target user data in at least two data sources corresponding to at least two data dimensions.

[0043] In this embodiment, when a target user passes through a target business node, it needs to query user data from multiple dimensions of data sources. For example, at least two data dimensions may include: age, gender, and credit granting time. It should be specifically noted that the target user's relevant data is obtained through legal and compliant means while protecting the target user's personal privacy.

[0044] Specifically, a target user can trigger a control on their terminal device to request approval from a target business node, thus generating a filtering request. Based on the target user's identification information and the encoding information of the data source to be queried in the filtering request, the target user data corresponding to the target user's identification information is queried from multiple data sources.

[0045] For example, upon receiving a filtering request from a target user, the request is parsed to determine the required data for the target user across the dimensions of age, gender, credit granting time, and purchase history. Then, based on the target user's identification information in the filtering request, the target user's data is queried from the data sources corresponding to the age, gender, credit granting time, and purchase history dimensions, respectively.

[0046] S130. Obtain the first user data of the target user found in the query and the second user data of the target user found in the historical query. Based on the first user data and the second user data, obtain the current user data.

[0047] In this process of querying target user data, data is simultaneously queried from multiple data sources corresponding to different dimensions. The target user data is retrieved at different times from different data sources. The target user data retrieved at the current moment is considered the first user data. It's important to note that at any given moment, there may be instances where target user data from multiple data sources is retrieved; therefore, the first user data can include data from multiple data sources. Target user data retrieved before the current moment is considered the second user data. The current user data includes both the first user data corresponding to the currently queried target user and the second user data corresponding to previously queried target users.

[0048] Specifically, when the first user data corresponding to the target user is retrieved, the retrieved first user data of the target user and the historically retrieved second user data of the target user are obtained, and the entire set of the retrieved first user data and second user data is used as the current user data.

[0049] For example, the second user data corresponding to the target user found in the historical query includes "20 years old", and the first user data corresponding to the target user found in the current query includes "male" and "purchased". Therefore, the current user data obtained after the current query is completed can be represented as: [20 years old, male, purchased].

[0050] S140. Obtain the current data dimension corresponding to the current user data.

[0051] In this embodiment, since there is a pre-defined index relationship between the current user data and the current data dimension, the current data dimension can be directly obtained based on the current user data.

[0052] For example, the second user data corresponding to the target user found in the historical query includes "age dimension: 20 years old", and the first user data corresponding to the target user found in the current query includes "gender dimension: male" and "purchase record dimension: purchased". Therefore, the current data dimension corresponding to the current user data can be represented as: [age dimension, gender dimension, purchase record dimension].

[0053] S150. Based on the logical relationships between the current data dimensions, determine the target logical expression composed of the current data dimensions.

[0054] The logical relationships between the current data dimensions are predefined based on the actual needs of the target business nodes. The target logical expression is an expression determined by connecting the current data dimensions using logical symbols.

[0055] Specifically, the target logical expression for each current data dimension is constructed based on the logical relationships between them. For example, the logical relationships between the current data dimensions include AND and OR relationships, with "and" as the connection symbol for the AND relationship and "or" as the connection symbol for the OR relationship. Complex current logical expressions can be constructed based on these logical relationships, and then simplified to obtain the simplified target logical expression, as shown below:

[0056] X1 and X2 and…X n or Y1 and Y2 and…Y n or Z1 and Z2 and…Z n or…

[0057] S160. Based on the current user data and the logical value judgment conditions corresponding to the current data dimension, determine the target logical value corresponding to each current user data, and substitute the target logical value into the target logical expression for calculation.

[0058] The logical value judgment conditions corresponding to the current data dimension are predefined and can be pre-stored in the data storage unit. When determining the target logical value corresponding to the current user data, the logical value judgment conditions corresponding to the current data dimension can be directly obtained. For example, different data source dimensions can be numbered, and an index relationship can be established between the data source dimension number and the logical value judgment conditions. Based on this, after determining the current data dimension, the logical value judgment conditions corresponding to the current data dimension can be obtained.

[0059] In this embodiment, determining the target logical value corresponding to the current user data specifically includes: if the current user data meets the logical value judgment condition corresponding to the current data dimension, then the target logical value corresponding to the current user data is the first logical value; if the current user data does not meet the logical value judgment condition corresponding to the current data dimension, then the target logical value corresponding to the current user data is the second logical value.

[0060] The first logical value is used to distinguish the second logical value. For example, the first logical value is 1, and the second logical value is 0. For instance, taking the age dimension as an example, the logical value judgment condition for the age dimension could be: the user's age is greater than or equal to 18 years old. If the target user's age is greater than or equal to 18 years old, then the target logical value for the age dimension is 1; if the target user's age is less than 18 years old, then the target logical value for the age dimension is 0.

[0061] Specifically, after obtaining the target logical value for each current user, this value is input into the target logical expression for computation. The result of the target logical expression computation has two possibilities: success or failure. If the target expression computation is successful, a logical value is output; if the target expression computation fails, no logical value is output.

[0062] S170. If the operation is successful, the target filtering result corresponding to the target user is determined based on the operation result.

[0063] The target filtering results include allow results and block results. Allow results mean the target user can pass through the target service node. Block results mean the target user cannot pass through the target service node.

[0064] Optionally, determining the target filtering result corresponding to the target user based on the calculation result specifically includes: if the calculation result is a first logical value, then determining the target filtering result corresponding to the target user as an allow result; if the calculation result is a second logical value, then determining the target filtering result corresponding to the target user as an intercept result.

[0065] In this embodiment, if the target expression is successfully evaluated, either a first logical value or a second logical value can be output. The first logical value is used to distinguish it from the second logical value. For example, the first logical value is 1, and the second logical value is 0. Different logical values ​​correspond to different target filtering results. If the evaluation result is 1, the target filtering result for the target user is an allow result. If the evaluation result is 0, the target filtering result for the target user is an intercept result.

[0066] The technical solution provided by this invention receives a filtering request for a target user from an application, and then queries the target user data in at least two data sources corresponding to at least two data dimensions based on the received filtering request. It further obtains the first user data of the queried target user and the second user data of the target user obtained in previous queries. Based on the first and second user data, it obtains the current user data and the current data dimension corresponding to the current user data. Then, based on the logical relationship between the current data dimensions, it determines the target logical expression composed of the current data dimensions. This achieves the effect of constructing the target logical expression in real time. Since the target logical expression is constructed based on the current data dimension corresponding to the currently queried user data, it avoids the situation where the filtering result cannot be determined if the data source of one dimension is abnormal. Based on the logical value judgment conditions corresponding to the current user data and the current data dimension, it determines the target logical value corresponding to each current user data, and substitutes the target logical value into the target logical expression for calculation. If the calculation is successful, the target filtering result corresponding to the target user is determined based on the calculation result. If the target logical expression can be successfully calculated based on the logical value corresponding to the current user data, the final filtering result will not be output after all user data from all dimension data sources has been queried. Instead, the target filtering result corresponding to the target user will be returned in advance, thereby reducing the user filtering time and improving the user filtering efficiency, real-time performance, and availability.

[0067] Based on the above embodiments, after querying the target user data in at least two data sources corresponding to at least two data dimensions, the method further includes: storing the first user data queried each time in a cache space to update the cache space, and triggering the construction and operation of the target logical expression each time the cache space is updated, until the operation is successful.

[0068] In this embodiment, after each query of the first user's data, the first user's data is stored in the cache space, thereby updating the cache space. At each cache space update, the operation described in S120 is triggered, and the operation of constructing and calculating the target logical expression is executed again until the constructed target logical expression can be successfully calculated. The advantage of this setup is that, in practical applications, the thread executing the construction and calculation of the target logical expression does not need to be in a working state continuously; it is only awakened when necessary. By setting a wake-up trigger operation for the thread, the thread is in a dormant state when no thread participation is required, saving server resources during the period of waiting for data source queries.

[0069] Example 2

[0070] Figure 2This is a flowchart of a user filtering method provided in Embodiment 2 of the present invention. Based on the above embodiments, this embodiment further optimizes the steps of "querying target user data in at least two data sources corresponding to at least two data dimensions based on the received target user filtering request" and "determining the target logical expression composed of the current data dimensions based on the logical relationship between the current data dimensions." This embodiment can be combined with various optional solutions in one or more of the above embodiments. For example... Figure 2 As shown, the user filtering method includes the following steps:

[0071] S210, Receive a filtering request from the application for the target user.

[0072] S220. Based on the received target user filtering request, query the target user data simultaneously in at least two data sources corresponding to at least two data dimensions in a parallel query manner.

[0073] In this embodiment, when querying target user data from multiple data sources, the query is performed in parallel. This allows for simultaneous querying of target user data from different data sources, enabling fast data retrieval and further reducing user filtering time.

[0074] S230. Obtain the first user data of the target user found in the query and the second user data of the target user found in the historical query. Based on the first user data and the second user data, obtain the current user data.

[0075] S240. Obtain the current data dimension corresponding to the current user data.

[0076] S250. Based on the logical relationships between the current data dimensions, construct the current logical expression.

[0077] In this embodiment, based on the logical relationship between the current data dimensions, an expression that can intuitively represent the logical relationship between each current data dimension is first constructed as the current logical expression.

[0078] Since the current logical expression is complex, performing logical operations directly on it would result in low computational efficiency. Therefore, in step S250, the current logical expression is simplified and brackets are removed to obtain a target logical expression that is easier to compute.

[0079] S260. Based on the current logical expression, determine at least one minimum AND unit that contains only AND relations, connect each minimum AND unit through OR relations, and determine the target logical expression composed of the current data dimension.

[0080] For example, the target logical expression determined after simplifying the complex current logical expression is shown below:

[0081] X1 and X2 and…X n or Y1 and Y2 and…Y n or Z1 and Z2 and…Z n or…

[0082] The simplified target logical expression is a combination of multiple expressions containing only AND relations connected by OR relations. The connection symbol for the AND relation is "and", and the connection symbol for the OR relation is "or". In the above expression, "X1andX2 and…X..." n “Y2 and…Y” n "or "Z1 and Z2 and...Z n "Both are minimal AND units. In the theory of logical operations, A and B are in an AND relationship, and the expression corresponding to A and B can be represented as: A and B. In an AND relationship, if either A or B is false, the expression evaluates to false. A and B are in an OR relationship, and the expression corresponding to A and B can be represented as: A or B. If either A or B is true, the expression evaluates to true. In practical applications, true can be represented by the first logical value, and false can be represented by the second logical value."

[0083] In this embodiment, each minimum AND unit can be calculated independently. If the minimum AND unit can be calculated successfully, the user filtering result can be obtained without querying user data from other dimensions, which can improve the efficiency of user filtering calculation.

[0084] S270. Based on the current user data and the logical value judgment conditions corresponding to the current data dimension, determine the target logical value corresponding to each current user data, and substitute the target logical value into the target logical expression for calculation.

[0085] S280. Check if the target logical expression has been successfully evaluated. If yes, proceed to step S290. If no, return to step S230.

[0086] In this embodiment, if the target logical expression is successfully evaluated, it indicates that the target filtering result corresponding to the target user can be determined based on the current user data. If the target logical expression fails to be evaluated, it indicates that the target filtering result corresponding to the target user cannot be determined based on the current user data, and more user data is needed to further determine the target filtering result corresponding to the target user. Therefore, the process returns to step S230.

[0087] S290. Determine the target filtering result corresponding to the target user based on the calculation result.

[0088] The technical solution provided in this invention uses parallel querying when querying target user data from multiple data sources. This allows for simultaneous querying of target user data from different data sources, enabling rapid data retrieval and further reducing user filtering time. When determining the target logical expression composed of the current data dimensions, an expression that intuitively represents the logical relationship between each current data dimension is first constructed as the current logical expression. Then, the current logical expression is simplified by removing parentheses to obtain at least one minimum AND unit containing only AND relations. Connecting each minimum AND unit with an OR relation improves the accuracy of determining the target logical expression. Furthermore, the simplified target logical expression is easy to compute; each minimum AND unit can be computed independently. If the minimum AND unit can be computed successfully, user filtering results can be obtained without querying user data from other dimensions, thereby improving the computational efficiency of user filtering.

[0089] Example 3

[0090] Figure 3 This is a schematic diagram of a user filtering device provided in Embodiment 3 of the present invention. This device can execute the user filtering method provided in the embodiments of the present invention. The device includes: a filtering request receiving module 310, a user data query module 320, a current data acquisition module 330, a data dimension acquisition module 340, a target expression determination module 350, a target expression calculation module 360, and a filtering result determination module 370.

[0091] The filtering request receiving module 310 is used to receive filtering requests from the application for the target user.

[0092] User data query module 320 is used to query target user data in at least two data sources corresponding to at least two data dimensions based on the received target user filtering request.

[0093] The current data acquisition module 330 is used to acquire the first user data of the target user obtained from the query and the second user data of the target user obtained from the historical query, and to obtain the current user data based on the first user data and the second user data;

[0094] The data dimension acquisition module 340 is used to acquire the current data dimension corresponding to the current user data;

[0095] The target expression determination module 350 is used to determine the target logical expression composed of the current data dimensions based on the logical relationship between the current data dimensions.

[0096] The target expression calculation module 360 ​​is used to determine the target logical value corresponding to each current user data based on the current user data and the logical value judgment condition corresponding to the current data dimension, and to substitute the target logical value into the target logical expression for calculation;

[0097] The filtering result determination module 370 is used to determine the target filtering result corresponding to the target user based on the calculation result if the calculation is successful.

[0098] The technical solution provided by this invention receives a filtering request for a target user from an application, and then queries the target user data in at least two data sources corresponding to at least two data dimensions based on the received filtering request. It further obtains the first user data of the queried target user and the second user data of the target user obtained in previous queries. Based on the first and second user data, it obtains the current user data and the current data dimension corresponding to the current user data. Then, based on the logical relationship between the current data dimensions, it determines the target logical expression composed of the current data dimensions. This achieves the effect of constructing the target logical expression in real time. Since the target logical expression is constructed based on the current data dimension corresponding to the currently queried user data, it avoids the situation where the filtering result cannot be determined if the data source of one dimension is abnormal. Based on the logical value judgment conditions corresponding to the current user data and the current data dimension, it determines the target logical value corresponding to each current user data, and substitutes the target logical value into the target logical expression for calculation. If the calculation is successful, the target filtering result corresponding to the target user is determined based on the calculation result. If the target logical expression can be successfully calculated based on the logical value corresponding to the current user data, the final filtering result will not be output after all user data from all dimension data sources has been queried. Instead, the target filtering result corresponding to the target user will be returned in advance, thereby reducing the user filtering time and improving the user filtering efficiency, real-time performance, and availability.

[0099] Based on the above technical solutions, the user data query module 320 is specifically used to: query the target user data simultaneously in at least two data sources corresponding to at least two data dimensions in a parallel query manner.

[0100] Based on the above technical solutions, the target expression determination module 350 includes:

[0101] The current expression construction unit is used to construct the current logical expression based on the logical relationship between the current data dimensions;

[0102] The target expression determination unit is used to determine at least one minimum AND unit containing only AND relations based on the current logical expression, and to determine the target logical expression composed of the current data dimension by connecting each of the minimum AND units through OR relations.

[0103] Based on the above technical solutions, the target expression calculation module 360 ​​also includes:

[0104] The first logical value determination unit is used to determine the target logical value of the current user data as the first logical value if the current user data satisfies the logical value judgment condition corresponding to the current data dimension.

[0105] The second logical value determination unit is used to determine the target logical value of the current user data as the second logical value if the current user data does not meet the logical value judgment condition corresponding to the current data dimension.

[0106] Based on the above technical solutions, the filtering result determination module 370 is specifically used to: if the calculation result is a first logical value, then determine the target filtering result corresponding to the target user as a pass result; if the calculation result is a second logical value, then determine the target filtering result corresponding to the target user as an interception result.

[0107] Based on the above technical solutions, the user filtering device also includes:

[0108] The return execution module is used to return to the step of obtaining at least one current user data and the current data dimension corresponding to each current user data if the operation fails after substituting the target logical value into the target logical expression. When the operation is successful, the target filtering result corresponding to the target user is determined based on the operation result.

[0109] Based on the above technical solutions, the user filtering device also includes:

[0110] The data caching module stores the first user data retrieved each time in the cache space to update the cache space. It also triggers the construction and calculation of the target logical expression each time the cache space is updated, until the calculation is successful.

[0111] The user filtering device provided in this disclosure can execute the user filtering method provided in any embodiment of this disclosure, and has the corresponding functional modules and beneficial effects of executing the method.

[0112] It is worth noting that the various units and modules included in the above-mentioned device are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the protection scope of the embodiments of this disclosure.

[0113] Example 4

[0114] Figure 4 This is a schematic diagram of an electronic device provided in Embodiment 4 of the present invention. The electronic device 10 is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable electronic devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.

[0115] like Figure 4 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded into the RAM 13 from storage unit 18. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 13. An input / output (I / O) interface 15 is also connected to the bus 13.

[0116] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other electronic devices through computer networks such as the Internet and / or various telecommunications networks.

[0117] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as user filtering methods.

[0118] In some embodiments, the user filtering method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the user filtering method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the user filtering method by any other suitable means (e.g., by means of firmware).

[0119] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic electronic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0120] Computer programs used to implement the methods of the present invention can be written in any combination of one or more programming languages. These computer programs can be provided to the processor of a general-purpose computer, a special-purpose computer, or other programmable user filtering device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The computer programs can be executed entirely on the machine, partially on the machine, as a standalone software package partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0121] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or electronic device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or electronic devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage electronics, magnetic storage electronics, or any suitable combination thereof.

[0122] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0123] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.

[0124] A computing system may include clients and servers. Clients and servers are generally geographically separated and typically interact via communication networks. The client-server relationship is established by computer programs running on the respective computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, a host product within the cloud computing service system, addressing the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability. It should be understood that various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired results of the technical solution of this invention are achieved, and this is not limited herein. The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A user filtering method, characterized by, include: Receive filtering requests from the application targeting specific users; Based on the received target user filtering request, the target user data is queried in at least two data sources corresponding to at least two data dimensions; wherein, during the process of querying the target user data, data queries are performed simultaneously in data sources corresponding to multiple dimensions, and the time for different dimension data sources to retrieve the target user data is different; The system obtains the first user data of the target user found in the query and the second user data of the target user found in the historical query. Based on the first user data and the second user data, the system obtains the current user data. The target user data found at the current time is the first user data, and the target user data found before the current time is the second user data. The system uses the entire set of the first user data and the second user data obtained as the current user data. Obtain the current data dimension corresponding to the current user data; Based on the logical relationships between the current data dimensions, determine the target logical expression composed of the current data dimensions; Based on the current user data and the logical value judgment conditions corresponding to the current data dimension, a target logical value corresponding to each current user data is determined, and the target logical value is substituted into the target logical expression for calculation. If the calculation is successful, the target filtering result corresponding to the target user is determined based on the calculation result.

2. The method of claim 1, wherein, The step of querying target user data in at least two data sources corresponding to at least two data dimensions includes: The target user data is queried simultaneously from at least two data sources corresponding to at least two data dimensions using a parallel query approach.

3. The method of claim 1, wherein, The step of determining the target logical expression composed of the current data dimensions based on the logical relationships between the current data dimensions includes: Based on the logical relationships between the current data dimensions, construct the current logical expression; Based on the current logical expression, at least one minimal AND unit containing only AND relations is determined, and each of the minimal AND units is connected by an OR relation to determine the target logical expression composed of the current data dimension.

4. The method according to claim 1, characterized in that, The step of determining the target logical value corresponding to each piece of current user data based on the logical value judgment conditions corresponding to the current user data and the current data dimension includes: If the current user data satisfies the logical value judgment condition corresponding to the current data dimension, then the target logical value corresponding to the current user data is the first logical value; If the current user data does not meet the logical value judgment condition corresponding to the current data dimension, then the target logical value corresponding to the current user data is the second logical value.

5. The method according to claim 4, characterized in that, The step of determining the target filtering result corresponding to the target user based on the calculation result includes: If the result of the operation is the first logical value, then the target filtering result corresponding to the target user is determined to be the pass result; If the result of the operation is the second logical value, then the target filtering result corresponding to the target user is determined to be the interception result.

6. The method according to claim 1, characterized in that, After substituting the target logical value into the target logical expression for calculation, the method further includes: If the operation fails, the process returns to the step of obtaining at least one current user data and the current data dimension corresponding to each current user data. If the operation succeeds, the target filtering result corresponding to the target user is determined based on the operation result.

7. The method according to claim 1, characterized in that, After querying the target user data from at least two data sources corresponding to at least two data dimensions, the process also includes: The first user data retrieved each time is stored in the cache space to update the cache space. The construction and operation of the target logical expression are triggered every time the cache space is updated, until the operation is successful.

8. A user filtering device, characterized in that, include: The filtering request receiving module is used to receive filtering requests from the application for target users. The user data query module is used to query target user data in at least two data sources corresponding to at least two data dimensions based on the received target user filtering request; wherein, during the process of querying the target user data, data queries are performed simultaneously in data sources corresponding to multiple dimensions, and the time for querying the target user data in different dimension data sources is different; The current data acquisition module is used to acquire the first user data of the target user that has been queried and the second user data of the target user that has been queried in the past, and to obtain the current user data based on the first user data and the second user data; wherein, the target user data queried at the current time is the first user data, the target user data queried before the current time is the second user data, and the entire set of the acquired first user data and second user data is used as the current user data; The data dimension acquisition module is used to acquire the current data dimension corresponding to the current user data. The target expression determination module is used to determine the target logical expression composed of the current data dimensions based on the logical relationship between the current data dimensions. The target expression calculation module is used to determine the target logical value corresponding to each current user data based on the current user data and the logical value judgment condition corresponding to the current data dimension, and to substitute the target logical value into the target logical expression for calculation; The filtering result determination module is used to determine the target filtering result corresponding to the target user based on the calculation result if the calculation is successful.

9. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor to enable the at least one processor to perform the user filtering method according to any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the user filtering method according to any one of claims 1-7.

Citation Information

Patent Citations

  • Data condition filtering and screening method and screener

    CN102436503A

  • Large data query method and system

    CN106649770A