User life cycle flow analysis method and system

By using bitmap encoding and pre-configured tag operation expression templates, the problem of high storage and computational complexity in user lifecycle management is solved, enabling efficient and low-cost user lifecycle flow analysis.

CN122152889APending Publication Date: 2026-06-05中邮消费金融有限公司

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
中邮消费金融有限公司
Filing Date
2026-02-06
Publication Date
2026-06-05

Smart Images

  • Figure CN122152889A_ABST
    Figure CN122152889A_ABST
Patent Text Reader

Abstract

The application provides a user life cycle flow conversion analysis method and system, and belongs to the technical field of user life cycle management. The method comprises the following steps: obtaining a query condition reflecting the behavior characteristics of a target user group; filling a pre-configured label operation expression template that matches a life cycle flow conversion mode expressed by the query condition with the query condition to generate a label operation expression, wherein the labels in the label operation expression at least include one of temporary labels and life cycle stage labels; obtaining a bitmap having labels in the label operation expression; and performing calculation on the obtained bitmap according to the label operation expression to determine the target user group. The above method improves the efficiency and accuracy of user life cycle flow conversion analysis, and is low in cost, scalable and configurable.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of user lifecycle management technology, specifically relating to a user lifecycle flow analysis method, a user lifecycle flow analysis system, and a computer device. Background Technology

[0002] With the current demand for refined operation of internet products, user lifecycle management has become one of the key means to improve user experience and increase user stickiness.

[0003] Currently, the bottlenecks restricting the improvement of user lifecycle management technology lie in the following aspects: 1) Storage dimension: To support multi-dimensional lifecycle analysis, multiple status fields or tags need to be stored for each user. The data volume grows linearly with the user scale, especially when historical status needs to be retained daily, the storage cost rises sharply; 2) User lifecycle flow calculation dimension: Existing methods mostly adopt a record-by-record or tag-based method based on user IDs and other user identifiers. When calculating the user lifecycle flow, it is necessary to judge and match the time of each user, which is computationally complex, has a large response delay, and cannot meet the timeliness requirements; 3) Query dimension: The query expression of complex flow paths relies on hard coding, which has poor scalability. At the same time, it does not support low-code dynamic configuration of query conditions, resulting in insufficient operational flexibility; 4) Time sequence analysis dimension of user lifecycle flow process: It involves complex window functions and related operations, which are cumbersome and make it difficult to ensure data consistency.

[0004] Therefore, it is urgent to propose technical solutions for single or joint optimization of the aforementioned bottleneck problems. Summary of the Invention

[0005] The purpose of this application is to provide a user lifecycle flow analysis method, a user lifecycle flow analysis system, and a computer device to overcome one or more of the aforementioned bottleneck problems in the prior art.

[0006] To achieve the above objectives, the first aspect of this application provides a user lifecycle flow analysis method, the user lifecycle flow analysis method comprising:

[0007] Obtain query criteria that reflect the behavioral characteristics of the target user group; The pre-configured tag operation expression template, which matches the lifecycle flow pattern expressed by the query conditions, is filled with the query conditions to generate a tag operation expression, wherein the tags in the tag operation expression include at least one of temporary tags and lifecycle stage tags. Obtain a bitmap with the labels in the label operation expression, wherein the bitmap with the lifecycle stage label and the bitmap with the temporary label are obtained by encoding user behavior data. The bit value of the user in the bitmap with the lifecycle stage label reflects the state of the corresponding user in the lifecycle stage identified by the lifecycle stage label, and the bit value of the user in the bitmap with the temporary label reflects whether the corresponding user has the user feature identified by the temporary label. Based on the tag operation expression, calculations are performed on the acquired bitmap to determine the target user group.

[0008] In a specific embodiment of this application, a bitmap with lifecycle stage labels is obtained by performing the following process: Map the user identifier in the user behavior data to an unsigned integer index, which serves as the index of the user identifier in the bitmap; For any user behavior in the user behavior data, determine the lifecycle stage in which the user behavior is located, and the bit value in the bitmap with the lifecycle stage label that identifies the lifecycle stage corresponding to the user behavior in that lifecycle stage, to obtain a bitmap with lifecycle stage label. Each lifecycle stage corresponds to a bitmap with a lifecycle stage label.

[0009] In a specific embodiment of this application, the bitmap having the temporary tag is obtained by performing the following process: Filter user information with user characteristics identified by the temporary tag from user behavior data; Generate a bitmap with the temporary tag based on the user information; In the bitmap with the temporary tag, the bit value of the user reflects whether the corresponding user has the user characteristic.

[0010] In a specific embodiment of this application, the step of filling a pre-configured tag operation expression template that matches the lifecycle flow pattern expressed by the query conditions to generate a tag operation expression includes: Parse the query conditions to determine the lifecycle flow pattern and tags expressed by the query conditions, wherein the determined tags include at least one of temporary tags and lifecycle stage tags; Select a tag operation expression template from a pre-configured set of multiple tag operation expression templates that matches the lifecycle flow pattern expressed by the query conditions; The tags determined by parsing the query conditions are filled into the tag operation expression template that matches the life cycle flow pattern expressed by the query conditions, thereby generating the tag operation expression.

[0011] In a specific embodiment of this application, the user lifecycle flow analysis method further includes: Persistent storage includes a bitmap with lifecycle stage tags and a bitmap with the aforementioned temporary feature tags; Pre-read multiple bitmaps with lifecycle stage tags from persistent storage to the local cache; Read the bitmap containing the lifecycle stage tags in the tag operation expression from the local cache; If there is a lifecycle stage tag for a corresponding bitmap that has not been read, then the bitmap with that lifecycle stage tag is read from the persistent storage and the read bitmap is stored in the local cache. Read the bitmap containing the temporary tags in the tag operation expression from the persistent storage; If there is a temporary tag for a corresponding bitmap that has not been read, then user information with user characteristics identified by the temporary tag is filtered out from the user behavior data, a bitmap with the temporary tag is generated based on the user information, and it is persistently stored.

[0012] In a specific embodiment of this application, the user lifecycle flow analysis method further includes: Persistent storage includes a bitmap with lifecycle stage tags and a bitmap with the aforementioned temporary feature tags; Pre-read multiple bitmaps from persistent storage to the local cache; Read the bitmap containing the tags in the tag operation expression from the local cache; If there is a lifecycle stage tag for a corresponding bitmap that has not been read, then the bitmap with that lifecycle stage tag is read from the persistent storage and the read bitmap is stored in the local cache. If a temporary tag exists that is not read from the corresponding bitmap, the bitmap with the temporary tag is read from the persistent storage. If the bitmap is not read from the persistent storage, user information with user characteristics identified by the temporary tag is filtered from the user behavior data, and a bitmap with the temporary tag is generated based on the user information and stored persistently.

