Customer data processing method and device

By generating asynchronous request messages in a distributed business system and using a stream processing system for parallel processing, the problem of long response time for changing customer data in a distributed system is solved, which improves efficiency and alleviates database pressure.

CN112634021BActive Publication Date: 2024-12-24CHINA CONSTRUCTION BANK
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202011554242.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-12-24
Publication Date
2024-12-24
Estimated Expiration
2040-12-24

AI Technical Summary

Technical Problem

In distributed systems, the response time for changing customer data is too long, which puts great pressure on the database and is difficult to effectively integrate with the core system.

Method used

By receiving batch customer data change requests in a distributed business system, sending query requests to the customer query system to determine whether it is necessary to change the library and table, generating an asynchronous request message and sending it to the stream processing system, which in the target data table is included in the stream processing system. The customer data is updated concurrently, and is processed in parallel using Kafka message middleware and Apache Flink.

Benefits of technology

It shortens the response time, improves processing efficiency, alleviates the operating pressure of the database, and realizes rapid updates and efficient changes of customer data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112634021B_ABST
    Figure CN112634021B_ABST
Patent Text Reader

Abstract

The present application provides a method and device for processing customer data, wherein the method includes: a distributed business system receives batch customer data change requests; in response to the batch customer data change requests, the distributed business system sends a query request to the customer query system to determine whether it is necessary to change the sub-library and sub-table; in the case of determining that the sub-library and sub-table need to be changed, the distributed business system generates an asynchronous request message and sends the asynchronous request message to the stream processing system; in response to the asynchronous request message, the stream processing system obtains the target data table from the distributed business system and concurrently updates the customer data in the target data table. The above scheme can effectively improve the efficiency of customer data changes in the distributed system, shorten the response time, and relieve the pressure on database operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of distributed system data processing, and in particular to a method and device for processing customer data. Background Art

[0002] At present, various business systems are gradually adopting distributed systems. Compared with the traditional monolithic architecture, distributed systems can increase system capacity, enhance system availability, and improve system scalability.

[0003] However, while distributed systems have the above advantages, they also bring some problems. For example, traditional banking systems distribute data based on the line dimension so that batch business processing can be carried out at night, that is, accounts are aggregated based on the line dimension. This makes it difficult to better integrate customer-based businesses with the core system, such as changing borrowers, one of the most common transactions in banks. After associating loan data, users can apply to the bank to change the three customer elements of the user's borrower (customer name, ID type, ID number). However, since it involves data migration of about 100 tables, the transaction response time is too long and puts great pressure on the database.

[0004] To address the above problems, no effective solution has been proposed yet. Summary of the invention

[0005] The embodiments of the present application provide a method and device for processing customer data to solve the problem of long response time for changing customer data in a distributed system in the prior art.

[0006] An embodiment of the present application provides a customer data processing method, including: a distributed business system receives batch customer data change requests; in response to the batch customer data change requests, the distributed business system sends a query request to the customer query system to determine whether it is necessary to change the sub-library and sub-table; when it is determined that the sub-library and sub-table need to be changed, the distributed business system generates an asynchronous request message and sends the asynchronous request message to a stream processing system; in response to the asynchronous request message, the stream processing system obtains a target data table from the distributed business system and concurrently updates the customer data in the target data table.

[0007] An embodiment of the present application also provides a customer data processing method, which is applied to a distributed business system, including: receiving batch customer data change requests; in response to the batch customer data change requests, sending a query request to the customer query system to determine whether it is necessary to change the sub-library and sub-table; if it is determined that the sub-library and sub-table need to be changed, generating an asynchronous request message, and sending the asynchronous request message to a stream processing system, wherein the stream processing system obtains a target data table from the distributed business system in response to the asynchronous request message, and concurrently updates the customer data in the target data table.

[0008] In one embodiment, after sending the asynchronous request message to the stream processing system, the method further includes: receiving an execution result file returned by the stream processing system.

[0009] In one embodiment, generating an asynchronous request message includes: slicing the batch customer data change request to obtain multiple request data slices; and generating an asynchronous request message according to the multiple request data slices.

