User selection method, device, server and storage medium

By building a query description module of the logical tree structure, users who meet the conditions are directly selected, which solves the problem of low multi-condition selection efficiency in the existing technology, and realizes a more efficient user selection process.

CN115004169BActive Publication Date: 2025-03-25SHENZHEN HEYTAP TECHNOLOGY CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202080094696.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-03-27
Publication Date
2025-03-25
Estimated Expiration
2040-03-27

AI Technical Summary

Technical Problem

When selecting users based on multiple conditions, the prior art requires selecting users corresponding to each condition and filtering them according to the selected users, resulting in large data processing volume and low processing efficiency.

Method used

By analyzing the conditional statements and their existence relationships in the received user description information, a query description module with a logical tree structure is constructed, so that users who meet the conditions of the query description module are directly selected.

Benefits of technology

It improves the efficiency of user selection, reduces data processing volume, and improves processing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115004169B_ABST
    Figure CN115004169B_ABST
Patent Text Reader

Abstract

The present application discloses a user selection method, device, server and storage medium, which relates to the field of information screening technology. The method comprises: parsing the conditional statements in the received user description information and the existence relationship between the conditional statements; constructing a query description module with a logical tree structure according to the conditional statements and the existence relationship, wherein the query description module represents the existence relationship between the conditional statements; and selecting users who meet the conditions of the query description module from the target database. The technical solution can directly select users who meet the conditions of the query description module, thereby improving the selection efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of information screening, and more specifically, to a user selection method, device, server and storage medium. Background Art

[0002] When users interact with servers through electronic devices, a large amount of data is generated. These data can represent the characteristics of users, so that users with specified characteristics can be selected based on these data. In the related art, when selecting users based on multiple conditions, users corresponding to each condition are selected respectively, and then the selected users are screened. The data processing volume is large and the processing efficiency is low. Summary of the invention

[0003] In view of the above problems, the present application proposes a user selection method, device, server and storage medium to improve the above problems.

[0004] In a first aspect, an embodiment of the present application provides a user selection method, the method comprising: parsing conditional statements in received user description information and existence relationships between conditional statements; constructing a query description module with a logical tree structure based on the conditional statements and existence relationships, the query description module representing the existence relationships between conditional statements; and selecting users who meet the conditions of the query description module from a target database.

[0005] In a second aspect, an embodiment of the present application provides a user selection device, which includes a parsing unit for parsing conditional statements in received user description information and the existence relationship between conditional statements; a construction unit for constructing a query description module with a logical tree structure based on the conditional statements and the existence relationship, wherein the query description module represents the existence relationship between conditional statements; and a selection unit for selecting users who meet the conditions of the query description module from a target database.

[0006] In a third aspect, an embodiment of the present application provides a server, comprising: one or more processors; a memory; and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs are executed by the processors to perform the above-mentioned method.

[0007] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which a program code is stored. The program code can be called by a processor to execute the above method.

[0008] The user selection method, device, server and storage medium provided in the embodiments of the present application construct a query description module based on the conditional statements in the user description information and the existence relationship between the conditional statements, so that users who meet the conditions of the query description module can be directly selected, thereby improving the selection efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.

[0010] Figure 1 A flow chart of a user selection method provided by an embodiment of the present application is shown.

[0011] Figure 2 A flow chart of a user selection method provided by another embodiment of the present application is shown.

[0012] Figure 3 A schematic diagram of a binary tree structure of a query description module provided in an embodiment of the present application is shown.

[0013] Figure 4 A schematic diagram of a binary tree structure of a query description module provided in another embodiment of the present application is shown.

[0014] Figure 5 A flow chart of a user selection method provided in yet another embodiment of the present application is shown.

[0015] Figure 6 A flow chart showing some steps of a user selection method provided in another embodiment of the present application is shown.

[0016] Figure 7 A flowchart of a user selection method provided in yet another embodiment of the present application is shown.

[0017] Figure 8 A functional module diagram of a user selection device provided in an embodiment of the present application is shown.

[0018] Fig. 9 A structural block diagram of a server provided in an embodiment of the present application is shown.

[0019] Fig.10 It is a storage unit of an embodiment of the present application for storing or carrying a program code for implementing a user selection method according to an embodiment of the present application. DETAILED DESCRIPTION

[0020] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.

[0021] In the process of interaction between the user and the server through the electronic device, a large amount of data will be generated, from which the characteristics of the user can be analyzed. The characteristics of the user can indicate one or more user information such as the user's preferences, personality, financial status, family status, travel mode, circle of friends, etc. For example, the characteristics can be the user's attribute information such as age, gender, occupation, constellation, birthday, etc. determined from the user's registered information or other methods, which can be represented by a portrait tag; the characteristics can also be the user behavior characteristics generated by the user's operation of the electronic device, such as the number of times the user opens a certain software, the number of times a certain product is browsed, the number of products of a certain category are browsed, the time of downloading a certain program, the amount of shopping within a week, the number of shopping times using a certain software in a week, etc. Among them, the attribute information of each user can be information with small changes, such as usually at least a preset time interval may change, for example, for the same user, the gender, constellation, birthday, etc. are basically unchanged, and the age, occupation, etc. change slowly, usually It takes a long time to change. User behavior characteristics are generated by the user operating the electronic device. The user's operation of the electronic device is continuous, and the user behavior characteristics change quickly, such as usually within a time period, such as a day, will produce changes.

[0022] The same user may have one or more characteristics. By limiting the conditions based on the characteristics, the desired user can be selected. If the selected user needs to meet multiple conditions, each user needs to be judged based on different conditions. In this case, each user needs to be judged multiple times, and the selection results of different conditions need to be merged, which results in low selection efficiency.