[0013] In a specific embodiment of this application, generating a bitmap with the temporary tag based on the user information includes: The user identifier in the user information is mapped to an unsigned integer index, which serves as the index of the user identifier in the bitmap; Different bit values ​​are assigned to the user identifier in the user information and the other user identifiers in the user behavior data besides the user identifier in the user information, to obtain a bitmap with the temporary tag.

[0014] In a specific embodiment of this application, the bitmap with lifecycle stage tags uses the name of the lifecycle stage tag and the occurrence time of the user behavior in the user behavior data as unique row identifiers; when the lifecycle transition mode is a transformation from a previous lifecycle stage to a later lifecycle stage, the determined tags at least include lifecycle stage tags; the generation of tag operation expressions by filling a pre-configured tag operation expression template that matches the lifecycle transition mode expressed by the query conditions with the query conditions further includes: Parse the query conditions to determine the transition conditions from the pre-lifecycle stage to the post-lifecycle stage; Using the user's first contact time that meets the conversion conditions as the time reference, and based on the time reference and the time offset between the pre-lifecycle stage and the post-lifecycle stage in the conversion conditions, the time points corresponding to the pre-lifecycle stage label and the post-lifecycle stage label are determined respectively. The time points are the user behavior time points within the lifecycle stage identified by the corresponding lifecycle stage label. The time point is associated with the corresponding lifecycle stage label so that when each label to be filled in the label operation expression template that matches the lifecycle flow pattern expressed by the query conditions, the time point is filled in.

[0015] A second aspect of this application provides a user lifecycle flow analysis system, the user lifecycle flow analysis system comprising: The interaction layer is used to obtain query conditions that reflect the behavioral characteristics of the target user group; An expression generation layer is used to fill a pre-configured tag operation expression template that matches the lifecycle flow pattern expressed by the query conditions with the query conditions, and generate a tag operation expression, wherein the tags in the tag operation expression include at least one of temporary tags and lifecycle stage tags. The tag calculation execution layer is used to perform calculations on the acquired bitmap based on the tag operation expression to determine the target user group; The bitmap data preparation layer is used to obtain bitmaps with labels in the label operation expression. The bitmap with lifecycle stage labels and the bitmap with temporary labels are obtained by encoding user behavior data. The bit value of the user in the bitmap with lifecycle stage labels reflects the state of the corresponding user in the lifecycle stage identified by the lifecycle stage label. The bit value of the user in the bitmap with temporary labels reflects whether the corresponding user has the user characteristics identified by the temporary label.

[0016] In a specific embodiment of this application, the bitmap data preparation layer is connected to a persistent storage module and a search engine, and the bitmap data preparation layer includes a real-time computing engine module; The search engine is used to filter user information with user characteristics identified by the temporary tag from user behavior data; The real-time computing engine module is used to call the real-time computing engine so that the real-time computing engine maps the user identifier in the user behavior data to an unsigned integer index, and maps the user identifier in the user information to an unsigned integer index, as the index of the user identifier in the bitmap; The real-time computing engine module is also used to determine the lifecycle stage of any user behavior in the user behavior data, and the bit value in the bitmap with a lifecycle stage label that identifies the lifecycle stage corresponding to the user behavior in that lifecycle stage, to obtain a bitmap with lifecycle stage labels, wherein each lifecycle stage corresponds to a bitmap with a lifecycle stage label. The real-time computing engine module is also used to assign different bit values ​​to the user identifier in the user information and the other user identifiers in the user behavior data besides the user identifier in the user information, to obtain a bitmap with the temporary tag; The persistent storage module is used to persistently store the bitmap generated by the real-time computing engine module.

[0017] A third aspect of this application provides a computer device, the computer device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the user lifecycle flow analysis method according to the first aspect of this application.

[0018] The above technical solution jointly optimizes user lifecycle flow analysis from the perspectives of storage, user lifecycle flow calculation, and query, thereby improving the efficiency of user lifecycle flow analysis and also being configurable, scalable, and low-cost.

[0019] Other features and advantages of the embodiments of this application will be described in detail in the following detailed description section. Attached Figure Description

[0020] The accompanying drawings are provided to further illustrate the embodiments of this application and form part of the specification. They are used together with the following detailed description to explain the embodiments of this application, but do not constitute a limitation on the embodiments of this application. In the drawings: Figure 1 The diagram shown is a flowchart of a user lifecycle flow analysis method according to an embodiment of this application; Figure 2 The diagram shown is a schematic representation of the process of pre-curing a bitmap with a disposable label according to an embodiment of this application; Figure 3 The diagram illustrates the process of reading a bitmap from a local storage system according to an embodiment of this application. Figure 4 The diagram shown is a block diagram of a user lifecycle flow analysis system according to an embodiment of this application. Figure 5 The diagram shown is a tag computing architecture diagram according to an embodiment of this application; Figure 6 The diagram shown is a block diagram of a computer device according to an embodiment of this application. Detailed Implementation

[0021] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are only for illustration and explanation of the embodiments of this application and are not intended to limit the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.

[0022] It should be noted that if the embodiments of this application involve directional indicators (such as up, down, left, right, front, back, etc.), the directional indicators are only used to explain the relative positional relationship and movement of each component in a certain specific posture (as shown in the figure). If the specific posture changes, the directional indicators will also change accordingly.

[0023] Furthermore, if the embodiments of this application involve descriptions such as "first" or "second," these descriptions are for descriptive purposes only and should not be construed as indicating or implying their relative importance or implicitly specifying the number of technical features indicated. Therefore, features defined with "first" or "second" may explicitly or implicitly include at least one of those features. Additionally, the technical solutions of various embodiments can be combined with each other, but this must be based on the ability of those skilled in the art to implement them. If the combination of technical solutions is contradictory or impossible to implement, it should be considered that such a combination of technical solutions does not exist and is not within the scope of protection claimed in this application.

[0024] Regarding the first bottleneck problem mentioned in the background technology, the existing technology mostly adopts a "user-centric" storage model, where each user's state is stored independently. It does not take advantage of the sparsity of user behavior and the commonality of the group in the storage design, which leads to a large consumption of storage resources and makes it difficult to support a scale of hundreds of millions of users.

