User data processing method and device based on graph algorithm and user unique ID
Through a method based on graph algorithm and user unique ID, multi-channel user data is integrated into customer data warehouses, solving the data island problem, efficient data query and multiple data processing are realized, and query efficiency and data application capabilities are improved.
Patent Information
- Application Number
- CN202510798670.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-16
- Publication Date
- 2025-08-29
- Estimated Expiration
- 2045-06-16
AI Technical Summary
There are data silos for user data between different enterprise channels, which are difficult to automatically integrate, and even if it is stored in a relational database through manual integration, the query efficiency is inefficient.
Using a method based on graph algorithm and user unique ID, multi-channel customer data is integrated into customer data warehouse by generating user unique IDs and constructing identification integration diagrams. The target customer data is efficiently obtained in combination with graph algorithm query strategies, and data processing is carried out based on different customer data processing types.
It realizes efficient integration and query of multi-channel user data, improves data query efficiency, and supports various data processing needs such as crowd portraits, customer journey map acquisition, and self-service event analysis.
Smart Images

Figure CN120316172B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of big data processing technology, and in particular to a method and device for processing user data based on a graph algorithm and a user unique ID. Background Art
[0002] Currently, the same user may have different user accounts across different enterprise channels, creating data silos between them. This makes it difficult to identify the same user across multiple channels and hinders data integration. Furthermore, even after manual integration of user data across different enterprise channels, it is typically stored in relational databases and requires querying using structured query language (SQL). This not only consumes system resources but also inefficiencies. Summary of the Invention
[0003] The embodiments of the present invention provide a user data processing method and device based on graph algorithms and user unique IDs, aiming to solve the problem of data silos existing between different enterprise channels in the prior art, which makes automatic integration difficult. Even if the data is manually integrated and stored in a relational database, there is still a problem of low data query efficiency.
[0004] In a first aspect, an embodiment of the present invention provides a user data processing method based on a graph algorithm and a user unique ID, comprising:
[0005] In response to a user data processing instruction sent by a user terminal, obtaining a user data query condition corresponding to the user data processing instruction;
[0006] Obtain target customer data from a customer data warehouse according to the data query conditions and a preset graph algorithm query strategy; wherein the customer data warehouse stores multiple pieces of customer data, and each piece of customer data corresponds to a unique user unique ID and an identification integration graph;
[0007] Obtaining a customer data processing type corresponding to the user data processing instruction; wherein the customer data processing type is one of a crowd portrait acquisition type, a crowd data comparison type, a customer journey map acquisition type, or a self-service event analysis type;
[0008] Processing the target customer data based on the data processing strategy corresponding to the customer data processing type to obtain a customer data processing result;
[0009] The customer data processing result is sent to the user terminal.
[0010] In a second aspect, an embodiment of the present invention further provides a user data processing device based on a graph algorithm and a user unique ID, comprising:
[0011] a query condition acquiring unit, configured to, in response to a user data processing instruction sent by a user terminal, acquire a user data query condition corresponding to the user data processing instruction;
[0012] A target customer data acquisition unit is used to acquire target customer data from a customer data warehouse according to the data query conditions and a preset graph algorithm query strategy; wherein the customer data warehouse stores multiple customer data, and each customer data corresponds to a unique user unique ID and an identification integration graph;
[0013] a data processing type acquisition unit, configured to acquire a customer data processing type corresponding to the user data processing instruction; wherein the customer data processing type is one of a crowd portrait acquisition type, a crowd data comparison type, a customer journey map acquisition type, or a self-service event analysis type;
[0014] a data processing result obtaining unit, configured to process the target customer data based on a data processing strategy corresponding to the customer data processing type to obtain a customer data processing result;
[0015] The data processing result sending unit is used to send the customer data processing result to the user terminal.
[0016] In a third aspect, an embodiment of the present invention further provides a computer device comprising a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the method described in the first aspect is implemented.
[0017] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, wherein the computer storage medium stores a computer program, wherein the computer program includes program instructions, and when the program instructions are executed by a processor, the method described in the first aspect can be implemented.
[0018] Embodiments of the present invention provide a user data processing method and apparatus based on a graph algorithm and a user unique ID. The method comprises: in response to a user data processing instruction sent by a user terminal, obtaining a user data query condition corresponding to the user data processing instruction; obtaining target customer data from a customer data warehouse based on the data query condition and a preset graph algorithm query strategy; wherein the customer data warehouse stores multiple customer data items, and each customer data item corresponds to a unique user unique ID and an identification integration graph; obtaining a customer data processing type corresponding to the user data processing instruction; wherein the customer data processing type is one of a population profile acquisition type, a population data comparison type, a customer journey map acquisition type, or a self-service event analysis type; processing the target customer data based on a data processing strategy corresponding to the customer data processing type to obtain a customer data processing result; and sending the customer data processing result to the user terminal. Embodiments of the present invention can integrate customer data from multiple channels based on a user unique ID and store it in a customer data warehouse. Furthermore, by combining a graph algorithm query strategy, the target customer data can be more efficiently obtained from the customer data warehouse, and corresponding data processing is performed based on the customer data processing type data processing strategy to obtain a customer data processing result. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0020] Figure 1 A schematic diagram of an application scenario of the user data processing method based on a graph algorithm and a user unique ID provided by an embodiment of the present invention;
[0021] Figure 2 A flowchart of a method for processing user data based on a graph algorithm and a user's unique ID provided by an embodiment of the present invention;
[0022] Figure 3 A schematic diagram of a sub-flow of step S120 in the user data processing method based on a graph algorithm and a user unique ID provided in an embodiment of the present invention;
[0023] Figure 4 A schematic diagram of a sub-flow diagram of a first embodiment of step S140 in a method for processing user data based on a graph algorithm and a user unique ID provided by an embodiment of the present invention;
[0024] Figure 5 A schematic diagram of a sub-flow diagram of a second embodiment of step S140 in the user data processing method based on a graph algorithm and a user unique ID provided by an embodiment of the present invention;
[0025] Figure 6 A schematic diagram of a sub-flow diagram of a third embodiment of step S140 in the user data processing method based on a graph algorithm and a user unique ID provided by an embodiment of the present invention;
[0026] Figure 7 A schematic diagram of a sub-flow diagram of a fourth embodiment of step S140 in the user data processing method based on a graph algorithm and a user unique ID provided by an embodiment of the present invention;
[0027] Figure 8 A schematic block diagram of a user data processing device based on a graph algorithm and a user unique ID provided by an embodiment of the present invention;
[0028] Figure 9 A schematic block diagram of a computer device provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0029] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of them. All other embodiments obtained by ordinary technicians in this field based on the embodiments of the present invention without making any creative efforts shall fall within the scope of protection of the present invention.
[0030] It will be understood that when used in this specification and the appended claims, the terms “comprises” and “comprising” indicate the presence of described features, integers, steps, operations, elements and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof.
[0031] It should also be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the present invention. As used in the specification and appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms unless the context clearly indicates otherwise.
[0032] It should be further understood that the term "and / or" used in the present description and appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.
[0033] Please also refer to Figure 1 and Figure 2 ,in Figure 1 Schematic diagram of a scenario of a method for processing user data based on a graph algorithm and a user's unique ID according to an embodiment of the present invention. Figure 2Schematic diagram of the process of user data processing based on graph algorithm and user unique ID provided by the embodiment of the present invention. Figure 1 As shown, the user data processing method based on the graph algorithm and the user unique ID provided by the embodiment of the present invention is applied to the server 10, and the server 10 is connected to the user terminal 20 for communication. Figure 2 As shown, the method includes the following steps S110-S150.
[0034] S110 . In response to a user data processing instruction sent by a user terminal, obtain a user data query condition corresponding to the user data processing instruction.
[0035] In this embodiment, the technical solution is described with the server as the execution entity. A user data processing platform is deployed on the server, and the data storage space corresponding to the user data processing platform is the customer data warehouse. After a user logs in to the user data processing platform using a user terminal, a query condition input area is displayed on the user interface of the user data processing platform. Initial user query conditions can be entered in this query condition input area in a variety of ways, such as text entry, image entry, voice entry, etc. After entering the initial user query conditions in the query condition input area, the user data processing platform backend will first perform data parsing to obtain the user data query conditions in text form. For example, after the initial user query condition is entered in the query condition input area by text entry, the initial user query condition can be directly used as the user data query condition without any parsing. When the initial user query condition is entered in the query condition input area by image entry, the image corresponding to the initial user query condition is subjected to image recognition and text extraction by the image recognition model (such as a convolutional neural network, etc.) in the background of the user data processing platform. The obtained recognition result is the text recognition result and serves as the user data query condition. When the initial user query condition is entered in the query condition input area by voice entry, the voice recognition model (such as a convolutional neural network, etc.) in the background of the user data processing platform is subjected to voice recognition and text extraction by the voice data corresponding to the initial user query condition. The obtained recognition result is the text recognition result and serves as the user data query condition. It can be seen that after obtaining the initial user data query condition entered by the user, it can be quickly parsed into the user data query condition in text form for subsequent data queries.
[0036] In one embodiment, before step S110, the method further includes:
[0037] Acquire business data from multiple different channels; wherein the business data includes multiple pieces of customer data, and each piece of customer data includes multiple pieces of customer attribute data;
[0038] generating customer identifiers corresponding to the respective customer data according to the channel identifiers of the channels corresponding to the respective customer data;
[0039] The business data is grouped and processed based on a preset graph algorithm and grouping strategy to obtain multiple customer data groups;
[0040] For each of the customer data groups, generating a user unique ID corresponding to the customer data group, and associating the user unique ID with each customer identifier in the customer data group to obtain an identifier integration map;
[0041] For each identification integration graph, the customer data associated with the identification integration graph is associated and integrated to obtain omni-channel customer integration data, and form an omni-channel customer integration data set; wherein the omni-channel customer integration data also includes a unique binary value corresponding to the user unique ID;
[0042] Obtaining a plurality of initial user tags associated with field names included in the omni-channel customer integrated data; for each of the plurality of initial user tags, obtaining a user unique ID set corresponding to the initial user tag from the omni-channel customer integrated data set; performing a bitwise OR operation on the unique binary value of each unique data ID in the user unique ID set corresponding to the initial user tag to obtain a bitmap representation value corresponding to the initial user tag;
[0043] A user tag table is formed by each initial user tag in the plurality of initial user tags and a corresponding bitmap representation value, and is stored in the customer data warehouse.
[0044] In this embodiment, when obtaining business data from multiple different channels, the multiple channels can be multiple different business servers (such as business servers corresponding to multiple e-commerce platforms, customer relationship management platforms, and offline store systems). On the premise of obtaining user data acquisition authorization, business data including multiple customer data can be legally and compliantly obtained from multiple different channels.
[0045] If customer data stored on different business servers uses relational databases (such as MySQL and Oracle), you can synchronize the customer data stored on each business server to the server using a service that provides batch data synchronization between databases. After receiving multi-channel customer data from different business servers to form business data, the server can also perform data cleansing (such as missing value filling, deduplication, and normalization) on the customer data included in the business data to update the business data.
[0046] Moreover, in order to distinguish the source channels of different customer data, a unique customer identifier is generated for customer data from different source channels based on the channel identifier. For example, when the server obtains business data from four business servers, the above four business servers correspond to channels 1 to 4 respectively. The customer data uploaded by the business server of channel 1 has the channel identifier userID, the customer data uploaded by the business server of channel 2 has the channel identifier UID, the customer data uploaded by the business server of channel 3 has the channel identifier UUID, and the customer data uploaded by the business server of channel 4 has the channel identifier OpenID. If the customer attribute data included in the customer data obtained by the server does not have a channel identifier, the customer identifier attribute (which can also be understood as a data field) can be added to each customer data first, and then the channel identifier of the customer data can be directly used as the value of the customer identifier to fill in the attribute value corresponding to the customer identifier attribute. Of course, each customer data can be stored in the server's graph database in the form of graph data.
[0047] If the preset grouping strategy specifically includes an identity identification strategy, and the target customer attribute data type (such as a contact number or email address, etc.) is set in the identity identification strategy, if the target customer attribute data type is an email address, the target customer attribute data type in the multiple customer data obtained by the server can be traversed, and customer data with the same email address can be divided into the same customer data group.
[0048] After the above data grouping is completed, each customer data group corresponds to a unique customer. At this time, taking a customer data group as an example, the server can generate a user unique ID corresponding to the customer data group. For example, the user unique ID is represented by OneID and the user unique ID corresponds to a unique binary value. Its associated customer identifiers are userID: 1, UID: 3, UUID: 5 and OpenID: 7. When the OneID corresponding to the user unique ID is associated with userID: 1, UID: 3, UUID: 5 and OpenID: 7, the identification integration graph of the customer is formed. After obtaining the identification integration graph corresponding to each customer, the customer data directly associated with the identification integration graph is associated and integrated to obtain the customer's omni-channel customer integration data, and the channel customer integration data of each customer constitute an omni-channel customer integration data set. Through the above multi-channel data integration method, the customer data of the same customer in different channels are associated and integrated, thereby solving the data island problem between the customer data of different business channels corresponding to different business servers.
[0049] After the server obtains the omni-channel customer integrated dataset, it may correspond to at least one initial user data table. The following Table 1 shows an initial user data table (only part of the user data is shown, not all of it is shown):
[0050] Table 1
[0051] OneID gender age Unique binary value Unique decimal value 1 male 10 1 1 2 male 20 10 2 3 female 10 100 4 4 female 20 1000 8
[0052] If the server stores multiple other user data tables such as those in Table 1 above, the field names and corresponding field values in each user data table can be combined to form a field name value set. At least one set of Chinese semantic words for the field names and corresponding field values is selected from the field name value set to serve as initial user tags associated with the field names in the user data table.
[0053] For example, the Chinese semantic word "gender male" obtained by combining the field name gender and the corresponding field value male in Table 1 can be used as the initial user label "male", and the Chinese semantic word obtained by combining the field name age and the corresponding field value 20 and the field name gender and the corresponding field value male in Table 1 can be used as the initial user label "male youth", etc.
[0054] For each initial user tag, the user unique ID set corresponding to the initial user tag is obtained from the user data table set, and the unique binary value of each unique data ID in the user unique ID set corresponding to the initial user tag is bitwise ORed to obtain the bitmap representation value corresponding to the initial user tag. For example, the unique binary values corresponding to the user unique ID set obtained from the user data table set for the gender male include 1 and 10. The two binary numbers 1 and 10 are bitwise ORed to obtain the bitmap representation value corresponding to the initial user tag of gender male, which is 11. After the bitmap representation values of other initial user tags are obtained by referring to the above process, the user tag table is composed of each initial user tag in the multiple initial user tags and the corresponding bitmap representation value, as shown in Table 2 below:
[0055] Table 2
[0056] Tag ID Tag Name Bitmap representation value Tag ID1 Gender: Male 11 Tag ID2 juvenile 101 Tag ID3 Gender Female 1100 …… …… ……
[0057] The obtained user tag table as shown in Table 2 above can be stored in the customer data warehouse in the server for subsequent data query.
[0058] S120. Obtain target customer data from the customer data warehouse according to the data query conditions and a preset graph algorithm query strategy.
[0059] The customer data warehouse stores a plurality of customer data, and each customer data corresponds to a unique user ID and an identification integration map.
[0060] In this embodiment, because customer data has been pre-processed and stored in a customer data warehouse on the server, once the data query criteria are obtained, the server can use a locally pre-configured graph algorithm query strategy to retrieve the target customer data corresponding to the query criteria from the customer data warehouse. Furthermore, combining graph algorithm queries with the customer data warehouse achieves faster query efficiency than traditional structured statement queries.
[0061] In one embodiment, if Figure 3 As shown, step S120 includes:
[0062] S121. Obtain text data corresponding to the data query condition, and parse the text data to obtain a plurality of data query sub-conditions and logical operators between the plurality of data query sub-conditions; wherein the data query sub-conditions are user tags or user features;
[0063] S122. Obtain a query condition conversion strategy corresponding to the graph algorithm query strategy, and perform query statement conversion on the plurality of data query sub-conditions and the logical operators between the plurality of data query sub-conditions based on the query condition conversion strategy to obtain a target SQL statement;
[0064] S123. Obtain a bitmap conversion strategy corresponding to the graph algorithm query strategy, and based on the bitmap conversion strategy, obtain a target bitmap operation function corresponding to the target SQL statement, and a target bitmap operation value obtained by executing the target bitmap operation function;
[0065] S124. Acquire the target customer data from the customer data warehouse based on the target bitmap operation value.
[0066] In this embodiment, after the server parses the initial user query condition and obtains the text data corresponding to the data query condition, it can further parse the data to obtain several data query sub-conditions. For example, if the text data corresponding to the data query condition is "Query for male teenagers," after semantic parsing, it includes two data query sub-conditions: gender: male and age: less than 18 years old. The logical operator between the two data query sub-conditions is "AND." Through parsing this data query condition, the data query sub-conditions can be quickly obtained.
[0067] Given the multiple data query sub-conditions included in the data query condition and the logical operators between the multiple data query sub-conditions, for example, referring to the above example, the data query condition is "Query for male teenagers" and includes two data query sub-conditions, namely "Gender Male" and "Age Under 18 Years Old," and the logical operator between the two data query sub-conditions is "AND." The query results show that the tag ID corresponding to the first data query sub-condition "Gender Male" is 1, and the tag ID corresponding to the second data query sub-condition "Age Under 18 Years Old" is 2. At this point, the following can be obtained by combining the first preset query statement template:
[0068] SELECT userbits FROM t_user_tags WHERE tag_id =1;
[0069] SELECT userbits FROM t_user_tags WHERE tag_id =2;
[0070] In the above two sub-SQL statements, tag_id = 1 corresponds to the tag ID of "gender male", and tag_id = 2 corresponds to the tag ID corresponding to "age less than 18 years old". t_user_tags represents the user tag table; userbits represents the bitmap representation value corresponding to the corresponding tag ID.
[0071] Then fill the above two sub-SQL statements into the second preset query statement template to obtain the following target SQL statement:
[0072] SELECT unnest(rb_to_array(
[0073] rb_and(
[0074] (SELECT userbits FROM t_user_tags WHERE tag_id =1),
[0075] (SELECT userbits FROM t_user_tags WHERE tag_id =2) )
[0077] )) as user_id;
[0078] Among them, the rb_and() operation is to calculate the intersection operation of the bitmap values that meet multiple conditions at the same time;
[0079] The rb_to_array() operation is used to convert the bitmap operation value after the intersection into an array, that is, the user_id array;
[0080] The unest() operation is used to expand the array into separate user_ids, with each user_id occupying one row;
[0081] The resulting target SQL statement can then be converted into a corresponding target bitmap operation function based on the bitmap conversion strategy, and the target bitmap operation function is executed to obtain a target bitmap operation value. For example, based on the bitmap conversion strategy, corresponding target bitmap operation functions, such as the rb_and() operation function and the rb_to_array() operation function, are obtained. These functions, when executed sequentially with specific input parameters, can obtain a target bitmap operation value. For example, if the current bitmap value corresponding to tag_id = 1 is 11, and the current bitmap value corresponding to tag_id = 2 is 101, the two current bitmap values are combined with the logical operator "AND" between several data query sub-conditions to obtain a target bitmap operation value of 1. Subsequently, user data with a unique binary value of the target bitmap operation value 1 is obtained from the user data table of the customer data warehouse as the target customer data. Of course, the above process illustrates an example of obtaining a single piece of user data. In actual implementation, the target customer data obtained from the customer data warehouse based on the data query conditions can be multiple pieces of user data.
[0082] S130: Obtain the client data processing type corresponding to the user data processing instruction.
[0083] The customer data processing type is one of a crowd portrait acquisition type, a crowd data comparison type, a customer journey map acquisition type, or a self-service event analysis type.
[0084] In this embodiment, when the user data processing instruction is obtained in the server, in addition to the data query conditions, the data query conditions can also be obtained. For example, the customer data processing type is one of the crowd portrait acquisition type, crowd data comparison type, customer journey map acquisition type or self-service event analysis type, and different customer data processing types correspond to different customer data processing methods.
[0085] S140: Process the target customer data based on the data processing strategy corresponding to the customer data processing type to obtain a customer data processing result.
[0086] In this embodiment, when a specific customer data processing type is determined from the crowd portrait acquisition type, crowd data comparison type, customer journey map acquisition type, or self-service event analysis type, the data processing strategy corresponding to the customer data processing type can also be specifically obtained to quickly process the data, thereby obtaining the customer data processing result.
[0087] In one embodiment, as a first embodiment of the customer data processing type being a customer journey map acquisition type, such as Figure 4 As shown, step S140 includes:
[0088] S141A: If it is determined that the customer data processing type is a customer journey map acquisition type, obtaining a customer journey map acquisition strategy corresponding to the data processing strategy;
[0089] S142A. Acquire multiple behavior data included in the target customer data based on the customer journey map acquisition strategy, and acquire behavior occurrence time and behavior data attributes corresponding to the multiple behavior data;
[0090] S143A. Sort the plurality of behavior data in ascending order of the time when each behavior occurs in the plurality of behavior data, and compose target customer journey map data corresponding to the target customer data as the customer data processing result.
[0091] In this embodiment, as a first example of customer data processing involving customer journey map acquisition, the corresponding customer journey map acquisition strategy is first acquired. Subsequently, the customer journey map acquisition strategy is used to acquire multiple behavioral data items included in the target customer data, including the corresponding occurrence times and behavior data attributes (e.g., registration, order placement, and payment data). The multiple behavioral data items are then sorted in ascending chronological order of the occurrence times within each behavioral data item to form target customer journey map data, which identifies the customer's behavioral trajectory (also understood as a customer journey map) and serves as the customer data processing result. This approach enables rapid acquisition of customer journey map data for the target customer data.
[0092] In one embodiment, as a second embodiment of the customer data processing type being a self-service event analysis type, such as Figure 5 As shown, step S140 includes:
[0093] S141B: If it is determined that the customer data processing type is a self-service event analysis type, obtaining a self-service event analysis policy corresponding to the data processing policy;
[0094] S142B. Acquire multiple event data included in the target customer data based on the self-service event analysis strategy, and acquire event occurrence time and event data attributes corresponding to the multiple event data;
[0095] S143B. Obtain target event screening conditions corresponding to the self-service event analysis strategy, obtain corresponding target event data from the plurality of event data based on the target event screening conditions, and compose target customer event analysis data corresponding to the target customer data as the customer data processing result.
[0096] In this embodiment, as a second example in which the customer data processing type is self-service event analysis, the corresponding self-service event analysis policy is first obtained. Subsequently, the self-service event analysis policy is used to obtain multiple event data items included in the target customer data, including the corresponding event occurrence times and event data attributes (e.g., event data items such as no user registrations in the past month or more than 10 payments in the past year). The multiple event data items are then sorted in ascending order of their occurrence times to form target customer event analysis data used to identify customer self-service events, which is then used as the customer data processing result. This approach enables rapid acquisition of target customer event analysis data for target customer data.
[0097] In one embodiment, as a third embodiment of the customer data processing type being a crowd portrait acquisition type, such as Figure 6 As shown, step S140 includes:
[0098] S141C. If it is determined that the customer data processing type is a crowd portrait acquisition type, then acquiring a crowd portrait acquisition strategy corresponding to the data processing strategy;
[0099] S142C. Acquire several user tags included in the target customer data based on the population portrait acquisition strategy;
[0100] S143C. A target population portrait is formed by a plurality of user tags and serves as the customer data processing result.
[0101] In this third embodiment, where the customer data processing type is demographic profile acquisition, the corresponding demographic profile acquisition strategy is first acquired. Next, the demographic profile acquisition strategy is used to acquire several user tags included in the target customer data, such as young male, low-frequency consumer, and pet owner. Finally, a target demographic profile is formed from the collection of these user tags and used as the customer data processing result. This approach allows for rapid acquisition of the target demographic profile for the target customer data.
[0102] In one embodiment, as a fourth embodiment in which the customer data processing type is a population data comparison type, such as Figure 7 As shown, step S140 includes:
[0103] S141D: If it is determined that the customer data processing type is a population data comparison type, obtaining a population data comparison strategy corresponding to the data processing strategy;
[0104] S142D. Acquire several groups of customer data to be compared corresponding to the target customer data based on the population data comparison strategy;
[0105] S143D: performing data comparison between the target customer data and the plurality of groups of customer data to be compared and displaying the result as the customer data processing result.
[0106] In this fourth embodiment, where the customer data processing type is a population data comparison type, a population data comparison strategy is first obtained. Then, the population data comparison strategy is used to obtain several groups of customer data to be compared corresponding to the target customer data. For example, the population data comparison strategy can be used to obtain several groups of customer data to be compared that have the same user tags as the target customer data. Finally, the target customer data is compared with the several groups of customer data to be compared and displayed as the customer data processing result. Through the above method, the rapid acquisition and comparison display of the customer data to be compared with the target customer data is achieved.
[0107] S150: Send the customer data processing result to the user terminal.
[0108] In this embodiment, after the customer data processing result corresponding to the user data processing instruction is obtained in the user data processing platform of the server, the customer data processing result can be sent to the user terminal for visual display, so as to be provided to the user of the user terminal for viewing and subsequent data application.
[0109] It can be seen that the embodiment of the method can integrate customer data from multiple channels based on the user's unique ID and store it in the customer data warehouse, and can combine the graph algorithm query strategy to more efficiently obtain target customer data from the customer data warehouse, and perform corresponding data processing based on the customer data processing type data processing strategy to obtain the customer data processing results.
[0110] Figure 8 Schematic block diagram of a user data processing device based on a graph algorithm and a user unique ID provided by an embodiment of the present invention. Figure 8 As shown, corresponding to the above-mentioned user data processing method based on graph algorithm and user unique ID, the present invention also provides a user data processing device 100 based on graph algorithm and user unique ID. The user data processing device 100 based on graph algorithm and user unique ID includes a unit for executing the above-mentioned user data processing method based on graph algorithm and user unique ID. Figure 8The user data processing device 100 based on graph algorithm and user unique ID includes: a query condition acquisition unit 110, a target customer data acquisition unit 120, a data processing type acquisition unit 130, a data processing result acquisition unit 140 and a data processing result sending unit 150.
[0111] The query condition acquisition unit 110 is configured to, in response to a user data processing instruction sent by a user terminal, acquire a user data query condition corresponding to the user data processing instruction.
[0112] In this embodiment, the technical solution is described with the server as the execution entity. A user data processing platform is deployed on the server, and the data storage space corresponding to the user data processing platform is the customer data warehouse. After a user logs in to the user data processing platform using a user terminal, a query condition input area is displayed on the user interface of the user data processing platform. Initial user query conditions can be entered in this query condition input area in a variety of ways, such as text entry, image entry, voice entry, etc. After entering the initial user query conditions in the query condition input area, the user data processing platform backend will first perform data parsing to obtain the user data query conditions in text form. For example, after the initial user query condition is entered in the query condition input area by text entry, the initial user query condition can be directly used as the user data query condition without any parsing. When the initial user query condition is entered in the query condition input area by image entry, the image corresponding to the initial user query condition is subjected to image recognition and text extraction by the image recognition model (such as a convolutional neural network, etc.) in the background of the user data processing platform. The obtained recognition result is the text recognition result and serves as the user data query condition. When the initial user query condition is entered in the query condition input area by voice entry, the voice recognition model (such as a convolutional neural network, etc.) in the background of the user data processing platform is subjected to voice recognition and text extraction by the voice data corresponding to the initial user query condition. The obtained recognition result is the text recognition result and serves as the user data query condition. It can be seen that after obtaining the initial user data query condition entered by the user, it can be quickly parsed into the user data query condition in text form for subsequent data queries.
[0113] In one embodiment, the user data processing apparatus 100 based on a graph algorithm and a user unique ID further includes:
[0114] A business data acquisition unit, configured to acquire business data from a plurality of different channels; wherein the business data includes a plurality of customer data, and each customer data includes a plurality of customer attribute data;
[0115] The business data acquisition unit is used for generating a customer identifier corresponding to each of the customer data according to the channel identifier of the channel corresponding to each of the customer data;
[0116] A customer data grouping unit, configured to group the business data based on a preset graph algorithm and grouping strategy to obtain a plurality of customer data groups;
[0117] an identification integration map acquisition unit, configured to generate, for each customer data group, a user unique ID corresponding to the customer data group, and associate the user unique ID with each customer identification in the customer data group to obtain an identification integration map;
[0118] an omni-channel customer integrated data acquisition unit, configured to, for each identification integration graph, perform association and integration processing on the customer data associated with the identification integration graph to obtain omni-channel customer integrated data and form an omni-channel customer integrated data set; wherein the omni-channel customer integrated data also includes a unique binary value corresponding to the user unique ID;
[0119] an initial user tag processing unit, configured to obtain a plurality of initial user tags associated with field names included in the omni-channel customer integrated data, and for each of the plurality of initial user tags, obtain a user unique ID set corresponding to the initial user tag from the omni-channel customer integrated data set, and perform a bitwise OR operation on the unique binary value of each unique data ID in the user unique ID set corresponding to the initial user tag to obtain a bitmap representation value corresponding to the initial user tag;
[0120] The user tag table acquisition unit is configured to form a user tag table from each of the multiple initial user tags and a corresponding bitmap representation value, and store the table in the customer data warehouse.
[0121] In this embodiment, when obtaining business data from multiple different channels, the multiple channels can be multiple different business servers (such as business servers corresponding to multiple e-commerce platforms, customer relationship management platforms, and offline store systems). On the premise of obtaining user data acquisition authorization, business data including multiple customer data can be legally and compliantly obtained from multiple different channels.
[0122] If customer data stored on different business servers uses relational databases (such as MySQL and Oracle), you can synchronize the customer data stored on each business server to the server using a service that provides batch data synchronization between databases. After receiving multi-channel customer data from different business servers to form business data, the server can also perform data cleansing (such as missing value filling, deduplication, and normalization) on the customer data included in the business data to update the business data.
[0123] Moreover, in order to distinguish the source channels of different customer data, a unique customer identifier is generated for customer data from different source channels based on the channel identifier. For example, when the server obtains business data from four business servers, the above four business servers correspond to channels 1 to 4 respectively. The customer data uploaded by the business server of channel 1 has the channel identifier userID, the customer data uploaded by the business server of channel 2 has the channel identifier UID, the customer data uploaded by the business server of channel 3 has the channel identifier UUID, and the customer data uploaded by the business server of channel 4 has the channel identifier OpenID. If the customer attribute data included in the customer data obtained by the server does not have a channel identifier, the customer identifier attribute (which can also be understood as a data field) can be added to each customer data first, and then the channel identifier of the customer data can be directly used as the value of the customer identifier to fill in the attribute value corresponding to the customer identifier attribute. Of course, each customer data can be stored in the server's graph database in the form of graph data.
[0124] If the preset grouping strategy specifically includes an identity identification strategy, and the target customer attribute data type (such as a contact number or email address, etc.) is set in the identity identification strategy, if the target customer attribute data type is an email address, the target customer attribute data type in the multiple customer data obtained by the server can be traversed, and customer data with the same email address can be divided into the same customer data group.
[0125] After the above data grouping is completed, each customer data group corresponds to a unique customer. At this time, taking a customer data group as an example, the server can generate a user unique ID corresponding to the customer data group. For example, the user unique ID is represented by OneID and the user unique ID corresponds to a unique binary value. Its associated customer identifiers are userID: 1, UID: 3, UUID: 5 and OpenID: 7. When the OneID corresponding to the user unique ID is associated with userID: 1, UID: 3, UUID: 5 and OpenID: 7, the identification integration graph of the customer is formed. After obtaining the identification integration graph corresponding to each customer, the customer data directly associated with the identification integration graph is associated and integrated to obtain the customer's omni-channel customer integration data, and the channel customer integration data of each customer constitute an omni-channel customer integration data set. Through the above multi-channel data integration method, the customer data of the same customer in different channels are associated and integrated, thereby solving the data island problem between the customer data of different business channels corresponding to different business servers.
[0126] After the server acquires the integrated omni-channel customer data set, it may correspond to at least one initial user data table. Table 1 above shows an initial user data table (only partial user data is shown, not all). If the server also stores multiple user data tables such as those in Table 1 above, the field names and corresponding field values in each user data table can be combined to form a field name value set. From this field name value set, at least one set of Chinese semantic words for the field names and corresponding field values is selected as initial user tags associated with the field names in the user data tables.
[0127] For example, the Chinese semantic word "gender male" obtained by combining the field name gender and the corresponding field value male in Table 1 can be used as the initial user label "male", and the Chinese semantic word obtained by combining the field name age and the corresponding field value 20 and the field name gender and the corresponding field value male in Table 1 can be used as the initial user label "male youth", etc.
[0128] For each initial user tag, the user unique ID set corresponding to the initial user tag is obtained from the user data table set, and the unique binary value of each unique data ID in the user unique ID set corresponding to the initial user tag is bitwise ORed to obtain the bitmap representation value corresponding to the initial user tag. For example, the unique binary values corresponding to the user unique ID set obtained from the user data table set for the gender male include 1 and 10. The two binary numbers 1 and 10 are bitwise ORed to obtain the bitmap representation value corresponding to the initial user tag of the gender male of 11. After the bitmap representation values of other initial user tags are obtained by referring to the above process, a user tag table is composed of each initial user tag in the multiple initial user tags and the corresponding bitmap representation value, as shown in Table 2 above. The obtained user tag table as shown in Table 2 above can be stored in the customer data warehouse in the server for subsequent data query.
[0129] The target customer data acquisition unit 120 is configured to acquire target customer data from the customer data warehouse according to the data query conditions and a preset graph algorithm query strategy.
[0130] The customer data warehouse stores a plurality of customer data, and each customer data corresponds to a unique user ID and an identification integration map.
[0131] In this embodiment, because customer data has been pre-processed and stored in a customer data warehouse on the server, once the data query criteria are obtained, the server can use a locally pre-configured graph algorithm query strategy to retrieve the target customer data corresponding to the query criteria from the customer data warehouse. Furthermore, combining graph algorithm queries with the customer data warehouse achieves faster query efficiency than traditional structured statement queries.
[0132] In one embodiment, the target customer data acquisition unit 120 is specifically configured to:
[0133] Obtaining text data corresponding to the data query condition, and parsing the text data to obtain a plurality of data query sub-conditions and logical operators between the plurality of data query sub-conditions; wherein the data query sub-conditions are user tags or user features;
[0134] Obtaining a query condition conversion strategy corresponding to the graph algorithm query strategy, and performing query statement conversion on the plurality of data query sub-conditions and the logical operators between the plurality of data query sub-conditions based on the query condition conversion strategy to obtain a target SQL statement;
[0135] Obtaining a bitmap conversion strategy corresponding to the graph algorithm query strategy, and obtaining a target bitmap operation function corresponding to the target SQL statement based on the bitmap conversion strategy, and a target bitmap operation value obtained by executing the target bitmap operation function;
[0136] The target customer data is acquired from the customer data warehouse based on the target bitmap operation value.
[0137] In this embodiment, after the server parses the initial user query condition and obtains the text data corresponding to the data query condition, it can further parse the data to obtain several data query sub-conditions. For example, if the text data corresponding to the data query condition is "Query for male teenagers," after semantic parsing, it includes two data query sub-conditions: gender: male and age: less than 18 years old. The logical operator between the two data query sub-conditions is "AND." Through parsing this data query condition, the data query sub-conditions can be quickly obtained.
[0138] Given the multiple data query sub-conditions included in the data query condition and the logical operators between the multiple data query sub-conditions, for example, referring to the above example, the data query condition is "Query for male teenagers" and includes two data query sub-conditions, namely "Gender Male" and "Age Under 18 Years Old," and the logical operator between the two data query sub-conditions is "AND." The query results show that the tag ID corresponding to the first data query sub-condition "Gender Male" is 1, and the tag ID corresponding to the second data query sub-condition "Age Under 18 Years Old" is 2. At this point, the following can be obtained by combining the first preset query statement template:
[0139] SELECT userbits FROM t_user_tags WHERE tag_id =1;
[0140] SELECT userbits FROM t_user_tags WHERE tag_id =2;
[0141] In the above two sub-SQL statements, tag_id = 1 corresponds to the tag ID of "gender male", and tag_id = 2 corresponds to the tag ID corresponding to "age less than 18 years old". t_user_tags represents the user tag table; userbits represents the bitmap representation value corresponding to the corresponding tag ID.
[0142] Then fill the above two sub-SQL statements into the second preset query statement template to obtain the following target SQL statement:
[0143] SELECT unnest(rb_to_array(
[0144] rb_and(
[0145] (SELECT userbits FROM t_user_tags WHERE tag_id =1),
[0146] (SELECT userbits FROM t_user_tags WHERE tag_id =2) )
[0148] )) as user_id;
[0149] Among them, the rb_and() operation is to calculate the intersection operation of the bitmap values that meet multiple conditions at the same time;
[0150] The rb_to_array() operation is used to convert the bitmap operation value after the intersection into an array, that is, the user_id array;
[0151] The unest() operation is used to expand the array into separate user_ids, with each user_id occupying one row;
[0152] The resulting target SQL statement can then be converted into a corresponding target bitmap operation function based on the bitmap conversion strategy, and the target bitmap operation function is executed to obtain a target bitmap operation value. For example, based on the bitmap conversion strategy, corresponding target bitmap operation functions, such as the rb_and() operation function and the rb_to_array() operation function, are obtained. These functions, when executed sequentially with specific input parameters, can obtain a target bitmap operation value. For example, if the current bitmap value corresponding to tag_id = 1 is 11, and the current bitmap value corresponding to tag_id = 2 is 101, the two current bitmap values are combined with the logical operator "AND" between several data query sub-conditions to obtain a target bitmap operation value of 1. Subsequently, user data with a unique binary value of the target bitmap operation value 1 is obtained from the user data table of the customer data warehouse as the target customer data. Of course, the above process illustrates an example of obtaining a single piece of user data. In actual implementation, the target customer data obtained from the customer data warehouse based on the data query conditions can be multiple pieces of user data.
[0153] The data processing type acquiring unit 130 is configured to acquire the client data processing type corresponding to the user data processing instruction.
[0154] The customer data processing type is one of a crowd portrait acquisition type, a crowd data comparison type, a customer journey map acquisition type, or a self-service event analysis type.
[0155] In this embodiment, when the user data processing instruction is obtained in the server, in addition to the data query conditions, the data query conditions can also be obtained. For example, the customer data processing type is one of the crowd portrait acquisition type, crowd data comparison type, customer journey map acquisition type or self-service event analysis type, and different customer data processing types correspond to different customer data processing methods.
[0156] The data processing result obtaining unit 140 is configured to process the target customer data based on the data processing strategy corresponding to the customer data processing type to obtain a customer data processing result.
[0157] In this embodiment, when a specific customer data processing type is determined from the crowd portrait acquisition type, crowd data comparison type, customer journey map acquisition type, or self-service event analysis type, the data processing strategy corresponding to the customer data processing type can also be specifically obtained to quickly process the data, thereby obtaining the customer data processing result.
[0158] In one embodiment, as a first embodiment in which the customer data processing type is a customer journey map acquisition type, the data processing result acquisition unit 140 is specifically configured to:
[0159] If it is determined that the customer data processing type is a customer journey map acquisition type, obtaining a customer journey map acquisition strategy corresponding to the data processing strategy;
[0160] Acquire a plurality of behavior data included in the target customer data based on the customer journey map acquisition strategy, and acquire behavior occurrence time and behavior data attributes corresponding to the plurality of behavior data;
[0161] The plurality of behavior data are sorted in ascending order of the time when each behavior in the plurality of behavior data occurs, and target customer journey map data corresponding to the target customer data are formed and used as the customer data processing result.
[0162] In this embodiment, as a first example of customer data processing involving customer journey map acquisition, the corresponding customer journey map acquisition strategy is first acquired. Subsequently, the customer journey map acquisition strategy is used to acquire multiple behavioral data items included in the target customer data, including the corresponding occurrence times and behavior data attributes (e.g., registration, order placement, and payment data). The multiple behavioral data items are then sorted in ascending chronological order of the occurrence times within each behavioral data item to form target customer journey map data, which identifies the customer's behavioral trajectory (also understood as a customer journey map) and serves as the customer data processing result. This approach enables rapid acquisition of customer journey map data for the target customer data.
[0163] In one embodiment, as a second embodiment in which the customer data processing type is a self-service event analysis type, the data processing result acquisition unit 140 is specifically configured to:
[0164] If it is determined that the customer data processing type is a self-service event analysis type, obtaining a self-service event analysis strategy corresponding to the data processing strategy;
[0165] Acquire a plurality of event data included in the target customer data based on the self-service event analysis strategy, and acquire event occurrence time and event data attributes corresponding to the plurality of event data;
[0166] Obtain target event screening conditions corresponding to the self-service event analysis strategy, obtain corresponding target event data from the plurality of event data based on the target event screening conditions, and compose target customer event analysis data corresponding to the target customer data as the customer data processing result.
[0167] In this embodiment, as a second example in which the customer data processing type is self-service event analysis, the corresponding self-service event analysis policy is first obtained. Subsequently, the self-service event analysis policy is used to obtain multiple event data items included in the target customer data, including the corresponding event occurrence times and event data attributes (e.g., event data items such as no user registrations in the past month or more than 10 payments in the past year). The multiple event data items are then sorted in ascending order of their occurrence times to form target customer event analysis data used to identify customer self-service events, which is then used as the customer data processing result. This approach enables rapid acquisition of target customer event analysis data for target customer data.
[0168] In one embodiment, as a third embodiment in which the customer data processing type is a crowd portrait acquisition type, the data processing result acquisition unit 140 is specifically configured to:
[0169] If it is determined that the customer data processing type is a crowd portrait acquisition type, then obtaining a crowd portrait acquisition strategy corresponding to the data processing strategy;
[0170] Acquire several user tags included in the target customer data based on the population portrait acquisition strategy;
[0171] A target population portrait is composed of several user tags and serves as the result of the customer data processing.
[0172] In this third embodiment, where the customer data processing type is demographic profile acquisition, the corresponding demographic profile acquisition strategy is first acquired. Next, the demographic profile acquisition strategy is used to acquire several user tags included in the target customer data, such as young male, low-frequency consumer, and pet owner. Finally, a target demographic profile is formed from the collection of these user tags and used as the customer data processing result. This approach allows for rapid acquisition of the target demographic profile for the target customer data.
[0173] In one embodiment, as a fourth embodiment in which the customer data processing type is a population data comparison type, the data processing result acquisition unit 140 is specifically configured to:
[0174] If it is determined that the customer data processing type is a population data comparison type, obtaining a population data comparison strategy corresponding to the data processing strategy;
[0175] Acquire several groups of customer data to be compared corresponding to the target customer data based on the population data comparison strategy;
[0176] The target customer data is compared with the plurality of groups of customer data to be compared and displayed as the customer data processing result.
[0177] In this fourth embodiment, where the customer data processing type is a population data comparison type, a population data comparison strategy is first obtained. Then, the population data comparison strategy is used to obtain several groups of customer data to be compared corresponding to the target customer data. For example, the population data comparison strategy can be used to obtain several groups of customer data to be compared that have the same user tags as the target customer data. Finally, the target customer data is compared with the several groups of customer data to be compared and displayed as the customer data processing result. Through the above method, the rapid acquisition and comparison display of the customer data to be compared with the target customer data is achieved.
[0178] The data processing result sending unit 150 is configured to send the customer data processing result to the user terminal.
[0179] In this embodiment, after the customer data processing result corresponding to the user data processing instruction is obtained in the user data processing platform of the server, the customer data processing result can be sent to the user terminal for visual display, so as to be provided to the user of the user terminal for viewing and subsequent data application.
[0180] It can be seen that the embodiment of the device can integrate customer data from multiple channels based on the user's unique ID and store it in the customer data warehouse, and can combine the graph algorithm query strategy to more efficiently obtain target customer data from the customer data warehouse, and perform corresponding data processing based on the customer data processing type data processing strategy to obtain the customer data processing results.
[0181] The above-mentioned user data processing device based on graph algorithm and user unique ID can be implemented in the form of a computer program. The computer program can be used in Figure 9 Runs on the computer equipment shown.
[0182] See also Figure 9 , Figure 9 This is a schematic block diagram of a computer device provided by an embodiment of the present invention. The computer device integrates any one of the user data processing devices based on a graph algorithm and a user unique ID provided by an embodiment of the present invention.
[0183] See Figure 9 The computer device 400 includes a processor 402 , a memory, and a network interface 405 connected via a system bus 401 , wherein the memory may include a storage medium 403 and an internal memory 404 .
[0184] The storage medium 403 may store an operating system 4031 and a computer program 4032. The computer program 4032 includes program instructions, which, when executed, may enable the processor 402 to execute a user data processing method based on a graph algorithm and a user unique ID.
[0185] The processor 402 is used to provide computing and control capabilities to support the operation of the entire computer device.
[0186] The internal memory 404 provides an environment for the operation of the computer program 4032 in the storage medium 403. When the computer program 4032 is executed by the processor 402, the processor 402 can execute the above-mentioned user data processing method based on the graph algorithm and the user unique ID.
[0187] The network interface 405 is used to communicate with other devices through the network. Figure 9 The structure shown in the figure is merely a block diagram of a portion of the structure related to the solution of the present invention and does not constitute a limitation on the computer device to which the solution of the present invention is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0188] The processor 402 is configured to run a computer program 4032 stored in the memory to implement the above-mentioned user data processing method based on the graph algorithm and the user unique ID.
[0189] It should be understood that in the embodiment of the present invention, the processor 402 may be a central processing unit (CPU), or may be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.
[0190] Those skilled in the art will appreciate that all or part of the steps in the method of the above-described embodiment can be implemented by instructing the relevant hardware through a computer program. The computer program includes program instructions, which can be stored in a storage medium that is computer-readable. The program instructions are executed by at least one processor in the computer system to implement the steps in the method of the above-described embodiment.
[0191] Therefore, the present invention also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program, wherein the computer program includes program instructions. When the program instructions are executed by a processor, the processor executes the above-mentioned user data processing method based on the graph algorithm and the user unique ID.
[0192] The storage medium may be any computer-readable storage medium that can store program code, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a magnetic disk, or an optical disk.
[0193] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the composition and steps of each example according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.
[0194] In the several embodiments provided herein, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the various units is merely a logical functional division, and actual implementation may employ other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be omitted or not implemented.
[0195] The steps in the methods of the embodiments of the present invention may be adjusted in order, combined, or deleted as needed. The units in the devices of the embodiments of the present invention may be combined, divided, or deleted as needed. Furthermore, the functional units in the various embodiments of the present invention may be integrated into a single processing unit, each unit may exist physically separately, or two or more units may be integrated into a single unit.
[0196] If this integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product, stored in a storage medium, includes instructions for enabling a computer device (such as a personal computer, terminal, or network device) to execute all or part of the steps of the method described in various embodiments of the present invention.
[0197] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in the present invention, and such modifications or substitutions are intended to be within the scope of protection of the present invention. Therefore, the scope of protection of the present invention shall be subject to the scope of protection of the claims.
Claims
1. A user data processing method based on graph algorithm and user unique ID, characterized in that: include: In response to a user data processing instruction sent by a user terminal, obtaining a user data query condition corresponding to the user data processing instruction; Obtain target customer data from a customer data warehouse according to the data query conditions and a preset graph algorithm query strategy; wherein the customer data warehouse stores multiple pieces of customer data, and each piece of customer data corresponds to a unique user unique ID and an identification integration graph; Obtaining a customer data processing type corresponding to the user data processing instruction; wherein the customer data processing type is one of a crowd portrait acquisition type, a crowd data comparison type, a customer journey map acquisition type, or a self-service event analysis type; Processing the target customer data based on the data processing strategy corresponding to the customer data processing type to obtain a customer data processing result; Sending the customer data processing result to the user terminal; The step of obtaining target customer data from a customer data warehouse according to the data query conditions and a preset graph algorithm query strategy includes: Obtaining text data corresponding to the data query condition, and parsing the text data to obtain a plurality of data query sub-conditions and logical operators between the plurality of data query sub-conditions; wherein the data query sub-conditions are user tags or user features; Obtaining a query condition conversion strategy corresponding to the graph algorithm query strategy, and performing query statement conversion on the plurality of data query sub-conditions and the logical operators between the plurality of data query sub-conditions based on the query condition conversion strategy to obtain a target SQL statement; Obtaining a bitmap conversion strategy corresponding to the graph algorithm query strategy, and obtaining a target bitmap operation function corresponding to the target SQL statement based on the bitmap conversion strategy, and a target bitmap operation value obtained by executing the target bitmap operation function; Acquiring the target customer data from the customer data warehouse based on the target bitmap operation value; The step of obtaining a query condition conversion strategy corresponding to the graph algorithm query strategy and converting the plurality of data query sub-conditions and the logical operators between the plurality of data query sub-conditions into query statements based on the query condition conversion strategy to obtain a target SQL statement includes: Fill the data query sub-condition into the first preset query statement template to obtain a sub-SQL statement corresponding to the data query sub-condition; Connecting the sub-SQL statements corresponding to each of the plurality of data query sub-conditions through logical operators between the plurality of data query sub-conditions and filling them into the second preset query statement template to obtain the target SQL statement; Among them, the second preset query statement template includes rb_and() operation, rb_to_array() operation and unest() operation; and the rb_and() operation is an intersection operation for calculating the bitmap indication values that simultaneously meet multiple conditions; the rb_to_array() operation is used to convert the bitmap operation value after the intersection into a user_id array; the unest() operation is used to expand the user_id array into separate user_ids and each user_id occupies one row.
2. The method according to claim 1, characterized in that The processing of the target customer data based on the data processing strategy corresponding to the customer data processing type to obtain a customer data processing result includes: If it is determined that the customer data processing type is a customer journey map acquisition type, obtaining a customer journey map acquisition strategy corresponding to the data processing strategy; Acquire a plurality of behavior data included in the target customer data based on the customer journey map acquisition strategy, and acquire behavior occurrence time and behavior data attributes corresponding to the plurality of behavior data; The plurality of behavior data are sorted in ascending order of the time when each behavior in the plurality of behavior data occurs, and target customer journey map data corresponding to the target customer data are formed and used as the customer data processing result.
3. The method according to claim 1, characterized in that The processing of the target customer data based on the data processing strategy corresponding to the customer data processing type to obtain a customer data processing result includes: If it is determined that the customer data processing type is a self-service event analysis type, obtaining a self-service event analysis strategy corresponding to the data processing strategy; Acquire a plurality of event data included in the target customer data based on the self-service event analysis strategy, and acquire event occurrence time and event data attributes corresponding to the plurality of event data; Obtain target event screening conditions corresponding to the self-service event analysis strategy, obtain corresponding target event data from the plurality of event data based on the target event screening conditions, and compose target customer event analysis data corresponding to the target customer data as the customer data processing result.
4. The method according to claim 1, wherein The processing of the target customer data based on the data processing strategy corresponding to the customer data processing type to obtain a customer data processing result includes: If it is determined that the customer data processing type is a crowd portrait acquisition type, then obtaining a crowd portrait acquisition strategy corresponding to the data processing strategy; Acquire several user tags included in the target customer data based on the population portrait acquisition strategy; A target population portrait is composed of several user tags and serves as the result of the customer data processing.
5. The method according to claim 1, wherein The processing of the target customer data based on the data processing strategy corresponding to the customer data processing type to obtain a customer data processing result includes: If it is determined that the customer data processing type is a population data comparison type, obtaining a population data comparison strategy corresponding to the data processing strategy; Acquire several groups of customer data to be compared corresponding to the target customer data based on the population data comparison strategy; The target customer data is compared with the plurality of groups of customer data to be compared and displayed as the customer data processing result.
6. The method according to claim 1, characterized in that Before the step of obtaining a user data query condition corresponding to the user data processing instruction in response to the user data processing instruction sent by the user terminal, the method further includes: Acquire business data from multiple different channels; wherein the business data includes multiple pieces of customer data, and each piece of customer data includes multiple pieces of customer attribute data; generating customer identifiers corresponding to the respective customer data according to the channel identifiers of the channels corresponding to the respective customer data; The business data is grouped and processed based on a preset graph algorithm and grouping strategy to obtain multiple customer data groups; For each of the customer data groups, generating a user unique ID corresponding to the customer data group, and associating the user unique ID with each customer identifier in the customer data group to obtain an identifier integration map; For each identification integration graph, the customer data associated with the identification integration graph is associated and integrated to obtain omni-channel customer integration data, and form an omni-channel customer integration data set; wherein the omni-channel customer integration data also includes a unique binary value corresponding to the user unique ID; Obtaining a plurality of initial user tags associated with field names included in the omni-channel customer integrated data; for each of the plurality of initial user tags, obtaining a user unique ID set corresponding to the initial user tag from the omni-channel customer integrated data set; performing a bitwise OR operation on the unique binary value of each unique data ID in the user unique ID set corresponding to the initial user tag to obtain a bitmap representation value corresponding to the initial user tag; A user tag table is formed by each initial user tag in the plurality of initial user tags and a corresponding bitmap representation value, and is stored in the customer data warehouse.
7. A user data processing device based on graph algorithm and user unique ID, characterized in that: include: a query condition acquiring unit, configured to, in response to a user data processing instruction sent by a user terminal, acquire a user data query condition corresponding to the user data processing instruction; A target customer data acquisition unit is used to acquire target customer data from a customer data warehouse according to the data query conditions and a preset graph algorithm query strategy; wherein the customer data warehouse stores multiple customer data, and each customer data corresponds to a unique user unique ID and an identification integration graph; a data processing type acquisition unit, configured to acquire a customer data processing type corresponding to the user data processing instruction; wherein the customer data processing type is one of a crowd portrait acquisition type, a crowd data comparison type, a customer journey map acquisition type, or a self-service event analysis type; a data processing result obtaining unit, configured to process the target customer data based on the data processing strategy corresponding to the customer data processing type to obtain a customer data processing result; a data processing result sending unit, configured to send the customer data processing result to the user terminal; The target customer data acquisition unit is specifically used to: Obtaining text data corresponding to the data query condition, and parsing the text data to obtain a plurality of data query sub-conditions and logical operators between the plurality of data query sub-conditions; wherein the data query sub-conditions are user tags or user features; Obtaining a query condition conversion strategy corresponding to the graph algorithm query strategy, and performing query statement conversion on the plurality of data query sub-conditions and the logical operators between the plurality of data query sub-conditions based on the query condition conversion strategy to obtain a target SQL statement; Obtaining a bitmap conversion strategy corresponding to the graph algorithm query strategy, and obtaining a target bitmap operation function corresponding to the target SQL statement based on the bitmap conversion strategy, and a target bitmap operation value obtained by executing the target bitmap operation function; Acquiring the target customer data from the customer data warehouse based on the target bitmap operation value; The step of obtaining a query condition conversion strategy corresponding to the graph algorithm query strategy and converting the plurality of data query sub-conditions and the logical operators between the plurality of data query sub-conditions into query statements based on the query condition conversion strategy to obtain a target SQL statement includes: Fill the data query sub-condition into the first preset query statement template to obtain a sub-SQL statement corresponding to the data query sub-condition; Connecting the sub-SQL statements corresponding to each of the plurality of data query sub-conditions through logical operators between the plurality of data query sub-conditions and filling them into the second preset query statement template to obtain the target SQL statement; Among them, the second preset query statement template includes rb_and() operation, rb_to_array() operation and unest() operation; and the rb_and() operation is an intersection operation for calculating the bitmap indication values that simultaneously meet multiple conditions; the rb_to_array() operation is used to convert the bitmap operation value after the intersection into a user_id array; the unest() operation is used to expand the user_id array into separate user_ids and each user_id occupies one row.
8. A computer device, characterized in that: The computer device includes a memory and a processor, the memory stores a computer program, and when the processor executes the computer program, it implements the user data processing method based on the graph algorithm and the user unique ID as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, which includes program instructions. When the program instructions are executed by a processor, the user data processing method based on a graph algorithm and a user unique ID according to any one of claims 1 to 6 can be implemented.
Citation Information
Patent Citations
Target crowd circling method and device and computer equipment
CN110648185A
Bitmap-based user data analysis method and device and computer equipment
CN114328632A
User portrait determination method and device, equipment and storage medium
CN117390045A