[0023] Therefore, the embodiments of the present application provide a user selection method, device, server and storage medium, which select users by constructing different conditional statements into a query description module with a logical tree structure. For each user, it can be determined whether the user needs to be selected through the conditions of the query description module, and the selection efficiency is high. The user selection method, device, server and storage medium provided by the embodiments of the present application will be described in detail through specific embodiments.

[0024] See also Figure 1 , shows a user selection method provided by an embodiment of the present application. Specifically, the method includes:

[0025] Step S110: parsing the conditional statements in the received user description information and the existence relationship between the conditional statements.

[0026] The user description information describes which users are to be found, or in other words, the user description information includes the conditions that the users to be found need to meet and the relationship between these conditions. The conditions that the users in the user description information need to meet are parsed into conditional statements, and the relationship between the conditions is parsed into the existence relationship between the conditional statements. For example, if the user description information describes that the user should have both feature A and feature B, then the conditional statements obtained by parsing include A and B, and the existence relationship between the conditional statements is simultaneous existence.

[0027] Step S120: constructing a query description module of a logical tree structure according to the conditional statements and the existence relationship, wherein the query description module represents the existence relationship between the conditional statements.

[0028] The conditional statements and the existence relationship between the conditional statements are used to construct a query description module, and the query description module can be constructed based on a logic tree and has a logic tree structure. In the query description module, conditional statements and the existence relationship between the conditional statements are included, and the conditional statements are combined and connected through the existence relationship, indicating the conditional statements and the existence relationship between different conditional statements.

[0029] Step S130: Select users who meet the conditions of the query description module from the target database.

[0030] When selecting users, based on the existence relationship between the conditional statements in the query description module, users who meet the conditions corresponding to the conditional statements in the query description module and the existence relationship between the conditional statements can be selected from the target database.

[0031] In an embodiment of the present application, by constructing the conditional statements in the user description information and the relationships between the conditional statements into a query description module with a logical tree structure, when the user selects, users who meet the conditions of the query description module can be selected, thereby improving selection efficiency.

[0032] The embodiments provided in the present application include a specific construction method for the query description. For details, please refer to Figure 2 , the method provided in this embodiment includes:

[0033] Step S210: parsing the conditional statements in the received user description information and the existence relationship between the conditional statements.

[0034] When it is necessary to select a user, the user to be selected can be described through user description information, and the conditions that the user to be selected needs to meet and the relationship between the conditions can be limited. For example, at the selection terminal that initiates the user selection request, features are selected as conditions and the relationship between features is set as the existence relationship between conditions; or the selection terminal that initiates the user selection request describes the conditions that the user needs to meet through natural language, and the description is parsed as user description information.

[0035] In addition, in the embodiments of the present application, the existence relationship between the obtained conditional statements includes the existence relationship between single conditional statements, and also includes the existence relationship between the combined conditional statement and other conditional statements. Among them, the conditional statements can be combined according to the existence relationship between the conditional statements to obtain the combined conditional statement. For example, the conditional statements include A, B, C and D, and the existence relationship between the conditional statements includes the simultaneous existence of conditional statements A and B, the simultaneous existence of conditional statements C and D, and the combined conditional statements A and B and the combined conditional statements C and D choose to exist, then the combined conditional statements A and B and the combined conditional statements C and D are (A and B) or (C and D). It can be understood that the existence of one means that any one of them satisfies the conditional limitation.

[0036] The user description information may be sent by the user's demand side, or may be generated based on conditions that the user needs to meet in actual business. In the embodiment of the present application, the source of the user description information is not limited.

[0037] The user description information expressed in different description modes may correspond to different parsing modes, and the conditions therein are obtained to generate conditional statements, and the relationships between the conditions are obtained to generate existence relationships between the conditional statements.

[0038] The specific statements included in the conditional statement are not limited in the embodiment of the present application, and can be various user characteristics, such as characteristics representing user attribute information, user behavior characteristics, etc. The specific existence relationships included are not limited in the embodiment of the present application, such as simultaneous existence, selective existence, etc. For example, the conditional statement includes gender being male and occupation being finance. If the existence relationship between male and finance is simultaneous existence, it means that only users who meet the simultaneous gender of male and occupation of finance meet the limitation of the user description information.

[0039] In a specific implementation, the user description information may indicate a conditional statement through a condition identifier, and indicate a relationship between conditions through a relationship identifier. The conditional statements indicated by different condition identifiers may include a relationship indicated by a relationship identifier, and the relationship indicated by the relationship identifier represents the relationship between the conditional statements indicated by the different condition identifiers.

[0040] In this embodiment, the method of parsing the user description information to obtain conditional statements and existence relationships can be to obtain the words and sentences corresponding to the conditional identifiers in the user description information as conditional statements; and obtain the words and sentences corresponding to the relationship identifiers between the conditional statements as the existence relationships between the conditional statements.

[0041] Optionally, in this embodiment, the condition identifier and the relationship identifier can be represented by specific characters. When a character representing a condition identifier is identified, the character can be determined to be a condition identifier; when a character representing a relationship identifier is identified, the character can be determined to be a relationship identifier.

[0042] Optionally, in this implementation, the condition identifier and the relationship identifier can be represented by a specific sentence structure. When a sentence structure representing a condition identifier is identified, it can be determined that the sentences in the sentence structure are conditional sentences; when a sentence structure representing a relationship identifier is identified, it can be determined that the sentences in the sentence structure are the existence relationship between the conditional sentences.