[0025] Regarding the third bottleneck issue raised in the background technology, specifically, for example, for composite query conditions such as "first-time reach + stage transition" (e.g., "first reach on day T and in the potential stage on day T, entering the introduction stage on day T+10"), developers need to manually write SQL or code logic. Each new flow path requires redevelopment, resulting in long development cycles and high maintenance costs. Furthermore, when operations personnel need to adjust the lifecycle definition or add new analysis dimensions, they must rely on the data team to redevelop ETL tasks or modify tag logic, leading to delayed responses and hindering "self-service" analysis.

[0026] The fourth bottleneck issue raised in the background technology is specifically manifested in the lack of a unified computing model based on time alignment for MOB (Month on Book) type time series analysis, the disconnect between state storage and time benchmark, and the inability to directly support time series analysis "anchored to the start of the user lifecycle".

[0027] Example 1 To overcome one or more of the aforementioned bottleneck problems, this application provides a user lifecycle flow analysis method. This method achieves flow analysis of the user lifecycle through the following steps: obtaining query conditions reflecting the behavioral characteristics of a target user group; filling a pre-configured tag operation expression template that matches the lifecycle flow pattern expressed by the query conditions with the query conditions to generate a tag operation expression, wherein the tags in the tag operation expression include at least one of temporary tags and lifecycle stage tags; obtaining a bitmap containing the tags in the tag operation expression, wherein the bitmap containing lifecycle stage tags and the bitmap containing temporary tags are obtained by encoding user behavior data, the bit value of the user in the bitmap containing lifecycle stage tags reflects the state of the corresponding user in the lifecycle stage identified by the tag, and the bit value of the user in the bitmap containing temporary tags reflects whether the corresponding user possesses the user characteristics identified by the temporary tag; and performing calculations on the obtained bitmap according to the tag operation expression to determine the target user group.

[0028] Specifically, the temporary label is relative to the lifecycle stage label. The lifecycle stage label is a fixed label used to identify the bitmap obtained after encoding user behavior data in user lifecycle stage analysis. The temporary label is obtained by parsing the dynamically changing query conditions and is semantically consistent with the dynamic query conditions. The temporary label is also called a one-time label and identifies user characteristics. For example, a temporary label identifies a certain type of user characteristic. In a bitmap with a certain temporary label, the bit value of the user reflects whether the corresponding user has that type of user characteristic. For example, a bit value of "1" indicates that the corresponding user has that type of user characteristic, and a bit value of "0" indicates that the corresponding user does not have that type of user characteristic.

[0029] Understandably, the target user group refers to the user group targeted by the user lifecycle flow analysis; the calculation for the bitmap can be a single bitmap calculation or a set operation based on multiple bitmaps, and the label operation expression contains logical operators between labels. Among them, when performing set operations on multiple bitmaps, the logical operators include Boolean operators, etc.; the lifecycle flow pattern refers to the analysis pattern for the lifecycle flow path, such as time offset and state transition, etc. Specifically, the type of lifecycle flow pattern depends on the specific application scenario and requirements, and this application will not list them all.

[0030] To address the shortcomings of existing user lifecycle analysis solutions in terms of storage, computation, and query dimensions, this application's technical solution jointly optimizes these dimensions. Specifically: First, it adopts bitmap-based user behavior data encoding, abandoning the "user-centric" storage model. Bitmaps are used to aggregate and structure user behavior data for group states, saving storage resources. The bitmap types include those with user lifecycle stage labels and those with temporary labels, where temporary labels identify user characteristics. Second, based on aggregated and structured bitmap storage, the native set operations supported by bitmaps, such as AND, OR, NOT, and NOR, can be utilized to achieve rapid bitmap computation, improving the efficiency of user lifecycle calculation and avoiding reliance on... The first point is that the solution relies on high-cost full table scans and multi-table joins. Secondly, the above technical solution pre-configures tag operation expression templates. The tag system is non-static, including temporary tags and lifecycle stage tags. By combining query expression templates, configurable templates, and a non-static tag system, the efficiency of query expression construction is improved, reducing the development cycle for complex flow path expressions. It also has low maintenance costs, strong scalability, supports low-code dynamic configuration, and improves operational flexibility, unlike the tightly coupled design of user behavior data storage, querying, and calculation in existing user lifecycle flow analysis solutions.

[0031] In summary, the technical solution described in this application achieves joint optimization of multiple dimensions in user lifecycle flow analysis, and has the advantages of high performance, low latency, configurability, and scalability.

[0032] Figure 1 The diagram shows a specific implementation flowchart of the user lifecycle flow analysis method provided in this application. In this specific embodiment, the user lifecycle flow analysis method can be applied to a backend server and specifically includes the following steps 202 to 210.

[0033] Step 202: Encode the user behavior data into a bitmap with lifecycle stage labels, wherein the bit value of the user in the bitmap with lifecycle stage labels reflects the state of the corresponding user in the lifecycle stage identified by the lifecycle stage label.

[0034] It is understood that the bit value refers to the value of a bit.

[0035] For example, lifecycle stages include the initial reach stage, potential stage, introduction stage, growth stage, and maturity stage.

[0036] In the first specific implementation, step 202 includes: mapping the user identifier in the user behavior data to an unsigned integer index, which serves as the index of the user identifier in the bitmap; for any user behavior in the user behavior data, determining the lifecycle stage of the user behavior and the bit value of the user behavior in the bitmap corresponding to that lifecycle stage, thus obtaining the bitmap; wherein, each lifecycle stage corresponds to a separate bitmap, and each bitmap has a lifecycle stage label used to identify the corresponding lifecycle stage. By using unsigned integer indexes and bitmaps, the storage structure of the user behavior data is optimized, supporting subsequent bitmap-based user lifecycle flow analysis. In another specific implementation, step 202 includes: mapping the user identifier in the user behavior data to an unsigned integer index, which serves as the index of the user identifier in the compressed bitmap; for any user behavior in the user behavior data, determining the lifecycle stage of the user behavior and the bit value in the compressed bitmap corresponding to that lifecycle stage, thus obtaining a compressed bitmap; wherein each lifecycle stage corresponds to a separate compressed bitmap, and each compressed bitmap has a lifecycle stage label for identifying the corresponding lifecycle stage. Compared to using a regular bitmap, combining unsigned integer indexes and compressed bitmaps further optimizes the storage structure of user behavior data, supporting subsequent bitmap-based user lifecycle flow analysis.

