Systems and methods for determining if a user is a member of a defined segment
AssigneeBraze, Inc.
InventorJonathan HYMAN
Life of this patent
Estimating the term…
Abstract
Systems and methods for determining whether a user is part of a defined segment of all users makes use of a database of user information that includes rapidly searchable field values. Predetermined segment definitions can be evaluated using information from a user's record in the database to rapidly determine if the user is a member of the segment.
Claims13
A method of determining whether a user is a member of a segment of users that is defined by a compound segment definition comprising a plurality of user characteristics or search terms, the method comprising:
- generating a compound segment definition by selecting a plurality of user characteristics or search terms and the value of each user characteristic or search term that a user must have to be included in the compound segment definition;
- calculating a cardinality for each of the user characteristics that make up the compound segment definition by:
- determining for a first user characteristic of the compound segment definition, the number of different values of the first user characteristic that are each shared by more than X % of all users within a test group of users, that number being the cardinality of the first user characteristic;
- repeating the determining step for each of the other user characteristics that make up the compound segment definition to determine a cardinality for each of the other user characteristics that make up the compound segment definition;
- ordering the plurality of user characteristics or search terms of the compound segment definition, at least in part, according to cardinality, with the user characteristics or search terms having the highest cardinality appearing in the compound segment definition before those user characteristics or search terms having the lowest cardinality;
- and
- determining whether a user is a member of the segment defined by the compound segment definition by evaluating each of the user characteristics in the compound segment definition in the order in which they appear in the compound segment definition.
A system for determining whether a user is a member of a segment of users that is defined by a compound segment definition comprising a plurality of user characteristics or search terms, comprising:
- means for generating a compound segment definition by selecting a plurality of user characteristics or search terms and the value of each user characteristic or search term that a user must have to be included in the compound segment definition;
- means for calculating a cardinality for each of the user characteristics that make up the compound segment definition by:
- means for determining for a first user characteristic of the compound segment definition, the number of different values of the first user characteristic that are each shared by more than X % of all users within a test group of users, that number being the cardinality of the first user characteristic;
- means for repeating the determining step for each of the other user characteristics that make up the compound segment definition to determine a cardinality for each of the other user characteristics that make up the compound segment definition;
- means for ordering the plurality of user characteristics or search terms of the compound segment definition, at least in part, according to cardinality, with the user characteristics or search terms having the highest cardinality appearing in the compound segment definition before those user characteristics or search terms having the lowest cardinality;
- and
- means for determining whether a user is a member of the segment defined by the compound segment definition by evaluating each of the user characteristics in the compound segment definition in the order in which they appear in the compound segment definition.
A system for of determining whether a user is a member of a segment of users that is defined by a compound segment definition comprising a plurality of user characteristics or search terms, comprising:
- a memory;
- and
- one or more processors that are configured to perform a method comprising:
- generating a compound segment definition by selecting a plurality of user characteristics or search terms and the value of each user characteristic or search term that a user must have to be included in the compound segment definition;
- calculating a cardinality for each of the user characteristics that make up the compound segment definition by:
- determining for a first user characteristic of the compound segment definition, the number of different values of the first user characteristic that are each shared by more than X% of all users within a test group of users, that number being the cardinality of the first user characteristic;
- repeating the determining step for each of the other user characteristics that make up the compound segment definition to determine a cardinality for each of the other user characteristics that make up the compound segment definition;
- ordering the plurality of user characteristics or search terms of the compound segment definition, at least in part, according to cardinality, with the user characteristics or search terms having the highest cardinality appearing in the compound segment definition before those user characteristics or search terms having the lowest cardinality;
- and
- determining whether a user is a member of the segment defined by the compound segment definition by evaluating each of the user characteristics in the compound segment definition in the order in which they appear in the compound segment definition.
Dependencies are inferred from the claim text.