[0043] For example, character i represents a condition identifier, and character j represents a relationship identifier. In a specific usage scenario, if the description in the user description information is i:A j:and i:B j:and i:C, it means that the conditional statements are A, B, and C, the existence relationship between A and B is and, and the existence relationship between B and C is and, and and means simultaneous existence, that is, conditions A, B, and C are satisfied at the same time.

[0044] In another embodiment, the user description information may be described in natural language. When parsing the user description information, semantic recognition may be performed on the user description information, and the words and sentences representing conditions and the words and sentences representing existence relationships in the user description information in the recognition result may be determined, and conditional statements and existence relationships between conditional statements may be generated accordingly. The words and sentences describing the relationship between conditional statements may represent the existence relationship between the conditional statements.

[0045] In this embodiment, the method for parsing the conditional statements in the received user description information and the existence relationship between the conditional statements can be: performing semantic recognition on the user description information, obtaining the words and sentences in the user description information that exist in the preset condition library as the conditional statements; obtaining the words and sentences that describe the relationship between the conditional statements as the existence description information between the conditional statements; and determining the existence relationship corresponding to the obtained existence description information based on the preset correspondence between the existence description information and the existence relationship.

[0046] The preset condition library includes various conditional statements. Acquiring the words and sentences in the user description information that exist in the preset condition library as the conditional statement may be to compare the various words and sentences obtained by semantic recognition segmentation with the words and sentences in the preset condition library respectively, and if for each word and sentence obtained by the segmentation, if the word and sentence exists in the preset condition library, it means that the word and sentence is a condition and can be used as a conditional statement.

[0047] In addition, optionally, a preset correspondence between the existence description information and the existence relationship can be pre-set. The words and phrases describing the relationship between the conditional statements are obtained as the existence description information between the conditional statements, and the existence relationship corresponding to the obtained existence description information is determined according to the preset correspondence between the existence description information and the existence relationship. It can be that other words and phrases other than the conditional statements in the word segmentation result are used as the existence description information, and according to the preset correspondence between the existence description information and the existence relationship, the existence relationship corresponding to each of the obtained existence description information is determined. If the obtained existence description information corresponds to an existence relationship, the existence relationship represents the existence relationship between the conditional statements described by the existence description information; if the obtained existence description information does not correspond to an existence relationship, it means that the existence description information does not describe the existence relationship, and the existence description information is discarded.

[0048] Optionally, an existence phrase library may be pre-set, and the existence phrase library includes phrases describing the relationship between conditional statements. The phrases describing the relationship between conditional statements are obtained as the existence description information between the conditional statements, and the existence relationship corresponding to the obtained existence description information is determined according to the preset correspondence between the existence description information and the existence relationship. It may be to determine whether other phrases other than the conditional statements in the word segmentation result are in the existence phrase library; for the phrases in the existence phrase library, they can be used as the existence description information; according to the preset correspondence between the existence description information and the existence relationship, the existence relationship corresponding to the obtained existence description information is determined, and the existence relationship represents the existence relationship between the conditional statements described by the existence description information. It can be understood that for the same existence relationship, different phrases can be used to describe it, and different existence description information may correspond to the same existence relationship. For example, words such as "at the same time", "and" and "and" can be used to describe the existence relationship of the existence at the same time.

[0049] Step S220: Using conditional statements as leaf nodes and the existence relationship between conditional statements as root nodes corresponding to the leaf nodes, construct a query description module of the logic tree structure.

[0050] In an embodiment of the present application, a query description module of a logical tree structure can be constructed according to the conditional statements and the existence relationship, and the query description module represents the existence relationship between the conditional statements. The constructed query description module can be a software code module, or other modules with specific expressions. When constructing a query description module of a logical tree structure, the existence relationship is represented by a root node, and the root node includes all nodes in the logical tree structure that can be used as root nodes. Leaf nodes without child nodes are used as conditional statements. The root node represents the existence relationship between the conditional statements corresponding to its child nodes.

[0051] In the embodiment of the present application, there is no limitation on the specific type of logic tree, and the embodiment of the present application is mainly described by taking a binary tree as an example.

[0052] In a specific implementation scenario, if the conditional statements include A, B, C, and D, the conditional statements A, B, C, and D exist at the same time, or the conditional statement A and the conditional statement B exist at the same time, the conditional statement composed of the conditional statements A and B and the conditional statement C exist at the same time, and the conditional statement composed of the conditional statements A, B, and C and the conditional statement D exist at the same time. and means simultaneous existence, with the conditional statements including A, B, C, and D as leaf nodes respectively. The root node between the conditional statements A and B is and, the combined conditional statement (A and B) is used as a subtree, the conditional statement C is used as another subtree, and the root node between the conditional statement (A and B) and the conditional statement C is and; the combined conditional statement ((A and B)and C) is used as a word count conditional statement D is used as another subtree, and the root node between the conditional statement ((A and B)and C) and the conditional statement D is and, forming a logical binary tree as shown below: Figure 3 As shown, the obtained query description module can be (((A and B)and C)and D).

[0053] In other words, in this implementation scenario, conditional statements A, B, C, and D exist at the same time, then conditional statement A and conditional statement B are respectively used as child nodes of the root node and to form a subtree, with conditional statement C as another subtree, and and as the root node, forming a new subtree representing (A and B) and C, the new subtree as the left subtree of the binary tree, conditional statement D as the right subtree of the binary tree, and and as the root node of the binary tree, forming the following Figure 3The binary tree structure shown, the description module obtained can be (((A and B)and C)and D).

[0054] Alternatively, in another implementation scenario, the conditional statements include A, B, C, and D, and the existence relationship between the conditional statements includes that the conditional statements A and B exist at the same time, the conditional statements C and D exist at the same time, and the combined conditional statements A and B and the combined conditional statements C and D either exist or not. The existence is represented by "or". Then the binary tree constructed by the conditional statements A, B, C, and D is as follows: Figure 4 As shown, the query description module with the binary tree structure can be (A and B) or (C and D).