[0037] For example, this application embodiment uses compressed bitmaps to store user states, which reduces space usage by more than 90% compared to the existing "one user, one state field" storage mode. For instance, the states of 100 million users only require about 12MB of storage space (1e8 bits ≈ 12.5MB).

[0038] Specifically, the user identifier can be a user ID, and the compressed bitmap format can be RoaringBitmap. The bitmap is persistently stored with lifecycle stage tags. For example, it can be persistently stored in a local storage system with sharded storage, parallel loading capabilities, and distributed computing capabilities. The local storage system can be a database, such as the HBase database used in a specific application of this application, to meet the high-concurrency, low-latency query requirements of a very large user base.

[0039] Furthermore, to ensure that the subsequent bitmap calculation structure can accurately reconstruct the user identifier that is readable by the business, the specific process of mapping the user identifier in the user behavior data to an unsigned integer index as the index of the user identifier in the compressed bitmap includes: based on a bidirectional mapping table, mapping the user identifier in the user behavior data to an unsigned integer index as the index of the user identifier in the compressed bitmap; wherein, the bidirectional mapping table establishes a bidirectional mapping relationship between the user identifier and the unsigned integer index.

[0040] In one specific implementation, user behavior data is first obtained from the upstream data pipeline. Key fields such as user ID, user behavior type, timestamp, channel, and reach status are parsed from the user behavior data. Then, a bidirectional mapping table is used to map heterogeneous user identifiers to globally unique unsigned integer indices. Based on the semantics of user behavior, user behaviors are categorized into specific user lifecycle stages. Next, user behaviors are encoded into bit values ​​within a compressed bitmap corresponding to their respective lifecycle stage. After encoding all user behaviors in the user behavior data, a bitmap with lifecycle stage labels is obtained. In this bitmap, a bit value of 1 for a user indicates that the user is in that lifecycle stage (i.e., alive), while a bit value of 0 indicates that the user is not in that lifecycle stage.

[0041] As shown in Table 1, in one specific implementation, the user ID is converted into a 32-bit unsigned integer and used as the index value of RoaringBitmap. 1~N+2147483648 represent the unsigned indexes corresponding to all users in the user behavior data.

[0042] Table 1

[0043] Step 204: Obtain query conditions that reflect the behavioral characteristics of the target user group.

[0044] Understandably, in order to support the subsequent semantic parsing of query conditions to obtain the lifecycle flow pattern of the target user group, the behavioral characteristics of the target user group reflected by the query conditions must at least include the lifecycle flow pattern.

[0045] For example, the query conditions can be obtained through the front-end interactive interface. For instance, the target user group for user lifecycle flow analysis is: "Within a specified lifecycle analysis time window, users experience a transition from the potential stage to the introduction stage." To establish query conditions that reflect the behavioral characteristics of this target user group, the multi-dimensional configuration items displayed on the front-end interactive interface need to be configured. These multi-dimensional configuration items include, but are not limited to: user vintage time (MOB), lifecycle analysis window period, reach type, reach channel, customer behavior occurrence time, and lifecycle stage. For example, if the target user group is: "Customer behavior occurrence time 20220101~20220130, window period: 20 days, user vintage time (MOB) 10 days, MOB0 potential stage to MOB1 introduction stage," then the settings for the multi-dimensional configuration items are as follows: user vintage time (MOB) is 10 days, lifecycle analysis window period is 20 days, customer behavior occurs 20220101~20220130, and the lifecycle stages are the potential stage before conversion and the introduction stage after conversion.

[0046] Step 206: Fill the pre-configured tag operation expression template that matches the lifecycle transition pattern expressed by the query conditions with the query conditions to generate a tag operation expression. The tags in the tag operation expression include at least one of temporary tags and lifecycle stage tags.

[0047] Understandably, to meet the dynamically set query conditions in the front-end interactive interface, multiple tag operation expression templates are pre-configured. These templates are configurable and reusable, thus adapting to various flexible query needs, especially for queries involving complex lifecycle paths. For example, a lifecycle path of "first touch + stage transition" can be abstracted into a tag operation expression template. When acquiring target user groups that conform to this lifecycle path, operators only need to set parameters such as the first touch date and lifecycle stage type in the front-end interactive interface. The tag operation expressions generated by the templates are used for bitmap operations. Therefore, it is understandable that the templates include specific tags and the logical operation relationships between the bitmaps identified by these tags. The bitmaps identified by the tags include at least one of the bitmaps with lifecycle stage tags and the bitmaps with temporary tags. The tag operation expression templates are parameterized templates.

[0048] In one specific implementation, step 206 includes the following steps a1 to a3.

[0049] Step a1: Parse the query conditions and determine the lifecycle flow pattern and tags expressed by the query conditions. The determined tags include at least one of temporary tags and lifecycle stage tags.

[0050] Specifically, the semantic logic of the query conditions is analyzed, and the lifecycle flow pattern and tags determined are consistent with the semantic logic expressed by the query conditions.

[0051] For example, by defining a temporary tag as "specific channel customer" through the reach channel in the multi-dimensional configuration items, the bit value of a user in the bitmap with this temporary tag reflects whether the corresponding user has the user characteristic identified by this temporary tag. In this case, the user characteristic refers to the user's reach channel being the specific channel. User characteristics can be determined based on specific user lifecycle flow analysis needs. For example, if it is necessary to understand the lifecycle flow path of users in a specific channel, the user's reach channel can be defined as the specific channel.

[0052] Step a2: Select a tag operation expression template from a number of pre-configured tag operation expression templates that matches the lifecycle flow pattern expressed by the query conditions.

[0053] Step a3: Fill the tags to be filled in the tag operation expression template that matches the life cycle flow pattern expressed by the query conditions with the tags determined by parsing the query conditions, and generate the tag operation expression.

[0054] To enable the bitmap with lifecycle stage labels and the pre-configured label operation expression template in this application embodiment to naturally support MOB-type timing analysis, i.e., to support the following types of lifecycle transition patterns: the transformation from a previous lifecycle stage to a later lifecycle stage (stage transition pattern), the row unique identifier in the bitmap storage structure is further specialized, and label operation expression templates matching the above-mentioned types of lifecycle transition patterns are pre-configured. The previous lifecycle stage and the later lifecycle stage are consecutive lifecycle stages, which can be two consecutive lifecycle stages or two non-consecutive lifecycle stages.