[0010] In one embodiment, generating an asynchronous request message according to the multiple request data slices includes: generating an asynchronous request message according to the multiple request data slices based on Kafka message middleware.

[0011] In one embodiment, the stream processing system concurrently updates the customer data in the target data table based on Apache Flink.

[0012] In one embodiment, the batch customer data change request includes multiple customer data change requests, and the customer data change request includes customer data before and after the change; the customer query system determines whether it is necessary to change the sub-library and sub-table based on the customer data before and after the change.

[0013] An embodiment of the present application also provides a customer data processing device, which is located in a distributed business system and includes: a receiving module for receiving batch customer data change requests; a query module for sending a query request to the customer query system in response to the batch customer data change requests to determine whether it is necessary to change the sub-library and sub-table; a sending module for generating an asynchronous request message when it is determined that the sub-library and sub-table need to be changed, and sending the asynchronous request message to the stream processing system, wherein the stream processing system obtains a target data table from the distributed business system in response to the asynchronous request message, and concurrently updates the customer data in the target data table.

[0014] An embodiment of the present application further provides a computer device, including a processor and a memory for storing processor executable instructions, wherein when the processor executes the instructions, the steps of the customer data processing method described in any of the above embodiments are implemented.

[0015] An embodiment of the present application further provides a computer-readable storage medium on which computer instructions are stored. When the instructions are executed, the steps of the customer data processing method described in any of the above embodiments are implemented.

[0016] In an embodiment of the present application, a customer data processing method is provided, in which a distributed business system receives batch customer data change requests. In response to the batch customer data change requests, the distributed business system sends a query request to the customer query system to determine whether it is necessary to change the sub-library and sub-table. When it is determined that the sub-library and sub-table need to be changed, the distributed business system generates an asynchronous request message and sends the asynchronous request message to the stream processing system. In response to the asynchronous request message, the stream processing system obtains the target data table from the distributed business system and concurrently updates the customer data in the target data table, thereby realizing rapid updates of the customer data in the distributed system. In the above scheme, by generating asynchronous messages and using the stream processing system for parallel processing, multiple data tables can be processed in parallel, thereby shortening the response time, improving the processing efficiency, and alleviating the operating pressure of the database. The above scheme solves the technical problem of long response time for changing customer data in the existing distributed system, and achieves the technical effect of effectively improving the efficiency of customer data changes in the distributed system, shortening the response time, and alleviating the operating pressure of the database. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] The drawings described herein are used to provide a further understanding of the present application, constitute a part of the present application, and do not constitute a limitation of the present application. In the drawings:

[0018] Figure 1 A flowchart of a method for processing customer data in one embodiment of the present application is shown;

[0019] Figure 2 A flowchart of a method for processing customer data in an embodiment of the present application is shown;

[0020] Figure 3 A timing diagram showing a method for processing customer data in an embodiment of the present application is shown;

[0021] Figure 4 A flowchart of a method for processing customer data in an embodiment of the present application is shown;

[0022] Figure 5 A schematic diagram of a customer data processing device in an embodiment of the present application is shown;

[0023] Figure 6 A schematic diagram of a computer device in an embodiment of the present application is shown. DETAILED DESCRIPTION

[0024] The principles and spirit of the present application will be described below with reference to several exemplary embodiments. It should be understood that these embodiments are provided only to enable those skilled in the art to better understand and implement the present application, and are not intended to limit the scope of the present application in any way. On the contrary, these embodiments are provided to make the disclosure of the present application more thorough and complete, and to fully convey the scope of the present disclosure to those skilled in the art.

[0025] Those skilled in the art know that the embodiments of the present application can be implemented as a system, device, method or computer program product. Therefore, the present application can be implemented in the following forms, namely: complete hardware, complete software (including firmware, resident software, microcode, etc.), or a combination of hardware and software.