[0055] In addition, optionally, in the embodiment of the present application, each existence relationship in the query description module can be described by a corresponding code. If the existence relationship obtained is different from the code expression used to describe the existence relationship, the existence relationship obtained can also be converted into the corresponding code. For example, if the existence relationship obtained is simultaneous existence, and the code indicating simultaneous existence is "and", then the existence relationship of "simultaneous existence" is converted into "and".

[0056] Step S230: Select users who meet the conditions of the query description module from the target database.

[0057] In the embodiment of the present application, the user data used for user selection is data in a database, and the database is defined as the target database.

[0058] The target database includes each user and the conditions satisfied by each user. By selecting users from the target database according to the query description module, users who meet the conditions defined by the user description information can be selected. It can be understood that the user who meets the conditions of the query description module means that the user meets the conditions corresponding to the conditional statement in the query description module, and there is a relationship between the user meeting the conditions corresponding to the conditional statement.

[0059] Among them, the specific selection method can be, for each user, judging whether it satisfies the conditions described by the query description module. The specific judgment method is not limited in the embodiment of the present application. For example, the query description module is (((A and B)and C)and D), and the conditions described are to simultaneously satisfy conditions A, B, C and D. Then, for each user, it can be judged whether it satisfies conditions A, B, C and D at the same time. If it does, the user is selected; if it does not, the user is not selected. For another example, if the query description module is (((A and B)and C)and D), all users who meet condition A can be selected from the target database, and then users who meet condition B can be selected from users who meet condition A to obtain users who meet conditions A and B; users who meet condition C can be selected from users who meet conditions A and B to obtain users who meet conditions A, B and C; further users who meet condition D can be selected from users who meet conditions A, B and C, so as to select users who meet conditions A, B, C and D at the same time.

[0060] Thus, all users that meet the conditions of the query description module can be selected from the target database. For example, the target database is Hive, and the user data in the target database is the user data stored in Hive. By selecting users from the user data stored in Hive and asynchronously storing the selection results in the Hive table, all users that meet the conditions of the query description module stored in Hive can be obtained, which is convenient for subsequent export. Among them, the user can be represented by the user identity information, such as the device identification (IMEI) of the electronic device.

[0061] Optionally, in the embodiment of the present application, the query description module represents the existence relationship between the conditional statements, which may not be a complete query statement. Therefore, in the embodiment of the present application, after the query description module is generated, when selecting a user who meets the conditions of the query description module according to the query description module, a query statement can be generated according to the query description module, and the query statement describes the existence relationship between the conditional statements included in the query description module through a complete query code. A user is selected according to the generated query statement.

[0062] Optionally, in an embodiment of the present application, for a query description module of a logical tree structure, a query statement may be generated by subsequently traversing the query description module.

[0063] Optionally, the target database includes user data updated in real time. If new user data is generated, the newly generated user data is stored in the target database. For example, for a user, if a certain software is opened once, the number of times the software is started is increased by one, and in the user behavior characteristics, the number of times the software is opened by the user is increased by one.

[0064] In addition, user data may include user behavior characteristics of each user. Since user behavior characteristics change rapidly, and user data in the target database is updated in real time, it can be ensured that the selected users are more timely users, and the search results are more accurate.

[0065] Optionally, in the embodiment of the present application, the execution subject that generates the query description module and the execution subject that selects the user may be the same or different. If they are different execution subjects, the execution subject that generates the query description module may send the query description module to the execution subject that selects the user, and the execution subject that selects the user selects the user based on the query description module.

[0066] In an embodiment of the present application, conditional statements are used as leaf nodes, and the existence relationship between conditional statements is used as the root node corresponding to the leaf node to construct a query description module of the logical tree structure, so that when a user selects, users who meet the conditions of the query description module can be selected, thereby improving selection efficiency.

[0067] In addition, in the embodiment of the present application, since the query description module has a logical tree structure, different forms of conditions can be combined with other conditions as conditional statements. Moreover, different query description modules can also be combined with each other according to the existence relationship between each other to construct a new query description module with the same logical tree structure, which is used for user query and selection under the same query engine, thereby improving the scalability of the solution. Therefore, in the user selection method provided in the embodiment of the present application, the user description information may include multiple description information and the existence relationship between the multiple description information, and the conditional statements in the received user description information and the existence relationship between the conditional statements are parsed; and the query description module with a logical tree structure is constructed according to the conditional statements and the existence relationship. It may include: respectively parsing the conditional statements in each description information and the existence relationship between the conditional statements; constructing the description module with the logical tree structure according to the conditional statements and the existence relationship corresponding to each description information; and combining the description modules corresponding to each description information into the query description module with the logical tree structure according to the existence relationship between each description information. Please refer to Figure 5 , the method may include:

[0068] Step S310: respectively analyzing the conditional statements in each description information and the existence relationship in the conditional statements.

[0069] Each description information is essentially a user description information, and is defined as description information for the sake of ease of description. Each description information in the received user description information may come from different devices or from the same terminal. For example, taking the user's characteristics as conditional statements, in the same terminal, due to the complexity and variability of the attribute behavior characteristics, in order to reduce the difficulty of feature setting, the characteristics belonging to the attribute information and the user behavior characteristics are set in different operating units, so that the description information related to the characteristics of the attribute information and the description information related to the user behavior characteristics can be obtained. In addition, each description information can be described in the same or different ways.