[0055] Specifically, the row unique identifier is the name of the lifecycle stage label and the time point of occurrence of the user behavior in the user behavior data. For example, the row unique identifier is the row key. When the lifecycle transition mode is the stage transition mode described above, step 206 includes the following steps b1 to b5.

[0056] Step b1: Parse the query conditions and determine the lifecycle flow pattern, tags, and transformation conditions from the previous lifecycle stage to the later lifecycle stage expressed by the query conditions. The determined tags include at least the lifecycle stage tags.

[0057] Step b2: Using the first contact time of a user that meets the above conversion conditions as the time reference, and based on the time reference and the time offset between the pre-lifecycle stage and the post-lifecycle stage in the above conversion conditions, determine the time points corresponding to the pre-lifecycle stage and the post-lifecycle stage respectively. The time points are the user behavior time points within the lifecycle stage identified by the corresponding lifecycle stage label.

[0058] Step b3: Associate the time point with the corresponding lifecycle stage label.

[0059] Step b4: Select a tag operation expression template from the pre-configured multiple tag operation expression templates that matches the lifecycle flow pattern expressed by the above query conditions.

[0060] Step b5 involves parsing the lifecycle stage tags associated with corresponding time points determined by the above query conditions, and filling them into the tag operation expression template that matches the lifecycle flow pattern expressed by the query conditions, so that the tags to be filled are filled and associated with the time points corresponding to the lifecycle stage tags being filled; if the tags determined by the query conditions also include temporary tags, the temporary tags determined by the above query conditions will also be parsed and filled into the tag operation expression template that matches the lifecycle flow pattern expressed by the query conditions, thereby obtaining a tag operation expression that is consistent with the semantics of the above query conditions.

[0061] In the above technical solution, the name of the lifecycle stage label and the time point of occurrence of the user behavior in the user behavior data are used as unique identifiers for the row. By constructing a time-aligned bitmap query path through the method of "user's first contact time + time offset", it naturally supports MOB-type time-series analysis based on the user's lifecycle start point, avoids the statistical deviation caused by inconsistent time bases in existing solutions, and improves the accuracy of user lifecycle flow analysis.

[0062] Therefore, for MOB-type time-series analysis, the time-aligned bitmap query path can be represented as a tag operation expression of "first touch _T & stage A _T & stage B _{T+Δ}", which accurately depicts the user's transformation behavior from one lifecycle stage to another on the MOB timeline (such as "MOB=0 potential stage → MOB=1 introduction stage"), and realizes accurate flow analysis across time windows.

[0063] For example, operators set multi-dimensional configuration items (user vintage time (MOB), lifecycle analysis window, reach type, reach channel, and customer behavior occurrence time) through the front-end interactive interface to generate query conditions to analyze target user groups with the following behavioral characteristics: within a specified behavior time window, users experience a conversion from potential to acquisition stage. The semantics of the query conditions are parsed to determine that the lifecycle transition pattern expressed by the query conditions is a stage transition conversion. The pre-lifecycle stage is the MOB0 potential stage, and the post-lifecycle stage is the MOB1 acquisition stage. The identified tags include temporary tags, initial reach stage tags, potential stage tags, and acquisition stage tags. The temporary tag is "MOB=6 users reached via SMS in the last 30 days". The identified conversion conditions include: customer behavior time 20220101~20220130, time window period: 20 days, user vintage time (MOB) 10 days. Based on the aforementioned content, a tag operation expression template matching the above stage transition conversion is filled in, resulting in the following tag operation expression: (Temporary tag & Initial reach tag_20220101 & Potential stage tag_20220101 & Introduction stage tag_20220111)|| (Temporary tag & Initial reach tag_20220102 & Potential stage tag_20220102 & Introduction stage tag_20220112)|| (Temporary tag & Initial reach tag_20220103 & Potential stage tag_20220103 & Introduction stage tag_20220113)|| ... (Temporary tag & Initial reach tag_20220119 & Potential stage tag_20220119 & Introduction stage tag_20220129)|| (User Feature Temporary Tag & First Reach Tag_20220120 & Potential Stage Tag_20220120 & Introduction Stage Tag_20220130).

[0064] Step 208: Obtain a bitmap with a target label, where the target label refers to the label in the label operation expression.

[0065] In one specific implementation, to speed up the acquisition efficiency of bitmaps, multiple bitmaps with lifecycle stage tags are pre-read from persistent storage to the local cache. Thus, step 208 specifically includes the following steps c1 to c2.

[0066] Step c1: Read the bitmap containing the lifecycle stage label in the label operation expression from the local cache; if there is a lifecycle stage label that is not read from the corresponding bitmap, read the bitmap containing the lifecycle stage label from the persistent storage and store the read bitmap in the local cache.

[0067] Step c2: Read the bitmap with the temporary tag in the tag operation expression from the persistent storage; if there is a temporary tag for a corresponding bitmap that has not been read, filter out user information with user characteristics identified by the temporary tag from the user behavior data, generate a bitmap with the temporary tag based on the user information, and persist it.

[0068] In another specific implementation, in order to speed up the acquisition efficiency of bitmaps, multiple bitmaps are pre-read from persistent storage to local cache. Thus, step 208 specifically includes the following steps d1 to d2.

[0069] Step d1: Read the bitmap containing the tags in the tag operation expression from the local cache.

[0070] Step d2: If there is a lifecycle stage tag for a corresponding bitmap that has not been read, then read the bitmap with the lifecycle stage tag from the persistent storage and store the read bitmap in the local cache; if there is a temporary tag for a corresponding bitmap that has not been read, then read the bitmap with the temporary tag from the persistent storage. If the bitmap is not read from the persistent storage, filter out user information with user characteristics identified by the temporary tag from the user behavior data, generate a bitmap with the temporary tag based on the user information, and persist it.

[0071] Specifically, the process of generating a bitmap with the temporary label based on the selected user information includes: mapping the user identifier in the user information to an unsigned integer index, which serves as the index of the user identifier in the bitmap; assigning different bit values ​​to the user identifier in the selected user information and the other user identifiers in the user behavior data besides the user identifier in the user information, to obtain a bitmap with the temporary label.

[0072] It's important to understand that bitmaps with temporary tags in persistent storage can be pre-stamped or accumulated through historical queries. Therefore, bitmaps with temporary tags dynamically generated during historical queries are all stored in persistent storage.