[0026] In a scenario example of the present specification, the employee channel system may send batches of transaction requests for changing customer data to the service publishing system. The customer data may be the borrower data of a loan. The service publishing system may apply a routing query index and obtain a distributed address. The service publishing system may send the received batches of transaction requests for changing customer data to the distributed business system based on the obtained distributed address. After the distributed business system receives the batches of transaction requests for changing customer data, it may call the customer query system to determine whether the transaction requests for changing customer data require changes to sub-libraries and sub-tables. When it is determined that sub-libraries and sub-tables need to be changed, the distributed business system may generate an asynchronous request message and send the asynchronous request message to the stream processing system. After receiving the asynchronous request message, the stream processing system may obtain the target data table from the distributed business system and concurrently update the customer data in the target data table.

[0027] Among them, the employee channel system can be a system for employees to perform business operations. The employee channel system can be connected to the service publishing system. The distributed business system can mainly process business data, and can adopt a distributed strategy of sub-library by branch and sub-table by customer. The service publishing system can be used to connect the employee channel system and the distributed business system, and route the transaction requests received from the employee channel system to the distributed distributed business system. The customer query system can adopt a centralized library without sub-library and sub-table strategy to process transactions in the customer dimension.

[0028] In one embodiment, after concurrently updating the customer data in the target data table, the stream processing system may generate an execution result file and return the execution result file to the distributed business system.

[0029] In one embodiment, the distributed business system may slice the batch customer data change request to obtain multiple request data slices. Afterwards, the distributed business system may generate an asynchronous request message based on the multiple request data slices.

[0030] In one embodiment, the distributed business system can generate asynchronous request messages based on multiple request data slices based on Kafka message middleware. Asynchronous requests can be sent based on Kafka message middleware, that is, corresponding message topics are defined and messages are generated for consumers to use.