[0070] This step can refer to the same or corresponding steps in the above-mentioned embodiments, for example, can refer to step S110 and step S210, and the parsing of each description information can be the same as the parsing of the user description information in the above-mentioned embodiments. That is, each description information is parsed to obtain the conditional statement and the existence relationship in the conditional statement, which can refer to the parsing of the conditional statement in the user description information and the existence relationship between the conditional statements in the above-mentioned embodiments, and will not be repeated here.

[0071] Step S320: construct a description module of the logic tree structure according to the conditional statements and existence relationships corresponding to each description information.

[0072] It can be understood that the conditional statements and existence relationships corresponding to each description information are the conditional statements obtained by parsing the description information and the existence relationships between the conditional statements.

[0073] Each description module is essentially the same as the structure and representation of the aforementioned query description module. For ease of description, the query description module generated by each description information is defined as a query module. This step can refer to the same or corresponding steps in the aforementioned embodiment, for example, can refer to step S120 and step S220, and each description module is constructed according to the way of constructing the query description module in the aforementioned embodiment, that is, according to the conditional statements and existence relationships corresponding to each description information, the description module of the logical tree structure is constructed, and the description of constructing the query description module of the logical tree structure according to the conditional statements and existence relationships in the aforementioned embodiment can be referred to; or the description of constructing the query description module of the logical tree structure with the conditional statements as leaf nodes and the existence relationships between the conditional statements as the root nodes corresponding to the leaf nodes in the aforementioned embodiment can be referred to.

[0074] In this embodiment, each query description module includes conditional statements in the corresponding description information and the corresponding relationship between the conditional statements, indicating the existence relationship between the conditional statements in the corresponding description information.

[0075] Step S330: According to the existence relationship between each piece of description information, the description modules corresponding to each piece of description information are combined into a query description module of the logical tree structure.

[0076] Each description module can be combined into a query description module of a logical tree structure, the logical tree structure is consistent with the logical tree structure in each description module, and the query description module includes the existence relationship between the conditional statements in all description information.

[0077] Optionally, in this step, each description module can be used as a conditional statement to construct a query description module according to the existence relationship between the description information corresponding to each description module. For details, please refer to the description of the aforementioned step S120 and step S220.

[0078] Optionally, in this embodiment, in the logical tree structure of the query description module, different description modules can serve as leaf nodes, with the existence relationship between the description modules serving as the root node corresponding to the leaf node, or in other words, the existence relationship between the description modules serving as the root node corresponding to the leaf node where the description module is located.

[0079] In the embodiment of the present application, the user description information includes the first description information, the second description information and the existence relationship between the first description information and the second description information. The conditional statements in the received user description information and the existence relationship between the conditional statements are parsed; according to the conditional statements and the existence relationship, a query description module with a logical tree structure is constructed, such as Figure 6 As shown, this may include:

[0080] Step S321: parsing the first conditional statements in the first description information and the first existence relationship between the first conditional statements, and parsing the second conditional statements in the second description information and the second existence relationship between the second conditional statements.

[0081] The first description information and the second description information are different description information in the user description information. The first description information includes conditional statements and the existence relationship between the conditional statements, and the conditional statements in the first description information are defined as first conditional statements, and the existence relationship between the conditional statements in the first description information is defined as a first existence relationship. The second description information includes conditional statements and the existence relationship between the conditional statements, and the conditional statements in the second description information are defined as second conditional statements, and the existence relationship between the conditional statements in the second description information is defined as a second existence relationship.

[0082] When respectively parsing the conditional statements in each description information and the existence relationship between the conditional statements, the first conditional statement in the first description information and the first existence relationship between the first conditional statements can be parsed, and the second conditional statement in the second description information and the second existence relationship between the second conditional statements can be parsed.

[0083] In the embodiment of the present application, the first conditional statement in the first description information and the first existence relationship between the first conditional statements can refer to the same or corresponding steps in the above embodiment, such as step S110 and step S210. The analysis of the first description information can be the same as the analysis of the user description information in the above embodiment.

[0084] In the embodiment of the present application, the second conditional statement in the second description information and the second existence relationship between the second conditional statements can refer to the same or corresponding steps in the above embodiment, such as step S110 and step S210. The second description information can be parsed in the same manner as the user description information in the above embodiment.

[0085] Step S331: construct a first description module of the logic tree structure according to the first conditional statement and the first existence relationship; construct a second description module of the logic tree structure according to the second conditional statement and the second existence relationship.

[0086] In the embodiment of the present application, as described above, the first description module is a query description module constructed according to the first conditional statement and the first existence relationship, and the second description module is a query description module constructed according to the second conditional statement and the second existence relationship. The specific construction method of the first description module and the second description module can refer to the same or corresponding steps in the aforementioned embodiment, for example, the description of the aforementioned step S120 and step S220 can be specifically referred to, and the first description module and the second description module are constructed according to the method of constructing the query description module in the aforementioned embodiment.

[0087] Step S332: According to the existence relationship between the first description information and the second description information, the first description module and the second description module are combined into a query description module of the logical tree structure.

[0088] Optionally, in this step, the first description module and the second description module can be used as conditional statements respectively, and a query description module is constructed according to the existence relationship between the description information corresponding to each description module. For details, please refer to the description of the aforementioned steps S120 and S220.

[0089] The logical tree structures in the first description module, the second description module and the query description module in this step are consistent, for example, they are all binary tree structures.

[0090] Step S340: Select users who meet the conditions of the query description module from the target database.

[0091] For this step, reference may be made to the same or corresponding steps in the aforementioned embodiments, which will not be described in detail here.

[0092] In the embodiments of the present application, a specific implementation method can be used for description.