[0073] Specifically, the process of pre-depositing a bitmap with a temporary tag in persistent storage includes: obtaining a specific temporary tag from the front-end interactive interface; querying user information with specific user characteristics identified by the specific temporary tag from user behavior data; generating a bitmap with the specific temporary tag based on the queried user information, wherein the bit value of the user in the bitmap with the specific temporary tag reflects whether the corresponding user has specific user characteristics; and persistently storing the bitmap with the specific temporary tag.

[0074] The bitmap described above can be compressed.

[0075] See Figure 2 , Figure 2 This demonstrates the process of pre-depositing bitmaps with one-time tags into an HBase database, or constructing and persistently storing bitmaps with one-time tags in historical queries into an HBase database, specifically including the following steps e1 to e4. Specifically, it involves searching for user information with temporary tag identifiers from user behavior data by calling the Elasticsearch engine; the front-end interactive interface is a lifecycle dashboard.

[0076] Step e1: Obtain a one-time tag from the front-end lifecycle dashboard.

[0077] Step e2 involves calling the ES engine in a multi-threaded manner to search for user information with specific user characteristics identified by specific temporary tags from user behavior data.

[0078] Step e3: Generate a bitmap with the specific temporary tag based on the retrieved user information.

[0079] Step e4: Persist the bitmap with the specific temporary label to the HBase database.

[0080] See Figure 3 , Figure 3 The process of reading a bitmap with tags in the tag operation expression from a local storage system is illustrated. The tags in the tag operation expression include temporary tags and lifecycle stage tags. Specifically, it includes steps f1 to f3. The persistent storage in the local storage system is an HBase database. The process involves calling the Elasticsearch engine to search for user information with user characteristics identified by temporary tags from user behavior data. The front-end interactive interface is a lifecycle dashboard.

[0081] Step f1: Query the bitmaps with lifecycle stage labels in HBase for the past 3 years, and add the obtained bitmaps with lifecycle stage labels for the past 3 years to the local cache.

[0082] Step f2: Read the bitmap with the lifecycle stage label in the label operation expression from the local cache. If a bitmap with a lifecycle stage label cannot be read from the local cache (miss), then read the bitmap corresponding to the lifecycle stage label from the HBase database and add the read bitmap to the local cache.

[0083] Step f3: Read the bitmap containing the one-time tag in the tag operation expression from the HBase database. If there is a one-time tag that is not read from the corresponding bitmap, filter out the user information with the user characteristics identified by the one-time tag from the user behavior data, generate a bitmap with the one-time tag based on the user information, and persist it.

[0084] Step 210: Based on the tag operation expression generated in step 206, perform bitmap calculations on the obtained bitmap to determine the target user group.

[0085] Specifically, the bitmap calculation logic is determined based on the tag operation expression generated in step 206, and bitmap calculation is performed on the bitmap obtained in step 208 based on the bitmap calculation logic to determine the target user group.

[0086] Taking the following target user group analysis as an example: within a specified behavioral time window, users experience a conversion from potential to acquisition stage. The initial contact channel is SMS. The tag operation expression generated in step 206 includes 20 sets of sub-expressions, each containing 4 bitmap tags. Taking the first set of sub-expressions as an example, its 4 bitmaps are represented as: Temporary Tag.bitmap; Initial Contact_SMS_Tag_20220101.bitmap; Potential Stage Tag_20220101.bitmap; Acquisition Stage Tag_20220111.bitmap. A total of 20 × 4 = 80 Roaring Bitmap objects are loaded from these 20 sets of sub-expressions. Then, bitmap operations are performed. Taking the first group of sub-expressions as an example, the corresponding bitmap calculation logic (AND logic) is as follows: Temporary tag ∩ First Contact_SMS_Tag_20220101 ∩ Potential Stage Tag_20220101 ∩ Introduction Stage Tag_20220111). The results of each group of sub-expressions are then ORed to obtain the final target user group set. User behavior of the target user group can be stored using a bitmap structure; that is, temporary tags are assigned to the target user group, the user behavior is encoded into a bitmap with that temporary tag, and the bitmap is serialized into a byte array and returned to the front-end interface. The front-end interface can draw a Sankey diagram of the user lifecycle flow to display the user lifecycle flow.

[0087] Example 2 Corresponding to the user lifecycle flow analysis method provided in the above embodiments, this application provides a user lifecycle flow analysis system. Specifically, see [link to relevant documentation]. Figure 4 The user lifecycle analysis system includes: The interaction layer is used to obtain query conditions that reflect the behavioral characteristics of the target user group; An expression generation layer is used to fill a pre-configured tag operation expression template that matches the lifecycle flow pattern expressed by the query conditions with the query conditions, and generate a tag operation expression, wherein the tags in the tag operation expression include at least one of temporary tags and lifecycle stage tags. The tag calculation execution layer is used to perform calculations on the acquired bitmap based on the tag operation expression to determine the target user group; The bitmap data preparation layer is used to obtain bitmaps with labels in the label operation expression. The bitmap with lifecycle stage labels and the bitmap with temporary labels are obtained by encoding user behavior data. The bit value of the user in the bitmap with lifecycle stage labels reflects the state of the corresponding user in the lifecycle stage identified by the lifecycle stage label. The bit value of the user in the bitmap with temporary labels reflects whether the corresponding user has the user characteristics identified by the temporary label.

[0088] Specifically, the user lifecycle flow analysis system can achieve the following: Figure 1 The embodiments shown and other related method embodiments in this application. The process by which each module in the user lifecycle flow analysis system provided in this application implements its respective function can be specifically referred to the foregoing. Figure 1 The descriptions of the embodiments shown and other related method embodiments are not repeated here.

[0089] It should be noted that the information interaction and execution processes between the aforementioned interaction layer, expression generation layer, tag calculation and execution layer, and bitmap data preparation layer are based on the same concept as the method embodiments of this application. Their specific functions and technical effects can be found in the method embodiments section, and will not be repeated here. Furthermore, all of the above modules can be applied to computing devices that include memory and a processor.

[0090] In one specific implementation, the expression generation layer calls the Velocity template engine to populate a pre-configured tag operation expression template that matches the lifecycle flow pattern expressed by the query conditions, thereby generating a tag operation expression. The tag operation expression includes at least one of temporary tags and lifecycle stage tags.

[0091] In one specific implementation, the interaction layer is the front-end visual interactive interface.

