Customer management method, device, and equipment, and storage medium
By creating a parent client node and splitting it into child client nodes when a threshold is reached, the problem of limited expansion of the single-node memory library is solved, and effective management of very large clients is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA MOBILE INFORMATION TECHNOLOGY CO LTD
- Filing Date
- 2022-09-13
- Publication Date
- 2026-06-05
AI Technical Summary
Existing customer management methods are limited by the size of the physical resources of a single-node memory library, making it impossible to flexibly expand the nodes and thus unable to support the management needs of very large customers.
By creating a parent client node and monitoring its number of members, a child client node is created when a preset threshold is reached. The members of the parent client node are then split into the child client nodes for management, thus establishing a four-client model and enabling flexible expansion of the memory library node.
It enables effective management of ultra-large customers, solves the problem of physical resource size limitation of single-node memory library, and meets the management needs of ultra-large customers.
Smart Images

Figure CN116955474B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of operations management technology, specifically to a customer management method, apparatus, equipment, and storage medium. Background Technology
[0002] With the booming development of IoT services, operators' customer base is constantly increasing, and the number of ultra-large customers with millions or even tens of millions of members is also gradually growing. Following this trend, the management of ultra-large customers has gradually exceeded the support capacity of business systems. Because large customers often have group-based services such as shared tariffs, the existing three-user data model (user, account, customer) and traditional support methods require storing all customer data on the same management node for sharing. However, due to the high dependence of customer management capabilities on the physical resources of a single-node memory database, the data of the same customer can only be deployed on the same memory database instance node, limiting business scale. Furthermore, relationships within large customers have evolved from single-dimensional to multi-dimensional; a single customer may assume multiple different roles, making the original three-user model ineffective in representing the relationships between customers. Moreover, the limitations of the physical resources of a single-node memory database prevent flexible node expansion. Therefore, a single node can no longer support the management needs of all members of an ultra-large customer. Summary of the Invention
[0003] This application provides a customer management method, apparatus, device, and storage medium to solve the technical problem that existing customer management methods are limited by the scale of physical resources of a single-node memory library, making it impossible to flexibly expand the node and causing a single node to be unable to support the management needs of a very large number of customers.
[0004] In a first aspect, embodiments of this application provide a customer management method, including:
[0005] Obtain customer information for each target customer, and create a parent customer node corresponding to the target customer based on the customer information;
[0006] The number of members of the parent customer node is monitored. When the number of members of the parent customer node reaches a preset customer member threshold, a child customer node of the parent customer node is created.
[0007] The members of the parent client node are split and managed by the child client nodes.
[0008] In one embodiment, the sub-client nodes include at least a first sub-client node and a second sub-client node, and the step of splitting the members of the parent client node into the sub-client nodes for management includes:
[0009] Save the members of the parent client node to the first child client node for management;
[0010] When a new user of the target customer is detected, the user information of the new user is saved to the second sub-customer node so that the new user can be managed as a member of the second sub-customer node;
[0011] The number of members of the second sub-client node is monitored. When the number of members of the second sub-client node reaches the customer member threshold, a third sub-client node of the parent client node is created.
[0012] The members of the second sub-client node are split and managed in the third sub-client node.
[0013] In one embodiment, the customer information further includes the target customer's account information; the parent customer node includes a parent account node; the parent account node includes one or more; when the parent account node includes multiple parent account nodes, after splitting the members of the parent customer node into the child customer nodes for management, the method further includes:
[0014] Map the parent account node of the parent client node, and create child account nodes of each parent account node in any of the child client nodes.
[0015] In one embodiment, the customer information further includes group information of the target customer; the parent customer node includes a parent group node; the parent group node includes one or more; the customer management method further includes:
[0016] The number of group members of the parent group node of the parent client node is monitored. When the number of group members reaches a preset group member threshold, the step of creating a child client node of the parent client node is executed.
[0017] In one embodiment, when the parent group includes multiple groups, after splitting the members of the parent client node into the child client nodes for management, the method further includes:
[0018] Obtain the group membership relationship of any of the parent group nodes;
[0019] Map the group members of the parent group node according to the group membership relationship, so as to create a child group node of the parent group node in any of the child client nodes;
[0020] Based on the members of the sub-client nodes, the group members of the parent group node are split into the sub-group nodes for management.
[0021] In one embodiment, the step of monitoring the number of members of the parent client node includes:
[0022] Obtain the historical value of the number of members of the parent client node; the historical value includes the actual value and the predicted value.
[0023] Based on the actual values in the historical values, a first prediction weight and a second prediction weight are determined; the first prediction weight is the weight value of the actual values in the historical values; the second prediction weight is the weight value of the predicted values in the historical values.
[0024] The number of members of the parent client node is monitored based on the historical value, the first prediction weight, and the second prediction weight.
[0025] In one embodiment, the customer management method further includes:
[0026] When an information query instruction from the target customer is received, the target information to be queried by the information query instruction is obtained;
[0027] The target information is obtained from the sub-client node and saved to the parent client node for querying.
[0028] Secondly, embodiments of this application provide a customer management device, including:
[0029] The parent node creation module is used to obtain customer information for each target customer and create a parent customer node corresponding to the target customer based on the customer information.
[0030] The child node creation module is used to monitor the number of members of the parent customer node. When the number of members of the parent customer node reaches a preset customer member threshold, the module creates a child customer node of the parent customer node.
[0031] The customer splitting management module is used to split the members of the parent customer node into the child customer nodes for management.
[0032] Thirdly, embodiments of this application provide an electronic device, including a processor and a memory storing a computer program, wherein the processor executes the program to implement the steps of the customer management method described in the first aspect.
[0033] Fourthly, embodiments of this application provide a non-transitory computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the customer management method described in the first aspect.
[0034] The customer management method, apparatus, device, and storage medium provided in this application create a parent customer node and monitor the number of members in the parent customer node. When the number of members in the parent customer node reaches a preset customer member threshold, child customer nodes are created, and the members of the parent customer node are split into the child customer nodes for management, thus achieving dynamic splitting of the parent customer node. By establishing a four-customer model and dynamically splitting the parent customer node, some members of large customers are split into new memory database nodes, achieving flexible expansion of customer memory database nodes, solving the size limitation of physical resources of a single-node memory database, and meeting the management needs of ultra-large customers. Attached Figure Description
[0035] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0036] Figure 1 This is one of the flowcharts illustrating the customer management method provided in the embodiments of this application;
[0037] Figures 2 to 4 This is the intended splitting of the parent customer node in the customer management method provided in the embodiments of this application;
[0038] Figure 5 This is one of the mapping intentions of the parent account node in the customer management method provided in the embodiments of this application;
[0039] Figure 6 This is one of the mapping diagrams of the parent group node in the customer management method provided in the embodiments of this application;
[0040] Figure 7 This is another splitting intent of the parent customer node in the customer management method provided in the embodiments of this application;
[0041] Figure 8 This is a second schematic flowchart of the customer management method provided in the embodiments of this application;
[0042] Figure 9 This is one of the schematic diagrams of the member monitoring process of the parent customer node and parent group node in the customer management method provided in this application embodiment;
[0043] Figures 10 to 14 This is a schematic diagram illustrating the splitting of the parent customer node in different scenarios of the customer management method provided in the embodiments of this application;
[0044] Figure 15This is one of the structural schematic diagrams of the customer management device provided in the embodiments of this application;
[0045] Figure 16 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0046] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings of the embodiments. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0047] It should be noted that, in this application, "customer" refers to an individual, enterprise, or other group using the products or services provided by the operator, including individual customers, family customers, and group customers; among them, large customers are mostly group customers. An account is the entity a customer uses to purchase products or services; a user is an instance that subscribes to products or services, and a single user can be a member of a customer group. The relationship between the three types of accounts is specifically manifested as follows: a customer can have multiple accounts and users; an account can only be owned by one customer; an account can pay for multiple users; one user corresponds to one account (the user's primary account), and a user can also have multiple accounts paying for them.
[0048] Figure 1 This is one of the flowcharts illustrating a customer management method provided in an embodiment of this application. (Refer to...) Figure 1 The customer management method provided in this application embodiment is applied to a customer management system and includes:
[0049] Step 100: Obtain customer information for each target customer, and create a parent customer node corresponding to the target customer based on the customer information;
[0050] First, obtain customer information for the target customer, which is a super-large customer, that is, a customer whose number of members exceeds a certain threshold. There can be one or more target customers. The customer information of the target customer includes natural attribute information and system attribute information. Natural attribute information includes customer name, which refers to information that does not depend on the system, such as the name and age of an individual customer, and the name and legal representative of a group customer. System information includes customer role and customer credit rating, which refers to the system data established when the customer participates in activities.
[0051] The target customer's customer information also includes group information and account information. Based on the obtained customer information, a parent customer node is created for the target customer. This parent customer node is a memory-based node used to store the target customer's customer information. Specifically, the target customer is designated as the parent customer, the groups created by the target customer's members are designated as the parent groups, and the target customer's account is designated as the parent account. The target customer's customer information is then stored in the database memory node, thus constructing the target customer's parent customer node. This parent customer node includes a parent group node corresponding to the target customer's group information and a parent account node corresponding to the target customer's account information.
[0052] Step 200: Monitor the number of members of the parent customer node. When the number of members of the parent customer node reaches a preset customer member threshold, create a child customer node of the parent customer node.
[0053] The number of members in the created parent client node is monitored. When the number of members in the parent client node reaches a preset threshold, a four-user model (parent client, child client, account, user) is established for the child client node of the parent client node. This child client node is an extension memory library node of the parent client node. The threshold for customer members can be determined based on the maximum capacity of the physical resources of a single node's memory library. The threshold for customer members can be the same or different for different customers. Based on this, monitoring the number of members in a parent client node can be done by periodically checking the number of members at regular intervals; alternatively, it can be done by predicting the number of members in a parent client node based on historical data. When checking the number of members in a parent client node, the client member threshold can be a value slightly smaller than the maximum capacity of the physical resources in a single-node memory library. When the number of members in a parent client node reaches this threshold, a child client node is created. When predicting the number of members in a parent client node, the client member threshold can be a value slightly larger than the maximum capacity of the physical resources in a single-node memory library. When it is predicted that the number of members in a parent client node will reach this threshold, i.e., the number of members in a parent client node is about to exceed the maximum capacity of the physical resources in a single-node memory library, a child client node is created.
[0054] Step 300: Split the members of the parent client node into the child client nodes for management.
[0055] The members of a parent customer node are split and managed across created child customer nodes. Splitting the members of a parent customer node essentially involves splitting the parent node's customer information and storing it in the child customer nodes for management. Specifically, this includes: saving the parent node's members to child customer nodes for management; when a new user is added to the target customer node, the new user is added as a member of the parent customer node and managed there; when the number of members in the parent customer node reaches a preset threshold, a new child customer node is created for further splitting; or, multiple child customer nodes are created simultaneously, and the parent node's members are saved sequentially to the first child customer node for management; when a new user is added to the target customer node, the new user is added as a member of the second child customer node and managed there; when the number of members in the second child customer node reaches a preset threshold, the new user is saved sequentially to the next child customer node for management. This method horizontally expands the child customer nodes of the parent customer node, enabling dynamic splitting of the parent customer node's members.
[0056] Furthermore, the created sub-customer nodes are used for internal customer management. When displaying customer information externally, they are still based on the parent customer node. Specifically, the customer management method provided in the embodiments of this application further includes:
[0057] Step 001: When the information query instruction from the target customer is received, obtain the target information to be queried by the information query instruction;
[0058] Step 002: Obtain the target information from the sub-client node and save the target information to the parent client node for querying.
[0059] When an information query instruction from a target customer is received, the target information to be queried by the instruction is obtained. The target information can be user information of the customer's members, customer information, or customer group information, without any specific limitation.
[0060] The system retrieves the target information from the sub-customer nodes of the target customer and saves the retrieved target information to the parent customer node for later querying. Specifically, when the target information to be queried is the user information of the target customer's members, the system indexes the nodes in the order of parent customer-sub-customer-member to find the node where the user is located and then retrieves the corresponding user information. If the target information to be queried is summary information such as the number of members of the customer, the system summarizes the information of each sub-customer node and saves the summarized information to the parent customer node for later querying.
[0061] In this embodiment, a parent client node is created, and the number of members in the parent client node is monitored. When the number of members in the parent client node reaches a preset threshold, child client nodes are created, and the members of the parent client node are split into the child client nodes for management, thus achieving dynamic splitting of the parent client node. By establishing a four-client model and dynamically splitting the parent client node, some members of large clients are split onto new memory database nodes, enabling flexible expansion of the client memory database nodes. This solves the limitation of the physical resources of a single-node memory database and meets the management needs of ultra-large clients.
[0062] Furthermore, the parent client node serves as the unified entry point for external display, while the extended memory nodes, i.e., child client nodes, are used for internal management. This allows for flexible expansion of memory library nodes without the client's awareness.
[0063] In one embodiment, the created sub-client node includes at least a first sub-client node and a second sub-client node, and step 300 may specifically include:
[0064] Step 301: Save the members of the parent client node to the first child client node for management;
[0065] Step 302: When a new user of the target customer is detected, the user information of the new user is saved to the second sub-customer node so that the new user can be managed as a member of the second sub-customer node;
[0066] Step 303: Monitor the number of members of the second sub-client node. When the number of members of the second sub-client node reaches the customer member threshold, create a third sub-client node of the parent client node.
[0067] Step 304: Split the members of the second sub-client node into the third sub-client node for management.
[0068] Reference Figure 2 The diagram illustrates the splitting process of the parent client node. In this embodiment, when the number of members of the parent client node reaches a preset client member threshold N, the first child client node and the second child client node of the parent client node are created, generating a process as shown below. Figure 2The diagram shows sub-clients 1 and 2. Members of the parent client node are split and managed within the first sub-client node. Members 1 to N of the parent client node then become members 1-1 to 1-N of the sub-client. When a new user is detected for a target client, this new user is added as a member of the second sub-client node and managed there. The number of members in the second sub-client node is monitored. When the number of members in the second sub-client node reaches a preset threshold N, a third sub-client node (sub-client 3) is created, and the members of the second sub-client node are split and managed within the third sub-client node. This method is used to horizontally scale the parent client node.
[0069] Reference Figure 3 The diagram illustrates the splitting of the parent client node. The parent client node, the first child client node, the second child client node, and the third child client node each correspond to different data nodes in the database. Each data node is a specific database instance deployed on the server. Before the split, the parent client was stored on database instance 1. By dynamically splitting the parent client and horizontally scaling the nodes, the first child client node, the second child client node, and the third child client node were created, corresponding to child client 1, child client 2, and child client 3 respectively, and stored on database instances 1 through 3 respectively. This allows a single very large client to share business across multiple in-memory database nodes, thereby increasing the overall capacity of the client.
[0070] Furthermore, the target customer's customer information also includes account information. The created parent customer node includes a parent account node. Since the same customer can have multiple accounts, the parent account node may include one or more. When there are multiple parent account nodes, after step 300, the process further includes:
[0071] Step 410: Map the parent account node of the parent client node, and create a child account node of each parent account node in any of the child client nodes.
[0072] Map the parent account nodes of the parent client node, and for any child client node, create child account nodes for each parent account node. Specifically, if a parent client has multiple parent accounts, for each parent account, a corresponding child account needs to be created under each child client node. For example... Figure 4The diagram illustrates the splitting process. Before the split, the parent customer node includes a parent account node with members ranging from member 1 to member N, reaching the preset customer member threshold N. After the split, a first child customer node and a second child customer node are created, namely child customer 1 and child customer 2. Therefore, child account nodes (child account 1 and child account 2) of the parent customer need to be created in child customer 1 and child customer 2 respectively. The members of the parent customer node are then assigned to child customer 1, managed as members 1-1 to 1-N. The change in member affiliation corresponds to a change in the member identifiers, such as 1-1. When a new user is added to the parent customer node, this new user will become a member of child customer 2 and be managed within child customer 2. The corresponding member identifiers can be 2-1, 2-2, ..., 2-N, etc.
[0073] Reference Figure 5 The diagram illustrates the splitting of the parent customer node. The parent customer node includes three parent account nodes: Parent Account 1, Parent Account 2, and Parent Account 3. During the initial splitting of the parent customer node, Child Customer 1 and Child Customer 2 are created. Correspondingly, child account nodes corresponding to Parent Account 1 through Parent Account 3 are created under Child Customer 1, i.e., Child Account 1-1 through Child Account 1-3. Similarly, child account nodes corresponding to Parent Account 1 through Parent Account 3 are created under Child Customer 2, i.e., Child Account 2-1 through Child Account 2-3. After further splitting of the parent customer node, Child Customer 3 is created. Similarly, child account nodes corresponding to Parent Account 1 through Parent Account 3 are created under Child Customer 3, i.e., Child Account 3-1 through Child Account 3-3. Following this method, each time the parent customer node is split, creating a new child customer node, child account nodes for each parent account node are created under the newly created child customer node.
[0074] Furthermore, the target customer's customer information also includes group information, and the created parent customer node includes a parent group node. The customer management method provided in the embodiments of this application also includes:
[0075] Step 400: Monitor the number of group members of the parent group node of the parent client node. When the number of group members reaches a preset group member threshold, execute the step of creating a child client node of the parent client node.
[0076] The number of group members in the parent group node of the parent client node is monitored. The specific monitoring method is the same as that for monitoring the number of members in the parent client node, and will not be repeated here. When the number of group members in the parent group reaches the preset group member threshold, a child client node of the parent client node is created, and the members of the parent client node are split, thereby splitting the group members.
[0077] In this embodiment, the operation of splitting the members of the parent client node is triggered when the number of members of the parent client node reaches a preset customer member threshold, and / or when the number of members of the parent group reaches a preset group member threshold. That is, if the parent client node has a parent group node, a child client node is created to split the members of the parent client node when: the number of members of the parent client node reaches the preset customer member threshold, but the number of members of the parent group does not; or, the number of members of the parent client node does not reach the preset customer member threshold, but the number of members of the parent group reaches the preset group member threshold; or, the number of members of the parent client node reaches the preset customer member threshold, and the number of members of the parent group reaches the preset group member threshold. When splitting occurs before the number of members of the parent client node reaches the preset customer member threshold, virtual members can be created in the child client node. When a new user is added, the virtual member is replaced with the new user.
[0078] After splitting the members of the parent client node into child client nodes for management, it is necessary to map the parent group node of the parent client node to the child client node, and then create child group nodes of the parent group node on the child client node. Specifically, this includes:
[0079] Step 420: Obtain the group membership relationship of any of the parent group nodes;
[0080] Step 430: Map the group members of the parent group node according to the group member relationship, so as to create a child group node of the parent group node in any of the child client nodes;
[0081] Step 440: Based on the members of the sub-client nodes, split the group members of the parent group node into the sub-group nodes for management.
[0082] Since a single customer can have multiple accounts, the parent account node can include one or more. When there are multiple parent account nodes, when mapping the parent group node, the group membership relationship of any parent group node is first obtained. Based on this group membership relationship, the parent group node is mapped, and child group nodes of the parent group node are created under each child customer node. Because the creation or joining of groups by users under a parent customer node is random and uncertain, for the same parent group node, a child group node needs to be created under each child customer node; for the same child customer node, a child group node of each parent group node needs to be created under that child customer node. Based on the members of the child customer nodes, the group members of the parent group node are split into child group nodes for management. Specifically, after splitting the members of the parent customer node into child customer nodes for management, the group members in the parent group node may be split into different child customer nodes. According to the group membership relationship of the parent group node, the group members located in different child customer nodes are split into the corresponding child group nodes of the parent group node.
[0083] Reference Figure 6 The diagram illustrating the splitting of the parent customer node is essentially the same as the splitting process for the parent account. When the parent customer node includes multiple parent group nodes such as parent group 1, parent group 2, and parent group 3, the first split of the parent customer node creates two nodes: child customer 1 and child customer 2. Under child customer 1, subgroup nodes from parent group 1 to parent group 3 are created, namely subgroup 1-1 to subgroup 1-3. Similarly, under child customer 2, subgroup nodes from parent group 1 to parent group 3 are created, namely subgroup 2-1 to subgroup 2-3. After the parent customer node is split again, child customer 3 is created, and under child customer 3, subgroup nodes from parent group 1 to parent group 3 are also created, namely subgroup 3-1 to subgroup 3-3. Following this method, each time the parent customer node is split, creating a new child customer node, subgroup nodes for each parent group node are created under the newly created child customer node.
[0084] Furthermore, referring to Figure 7The diagram illustrates the splitting of the parent customer node. The parent customer node includes a parent group node and a parent account node. After splitting the parent customer node, child customer 1 and child customer 2 are created. The members of the parent customer node, i.e., member 1 to member N, are managed within child customer 1, becoming members 1-1 to member 1-N. Subgroup nodes (child group 1 and child group 2) are created under child customer 1 and child customer 2, respectively, as are child account nodes (child account 1 and child account 2). Since members 1 to member N of the parent customer node have parent group nodes, meaning the members of the parent customer node are group members of the parent group node, members 1-1 to 1-N of child customer 1 are group members of child group 1. Child group 2 has no members, but virtual members such as member 2-1 can be created. When a new user maintained in child customer 2 joins the parent group, they can be added to child group 2, replacing the created virtual user.
[0085] like Figures 5 to 7 The diagram showing the splitting of the parent customer node is similar to the process of adding a child customer node. After splitting the parent customer node, when a parent account node and / or a parent group node are added to the parent customer node, the child account node of the newly added parent account node and / or the child group node of the newly added parent group node can be created under each child customer node. This will not be elaborated further here.
[0086] Furthermore, the following describes the algorithmic implementation of the parent customer node splitting process based on the physical database tables. First, the parent customer information is added to the customer table, user table, account table, and user group table, as shown in Table 1. Based on Table 1, the correspondence between sub-accounts and parent accounts, as well as sub-groups and parent groups, is added, as shown in Table 2.
[0087] When a customer is created, the parent customer serves as the externally displayed customer information carrier. The data of the three newly opened accounts under this customer are stored in the same data node as this customer, and the affiliated customer of users, accounts, and groups is the same as that of their parent customer. If the number of members of a large customer exceeds a specified threshold, a customer split is triggered, creating a new child customer node. Simultaneously, the affiliated customer of the users, accounts, and groups under this customer is changed to child customer 1, which then becomes the parent customer (the externally displayed customer). Corresponding user attributes, account attributes, and group attributes are updated synchronously, while other information (such as lifespan and expiration times) remains unchanged. Since child customer 1, which carries the member information of the original parent customer, has reached its capacity threshold, a child customer 2 needs to be created for the parent customer. Child customer 2 carries new users; after the initial split, virtual users can be created in child customer 2. These new users belong to child customer 2 and simultaneously to the parent customer, and both users and child customer 2 belong to the same data node. When the number of members in sub-customer 2 exceeds the specified threshold for the number of customer members, sub-customer 3 is created. The steps are the same as for creating sub-customer 2. Subsequent sub-customers are created in the same way until the parent customer's capacity reaches the set maximum allowed number of members, at which point the splitting stops.
[0088] It should be noted that the identification information such as customer identifier, account identifier, and group identifier in Tables 1 and 2 above is for illustrative purposes only and has no practical significance.
[0089] In this embodiment, the members of the parent customer node are split and managed by creating child customer nodes of the parent customer node, and the accounts and groups of the parent customer node are mapped. Child account nodes of the parent account node and child group nodes of the parent group node are created under the child customer node, realizing the management of the same customer on different data nodes, improving the scalability of a single customer data node, and increasing the node capacity of the same customer.
[0090]
[0091] Table 1
[0092]
[0093] Table 2
[0094] In one embodiment, step 200, monitoring the number of members of the parent client node, specifically includes:
[0095] Step 201: Obtain the historical value of the number of members of the parent client node; the historical value includes the actual value and the predicted value;
[0096] Step 202: Determine a first prediction weight and a second prediction weight based on the actual values in the historical values; the first prediction weight is the weight value of the actual values in the historical values; the second prediction weight is the weight value of the predicted values in the historical values.
[0097] Step 203: Monitor the number of members of the parent client node based on the historical value, the first prediction weight, and the second prediction weight.
[0098] When monitoring the number of members in a parent client node, the historical value of the number of members in the parent client node is first obtained. This historical value represents the historical number of members in the parent client node. Based on the historical value of the number of members in the parent client node, the change in the number of members in the parent client node over different time periods can be determined, thereby revealing the pattern of change in the number of members in the parent client node.
[0099] Furthermore, the acquired historical values include the actual and predicted values of the number of members in the parent client node, that is, the actual and predicted values of the change in the number of members in the parent client node. Based on the actual value of the number of members in the parent client node in the historical values, a first prediction weight and a second prediction weight are determined, where the first prediction weight is the weight value of the actual value in the historical values; the second prediction weight is the weight value of the predicted value in the historical values. Based on the historical values, the first prediction weight, and the second prediction weight, the number of members in the parent client node is monitored. Specifically, monitoring the number of members in the parent client node is actually predicting the change in the number of members in the parent client node based on historical values. Based on the actual value of the number of members in the parent client node in the historical values, the volatility of the change in the number of members in the parent client node can be determined, thereby determining the degree of influence of the historical actual value on the current predicted value, and thus determining the prediction weight of the historical actual value and the prediction weight of the historical predicted value. Based on the prediction weights of the actual value and the predicted value, the change in the number of members in the parent client node is predicted according to the acquired historical values, thereby realizing the monitoring of the number of members in the parent client node.
[0100] Preferably, taking a day as the monitoring time unit as an example, the number of members of the parent customer node is monitored daily. The acquired historical values include both the actual and predicted values of the number of members of the parent customer node. Specifically, the monitoring of the number of members of the parent customer node is achieved by predicting the change in the number of members of the parent customer node on the same day, based on the actual and predicted values of the number of members in the historical data. Specifically, the formula for calculating the user growth of the parent customer node corresponding to a target customer is as follows:
[0101] S t =a×y t-1 +(1-a)S t-1 (1)
[0102] Among them, S t y represents the predicted number of members growing on day t of the parent client node; t-1 S represents the actual number of members added to the parent client node on day t-1; t-1 This represents the predicted number of members growing in the parent client node on day t-1; 'a' is a configurable prediction weight, with a value range of [0,1]. The closer 'a' is to 1, the greater the impact of the actual value in the distant future on the predicted value in the current period; the closer 'a' is to 0, the smaller the impact of the actual value in the distant future on the predicted value in the current period. Furthermore, the value of 'a' is related to the volatility of the time series. When the number of members in the parent client node fluctuates significantly in the time series, the value of 'a' should be smaller. Therefore, the value of 'a' can be determined based on the actual value obtained from historical data.
[0103] If the historical value obtained is the monitoring data of a customer over the past 50 days, the corresponding prediction weight can be determined based on the historical value obtained according to the calculation method shown in Formula 1. Based on the historical value of day t, the number of members of the parent customer node corresponding to the customer on day t+1 is predicted. When the predicted number of members exceeds the preset customer member threshold, the parent customer node is split.
[0104] In this embodiment, by monitoring the number of members of the parent client node and predicting the number of members of the parent client node based on the historical value of the number of members of the parent client node, it is possible to determine when to split the parent client node, which helps to ensure the utilization rate of the memory library node.
[0105] In one embodiment, the customer management method provided in this application, when dealing with IoT application scenarios where the growth of large customer members exceeds the physical resource support capacity of the current single-node memory library, dynamically splits a portion of the large customer members to a new memory library node in near real-time, based on pre-set thresholds for the number of ultra-large customer members and group members, and the predicted growth of large customer members, within the carrying capacity of the single-node memory library. During the dynamic splitting process, a new data model is established to solve the scale limitation of the physical resources of the single-node memory library, allowing for flexible expansion of the memory library node to support the business development of ultra-large customers with more than ten million connections and to effectively manage ultra-large customers.
[0106] The customer management method provided in this application is applied to a customer management system, which includes a customer early warning module, a splitting processing module, and a horizontal scaling module. The customer early warning module is used to monitor the number of members in the parent customer node of each target customer. The splitting processing module is used to create child customer nodes, child account nodes, and child group nodes, and to split the parent customer node. The horizontal scaling module is used to load the routing rules and node sharding rule parameters of the newly calculated child customers into the rule cache, and to automatically migrate and deploy the member data of the split child customers and child groups to new data nodes according to the node sharding rules.
[0107] When managing customers, the system first identifies major clients as target clients, obtains their customer information, and creates a corresponding parent client node based on this information. The customer alert module monitors and issues alerts regarding the number of members in the parent client node. The splitting module, based on the monitoring data from the customer alert module, splits the members of the parent client node, creating parent-child clients, parent-child groups, and parent-child accounts, and re-establishes the attribution relationships between members and their child clients and groups. The horizontal scaling module, based on the child client nodes created by the splitting module, migrates and deploys the data from the parent client node to the child client nodes for management.
[0108] Specifically, such as Figure 8 As shown, the customer early warning module dynamically monitors the number of members in a large customer account and determines whether the number of members has reached a threshold. If the threshold is reached, the splitting module initiates a dynamic customer splitting process to dynamically split the customer. The specific splitting process of the splitting module includes generating sub-customer numbers, sub-accounts, and virtual user numbers corresponding to the sub-customers, and generating sub-customer information, sub-account information, and sub-group information based on these. It also changes the parent-child customer and parent-child account affiliations of members, switches group resources, adds sub-group members, and changes the parent group affiliation of sub-groups; thereby creating parent-child customer relationship tables, parent-child group relationship tables, node relationship tables, and sequence number relationship tables. The horizontal scaling module initiates a horizontal scaling routing calculation process based on the relationship tables established by the splitting module to perform routing calculations. Based on the calculated routes, it determines the new data node corresponding to the database instance as the in-memory database node for the sub-customer and splits the parent customer node to generate sub-customer 1, sub-customer 2, and sub-customer 3.
[0109] The customer alert module monitors the number of members in the parent customer node as follows: Figure 9As shown, the specific steps include: calculating the daily increase in the number of members of the parent customer node and the daily increase in the number of members of the parent group node; predicting the total daily increase in the number of members of the parent customer node and the total daily increase in the number of members of the parent group node to predict the number of members of the parent customer node and the number of members of the parent group node; determining whether the number of members of the parent customer node reaches the customer member threshold and whether the number of members of the parent group node reaches the group member threshold; if at least one of the following conditions is met, the splitting processing module is triggered to split the parent customer node.
[0110] The splitting module dynamically manages large customers (i.e., splitting large customers to create sub-accounts, sub-groups, sub-customer / sub-group relationships, etc.) and manages large customer data. When the predicted number of members in a parent customer reaches a threshold of 5 million, it automatically splits into sub-customer 1 and sub-customer 2. New users are created and managed on sub-customer 2, and the number of members in sub-customer 1 remains unchanged. When the number of members in sub-customer 2 exceeds the threshold (5 million) again, the sub-customer splitting continues, generating sub-customer 3. When the number of members in sub-customer 3 exceeds the threshold (5 million) again, the sub-customer splitting continues, generating sub-customer 4. This cycle continues, splitting based on the number of members in each sub-customer node, until the system's single-customer capacity limit is reached.
[0111] The horizontal scaling module is used to automatically instantiate the data of each sub-customer (including sub-customers, sub-accounts, sub-groups, and members) according to their assigned shards after the splitting processing module dynamically splits large customers. Different memory database instance nodes can be deployed on different servers, thus achieving horizontal scaling of large customers. The splitting processing module is executed in an independent thread and does not occupy the main process time. It starts by periodically calculating all large customer information involved in this distributed transaction and performing dynamic large customer splitting management based on the user member quantity index information of each large customer (i.e., splitting large customers to create sub-accounts, sub-groups, sub-customer / sub-group relationships, etc.). Due to the different business of each customer and the performance issues of dynamic splitting, the management method of whether to enable the large customer splitting mode can be configured through parameter settings. If not enabled, the large customer management system does not perform dynamic customer splitting management.
[0112] Based on the threshold determination of the customer pre-module, and with the automatic activation of the dynamic splitting thread, the large customer management system dynamically splits customers. When a super-large customer is created, the original customer serves as the parent customer, providing the customer information carrier for external display. This means that the split sub-customers belong to this parent customer, and sub-customers are internal management units, not publicly displayed. Newly created data under a sub-customer resides in the same data node as this parent customer, and the sub-customer to which a user or account belongs belongs to the parent customer. This establishes a user-sub-account-sub-customer-parent relationship within the super-large customer system.
[0113] When a parent customer is created for the first time, this customer is used as the external display carrier for customer information. The data of the three newly opened accounts under this customer are stored on the same data node as the child customers. The child customers to which users and accounts belong are attributed to the parent customer. The splitting and creation of child customers, as well as the creation of parent-child accounts, parent-child groups, and the establishment of parent-child customer / parent-child group relationships, are determined based on the parent customer member threshold. When the number of customer members monitored by the customer alert module exceeds the specified threshold, a dynamic splitting process is initiated, adding child customer 1 and child customer 2. The parent customer of child customer 2 is the parent customer. A virtual user for child customer 2 is created, and the newly added user is saved to child customer 2 for management. The parent customer in the existing user, account, and user group tables under the parent customer node is changed to child customer 1, while the parent customer remains unchanged. If the corresponding user attributes, account attributes, and user group attributes have a customer ID attribute, these also need to be changed, while the lifespan and expiration time remain unchanged.
[0114] For creating parent-child accounts, a customer may have one or more accounts. When creating each child customer, the parent customer's child accounts need to be mapped to the child accounts created under that child customer. The parent account of these child accounts is the parent customer's account. If the parent customer adds a new account, a new child account needs to be created for each child customer, with the parent account of each child account being the parent account of the parent customer. Once all child accounts are created, the mapping to the parent account is complete. If the customer's default account is changed, the default account for each child customer also needs to be changed. Simultaneously, the accounts corresponding to users under the child customer are changed to the child accounts, while the parent account remains the original parent account.
[0115] For the creation of parent and child groups, group account opening and group member relationship maintenance are handled on the data node where the parent customer resides. Group members may not be on the same data node during group creation. The creation of parent and child groups is essentially the same as the creation of parent and child customers. Group account opening uses this group as the external display carrier for group information. The group's affiliation is the same as its affiliation to the parent group—the parent group itself. However, since the conditions for splitting parent and child customers involve customer member thresholds and group member thresholds, the creation of parent and child groups and accounts mainly includes the following scenarios:
[0116] 1. When the number of members in a parent client node reaches the customer member threshold, triggering a split, if the parent client node has no child clients, a first split of child clients is required. If the parent client node has no groups, then it is not necessary to maintain the correspondence between parent and child clients and groups. The splitting process is as follows: Figure 10 As shown, sub-customer 1 and sub-customer 2 are split up. The members of the parent customer are split into sub-customer 1 for management. Virtual members are created in sub-customer 2, and new users are maintained and managed in sub-customer 2.
[0117] 2. When the number of members in a parent client node reaches the customer member threshold, triggering a split, if the parent client node has no child clients, it needs to be split into child clients. However, if the parent client node has groups, then subgroups need to be created under the split child clients. For example... Figure 11 As shown, there is a group under the parent customer. After splitting into sub-customers, each sub-customer needs to be split into a sub-group. Members are created in sub-customer 2, and the group members in sub-group 2-1 are virtual members.
[0118] 3. When the number of members in a parent customer node reaches the customer member threshold, triggering a split, if the customer has multiple groups, multiple sub-groups are created under each of the split sub-customers. The parent group identifier of each sub-group corresponds to the group under the parent customer node. When subsequent members join a group, they are added to the largest sub-group under the current node based on the current new customer group relationship table. For example... Figure 12 As shown, the parent client node has two subgroup nodes, Group 1 and Group 2. After the first split, sub-clients 1 and 2 are created. Subgroup nodes for Group 1 and Group 2 are then created under sub-clients 1 and 2 respectively. Specifically, subgroup nodes 1-1 and 1-2 are created under sub-client 1; and subgroup nodes 2-1 and 2-2 are created under sub-client 2. The members of the parent client node are then managed in sub-client 1, and members are added to subgroups 1-1 and 1-2 according to the group member relationships in Group 1 and Group 2. Sub-client 2 has no real members, so virtual members are created; the group members of subgroups 2-1 and 2-2 are virtual members.
[0119] 4. When the number of group members in the parent group node reaches the group member threshold and triggers a split, if there are no child customers under the parent customer node, but there are groups under the parent customer node, the splitting process is basically the same as in scenario 2 or 3 when the group is split for the first time, and will not be described again here.
[0120] 5. When the number of group members in a parent group node reaches the group member threshold, triggering a split, if the parent client node has child clients, and a new group is created under the parent client node after splitting the child clients, and this is the first time a group needs to be split, then a subgroup is created under each child client. If a data node has multiple child clients, then the sequence number of the subgroups is incremented sequentially. For example... Figure 13 As shown, the parent client node has already been split into child client 1 and child client 2. When the parent client node creates a new group, the group needs to be split for the first time, creating subgroups under child client 1 and child client 2 respectively, namely subgroup 1-1 and subgroup 2-1.
[0121] 6. When the number of group members in a parent group node reaches the group member threshold, triggering a split, if the parent client node has child clients and a group under the parent client node, and this is not the first time the group has been split, then a subgroup is created under each of the current child clients. The sequence number of the subgroups increases sequentially according to the child client, parent group, and node dimensions. For example... Figure 14 As shown, the parent client node has already been split into child client 1 and child client 2, and child client 1 has already been split into subgroup 1-1 and child client 2 has already been split into subgroup 2-1. When a new group is created under the parent client node, subgroups of that group are created under child client 1 and child client 2 respectively, and the sequence number of the subgroup is incremented based on the existing subgroups. That is, based on the existing subgroup 1-1 under child client 1, a new subgroup 1-2 of the newly created group is created; similarly, based on the existing subgroup 2-1 under child client 2, a new subgroup 2-2 of the newly created group is created.
[0122] As can be seen, in the original three-customer model management, the same customer member and customer information can only be instantiated in the same memory database instance node, and the capacity of a single-node server to support memory database instances is limited. After the new parent-child customer splitting is implemented as described above, different child customer shards can be independently instantiated in a specific memory database node for each child customer. Different memory database instance nodes can be deployed on different servers, thereby achieving horizontal scaling of large customers and, consequently, flexible scaling of memory database instance nodes for the same customer.
[0123] Furthermore, when a sub-customer is created, the sub-customer ID is moduloed based on the number of sub-customers to be split. The calculated route determines which shard the sub-customer will be placed on. A sub-customer and its sub-accounts, sub-groups, and members are deployed on one shard. Based on the calculated route shard value and the corresponding in-memory database instance node, the allocation of newly split sub-customers and their sub-accounts, users, and other data to the database instance node can be dynamically adjusted. Subsequently, after establishing new in-memory database instance nodes, a mapping relationship between the in-memory database instance nodes and shard IDs can be created, thereby achieving horizontal scaling of the in-memory database nodes for large customers.
[0124] In this embodiment, a big data in-memory database horizontal partitioning technique is employed to provide a method for horizontally scaling in-memory database instances across multiple independent servers based on parent-child customer, parent-child group, and parent-child account relationships for member user data under a single large customer. By combining the different parent-child relationships of the data and the different data services, the data of different sub-customers and sub-groups is split into different in-memory databases. The customer management system is no longer limited by the physical resources of a single-node in-memory database; data under the same customer can be flexibly deployed across different in-memory database instance nodes, thereby solving the problem of business scale being limited by the physical resources of the in-memory database.
[0125] The customer management device provided in the embodiments of this application is described below. The customer management device described below can be referred to in correspondence with the customer management method described above.
[0126] Reference Figure 15 The customer management device provided in this application embodiment includes:
[0127] The parent node creation module 10 is used to obtain customer information for each target customer and create a parent customer node corresponding to the target customer based on the customer information.
[0128] The child node creation module 20 is used to monitor the number of members of the parent customer node. When the number of members of the parent customer node reaches a preset customer member threshold, the child customer node of the parent customer node is created.
[0129] The customer splitting management module 30 is used to split the members of the parent customer node into the child customer nodes for management.
[0130] In one embodiment, the sub-customer node includes at least a first sub-customer node and a second sub-customer node, and the customer splitting management module 30 is further configured to:
[0131] Save the members of the parent client node to the first child client node for management;
[0132] When a new user of the target customer is detected, the user information of the new user is saved to the second sub-customer node so that the new user can be managed as a member of the second sub-customer node;
[0133] The number of members of the second sub-client node is monitored. When the number of members of the second sub-client node reaches the customer member threshold, a third sub-client node of the parent client node is created.
[0134] The members of the second sub-client node are split and managed in the third sub-client node.
[0135] In one embodiment, the customer management device further includes an account mapping module; the customer information further includes the account information of the target customer; the parent customer node includes a parent account node; the parent account node includes one or more; when the parent account node includes multiple parent account nodes, the account mapping module is used to:
[0136] Map the parent account node of the parent client node, and create child account nodes of each parent account node in any of the child client nodes.
[0137] In one embodiment, the customer management device further includes a group mapping module, and the customer information further includes group information of the target customer; the parent customer node includes a parent group node; the parent group node includes one or more; the group mapping module is used to:
[0138] The number of group members of the parent group node of the parent client node is monitored. When the number of group members reaches a preset group member threshold, the step of creating a child client node of the parent client node is executed.
[0139] In one embodiment, when the parent group includes multiple groups, the group mapping module is further configured to:
[0140] Obtain the group membership relationship of any of the parent group nodes;
[0141] Map the group members of the parent group node according to the group membership relationship, so as to create a child group node of the parent group node in any of the child client nodes;
[0142] Based on the members of the sub-client nodes, the group members of the parent group node are split into the sub-group nodes for management.
[0143] In one embodiment, the child node creation module 20 is further configured to:
[0144] Obtain the historical value of the number of members of the parent client node; the historical value includes the actual value and the predicted value.
[0145] Based on the actual values in the historical values, a first prediction weight and a second prediction weight are determined; the first prediction weight is the weight value of the actual values in the historical values; the second prediction weight is the weight value of the predicted values in the historical values.
[0146] The number of members of the parent client node is monitored based on the historical value, the first prediction weight, and the second prediction weight.
[0147] Figure 16 Example: A schematic diagram of the physical structure of an electronic device, such as... Figure 16As shown, the electronic device may include: a processor 1610, a communication interface 1620, a memory 1630, and a communication bus 1640, wherein the processor 1610, the communication interface 1620, and the memory 1630 communicate with each other via the communication bus 1640. The processor 1610 can call a computer program in the memory 1630 to execute the steps of a client management method, such as including:
[0148] Obtain customer information for each target customer, and create a parent customer node corresponding to the target customer based on the customer information;
[0149] The number of members of the parent customer node is monitored. When the number of members of the parent customer node reaches a preset customer member threshold, a child customer node of the parent customer node is created.
[0150] The members of the parent client node are split and managed by the child client nodes.
[0151] Furthermore, the logical instructions in the aforementioned memory 1630 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0152] On the other hand, this application also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can perform the steps of the customer management method provided in the above embodiments, such as including:
[0153] Obtain customer information for each target customer, and create a parent customer node corresponding to the target customer based on the customer information;
[0154] The number of members of the parent customer node is monitored. When the number of members of the parent customer node reaches a preset customer member threshold, a child customer node of the parent customer node is created.
[0155] The members of the parent client node are split and managed by the child client nodes.
[0156] On the other hand, embodiments of this application also provide a processor-readable storage medium storing a computer program for causing a processor to perform the steps of the methods provided in the above embodiments, such as including:
[0157] Obtain customer information for each target customer, and create a parent customer node corresponding to the target customer based on the customer information;
[0158] The number of members of the parent customer node is monitored. When the number of members of the parent customer node reaches a preset customer member threshold, a child customer node of the parent customer node is created.
[0159] The members of the parent client node are split and managed by the child client nodes.
[0160] The processor-readable storage medium can be any available medium or data storage device that the processor can access, including but not limited to magnetic memory (e.g., floppy disk, hard disk, magnetic tape, magneto-optical disk (MO)), optical memory (e.g., CD, DVD, BD, HVD), and semiconductor memory (e.g., ROM, EPROM, EEPROM, non-volatile memory (NAND FLASH), solid-state drive (SSD)).
[0161] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0162] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.
[0163] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A customer management method, characterized in that, The customer management method includes the following steps: Obtain customer information for each target customer, and create a parent customer node corresponding to the target customer based on the customer information; The number of members of the parent customer node is monitored. When the number of members of the parent customer node reaches a preset customer member threshold, a child customer node of the parent customer node is created. The members of the parent client node are split and managed by the child client nodes; both the parent client node and the child client node are memory library instance nodes. The sub-client nodes include at least a first sub-client node and a second sub-client node, and the step of splitting the members of the parent client node into the sub-client nodes for management includes: Save the members of the parent client node to the first child client node for management; When a new user of the target customer is detected, the user information of the new user is saved to the second sub-customer node so that the new user can be managed as a member of the second sub-customer node; The number of members of the second sub-client node is monitored. When the number of members of the second sub-client node reaches the customer member threshold, a third sub-client node of the parent client node is created. The members of the second sub-client node are split and managed in the third sub-client node; The customer management method also includes: When an information query instruction from the target customer is received, the target information to be queried by the information query instruction is obtained; The target information is obtained from the sub-client node and saved to the parent client node for querying.
2. The customer management method according to claim 1, characterized in that, The customer information also includes the target customer's account information; the parent customer node includes a parent account node; the parent account node includes one or more; when the parent account node includes multiple parent account nodes, after splitting the members of the parent customer node into the child customer nodes for management, it further includes: Map the parent account node of the parent client node, and create child account nodes of each parent account node in any of the child client nodes.
3. The customer management method according to claim 1, characterized in that, The customer information also includes the target customer's group information; the parent customer node includes a parent group node; the parent group node includes one or more; the customer management method further includes: The number of group members of the parent group node of the parent client node is monitored. When the number of group members reaches a preset group member threshold, the step of creating a child client node of the parent client node is executed.
4. The customer management method according to claim 3, characterized in that, When the parent group includes multiple groups, after splitting the members of the parent client node into the child client nodes for management, the method further includes: Obtain the group membership relationship of any of the parent group nodes; Map the group members of the parent group node according to the group membership relationship, so as to create a child group node of the parent group node in any of the child client nodes; Based on the members of the sub-client nodes, the group members of the parent group node are split into the sub-group nodes for management.
5. The customer management method according to claim 1, characterized in that, The step of monitoring the number of members of the parent client node includes: Obtain the historical value of the number of members of the parent client node; the historical value includes the actual value and the predicted value. Based on the actual values in the historical values, a first prediction weight and a second prediction weight are determined; the first prediction weight is the weight value of the actual values in the historical values; the second prediction weight is the weight value of the predicted values in the historical values. The number of members of the parent client node is monitored based on the historical value, the first prediction weight, and the second prediction weight.
6. A customer management device, characterized in that, include: The parent node creation module is used to obtain customer information for each target customer and create a parent customer node corresponding to the target customer based on the customer information. The child node creation module is used to monitor the number of members of the parent customer node. When the number of members of the parent customer node reaches a preset customer member threshold, the module creates a child customer node of the parent customer node. The customer splitting management module is used to split the members of the parent customer node into the child customer nodes for management; both the parent customer node and the child customer node are memory library instance nodes; The sub-customer node includes at least a first sub-customer node and a second sub-customer node, and the customer splitting management module is specifically used for: Save the members of the parent client node to the first child client node for management; When a new user of the target customer is detected, the user information of the new user is saved to the second sub-customer node so that the new user can be managed as a member of the second sub-customer node; The number of members of the second sub-client node is monitored. When the number of members of the second sub-client node reaches the customer member threshold, a third sub-client node of the parent client node is created. The members of the second sub-client node are split and managed in the third sub-client node; The customer management device further includes a module for: When an information query instruction from the target customer is received, the target information to be queried by the information query instruction is obtained; The target information is obtained from the sub-client node and saved to the parent client node for querying.
7. An electronic device comprising a processor and a memory storing a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the customer management method according to any one of claims 1 to 5.
8. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the customer management method according to any one of claims 1 to 5.