[0093] In the embodiment of the present application, the user description information may include different description information, respectively limiting the conditions of the users to be selected. Different description information can be combined with the generated query description module for user selection, thereby effectively expanding the description method, submission terminal and input unit of the description information, improving the scalability of the user selection operation, and also improving the efficiency of user selection based on different description information.

[0094] In the embodiment of the present application, the generated multiple query description modules can be combined according to the existence relationship, so as to effectively expand the conditional restrictions on the users to be selected in actual use. Figure 7 The method provided in the embodiment of the present application may also include:

[0095] Step S410: parsing the conditional statements in the received user description information and the existence relationship between the conditional statements.

[0096] Step S420: constructing a query description module of a logical tree structure according to the conditional statements and the existence relationship, wherein the query description module represents the existence relationship between the conditional statements.

[0097] Step S410 and step S420 may refer to the same or corresponding steps in the above-mentioned embodiments, and will not be described in detail here.

[0098] Step S430: Receive one or more query description modules.

[0099] In the embodiment of the present application, a query description module generated by other servers or terminals can also be received. The received query description module can be generated in the same manner as in the previous embodiment of the present application, and the specific steps of generating the query description module in the previous embodiment can be referred to.

[0100] Optionally, the received logical tree structure of the query description module may be the same as the logical tree structure of the currently generated query description module.

[0101] In addition, in the embodiment of the present application, the execution of step S430 is not limited to step S410 and step S420.

[0102] Step S440: According to the relationship between the one or more query description modules and the currently generated query description module, the received query description module is combined with the currently generated query description module into the query description module of the logical tree structure for selecting a user.

[0103] In an embodiment of the present application, the existence relationship between one or more query description modules and the currently generated query description module can be sent by other devices or terminals; can be received synchronously with the received query description module; or can be generated according to default conditions, such as defaulting to each query description module to exist one by one, or to exist simultaneously.

[0104] According to the existence relationship between each query description module, all query description modules including the received query description module and the currently generated query description module are combined to generate a new query description module. Among them, the way of connecting each query description module to generate a query description module with a logical tree structure can refer to the same or corresponding steps in the above-mentioned embodiment. For example, each query description module is regarded as a conditional statement, and according to the existence relationship between each query description module, a query description module with a logical tree structure is constructed, and the conditional statements in the user description information corresponding to all query description modules included in the constructed query description module and the existence relationship between the conditional statements represent the existence relationship between each conditional statement.

[0105] In the embodiment of the present application, the received query description module is taken as another query module for explanation. Specifically, another query description module can be received; the other query description module and the query description module are combined into a new query description module of a logical tree structure for selecting a user.

[0106] Step S450: Select users who meet the conditions of the query description module from the target database.

[0107] For this step, reference may be made to the same or corresponding steps in the aforementioned embodiments, which will not be described in detail here.

[0108] In an embodiment of the present application, query description modules of a logical tree structure can be seamlessly combined, multiply combined, or crossed. After any form of user description information is converted into a query description module of a logical tree structure, it can be freely combined with other user description information and can be queried under the same query engine, which is very beneficial for the subsequent expansion of new user selection modes and new user description information, effectively improving the scalability of user selection operations, greatly improving the flexibility of selecting people, and meeting the needs of business parties who need to select users for the combination of various description information. Different business parties can also combine with each other, and the positioning of the population is more accurate, and the selection conditions are easier to understand.

[0109] In addition, in the user selection method provided in the embodiment of the present application, it can also be used to deduplicate user groups. Each user group corresponds to a feature, indicating that all users in the user group have the feature corresponding to the user group. When multiple user groups are deduplicated, the features corresponding to the multiple user groups are included in the user description information, and the existence relationship between the features corresponding to the multiple user groups is simultaneous existence. The user selected by the query description module generated according to the user description information is a user that each user group has. For the selected user, one of the multiple user groups is retained, and the other user groups are deleted, and the multiple user groups are deduplicated.

[0110] For example, multiple user groups are respectively the first user group and the second user group. The first feature is a feature possessed by users in the first user group, and the second feature is a feature possessed by users in the second user group. The conditional statement obtained by parsing the user description information includes the first feature and the second feature, and the existence relationship between the first feature and the second feature is simultaneous existence. After selecting users who meet the conditions of the query description module, users who meet the conditions of the query description module can be deleted from the first user group, or users who meet the conditions of the query description module can be deleted from the second user group, thereby deduplicating the first user group and the second user group.

[0111] The present application embodiment also provides a user selection device 500, such as Figure 8 As shown, the device includes: a parsing unit 510, used to parse the conditional statements in the received user description information and the existence relationship between the conditional statements; a construction unit 520, used to construct a query description module with a logical tree structure based on the conditional statements and the existence relationship, and the query description module represents the existence relationship between the conditional statements; a selection unit 530, used to select users who meet the conditions of the query description module from the target database.

[0112] Optionally, the construction unit 520 may be configured to construct the query description module of the logical tree structure by taking conditional statements as leaf nodes and the existence relationship between the conditional statements as the root nodes corresponding to the leaf nodes.

[0113] Optionally, the logical tree structure is a logical binary tree.

[0114] Optionally, the existence relationship includes simultaneous existence or selective existence.

[0115] Optionally, the user description information includes multiple description information and the existence relationship between the multiple description information. The parsing unit 510 can be used to parse the conditional statements in each description information and the existence relationship between the conditional statements respectively; the construction unit 520 can be used to construct the description module of the logical tree structure according to the conditional statements and the existence relationship corresponding to each description information; according to the existence relationship between each description information, the description modules corresponding to each description information are combined into the query description module of the logical tree structure.