[0031] In one embodiment, the stream processing system can concurrently update the customer data in the target data table based on Apache Flink. Apache Flink can subscribe to Kafaka messages and obtain the message content, which indicates that the message migration needs to change the customer data. Apache Flink sets up add and delete tasks, and sets multiple concurrent instances for one task. At the same time, each instance sets the maximum number of concurrencies (for example, it can be set according to Oracle's concurrency), adds data to the new table and deletes data from the old table, and completes the entire data migration.

[0032] In one embodiment, the batch customer data change request includes multiple customer data change requests, and the customer data change request includes customer data before and after the change; the comprehensive query system determines whether it is necessary to change the sub-library and sub-table based on the customer data before and after the change.

[0033] Figure 1 A flowchart of a customer data processing method provided by an embodiment of the present application is shown. Although the present application provides method operation steps or device structures as shown in the following embodiments or drawings, more or fewer operation steps or module units may be included in the method or device based on routine or no creative labor. In the steps or structures where there is no necessary causal relationship logically, the execution order of these steps or the module structure of the device is not limited to the execution order or module structure described in the embodiments of the present application and shown in the drawings. When the method or module structure is applied to an actual device or terminal product, it can be connected according to the method or module structure shown in the embodiments or drawings for sequential execution or parallel execution (for example, a parallel processor or a multi-threaded processing environment, or even a distributed processing environment).

[0034] Specifically, Figure 1 As shown, a method for processing customer data provided by an embodiment of the present application may include the following steps.

[0035] Step S101: The distributed business system receives batch customer data change requests.

[0036] The distributed business system can mainly process business data, and can adopt a distributed strategy of dividing databases by branches and tables by customers. The distributed business system can receive batch customer data change requests. In one embodiment, the distributed business system can receive batch customer data change requests sent by the service publishing system. The customer data can be the borrower data of the loan. The service publishing system can apply the routing query index and obtain the distributed address. The service publishing system can send the received batch transaction requests for changing customer data to the distributed business system based on the obtained distributed address. The service publishing system can receive batch customer data change requests sent by the employee channel system.

[0037] Step S102: In response to the batch customer data change request, the distributed business system sends a query request to the customer query system to determine whether the sub-library and sub-table need to be changed.

[0038] Specifically, after receiving batch customer data change requests, the distributed business system needs to determine whether each customer data change request in these batch customer data change requests needs to change the sub-library and sub-table. The distributed business system can send a query request to the customer query system. Among them, the customer query system can adopt a centralized library without sub-library and sub-table strategy to process transactions in the customer dimension. The customer query system can determine whether each request in the batch customer data change request needs to change the sub-library and sub-table, and return the result to the distributed business system.

[0039] Step S103: When it is determined that the sub-library and sub-table need to be changed, the distributed business system generates an asynchronous request message and sends the asynchronous request message to the stream processing system.

[0040] Step S104: In response to the asynchronous request message, the stream processing system obtains the target data table from the distributed business system and concurrently updates the customer data in the target data table.

[0041] When it is determined that the sub-library and sub-table need to be changed, the distributed business system generates an asynchronous request message and sends the asynchronous request message to the stream processing system. The stream processing system can obtain the target data table to be changed from the distributed business system in response to the asynchronous request message, and concurrently update the customer data in the target data table. For example, you can set up add and delete tasks to delete old customer data in the target data table and / or add new customer data in the target data table, thereby realizing customer data changes.

[0042] The customer data processing method in the above embodiment can process multiple data tables in parallel by generating asynchronous messages and adopting a stream processing system for parallel processing, thereby shortening the response time, improving processing efficiency, and alleviating the operating pressure of the database. It can better meet the requirements of distributed architecture, and can quickly respond to processing results to the employee channel system, bringing a good user experience; in addition, it can also reduce the coupling between systems, separate data migration and business logic processing, so that both systems can run more efficiently and smoothly.

[0043] Figure 2 FIG. 1 is a flowchart of a method for processing customer data in an embodiment of the present application, and the method is applied to a distributed business system. Specifically, Figure 2 As shown, a method for processing customer data provided by an embodiment of the present application may include the following steps.

[0044] Step S201, receiving batch customer data change requests.

[0045] The distributed business system can mainly process business data, and can adopt a distributed strategy of dividing databases by branches and tables by customers. The distributed business system can receive batch customer data change requests. In one embodiment, the distributed business system can receive batch customer data change requests sent by the service publishing system. The customer data can be the borrower data of the loan. The service publishing system can apply the routing query index and obtain the distributed address. The service publishing system can send the received batch transaction requests for changing customer data to the distributed business system based on the obtained distributed address. The service publishing system can receive batch customer data change requests sent by the employee channel system.

[0046] Step S202, in response to the batch customer data change request, a query request is sent to the customer query system to determine whether the sub-library and sub-table need to be changed.

[0047] Specifically, after receiving batch customer data change requests, the distributed business system needs to determine whether each customer data change request in these batch customer data change requests needs to change the sub-library and sub-table. The distributed business system can send a query request to the customer query system. Among them, the customer query system can adopt a centralized library without sub-library and sub-table strategy to process transactions in the customer dimension. The customer query system can determine whether each request in the batch customer data change request needs to change the sub-library and sub-table, and return the result to the distributed business system.

[0048] Step S203: When it is determined that the sub-library and sub-table need to be changed, an asynchronous request message is generated and sent to the stream processing system.

[0049] When it is determined that the sub-library and sub-table need to be changed, the distributed business system generates an asynchronous request message and sends the asynchronous request message to the stream processing system. The stream processing system can obtain the target data table to be changed from the distributed business system in response to the asynchronous request message, and concurrently update the customer data in the target data table. For example, you can set up add and delete tasks to delete old customer data in the target data table and / or add new customer data in the target data table, thereby realizing customer data changes.

[0050] The customer data processing method in the above embodiment can process multiple data tables in parallel by generating asynchronous messages and adopting a stream processing system for parallel processing, thereby shortening the response time, improving processing efficiency, and alleviating the operating pressure of the database. It can better meet the requirements of distributed architecture, and can quickly respond to processing results to the employee channel system, bringing a good user experience; in addition, it can also reduce the coupling between systems, separate data migration and business logic processing, so that both systems can run more efficiently and smoothly.

[0051] In some embodiments of the present application, after sending the asynchronous request message to the stream processing system, the process may further include: receiving an execution result file returned by the stream processing system.

[0052] Specifically, after sending the asynchronous request message to the stream processing system and the stream processing system changes the customer data in the target data table, the stream processing system can generate an execution result file and return the execution result file to the distributed business system. The execution result file may include the changed target data table and information on execution success or failure. After receiving the execution result file, the distributed business system may return the result of the change success or failure to the employee channel system. In this way, users can be informed of the execution results in real time, thereby improving user experience.

[0053] In some embodiments of the present application, generating an asynchronous request message may include: slicing batch customer data change requests to obtain multiple request data slices; and generating an asynchronous request message based on the multiple request data slices.

[0054] Specifically, the distributed business system can slice the batch customer data change request to obtain multiple request data slices. For example, the distributed business system can slice the batch customer data change request according to the customer account in the customer data change request. For another example, the distributed business system can slice according to the sub-library and sub-table corresponding to the customer data. After obtaining multiple request data slices, an asynchronous request message can be generated according to the multiple request data slices. In the above manner, an asynchronous request message can be generated.

[0055] In some embodiments of the present application, generating an asynchronous request message according to multiple request data slices may include: generating an asynchronous request message according to multiple request data slices based on Kafka message middleware. Specifically, based on Kafka message middleware, an asynchronous request message may be generated according to multiple request data slices, that is, a corresponding message topic is defined, and a message is generated for consumers to use. In the above manner, the high performance and high concurrency asynchronous characteristics of Kafka can be used to improve data processing efficiency.

[0056] In some embodiments of the present application, the stream processing system can concurrently update the customer data in the target data table based on Apache Flink. Specifically, Apache Flink can subscribe to Kafaka messages and obtain message content, and the message content indicates that message migration of customer data changes is required. Apache Flink sets up add and delete tasks, and sets multiple concurrent instances for one task. At the same time, each instance sets the maximum number of concurrencies (for example, it can be set according to Oracle's concurrency), adds data to the new table and deletes data from the old table, and completes the entire data migration. By integrating the characteristics of Apache Flink's concurrent processing streams, the migration of massive data can be achieved.

[0057] In some embodiments of the present application, a batch customer data change request may include multiple customer data change requests, and the customer data change request may include customer data before and after the change; the customer query system may determine whether it is necessary to change the sub-library and sub-table based on the customer data before and after the change. Specifically, the customer query system may query the corresponding table of customer data and sub-library and sub-table identifiers. The customer data change request may include customer data before and after the change. The customer data may include a customer number. The customer query system may determine the sub-library and sub-table identifier stored in the data corresponding to the customer number based on the customer number. The customer query system may determine the sub-library and sub-table identifier corresponding to the customer data before the change and the sub-library and sub-table identifier corresponding to the customer data after the change. In the case where the sub-library and sub-table identifier corresponding to the customer data before the change is inconsistent with the sub-library and sub-table identifier corresponding to the customer data after the change, it is determined that the sub-library and sub-table need to be changed. In the case where it is determined that the sub-library and sub-table need to be changed, the amount of data migration involved is large, and an asynchronous message request may be generated and processed in parallel based on the stream processing system, thereby improving the efficiency of data change.

[0058] The above method is described below in conjunction with a specific embodiment. However, it should be noted that this specific embodiment is only for better illustrating the present application and does not constitute an improper limitation on the present application.

[0059] Please refer to Figure 3 and Figure 4 , Figure 3A timing diagram of a method for processing customer data in an embodiment of the present application is shown. Figure 4 FIG. 1 is a flow chart showing a method for processing customer data in an embodiment of the present application. Figure 3 and Figure 4 As shown, the customer data processing method in this specific embodiment may include the following steps.

[0060] Step 1: The employee channel system sends a transaction request to change the borrower to the issuing service system.

[0061] Step 2: The service publishing system can apply the routing query index, obtain the distributed address, and route the transaction request to change the borrower to the corresponding financial core system (ie, the distributed business system).

[0062] Step 3, the financial core system can process separately according to the type of customer number; when the customer number type is credit limit, change the customer-loan relationship table; when the customer number type is not credit limit, call the integrated query system (i.e. customer query system) to check whether the new account exists, if not, add a new one; check whether the old and new customer numbers are consistent, if not, update the customer-loan relationship table.

[0063] Step 4: The financial core system calls the comprehensive query system to determine whether the sub-library and sub-table need to be changed. If it is determined that the sub-library and sub-table need to be changed, a message is sent to the batch proxy system according to the basket number and branch number to perform data migration. Specifically, the financial core system can slice the data, and after slicing the data, asynchronously generate a message and send a Kafka message to the batch proxy system (i.e., the stream processing system) to prepare for data migration.

[0064] Step 5: After the batch proxy system receives the Kafka information, it can perform concurrent multi-table data migration based on Flink.

[0065] Step 6: The batch proxy system returns the execution result to the financial core system, and the financial core system generates a result message based on the execution result.

[0066] Step 7: The financial core system returns the result message to the service publishing system.

[0067] Step 8: The service publishing system routes the distributed address and returns the result message to the employee channel system.

[0068] Step 9: The employee channel system returns the processing result to the caller.

[0069] The method in the above embodiment uses the high performance and high concurrency asynchronous characteristics of Kafka and integrates the characteristics of Apache Flink concurrent processing streams to solve the bottleneck of mass data migration. Decouple warehousing, business processing, and result file generation; full process automation, distributed stream processing and efficient transfer; can realize efficient real-time proxy of massive data, can quickly respond to processing results to the employee channel system, and bring a good user experience; can improve the scalability and maintainability of the project, greatly shortening the project cycle; can improve the high concurrency capability of transactions, so as to better meet the distributed architecture requirements, can reduce the coupling between systems, separate data migration and business logic processing, so that both systems can run more efficiently and smoothly.

[0070] Based on the same inventive concept, a customer data processing device is also provided in the embodiments of the present application, which is located in a distributed business system. As described in the following embodiments. Since the principle of solving the problem by the customer data processing device is similar to that of the customer data processing method, the implementation of the customer data processing device can refer to the implementation of the customer data processing method, and the repeated parts will not be repeated. As used below, the term "unit" or "module" can be a combination of software and / or hardware that implements a predetermined function. Although the device described in the following embodiments is preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable. Figure 5 is a structural block diagram of a client data processing device according to an embodiment of the present application, such as Figure 5 As shown, it includes: a receiving module 501, a query module 502 and a sending module 503, and the structure is described below.

[0071] The receiving module 501 is used to receive batch customer data change requests.

[0072] The query module 502 is used to respond to batch customer data change requests and send a query request to the customer query system to determine whether it is necessary to change the sub-library and sub-table.

[0073] The sending module 503 is used to generate an asynchronous request message and send the asynchronous request message to the stream processing system when it is determined that the sub-library and sub-table need to be changed. The stream processing system responds to the asynchronous request message, obtains the target data table from the distributed business system, and concurrently updates the customer data in the target data table.

[0074] In some embodiments of the present application, the device may further include a result receiving module, which is used to receive an execution result file returned by the stream processing system after sending the asynchronous request message to the stream processing system.

[0075] In some embodiments of the present application, the sending module may be specifically used to: perform data slicing on the batch customer data change request to obtain multiple request data slices; and generate an asynchronous request message based on the multiple request data slices.

[0076] In some embodiments of the present application, generating an asynchronous request message according to the multiple request data slices may include: generating an asynchronous request message according to the multiple request data slices based on Kafka message middleware.

[0077] In some embodiments of the present application, the stream processing system may concurrently update the customer data in the target data table based on Apache Flink.

[0078] In some embodiments of the present application, the batch customer data change request may include multiple customer data change requests, and the customer data change request may include customer data before and after the change; the customer query system may determine whether it is necessary to change the sub-library and sub-table based on the customer data before and after the change.

[0079] From the above description, it can be seen that the embodiment of the present application achieves the following technical effects: the distributed business system receives batch customer data change requests, and in response to the batch customer data change requests, the distributed business system sends a query request to the customer query system to determine whether it is necessary to change the sub-library and sub-table. When it is determined that the sub-library and sub-table need to be changed, the distributed business system generates an asynchronous request message and sends the asynchronous request message to the stream processing system. In response to the asynchronous request message, the stream processing system obtains the target data table from the distributed business system, and concurrently updates the customer data in the target data table, thereby realizing rapid updates of the customer data in the distributed system. In the above scheme, by generating asynchronous messages and using the stream processing system for parallel processing, multiple data tables can be processed in parallel, thereby shortening the response time, improving processing efficiency, and alleviating the operating pressure of the database. The above scheme solves the technical problem of long response time for changing customer data in the existing distributed system, and achieves the technical effect of effectively improving data change efficiency, shortening response time, and alleviating database operating pressure.

[0080] The present application also provides a computer device, which can be found in Figure 6 The computer device structure diagram of the customer data processing method provided in the embodiment of the present application is shown, and the computer device may specifically include an input device 61, a processor 62, and a memory 63. Among them, the memory 63 is used to store processor executable instructions. When the processor 62 executes the instructions, the steps of the customer data processing method described in any of the above embodiments are implemented.

[0081] In this embodiment, the input device may specifically be one of the main devices for information exchange between the user and the computer system. The input device may include a keyboard, a mouse, a camera, a scanner, a light pen, a handwriting input board, a voice input device, etc.; the input device is used to input the original data and the program for processing these numbers into the computer. The input device can also obtain and receive data transmitted from other modules, units, and devices. The processor can be implemented in any appropriate manner. For example, the processor can take the form of a computer-readable medium, a logic gate, a switch, an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a programmable logic controller, and an embedded microcontroller, etc., such as a microprocessor or a processor and a computer-readable program code (such as software or firmware) that can be executed by the (micro) processor. The memory may specifically be a memory device used to store information in modern information technology. The memory may include multiple levels. In a digital system, anything that can store binary data can be a memory; in an integrated circuit, a circuit with a storage function without a physical form is also called a memory, such as a RAM, a FIFO, etc.; in a system, a storage device with a physical form is also called a memory, such as a memory stick, a TF card, etc.

[0082] In this embodiment, the functions and effects specifically realized by the computer device can be explained in comparison with other embodiments and will not be described in detail here.

[0083] In an embodiment of the present application, a computer storage medium based on the customer data processing method is also provided, wherein the computer storage medium stores computer program instructions, and when the computer program instructions are executed, the steps of the customer data processing method described in any of the above embodiments are implemented.

[0084] In this embodiment, the storage medium includes, but is not limited to, a random access memory (RAM), a read-only memory (ROM), a cache, a hard disk (HDD) or a memory card. The memory may be used to store computer program instructions. The network communication unit may be an interface for network connection communication set in accordance with the standard specified by the communication protocol.

[0085] In this embodiment, the functions and effects specifically implemented by the program instructions stored in the computer storage medium can be explained in comparison with other embodiments and will not be repeated here.

[0086] Obviously, those skilled in the art should understand that the modules or steps of the above-mentioned embodiments of the present application can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, and optionally, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order from that herein, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. In this way, the embodiments of the present application are not limited to any specific combination of hardware and software.

[0087] It should be understood that the above description is for illustration and not for limitation. By reading the above description, many embodiments and many applications beyond the examples provided will be apparent to those skilled in the art. Therefore, the scope of the present application should not be determined with reference to the above description, but should be determined with reference to the aforementioned claims and the full scope of equivalents possessed by these claims.

[0088] The above description is only the preferred embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the embodiments of the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims

1. A method for processing customer data, characterized in that: include: The distributed business system receives batch customer data change requests; In response to the batch customer data change request, the distributed business system sends a query request to the customer query system to determine whether a sub-library or sub-table needs to be changed; In the case where it is determined that the sub-library and sub-table need to be changed, the distributed business system generates an asynchronous request message and sends the asynchronous request message to the stream processing system; wherein the distributed business system generates the asynchronous request message, including: slicing the batch customer data change request according to the customer account in the customer data change request or according to the sub-library and sub-table corresponding to the customer data to obtain multiple request data slices; generating the asynchronous request message according to the multiple request data slices; In response to the asynchronous request message, the stream processing system obtains a target data table from the distributed business system, and concurrently updates the customer data in the target data table; Among them, the batch customer data change request includes multiple customer data change requests, and the customer data change request includes the customer data before and after the change; the customer query system determines the sub-library and sub-table identifiers corresponding to the customer data before the change and the sub-library and sub-table identifiers corresponding to the customer data after the change. When the sub-library and sub-table identifiers corresponding to the customer data before the change are inconsistent with the sub-library and sub-table identifiers corresponding to the customer data after the change, it is determined that the sub-library and sub-table need to be changed.

2. A method for processing customer data, characterized in that: Applied to distributed business systems, including: Receive batch customer data change requests; In response to the batch customer data change request, a query request is sent to the customer query system to determine whether the sub-library and sub-table need to be changed; wherein the batch customer data change request includes multiple customer data change requests, and the customer data change request includes the customer data before and after the change; the customer query system determines the sub-library and sub-table identifiers corresponding to the customer data before the change and the sub-library and sub-table identifiers corresponding to the customer data after the change, and determines that the sub-library and sub-table need to be changed when the sub-library and sub-table identifiers corresponding to the customer data before the change are inconsistent with the sub-library and sub-table identifiers corresponding to the customer data after the change; If it is determined that the sub-library and sub-table need to be changed, an asynchronous request message is generated and sent to the stream processing system, wherein the stream processing system obtains the target data table from the distributed business system in response to the asynchronous request message, and concurrently updates the customer data in the target data table; The asynchronous request message is generated, including: Slicing the batch customer data change request according to the customer account number in the customer data change request or according to the sub-library and sub-table corresponding to the customer data to obtain multiple request data slices; An asynchronous request message is generated according to the multiple request data slices.

3. The method according to claim 2, characterized in that After sending the asynchronous request message to the stream processing system, the method further includes: Receive the execution result file returned by the stream processing system.

4. The method according to claim 2, characterized in that: Generating an asynchronous request message according to the multiple request data slices includes: Based on the Kafka message middleware, an asynchronous request message is generated according to the multiple request data slices.

5. The method according to claim 2, characterized in that: The stream processing system concurrently updates the customer data in the target data table based on Apache Flink.

6. The method according to claim 2, characterized in that The batch customer data change request includes multiple customer data change requests, and the customer data change request includes customer data before and after the change; The customer query system determines whether it is necessary to change the sub-library and sub-table based on the customer data before and after the change.

7. A customer data processing device, characterized in that: Located in distributed business systems, including: A receiving module, used for receiving batch customer data change requests; A query module is used to respond to the batch customer data change request and send a query request to the customer query system to determine whether it is necessary to change the sub-library and sub-table; wherein the batch customer data change request includes multiple customer data change requests, and the customer data change request includes the customer data before and after the change; the customer query system determines the sub-library and sub-table identifiers corresponding to the customer data before the change and the sub-library and sub-table identifiers corresponding to the customer data after the change, and determines that the sub-library and sub-table need to be changed when the sub-library and sub-table identifiers corresponding to the customer data before the change are inconsistent with the sub-library and sub-table identifiers corresponding to the customer data after the change; A sending module, configured to generate an asynchronous request message when it is determined that a sub-library or sub-table needs to be changed, and send the asynchronous request message to the stream processing system, wherein the stream processing system obtains a target data table from the distributed business system in response to the asynchronous request message, and concurrently updates the customer data in the target data table; Wherein, the sending module is specifically used for: Slicing the batch customer data change request according to the customer account number in the customer data change request or according to the sub-library and sub-table corresponding to the customer data to obtain multiple request data slices; An asynchronous request message is generated according to the multiple request data slices.

8. A computer device, characterized in that: The method comprises a processor and a memory for storing processor-executable instructions, wherein the processor implements the steps of the method according to any one of claims 2 to 6 when executing the instructions.

9. A computer-readable storage medium having computer instructions stored thereon, characterized in that: When the instructions are executed, the steps of the method according to any one of claims 2 to 6 are implemented.