[0092] In one specific implementation, the bitmap data preparation layer obtains user behavior data in real time from the upstream data pipeline. This data pipeline can be Kafka, Flink Streams, etc.

[0093] See Figure 5 As shown, the bitmap data preparation layer is connected to a persistent storage module and a search engine. The bitmap data preparation layer includes a real-time computing engine module. Specifically: the search engine is used to filter user information with user characteristics identified by the temporary tag from user behavior data; the real-time computing engine module is used to invoke the real-time computing engine to map the user identifier in the user behavior data to an unsigned integer index, and to map the user identifier in the user information to an unsigned integer index, as the index of the user identifier in the bitmap; the real-time computing engine module is also used to determine the lifecycle stage of any user behavior in the user behavior data, and the bit value in the bitmap with a lifecycle stage label corresponding to that lifecycle stage, for which the user behavior is located, to obtain a bitmap with a lifecycle stage label, wherein each lifecycle stage corresponds to a bitmap with a lifecycle stage label; the real-time computing engine module is also used to assign different bit values ​​to the user identifier in the user information and other user identifiers in the user behavior data besides the user identifier in the user information, to obtain a bitmap with the temporary tag; the persistent storage module is used to persistently store the bitmap generated by the real-time computing engine module.

[0094] Figure 5 In this system, the persistent storage module uses the HBase database, and the search engine uses Elasticsearch (ES is shown in the diagram).

[0095] In a specific implementation, such as Figure 3 As shown, the interaction layer obtains query conditions from the external lifecycle dashboard, and the tag calculation execution layer calls the tag calculation service so that the tag calculation service can perform calculations on the obtained bitmap according to the tag operation expression to determine the target user group. Specifically, the interaction layer of the user lifecycle flow analysis system obtains the query conditions sent by the lifecycle dashboard through an HTTP interface, and the tag calculation execution layer of the user lifecycle flow analysis system calls the tag calculation service by creating a Dubbo interface.

[0096] Figure 3In this process, the tag calculation service connects to a database, such as an Oracle database, which is used to store the calculation status of temporary tags. If the stored calculation status is "in progress", it means that the creation and persistence of the bitmap with temporary tags has not yet been completed, and the temporary tag ID has not been assigned to the temporary tag. If the stored calculation status is "completed", it means that the creation and persistence of the bitmap with temporary tags has been completed.

[0097] In summary, the aforementioned user lifecycle flow analysis system can utilize bitwise operations (AND, OR, NOT) of bitmaps to perform intersection, union, and difference calculations of group states, transforming the O(N) complexity calculation based on user ID traversal in existing solutions into bit-level parallel O(1)~O(log N) operations. For example, counting the number of users "flowing from the potential stage to the introduction stage" can be completed with only one bitmap AND operation, reducing the response time from minutes to milliseconds, significantly improving the real-time performance of analysis, and supporting high-concurrency queries and real-time operational decisions. The batch processing capability of bitmaps greatly reduces CPU and I / O load, and system resource consumption decreases. By introducing the Velocity template engine, common lifecycle flow patterns (such as "first touch + stage transition") are abstracted into reusable parameterized templates. Operations personnel only need to configure parameters such as date and stage type, and the system can automatically generate complete multi-condition combined query expressions. For example, the flow analysis from MOB0 to MOB1 does not require development intervention. It automatically generates an OR expression containing multiple sub-conditions through templates, reducing development workload by more than 80% and realizing a low-code operation model of "configuration is analysis".

[0098] This application also provides a machine-readable storage medium storing a program that, when executed by a processor, implements the above-described user lifecycle flow analysis method.

[0099] This application provides a processor for running a program, wherein the program executes the above-described user lifecycle flow analysis method during runtime.

[0100] In one embodiment, a computer device is also provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 6As shown in the figure, the computer device includes a processor A01, a network interface A02, a display screen A04, an input device A05, and a memory (not shown) connected via a system bus. The processor A01 provides computing and control capabilities. The memory includes internal memory A03 and a non-volatile storage medium A06. The non-volatile storage medium A06 stores an operating system B01 and a computer program B02. The internal memory A03 provides an environment for the operation of the operating system B01 and the computer program B02 stored in the non-volatile storage medium A06. The network interface A02 is used for communication with external terminals via a network connection. When the computer program is executed by the processor A01, it implements a user lifecycle flow analysis method. The display screen A04 can be a liquid crystal display (LCD) or an e-ink display. The input device A05 can be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the computer device casing, or an external keyboard, touchpad, or mouse.

[0101] Those skilled in the art will understand that Figure 6 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0102] This application provides an electronic device, which includes a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, it implements the user lifecycle flow analysis method described above.

[0103] This application also provides a computer program product that, when executed on a data processing device, is adapted to execute a program that initializes the steps of the various method embodiments described above.

[0104] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0105] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0106] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0107] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0108] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0109] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0110] Computer-readable media include both permanent and non-permanent, removable and non-removable media, which can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0111] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0112] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. A user lifecycle flow analysis method, characterized in that, The user lifecycle transition analysis method includes: Obtain query criteria that reflect the behavioral characteristics of the target user group; The pre-configured tag operation expression template, which matches the lifecycle flow pattern expressed by the query conditions, is filled with the query conditions to generate a tag operation expression, wherein the tags in the tag operation expression include at least one of temporary tags and lifecycle stage tags. Obtain a bitmap with the labels in the label operation expression, wherein the bitmap with the lifecycle stage label and the bitmap with the temporary label are obtained by encoding user behavior data. The bit value of the user in the bitmap with the lifecycle stage label reflects the state of the corresponding user in the lifecycle stage identified by the lifecycle stage label, and the bit value of the user in the bitmap with the temporary label reflects whether the corresponding user has the user feature identified by the temporary label. Based on the tag operation expression, calculations are performed on the acquired bitmap to determine the target user group.

2. The user lifecycle flow analysis method according to claim 1, characterized in that, A bitmap with lifecycle stage labels is obtained by performing the following procedure: Map the user identifier in the user behavior data to an unsigned integer index, which serves as the index of the user identifier in the bitmap; For any user behavior in the user behavior data, determine the lifecycle stage in which the user behavior is located, and the bit value in the bitmap with the lifecycle stage label that identifies the lifecycle stage corresponding to the user behavior in that lifecycle stage, to obtain a bitmap with lifecycle stage label. Each lifecycle stage corresponds to a bitmap with a lifecycle stage label.