[0116] Optionally, the user description information includes first description information, second description information, and an existence relationship between the first description information and the second description information. The parsing unit 510 can be used to parse the first conditional statement in the first description information and the first existence relationship between the first conditional statement, and to parse the second conditional statement in the second description information and the second existence relationship between the second conditional statement. The construction unit 520 can be used to construct a first description module of the logical tree structure according to the first conditional statement and the first existence relationship; to construct a second description module of the logical tree structure according to the second conditional statement and the second existence relationship; and to combine the first description module and the second description module into a query description module of the logical tree structure according to the existence relationship between the first description information and the second description information.

[0117] Optionally, the device may also include a module receiving unit for receiving one or more query description modules; the construction unit 520 may be used to combine the received query description module with the currently generated query description module into a query description module of the logical tree structure according to the existence relationship between the one or more query description modules and the currently generated query description module, for selecting users.

[0118] Optionally, the device may further include a module receiving unit for receiving another query description module; the construction unit 520 may be used to combine the other query description module with the query description module into a new query description module with a logical tree structure for selecting users.

[0119] Optionally, the parsing unit 510 may include a semantic recognition sub-unit, used to perform semantic recognition on the user description information, and obtain words and sentences in the user description information that exist in a preset condition library as the conditional statements; an information acquisition sub-unit, used to obtain words and sentences that describe the relationship between the conditional statements as existence description information between the conditional statements; and a determination sub-unit, used to determine the existence relationship corresponding to the acquired existence description information based on a preset correspondence between the existence description information and the existence relationship.

[0120] Optionally, the parsing unit 510 may include a conditional statement acquisition subunit, used to acquire words and sentences corresponding to the conditional identifier in the user description information as the conditional statement; and a relationship acquisition subunit, used to acquire words and sentences corresponding to the relationship identifiers between the conditional statements as the existence relationship between the conditional statements.

[0121] Optionally, the selection unit 530 may include a traversal subunit, used for performing subsequent traversal on the query description module to generate a query statement; and a selection subunit, used for selecting a user according to the query statement.

[0122] Optionally, the selection unit 530 may be configured to select users satisfying the conditions of the query description module from a target database, wherein the target database includes user data updated in real time.

[0123] Optionally, the user data includes user behavior characteristics of each user, and the user behavior characteristics are generated by the user's operation on the electronic device.

[0124] Optionally, the conditional statement obtained by parsing the user description information includes a first feature and a second feature, the first feature and the second feature exist in a simultaneous relationship, and the first feature is a feature possessed by users in the first user group. The device may also include a deleting unit, configured to delete users that meet the condition of the query description module from the first user group; or delete users that meet the condition of the query description module from the second user group.

[0125] User behavior features, which are fast-changing and complex, need to be stored in the Hive server, while related features such as portrait tags used to represent user attribute information are usually stored in the ElasticSearch server. In order to overcome the problem that the two query engines, ElasticSearch and Hive, cannot be combined, and to avoid combining the query results after querying in two servers separately, the user selection method, device, server and storage medium provided in the embodiments of the present application can construct a query description module with a logical tree structure based on the conditional statements and existing relationships in the user description information, and can simultaneously use the Presto engine to skip the ElasticSearch server and directly query the data of the user portrait tags in the Hive server, and combine the portrait tags with the user behavior features to obtain the query results.

[0126] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the above-mentioned method embodiments can refer to each other; the specific working processes of the above-mentioned devices and modules can refer to the corresponding processes in the aforementioned method embodiments, which will not be repeated here.

[0127] In several embodiments provided in the present application, the coupling between modules may be electrical, mechanical or other forms of coupling.

[0128] In addition, each functional module in each embodiment of the present application can be integrated into a processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The above-mentioned integrated modules can be implemented in the form of hardware or in the form of software functional modules. Each module can be configured in different electronic devices or in the same electronic device, which is not limited by the embodiments of the present application.

[0129] Please refer to Fig. 9 , which shows a structural block diagram of a server 600 provided in an embodiment of the present application. The electronic device may include one or more processors 610 (only one is shown in the figure), a memory 620 and one or more programs. Among them, the one or more programs are stored in the memory 620 and are configured to be executed by the one or more processors 610. The one or more programs are executed by the processor to perform the method described in the above embodiment.

[0130] The processor 610 may include one or more processing cores. The processor 610 uses various interfaces and lines to connect the various parts of the entire server 600, and executes various functions and processes data of the server 600 by running or executing instructions, programs, code sets or instruction sets stored in the memory 620, and calling data stored in the memory 620. Optionally, the processor 610 can be implemented in at least one hardware form of digital signal processing (DSP), field-programmable gate array (FPGA), and programmable logic array (PLA). The processor 610 can integrate one or a combination of a central processing unit (CPU), a graphics processing unit (GPU), and a modem. Among them, the CPU mainly processes the operating system, user interface, and application programs; the GPU is responsible for rendering and drawing display content; and the modem is used to process wireless communications. It can be understood that the above-mentioned modem may not be integrated into the processor 610, but may be implemented separately through a communication chip.

[0131] The memory 620 may include a random access memory (RAM) or a read-only memory (ROM). The memory 620 may be used to store instructions, programs, codes, code sets or instruction sets. The memory 620 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for implementing at least one function, instructions for implementing the above-mentioned various method embodiments, etc. The data storage area may also store data created by the electronic device during use, etc.

[0132] Please refer to Fig.10 , which shows a structural block diagram of a computer-readable storage medium provided in an embodiment of the present application. The computer-readable storage medium 700 stores program codes, which can be called by a processor to execute the method described in the above method embodiment.