3. The user lifecycle flow analysis method according to claim 1, characterized in that, The bitmap with the temporary tag is obtained by performing the following procedure: Filter user information with user characteristics identified by the temporary tag from user behavior data; Generate a bitmap with the temporary tag based on the user information; In the bitmap with the temporary tag, the bit value of the user reflects whether the corresponding user has the user characteristic.

4. The user lifecycle flow analysis method according to claim 1, characterized in that, The step of filling a pre-configured tag operation expression template that matches the lifecycle flow pattern expressed by the query conditions with the query conditions, and generating a tag operation expression, includes: Parse the query conditions to determine the lifecycle flow pattern and tags expressed by the query conditions, wherein the determined tags include at least one of temporary tags and lifecycle stage tags; Select a tag operation expression template from a pre-configured set of multiple tag operation expression templates that matches the lifecycle flow pattern expressed by the query conditions; The tags determined by parsing the query conditions are filled into the tag operation expression template that matches the life cycle flow pattern expressed by the query conditions, thereby generating the tag operation expression.

5. The user lifecycle flow analysis method according to claim 1, characterized in that, The user lifecycle flow analysis method also includes: Persistent storage includes a bitmap with lifecycle stage tags and a bitmap with the aforementioned temporary feature tags; Pre-read multiple bitmaps with lifecycle stage tags from persistent storage to the local cache; Read the bitmap containing the lifecycle stage tags in the tag operation expression from the local cache; If there is a lifecycle stage tag for a corresponding bitmap that has not been read, then the bitmap with that lifecycle stage tag is read from the persistent storage and the read bitmap is stored in the local cache. Read the bitmap containing the temporary tags in the tag operation expression from the persistent storage; If there is a temporary tag for a corresponding bitmap that has not been read, then user information with user characteristics identified by the temporary tag is filtered out from the user behavior data, a bitmap with the temporary tag is generated based on the user information, and it is persistently stored.

6. The user lifecycle flow analysis method according to claim 1, characterized in that, The user lifecycle flow analysis method also includes: Persistent storage includes a bitmap with lifecycle stage tags and a bitmap with the aforementioned temporary feature tags; Pre-read multiple bitmaps from persistent storage to the local cache; Read the bitmap containing the tags in the tag operation expression from the local cache; If there is a lifecycle stage tag for a corresponding bitmap that has not been read, then the bitmap with that lifecycle stage tag is read from the persistent storage and the read bitmap is stored in the local cache. If a temporary tag exists that is not read from the corresponding bitmap, the bitmap with the temporary tag is read from the persistent storage. If the bitmap is not read from the persistent storage, user information with user characteristics identified by the temporary tag is filtered from the user behavior data, and a bitmap with the temporary tag is generated based on the user information and stored persistently.

7. The user lifecycle flow analysis method according to claim 3, characterized in that, The step of generating a bitmap with the temporary tag based on the user information includes: The user identifier in the user information is mapped to an unsigned integer index, which serves as the index of the user identifier in the bitmap; Different bit values ​​are assigned to the user identifier in the user information and the other user identifiers in the user behavior data besides the user identifier in the user information, to obtain a bitmap with the temporary tag.

8. The user lifecycle flow analysis method according to claim 1, characterized in that, A bitmap with lifecycle stage labels is uniquely identified by the name of the lifecycle stage label and the time point of occurrence of the user behavior in the user behavior data; when the lifecycle transition pattern is a transformation from a previous lifecycle stage to a later lifecycle stage, the determined labels include at least the lifecycle stage label; the label operation expression is generated by filling a pre-configured label operation expression template that matches the lifecycle transition pattern expressed by the query conditions with the query conditions, and further includes: Parse the query conditions to determine the transition conditions from the pre-lifecycle stage to the post-lifecycle stage; Using the user's first contact time that meets the conversion conditions as the time reference, and based on the time reference and the time offset between the pre-lifecycle stage and the post-lifecycle stage in the conversion conditions, the time points corresponding to the pre-lifecycle stage label and the post-lifecycle stage label are determined respectively. The time points are the user behavior time points within the lifecycle stage identified by the corresponding lifecycle stage label. The time point is associated with the corresponding lifecycle stage label so that when each label to be filled in the label operation expression template that matches the lifecycle flow pattern expressed by the query conditions, the time point is filled in.

9. A user lifecycle flow analysis system, characterized in that, The user lifecycle flow analysis system includes: The interaction layer is used to obtain query conditions that reflect the behavioral characteristics of the target user group; An expression generation layer is used to fill a pre-configured tag operation expression template that matches the lifecycle flow pattern expressed by the query conditions with the query conditions, and generate a tag operation expression, wherein the tags in the tag operation expression include at least one of temporary tags and lifecycle stage tags. The tag calculation execution layer is used to perform calculations on the acquired bitmap based on the tag operation expression to determine the target user group; The bitmap data preparation layer is used to obtain bitmaps with labels in the label operation expression. The bitmap with lifecycle stage labels and the bitmap with temporary labels are obtained by encoding user behavior data. The bit value of the user in the bitmap with lifecycle stage labels reflects the state of the corresponding user in the lifecycle stage identified by the lifecycle stage label. The bit value of the user in the bitmap with temporary labels reflects whether the corresponding user has the user characteristics identified by the temporary label.

10. The user lifecycle flow analysis system according to claim 9, characterized in that, The bitmap data preparation layer is connected to a persistent storage module and a search engine, and the bitmap data preparation layer includes a real-time computing engine module; The search engine is used to filter user information with user characteristics identified by the temporary tag from user behavior data; The real-time computing engine module is used to call the real-time computing engine so that the real-time computing engine maps the user identifier in the user behavior data to an unsigned integer index, and maps the user identifier in the user information to an unsigned integer index, as the index of the user identifier in the bitmap; The real-time computing engine module is also used to determine the lifecycle stage of any user behavior in the user behavior data, and the bit value in the bitmap with a lifecycle stage label that identifies the lifecycle stage corresponding to the user behavior in that lifecycle stage, to obtain a bitmap with lifecycle stage labels, wherein each lifecycle stage corresponds to a bitmap with a lifecycle stage label. The real-time computing engine module is also used to assign different bit values ​​to the user identifier in the user information and the other user identifiers in the user behavior data besides the user identifier in the user information, to obtain a bitmap with the temporary tag; The persistent storage module is used to persistently store the bitmap generated by the real-time computing engine module.

11. A computer device, the computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the user lifecycle flow analysis method according to any one of claims 1 to 8.