[0133] The computer readable storage medium 700 may be an electronic memory such as a flash memory, an EEPROM (electrically erasable programmable read-only memory), an EPROM, a hard disk, or a ROM. Optionally, the computer readable storage medium 700 includes a non-transitory computer-readable storage medium. The computer readable storage medium 700 has storage space for program code 710 that performs any method step in the above method. These program codes can be read from or written to one or more computer program products. The program code 710 can be compressed, for example, in an appropriate form.

[0134] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A user selection method, characterized in that: The method comprises: Parsing the conditional statements in the received user description information and the relationship between the conditional statements; According to the conditional statements and the existence relationship, construct a query description module with a logical tree structure, wherein the query description module represents the existence relationship between the conditional statements; Receiving one or more query description modules generated by other servers or terminals; According to the relationship between the one or more query description modules and the currently generated query description module, combining the received query description module with the currently generated query description module into the query description module of the logical tree structure; Users meeting the conditions of the query description module are selected from the target database.

2. The method according to claim 1, characterized in that The query description module for constructing a logical tree structure according to the conditional statements and the existence relationship includes: The query description module of the logic tree structure is constructed by taking the conditional statements as leaf nodes and the existence relationship between the conditional statements as the root nodes corresponding to the leaf nodes.

3. The method according to claim 1 or 2, characterized in that: The logical tree structure is a logical binary tree.

4. The method according to claim 1, characterized in that The existence relationship includes simultaneous existence or alternative existence.

5. The method according to claim 1, characterized in that The user description information includes a plurality of description information and the relationship between the plurality of description information, and the conditional statements in the received user description information are parsed and the relationship between the conditional statements; According to the conditional statements and the existence relationship, a query description module of a logical tree structure is constructed, including: Analyze the conditional statements in each description information and the relationship between the conditional statements; Constructing a description module of the logic tree structure according to the conditional statements and existence relationships corresponding to each description information; According to the existence relationship between each piece of description information, the description modules corresponding to each piece of description information are combined into the query description module of the logical tree structure.

6. The method according to claim 1, characterized in that The user description information includes first description information, second description information, and the relationship between the first description information and the second description information, and the conditional statements in the received user description information are parsed and the relationship between the conditional statements; According to the conditional statements and the existence relationship, a query description module of a logical tree structure is constructed, including: parsing a first conditional statement in the first description information and a first existence relationship between the first conditional statements, and parsing a second conditional statement in the second description information and a second existence relationship between the second conditional statements; According to the first conditional statement and the first existence relationship, a first description module of the logical tree structure is constructed; according to the second conditional statement and the second existence relationship, a second description module of the logical tree structure is constructed; According to the existence relationship between the first description information and the second description information, the first description module and the second description module are combined into a query description module of the logical tree structure.

7. The method according to claim 1, characterized in that Parsing the conditional statements in the received user description information and the relationship between the conditional statements, including: Obtaining a word or sentence corresponding to the conditional identifier in the user description information as a conditional statement; The words and sentences corresponding to the relationship identifiers between the conditional statements are obtained as the existence relationship between the conditional statements.

8. The method according to claim 1, characterized in that: Parsing the conditional statements in the received user description information and the relationship between the conditional statements, including: Performing semantic recognition on the user description information, and obtaining words and sentences in the user description information that are in a preset condition library as the conditional statement; Acquire words and sentences describing the relationship between the conditional statements as existence description information between the conditional statements; According to a preset correspondence between the existence description information and the existence relationship, the existence relationship corresponding to the acquired existence description information is determined.

9. The method according to claim 1, characterized in that: The step of selecting a user satisfying the condition of the query description module from the target database includes: Performing subsequent traversal on the query description module to generate a query statement; A user is selected from the target database according to the query statement.

10. The method according to claim 1, characterized in that The target database includes user data updated in real time.

11. The method according to claim 10, characterized in that The user data includes user behavior characteristics of each user, and the user behavior characteristics are generated by the user's operation on the electronic device.

12. The method according to claim 1, characterized in that The conditional statement obtained by parsing the user description information includes a first feature and a second feature, the first feature and the second feature exist in a simultaneous existence relationship, the first feature is a feature possessed by users in the first user group, and the second feature is a feature possessed by users in the second user group; The method further comprises: Deleting users satisfying the conditions of the query description module from the first user group; or Users meeting the conditions of the query description module are deleted from the second user group.

13. A user selection device, characterized in that: The device comprises: A parsing unit, used for parsing conditional statements in the received user description information and the existence relationship between the conditional statements; A module receiving unit, used to receive one or more query description modules generated by other servers or terminals; A construction unit, configured to construct a query description module of a logical tree structure according to the conditional statements and the existence relationship, wherein the query description module represents the existence relationship between the conditional statements, and combine the received query description module with the currently generated query description module into the query description module of the logical tree structure according to the existence relationship between the one or more query description modules and the currently generated query description module; The selection unit is used to select users who meet the conditions of the query description module from the target database.

14. The device according to claim 13, characterized in that The construction unit is used to construct the query description module of the logical tree structure by taking the conditional statements as leaf nodes and the existence relationship between the conditional statements as the root nodes corresponding to the leaf nodes.

15. The device according to claim 13 or 14, characterized in that The logical tree structure is a logical binary tree.

16. The device according to claim 13, characterized in that The existence relationship includes simultaneous existence or alternative existence.

17. A server, characterized in that: include: one or more processors; Memory; One or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs are executed by the processors to perform the method according to any one of claims 1 to 12.

18. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores program code, and the program code can be called by a processor to execute the method according to any one of claims 1 to 12.

Citation Information

Patent Citations

  • Search method, index data generation method and device on the basis of static Cache

    CN105335402A

  • A method and a system for searching relational complex management information system data in a natural language

    CN109918453A