Method for determining operational characterization data of user with respect to application program
By generating operation characterization data change information in the in-memory database and synchronizing to the message queue, the problem of poor update synchronization in traditional methods is solved, efficient operation characterization data synchronization and recovery is achieved, real-time concurrent operations are supported, and user experience and system are improved. Security.
Patent Information
- Application Number
- CN202411177180.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-26
- Publication Date
- 2024-12-17
- Estimated Expiration
- 2044-08-26
AI Technical Summary
In the scenario of multi-user, complex operational representation data change, the traditional method has poor update synchronization and low efficiency, and cannot support the synchronization and recovery of real-time concurrent operational representation data.
By generating operational characterization data changes in the in-memory database, and sending it to the message queue synchronously, updating the in-memory database after detection and confirmation messages, updating the disk database asynchronously, the message queue is deployed on an independent server to recover data when the in-memory database fails.
Improves the update synchronization and efficiency of operation characterization data, supports real-time parallel operations, ensures the recovery integrity of data in the event of in-memory database failure, and improves user experience and system security.
Smart Images

Figure CN119149556A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention generally relate to the field of data processing technology, and more particularly to a method, a computing device, and a storage medium for determining user operation characterization data regarding an application. Background Art
[0002] With the development of Internet technology, various applications have emerged. Various functions have been added to many applications. Users can operate the operation data of the application by participating in the interaction. The operation data of the application can be points, virtual currency, redemption coupons, etc. For example, through the user's interactive behaviors such as consumption behavior, browsing behavior, and participation in activities, the user's points will be increased, and the user can redeem related rights and interests through consumption points, thereby maintaining the user's activity.
[0003] The traditional method for determining the data representing the user's operation on the application, taking points as an example, is to store each point obtained by the user in the database during the point update phase. When the user consumes points, he can only consume the points that have been stored in the database. When the user's points status is in a concurrent scenario of acquisition and consumption, it is impossible to perform concurrent operations on the user's points change. It is necessary to lock the account so that only one point change can occur in the same account at the same time. In addition, in the point acquisition phase, the traditional method extracts questions and information from a fixed question bank or a fixed database to recommend to users. The model is relatively simple and does not match user preferences well.
[0004] In summary, the traditional method for determining the user's operation representation data about the application has the following disadvantages: in a multi-user and complex operation representation data change scenario, the update synchronization of the operation representation data is poor and the efficiency is low. Summary of the invention
[0005] In view of the above problems, the present invention provides a method, a computing device and a storage medium for determining user operation representation data about an application, which can effectively improve the update synchronization and efficiency of the operation representation data.
[0006] According to a first aspect of the present invention, a method for determining a user's operation characterization data about an application is provided, comprising: in response to determining that a user's request for the operation characterization data has been verified, generating change information about the user's operation characterization data in a memory database; the memory database synchronously sending the change information about the user's operation characterization data to a message queue, the change information at least indicating the change time, change type and change value of the operation characterization data; in response to detecting a confirmation message about the message queue receiving the change information, synchronously updating the user's operation characterization data stored in the memory database; and sending the change information about the user's operation characterization data to a disk database through the message queue, so that the user's operation characterization data stored in the disk database is asynchronously updated; the user's operation characterization data stored in the disk database is configured to be used to restore the operation characterization data stored in the memory database when the memory database fails; the message queue is deployed on an independent server different from the server where the memory database or the disk database is located.
[0007] According to a second aspect of the present invention, a computing device is provided, which comprises: at least one processing unit; at least one memory, which is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, and when the instructions are executed by the at least one processing unit, the device performs the steps of the method according to the first aspect.
[0008] According to a third aspect of the present invention, there is provided a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a machine, the method according to the first aspect is implemented.
[0009] According to a fourth aspect of the present invention, there is also provided a computer program product, comprising a computer program, wherein when the computer program is executed by a machine, the method of the first aspect of the present invention is implemented.
[0010] In some embodiments, the method for determining the user's operation characterization data about an application further includes: based on a predetermined time, confirming whether the change information of the operation characterization data in the message queue within a predetermined time interval is consistent with the update of the operation characterization data in the memory database; in response to confirming that the operation characterization data corresponding to the change information of the operation characterization data in the message queue within the predetermined time interval has been updated in the memory database, confirming that the change information of the operation characterization data is consistent with the update of the operation characterization data in the memory database; and deleting the change information related to the operation characterization data that has been updated in the memory database within the predetermined time interval.
[0011] In some embodiments, the operation characterization data of the user stored in the disk database is configured to be used to recover the operation characterization data stored in the memory database when the memory database fails, including: in response to determining that the memory database fails, determining whether there is change information of the operation characterization data that has not yet been sent to the disk database in the message queue; in response to determining that there is no change information of the operation characterization data that has not yet been sent to the disk database in the message queue, determining whether there is operation characterization data of the user that has not yet been updated in the disk database; and in response to determining that there is no operation characterization data of the user that has not yet been updated in the disk database, recovering the operation characterization data stored in the memory database based on the operation characterization data of the user stored in the disk database.
[0012] In some embodiments, the operation characterization data is points, and the operation characterization data of the user stored in the disk database is also configured to offset the payment amount of the order on the application. Determining that the user's request for the operation characterization data has passed the verification includes: in response to determining that the user completes the interactive operation on the application, receiving a request from the user to obtain the operation characterization data, the interactive operation at least includes browsing pages, answering questions and purchasing goods; based on the received acquisition request, performing a risk check on the user corresponding to the acquisition request, the risk check includes an offline risk check and a real-time risk check; and in response to determining that the user has passed both the offline risk check and the real-time risk check, determining that the user's acquisition request has passed the verification.
[0013] In some embodiments, offline risk verification includes: based on a predetermined period, obtaining the user's interactive operation data, login data, and change information of operation characterization data to obtain the user's historical behavior data; based on the user's historical behavior data within a predetermined analysis period, generating historical risk control prompts about the user; inputting the generated historical risk control prompts about the user into a predetermined risk control prediction model to obtain the user's historical risk label; and in response to determining that the user's historical risk label indicates a high risk, determining that the user has failed the offline risk verification.
[0014] In some embodiments, real-time risk verification includes: obtaining the user's real-time behavior data based on the user's current interactive activity operations, login data, and change information of operation characterization data; generating real-time risk control prompts about the user based on the user's real-time behavior data; inputting the generated real-time risk control prompts for the user into a predetermined risk control prediction model to obtain the user's real-time risk label; and in response to determining that the user's real-time risk label indicates a high risk, determining that the user has failed the real-time risk verification.
[0015] In some embodiments, the method for determining the user's operational characterization data regarding an application further includes: based on a predetermined period, obtaining the user's login data and change information of the operational characterization data, generating an activity information prompt about the user, so as to input the user's activity information prompt into a predetermined activity prediction model to obtain the user's predicted activity information; based on the user's predicted activity information, obtaining the user's predicted login time and predicted operational characterization data; and in response to determining that the user's predicted login time is about to arrive, pulling the user's operational characterization data from a disk database, so as to preload the change information of the user's operational characterization data into a memory database.
[0016] In some embodiments, the method for determining user operation characterization data about an application further includes: generating prompts about the user's behavioral preferences based on the user's basic information and historical interaction activity information; wherein the historical interaction activity information includes at least the user's question answering information, browsing information, and product purchase information; inputting the generated prompts about the behavioral preferences into a predetermined large language model, and conducting multiple rounds of dialogue to generate a user portrait; based on the generated user portrait, the user's historical recommendation information, and the user's historical interaction activity information, regenerating prompts about the user's behavioral preferences; inputting the regenerated prompts about the behavioral preferences into a predetermined large language model, and conducting multiple rounds of dialogue to generate a user portrait in an information system; and recommending question information, product information, and information information to the user based on the user portrait in the information system.
[0017] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The above and other features, advantages and aspects of the embodiments of the present invention will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements.
[0019] Figure 1 A schematic diagram of a system for implementing a method for determining user operation characterization data on an application according to an embodiment of the present invention is shown.
[0020] Figure 2 A flow chart of a method for determining user operation characterization data on an application program according to an embodiment of the present invention is shown.
[0021] Figure 3 A flow chart of a method for determining whether a user's request for operation characterization data is authenticated according to an embodiment of the present invention is shown.
[0022] Figure 4 A flow chart of a method for preloading user operation representation data according to an embodiment of the present invention is shown.
[0023] Figure 5 A flow chart of a method for recommending interactive activity information to a user according to an embodiment of the present invention is shown.
[0024] Figure 6 A schematic diagram showing a method for generating a user portrait in an information system according to an embodiment of the present invention.
[0025] Figure 7 A block diagram of an electronic device according to an embodiment of the present invention is shown. DETAILED DESCRIPTION
[0026] The following is a description of exemplary embodiments of the present invention in conjunction with the accompanying drawings, including various details of the embodiments of the present invention to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present invention. Similarly, for clarity and conciseness, the description of well-known functions and structures is omitted in the following description.
[0027] As used herein, the term "including" and its variations mean open inclusion, i.e., "including but not limited to". Unless otherwise stated, the term "or" means "and / or". The term "based on" means "based at least in part on". The terms "an example embodiment" and "an embodiment" mean "at least one example embodiment". The term "another embodiment" means "at least one additional embodiment". The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0028] As described above, the traditional method for determining the user's operation representation data about an application has the following disadvantages: in a multi-user and complex operation representation data change scenario, the update synchronization of the operation representation data is poor and the efficiency is low.
[0029] In order to at least partially solve one or more of the above-mentioned problems and other potential problems, an exemplary embodiment of the present invention proposes a scheme for determining a user's operation characterization data about an application. In the scheme of the present invention, in response to determining that a user's request for operation characterization data has passed verification, change information about the user's operation characterization data is generated in a memory database; the memory database synchronously sends the change information of the user's operation characterization data to a message queue, and the change information at least indicates the change time, change type and change value of the operation characterization data; in response to detecting a confirmation message about the message queue receiving the change information, the user's operation characterization data stored in the memory database is synchronously updated; thereby, this scheme can synchronize the change information of the operation characterization data in the message queue with the update of the operation characterization data in the memory database.
[0030] The present invention also sends the change information of the user's operation characterization data to the disk database through the message queue, so that the user's operation characterization data stored in the disk database can be asynchronously updated; thereby, the operation characterization data in the memory database can be permanently stored in the disk database through the message queue; the present invention can also configure the user's operation characterization data stored in the disk database to be used for restoring the operation characterization data stored in the memory database when the memory database fails; in addition, in this solution, the message queue is deployed on an independent server different from the server where the memory database or the disk database is located; therefore, when the memory database fails, the operation characterization data stored in the message queue and the disk database and the change information of the operation characterization data can be restored. In addition, since the message queue, disk database and memory database are deployed on different servers respectively, and the change information of the operation representation data in the message queue is synchronized with the update of the operation representation data in the memory database, the integrity of the operation representation data during recovery is guaranteed. Therefore, when the memory database crashes, the operation representation data that has not been asynchronously updated to the disk database can be stored in the message queue, so that this part of the operation representation data will not be lost; and the operation representation data that has not been asynchronously updated to the disk database only needs to be synchronously updated in the memory database and the message queue, and does not need to be permanently stored in the disk database, so that it can continue to be updated according to changes in user requests.
[0031] Figure 1 FIG. 1 is a schematic diagram of a system 100 for implementing a method for determining user operation characterization data about an application according to an embodiment of the present invention. Figure 1As shown in , the system 100 at least includes a memory database 110, a message queue 120, a disk database 130 and a network 140. A user 150, for example, can interact with the system 100 and the memory database 110 in the system 100 through the network 140 on the user's terminal, the interactive page of the application, or other interactive devices related to the application; the memory database 110 and the message queue 120 are connected in communication (for example, through the Internet or a local area network) for data interaction, and the message queue 120 and the disk database 130 are connected in communication (for example, through the Internet or a local area network) for data interaction. Among them, the memory database 110, the message queue 120 and the disk database 130 are respectively deployed on different servers.
[0032] Regarding the memory database 110 (Memory Database), the memory database 110 is a type of database system that stores data in memory, and has the characteristics of high speed and low latency; it can be, for example, a memory database such as a Reids database, a Memcached database, an Apache Ignite database, etc.; the memory database 110 can be deployed on a single server, can be distributedly deployed on a cluster server, can be deployed on a physical server, can be deployed on a virtual machine, can be deployed on an embedded device, and can also be deployed in a cloud environment.
[0033] Regarding the message queue 110 (Message Queue), it can be, for example, a Kafka message system, a RabbitMQ message system, a RocketMQ message system, etc.; the message queue 110 is separately deployed on an independent server or a server cluster that is different from the server where the memory database or the disk database is located.
[0034] The disk-based database 130, also known as a persistent database, is a database system that stores data on a hard disk. Since the data is stored on the hard disk, the disk database has a higher data capacity and stability; the disk database 130 can be a MySQL database, a PostgreSQL database, an Oracle database, etc.
[0035] Regarding the in-memory database 110, the computing devices (such as servers, virtual machines, cloud servers, and embedded devices) deployed therein may have one or more processing units and memories. The one or more processing units include, for example, special processing units such as a graphics processing unit (GPU), a field programmable gate array (FPGA), an application-specific integrated circuit (ASIC), or a general-purpose graphics processing unit (GPGPU), and a general-purpose processing unit such as a CPU. In addition, one or more processing units deployed in the in-memory database 110 also run multiple software modules. In some embodiments, the software modules of the in-memory database 110 include, for example, a request receiving verification module 112, a data operation module 114, a message sending module 116, and a message receiving module 118.
[0036] The request receiving and verifying module 112 is used to receive and verify a request from a user regarding operation representation data.
[0037] Regarding the data operation module 114, it is used to generate change information about the user's operation characterization data in the memory database in response to determining that the user's request for operation characterization data has been verified; it is also used to synchronously update the user's operation characterization data stored in the memory database in response to detecting a confirmation message about the message queue receiving the change information.
[0038] The message sending module 116 is used to synchronously send the change information of the user's operation representation data to the message queue, and the change information at least indicates the change time, change type and change value of the operation representation data.
[0039] The message receiving module 118 is used to receive a confirmation message of receiving the change information from the message queue.
[0040] The message queue 120 is used to send the change information of the user's operation representation data to the disk database; the message queue is deployed on an independent server different from the server where the memory database or the disk database is located.
[0041] Regarding the disk database 130, it is used to receive change information of the user's operation characterization data sent from the message queue 120, so that the user's operation characterization data stored in the disk database is updated asynchronously; the user's operation characterization data stored in the disk database is configured to be used to restore the operation characterization data stored in the memory database when a failure occurs in the memory database.
[0042] Figure 2 2 is a flowchart of a method 200 for use according to an embodiment of the present invention. The method 200 may be performed as follows: Figure 1 The system 100 shown in FIG. 1 (including at least a system memory database 110, a message queue 120, and a disk database 130) may also be executed in Figure 7 The method 200 is executed at the electronic device 700. It should be understood that the method 200 may further include additional steps not shown and / or may omit the steps shown, and the scope of the present invention is not limited in this respect.
[0043] In step 202, if the memory database 110 determines that the user's request for the operation representation data is verified, the memory database 110 generates change information about the user's operation representation data in the memory database.
[0044] In some embodiments, the operation representative data is points, and the user's operation representative data stored in the disk database is also configured to be used to offset the payment amount of the order on the application, and it is determined that the user's request for the operation representative data is verified.
[0045] In some embodiments, the user's request for operation characterization data is, for example, a user's request for consumption of points or a user's request for obtaining points. Figure 3 The method for determining whether a user's request for operation representation data has been verified is described in detail and will not be repeated here.
[0046] In step 204, the memory database 110 synchronously sends the change information of the user's operation representation data to the message queue, where the change information at least indicates the change time, change type and change value of the operation representation data.
[0047] For example, when the operation representation data is points, the change information of the operation representation data is the change information of points, and the user's point change information indicates the change time of the user's points, the type of point change (such as acquisition, consumption, increase, decrease), and the value of the point change; for example, the point change information A1 of user A (August 15, 2024, 18:00; increase; 20), the change information indicates that user A requested that the point value be increased by 20 at 18:00 on August 15, 2024. For example, the change information of points can also indicate the way of obtaining points, such as indicating that the increase of the user's points is due to answering the questions in the page, such as the increase of points is due to the user redeeming goods, such as the increase of points is due to the user browsing information, such as the decrease of points is due to the user redeeming a certain product, the decrease of points is due to the user redeeming a certain card voucher, and the decrease of points is due to the user redeeming a certain service. It should be understood that the above example of the change information of the operation representation data is only a schematic, and the format and content of the change information of the operation representation data are adjusted according to the actual memory database format requirements and the specific content of the change information of the operation representation data.
[0048] In step 206 , if the memory database 110 detects a confirmation message regarding the message queue receiving the change information, it synchronously updates the user's operation representation data stored in the memory database.
[0049] For example, taking the operation characterization data as points, in the memory database 110, the current point value of user A is 0, and the point change information A1 of user A (August 15, 2024, 18:00; increase; 20), the memory database 110 sends the point change information A1 to the message queue 120; the message queue 120 receives the change information A1 and returns a confirmation message of receiving the change information A1 to the memory database 110; the memory database 110 detects the confirmation message about the message queue receiving the change information A1, and synchronously updates the points of user A stored in the memory database to 20. For another example, in the memory database 110, the current points value of user B is 100, and the points change information of user B is B1 (August 16, 2024, 12:00; decrease; 50). The memory database 110 sends the points change information B1 to the message queue 120; the message queue 120 receives the change information B1 and returns a confirmation message of receiving the change information B1 to the memory database 110; the memory database 110 detects the confirmation message about the message queue receiving the change information B1, and synchronously updates the points of user B stored in the memory database to 50.
[0050] Thus, the update of the user's operation characterization data stored in the memory database is synchronized with the change message of the user's operation characterization data received by the message queue. Therefore, when the memory database fails (for example, crashes), the user's real-time operation characterization data will not be lost, and the message queue stores the user's most recent change message of the operation characterization data (i.e., update status); the memory database can restore the operation characterization data based on the change message of the operation characterization data in the message queue and the historical data of the operation characterization data in the disk database. It should be understood that based on different operation characterization data, synchronous updates can be performed in the message queue and the memory database in the same way.
[0051] In addition, the solution provided by the above-mentioned technical means can realize real-time parallel operation of operation representation data. Taking points as an example, it can support the real-time acquisition and consumption operations of points by the same user or multiple users. Traditional technology usually requires waiting for the points to be stored in the disk database before the points data in the disk database can be consumed. In this solution, it is only necessary to synchronize the update of the operation representation data with the change information of the operation representation data received by the message queue before the operation representation data can be consumed, such as the consumption of points, thereby providing a more efficient user experience.
[0052] In step 208, the change information of the user's operation characterization data is sent to the disk database through the message queue 120, so that the user's operation characterization data stored in the disk database is asynchronously updated; the user's operation characterization data stored in the disk database is configured to be used to restore the operation characterization data stored in the memory database when a failure occurs in the memory database; the message queue is deployed on an independent server different from the server where the memory database or the disk database is located.
[0053] Continuing with the above example, after the memory database 110 completes updating of the points of user A's change information A1, it may send a message to the message queue 120 indicating that the update of user A's change information A1 is complete; after the message queue 120 returns a confirmation message of receiving the change information A1 to the memory database 110, it pushes user A's points change information A1 to the disk database 130. It should be understood that at this time, the message sending between the message queue 120 and the disk database 130 may be asynchronous. In the above scheme, the operation representation data about the user (including the current value of the operation representation data and the change information of the operation representation data) between the message queue 120 and the memory database 110 are synchronized, while the operation representation data about the user between the message queue 120 and the disk database 130 are asynchronous, that is, the operation representation data about the user between the memory database 110 and the disk database 130 are asynchronous.
[0054] Therefore, the present invention can realize synchronization of operation representation data between the memory database 110 and the message queue 120 , and permanence of asynchronous operation representation data between the memory database 110 and the disk database 130 .
[0055] In some embodiments, the user's operation characterization data stored in the disk database is configured to be used to restore the operation characterization data stored in the memory database when the memory database fails, including: if it is determined that the memory database 110 fails, determining whether there is change information of the operation characterization data that has not yet been sent to the disk database 130 in the message queue 120; if it is determined that there is no change information of the operation characterization data that has not yet been sent to the disk database 130 in the message queue 120, determining whether there is operation characterization data of the user that has not yet been updated in the disk database 130; and if it is determined that there is no operation characterization data of the user that has not yet been updated in the disk database 130, restoring the operation characterization data stored in the memory database 110 based on the user's operation characterization data stored in the disk database 130.
[0056] For example, when restoring the operation characterization data stored in the memory database 110, the most recently updated operation characterization data (including at least the value of the operation characterization data, and may also include the change information of the most recent operation characterization data) is restored. Since when the memory database is restored, the disk database has stored all the operation characterization data when the memory database fails through the message queue, and includes the historical data of the operation characterization data; therefore, only restoring the most recently updated operation characterization data will not affect the user's operating experience, and can also greatly improve the data recovery efficiency of the memory database.
[0057] Therefore, the present invention enables, when a failure occurs in the memory database 110, the message queue 120 to send the change information of the operation characterization data to the disk database 130, so that the disk database 130 can obtain the same operation characterization data as when the failure occurs in the memory database 110 (including the value of the operation characterization data, the change information of the operation characterization data), thereby enabling the memory database to call the user's operation characterization data stored in the disk database for data recovery.
[0058] In the above scheme, the present invention generates change information about the user's operation characterization data in the memory database by determining that the user's request for operation characterization data has passed verification; the memory database synchronously sends the change information about the user's operation characterization data to the message queue; if a confirmation message about the message queue receiving the change information is detected, the user's operation characterization data stored in the memory database is synchronously updated; thus, the scheme can synchronize the change information of the operation characterization data in the message queue with the update of the operation characterization data in the memory database, so that when the memory database fails, the operation characterization data therein is not lost. Then, the change information of the user's operation characterization data is sent to the disk database through the message queue, so that the user's operation characterization data stored in the disk database is asynchronously updated; so that the operation characterization data in the memory database can be permanently stored in the disk database through the message queue; the present invention can also configure the user's operation characterization data stored in the disk database to be used to restore the operation characterization data stored in the memory database when the memory database fails.
[0059] The above technical means are different from the existing memory database recovery technology. The existing memory database usually adopts timed data snapshots; or establishes an operation log in the memory database to synchronize the operation log at predetermined intervals; both of the above two existing methods have problems. For example, the data between two data snapshots cannot be recovered, and the data between two updates of the operation log cannot be recovered. The memory database will lose the real-time operation characterization data when a failure occurs. The above technical means provided in the present invention solves these problems, and in terms of recovery efficiency, there is no need to recover data step by step based on the operation log, and the efficiency is much higher than the existing technology.
[0060] In some embodiments, the system 100 confirms, based on a predetermined time, whether the change information of the operation characterization data in the message queue 120 within a predetermined time interval is consistent with the update of the operation characterization data in the memory database 110; if it is confirmed that the operation characterization data corresponding to the change information of the operation characterization data in the message queue 120 within the predetermined time interval has been updated in the memory database 110, confirm that the change information of the operation characterization data is consistent with the update of the operation characterization data in the memory database 110; and in the memory database 110, delete the change information related to the operation characterization data that has been updated within the predetermined time interval.
[0061] By adopting the above technical means, the present invention further reduces the storage space occupied by the memory database, so that when performing multi-threaded and parallel operation representation data change operations, there is no need to lock the user's account or wait for the operation representation data to be completed in the database, and the real-time change operation of the operation representation data can be supported; and because the operation representation data that has been synchronized with the message queue is regularly deleted, more memory of the memory database can be used for data interaction, which improves data reading efficiency and user interaction experience.
[0062] Figure 3 FIG. 3 is a flowchart of a method 300 for determining whether a user's request for operation characterization data is authenticated according to an embodiment of the present invention. The method 300 may be performed as follows: Figure 1 The system 100 shown in FIG. 1 (including at least a system memory database 110, a message queue 120, and a disk database 130) may also be executed in Figure 7 The method 300 is executed at the electronic device 700 shown. It should be understood that the method 300 may further include additional steps not shown and / or may omit the steps shown, and the scope of the present invention is not limited in this respect.
[0063] In some embodiments, the operation characterization data is points, and the user's operation characterization data stored in the disk database is also configured to offset the payment amount of the order on the application. Determining that the user's request for the operation characterization data has passed the verification includes the following steps 302 to 306; it should be understood that the application understood in this party can be an application deployed on a web page, or it can be an application deployed on an interactive terminal, user terminal, etc.
[0064] In step 302, if the in-memory database 110 determines that the user completes the interactive operation on the application, it receives a request from the user for obtaining the operation representation data, and the interactive operation at least includes browsing pages, answering questions and purchasing goods.
[0065] In step 304, the memory database 110 performs risk verification on the user corresponding to the acquisition request based on the received acquisition request, and the risk verification includes offline risk verification and real-time risk verification.
[0066] In step 306, if the in-memory database 110 determines that the user has passed both the offline risk check and the real-time risk check, it determines that the user's acquisition request has passed the verification.
[0067] In some embodiments, offline risk verification includes: based on a predetermined period, obtaining the user's interactive operation data, login data, and change information of operation characterization data from the disk database 130 to obtain the user's historical behavior data; based on the user's historical behavior data within a predetermined analysis period, generating historical risk control prompts about the user; inputting the generated historical risk control prompts about the user into a predetermined risk control prediction model to obtain the user's historical risk label; and if it is determined that the user's historical risk label indicates a high risk, determining that the user has failed the offline risk verification.
[0068] Regarding historical risk behaviors that may lead to risks, for example, the same user consumes or obtains points at multiple different login IP locations within a predetermined time period, the same user consumes or obtains points for multiple different users within a predetermined time period, and multiple users consume or obtain points for the same user within a predetermined time period, etc.
[0069] In some embodiments, real-time risk verification includes: obtaining the user's real-time behavior data based on the user's current interactive activity operations, login data, and change information of operation characterization data; generating real-time risk control prompts about the user based on the user's real-time behavior data; inputting the generated real-time risk control prompts for the user into a predetermined risk control prediction model to obtain the user's real-time risk label; and if it is determined that the user's real-time risk label indicates a high risk, determining that the user has failed the real-time risk verification.
[0070] Regarding real-time risk behaviors that may lead to risks, for example, the amount of points obtained by the user's request is greater than the upper limit within the predetermined time, for example, the amount of points the user requests for consumption is greater than the points threshold for consumption on that day.
[0071] In some embodiments, the predetermined risk control prediction model is, for example, an AIGC (Artificial Intelligence Generated Content) model or a large language model. The system 100 determines the user's historical risk labels and real-time risk labels by performing multiple rounds of interactions with the predetermined risk control prediction model through historical risk control prompts.
[0072] By adopting the above-mentioned technical means, the present invention requires users to pass both real-time and offline risk verification before they can obtain points, thus ensuring the legitimacy of user identity and the security of the system, greatly avoiding black market users and illegal users, and increasing the rate of high-quality users and the enthusiasm of ordinary users to participate in the interaction. At the same time, when determining the risk label, the AIGC model, the large prediction model, etc. are combined, so that the present invention can adapt to the uncertainty of each user and the diversity of risk types, avoiding the omission of new risk behaviors or risk behaviors outside the risk rules, and making judgments based on the user's historical behavior data and real-time behavior data, which can also make the obtained risk labels have higher credibility.
[0073] Figure 4 FIG. 4 is a flowchart of a method 400 for preloading user operation characterization data according to an embodiment of the present invention. The method 400 may be performed as follows: Figure 1 The system 100 shown in FIG. 1 (including at least a system memory database 110, a message queue 120, and a disk database 130) may also be executed in Figure 7 The method 400 is executed at the electronic device 700. It should be understood that the method 400 may further include additional steps not shown and / or may omit the steps shown, and the scope of the present invention is not limited in this respect.
[0074] In step 402, the system 100 obtains the change information of the user's login data and operation characterization data based on a predetermined period, generates an activity information prompt about the user, and inputs the user's activity information prompt into a predetermined activity prediction model to obtain the user's predicted activity information.
[0075] Regarding the scheduled activity prediction model, it is, for example, an AIGC model or a large language model, which interacts with the activity prediction model through the user's activity information prompts to determine the user's predicted activity information.
[0076] For example, based on the activity information prompts of user A in the past two months, it is predicted that user A usually logs in between 9 and 10 a.m. every day, answers questions, browses information, etc. to earn points, and logs in between 10 and 11 p.m. to usually spend points.
[0077] In step 404 , the system 100 obtains the user's predicted login time and predicted operation representation data based on the user's predicted activity information.
[0078] For another example, continuing with the above example, after predicting the activity information of user A, it is predicted that user A will log in at 9 am every day and acquire points, acquiring an average of 20 points; log in at 10 pm and consume points, for example, consuming an average of 10 points.
[0079] In step 406 , if the system 100 determines that the predicted login time of the user is about to arrive, the system 100 pulls the user's operation characterization data from the disk database, so as to preload the change information of the user's operation characterization data into the memory database.
[0080] For another example, continuing with the above example, it is determined that the predicted login time of user A is about to arrive at 9:00 a.m., for example 8:55 a.m., and the operation representation data of user A (such as the latest point value of user A, 1000) is pulled from the disk database 130. Based on this, the user's latest point value 1000 is preloaded into the memory database 110, and the point change information that he may obtain is also preloaded (such as: growth, 20).
[0081] By adopting the above-mentioned technical means, the present invention can predict the user who is about to log in, pull the user's operation representation data from the disk database in advance before the user logs in, and preload the change information of the user's operation representation data into the memory database based on the predicted user activity information, so as to perform data writing operations in the memory database in advance and improve the system operation efficiency; and the AIGC model is combined to predict the user activity information, which can improve the prediction efficiency and the intuitiveness of the predicted data.
[0082] Figure 5 FIG. 5 is a flowchart of a method 500 for recommending interactive activity information to a user according to an embodiment of the present invention. Figure 1 The system 100 shown in FIG. 1 (including at least a system memory database 110, a message queue 120, and a disk database 130) may also be executed in Figure 7 The method 500 is executed at the electronic device 700. It should be understood that the method 500 may further include additional steps not shown and / or may omit the steps shown, and the scope of the present invention is not limited in this respect.
[0083] In step 502, the system 100 generates prompts about the user's behavioral preferences based on the user's basic information and historical interactive activity information; wherein the historical interactive activity information at least includes the user's answer information, browsing information, and product purchase information.
[0084] For example, user C often browses content related to yoga mats, tennis rackets, tennis, diet, etc., and recently purchased coconut flour, bulletproof coffee, and dumbbells, etc.; prompts about user C's behavioral preferences are generated, such as ketogenic diet, fat reduction and blood sugar reduction, tennis yoga, muscle gain and fat reduction, etc. Regarding answering information, for example, it includes the user's answering preferences and the accuracy rate of questions in various fields, so as to infer the user's areas of expertise and areas of concern.
[0085] In step 504, the system 100 inputs the generated prompts of the behavior preference into a predetermined large language model and conducts multiple rounds of dialogue to generate a user profile.
[0086] In step 506 , the system 100 generates prompts about the user's behavioral preferences again based on the generated user portrait, the user's historical recommendation information, and the user's historical interactive activity information.
[0087] In step 508, the system 100 inputs the regenerated prompts of the behavior preference into a predetermined large language model and conducts multiple rounds of dialogue to generate a user profile in the information system.
[0088] In step 510, the system 100 recommends question information, product information, and information information to the user based on the user portrait in the information system.
[0089] Please refer to Figure 6 The schematic diagram of generating a user portrait in the information system of the embodiment of the present invention is shown. Based on the user basic information 604 and the user historical interactive activity information 602, a user behavior preference prompt 606 is generated; the generated user behavior preference prompt 606 is input into the large language model 608 to obtain a user portrait 610; based on the user portrait 610, the user historical interactive activity information 614 and the user historical recommendation information 612, the user behavior preference prompt 606 is generated again, thereby generating a user portrait 616 in the consulting system based on the large language model 608. It should be noted that the user historical interactive activity information 614 and the user historical interactive activity information 606 can select the same or different activity information content for the same user to generate a variety of preference prompts; multiple behavior preference prompts 606 can be generated each time to facilitate multiple rounds of interaction with the large language model.
[0090] By adopting the above-mentioned technical means, the present invention can solve the problem that traditional recommendation systems cannot integrate external knowledge or update knowledge in real time. The present invention is based on user historical activity information data and user basic information, combined with a large language model, to infer content about user preferences such as knowledge, consultation and products from user behavior portraits; the user's behavior, etc. is converted into prompts, and the user preferences are learned through a large language model; then the user's recommendation history and the candidate set generated by the recommendation system are further input into the large language model, so that the large language model performs filtering, sorting and other operations, and completes multiple rounds of recommendations, repeatedly cycles and improves user preferences; based on user preferences, through the prediction function of the large language model, a user profile of the user in the information system is finally generated.
[0091] In addition, by adopting the above technical means, the present invention can also convert the pre-trained large language model into a recommendation model to replace the traditional recommendation system, so that the recommendation system can be based on the user's historical interactive activity information, and introduce user preference information other than the predetermined content of the recommendation system, so as to obtain more accurate recommendation of question information, product information and information information to users. The large language model and the recommendation modules of the consulting system are connected through prompts, and by analyzing user behavior, multiple rounds of dialogue between the user and the large language model are simulated, the range of recommendation candidates is continuously narrowed, and accurate recommendation results and reasons for recommendation are finally given; thereby obtaining more efficient and accurate recommendations, improving user stickiness and activity, and increasing the user's operation frequency for operation representation data.
[0092] Figure 7 Schematic diagram of an example electronic device 700 that can be used to implement an embodiment of the present specification is shown. Figure 1 The memory database 110 shown can be implemented by an electronic device 700. As shown, the electronic device 700 includes a central processing unit (CPU) 701, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 702 or computer program instructions loaded from a storage unit 708 to a random access memory (RAM) 703. In the random access memory 703, various programs and data required for the operation of the electronic device 700 can also be stored. The central processing unit 701, the read-only memory 702, and the random access memory 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.
[0093] Multiple components in the electronic device 700 are connected to the input / output interface 705, including: an input unit 706, such as a keyboard, a mouse, a microphone, etc.; an output unit 707, such as various types of displays, speakers, etc.; a storage unit 708, such as a disk, an optical disk, etc.; and a communication unit 709, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 709 allows the device 700 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0094] The various processes and processing described above, such as methods 200 to 500, may be performed by the central processing unit 701. For example, in some embodiments, the methods 200 to 500 may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 708. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 700 via the read-only memory 702 and / or the communication unit 709. When the computer program is loaded into the random access memory 703 and executed by the central processing unit 701, one or more actions of the methods 200 to 500 described above may be performed.
[0095] The present invention relates to methods, apparatuses, systems, electronic devices, computer-readable storage media and / or computer program products. The computer program products may include computer-readable program instructions for executing various aspects of the present invention.
[0096] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.
[0097] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include copper transmission cables, optical fiber transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge computing devices. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing / processing device.
[0098] The computer program instructions for performing the operation of the present invention may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions may be executed entirely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may be personalized by utilizing the state information of the computer-readable program instructions, and the electronic circuit may execute the computer-readable program instructions, thereby realizing various aspects of the present invention.
[0099] Various aspects of the present invention are described herein with reference to the flow chart and / or step diagram of the method, device (system) and computer program product according to an embodiment of the present invention. It should be understood that each side step of the flow chart and / or step diagram and the combination of the side steps of the flow chart and / or step diagram can be implemented by computer-readable program instructions.
[0100] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more steps in the flowchart and / or step diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more steps in the flowchart and / or step diagram.
[0101] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more steps in the flowchart and / or step diagram.
[0102] The flowchart and step diagram in the accompanying drawings show the possible architecture, functions and operations of the system, method and computer program product according to multiple embodiments of the present invention. In this regard, each square step in the flowchart or step diagram can represent a part of a module, program segment or instruction, and a part of a module, program segment or instruction contains one or more executable instructions for realizing the specified logical function. In some alternative implementations, the functions marked in the square steps can also occur in an order different from that marked in the accompanying drawings. For example, two consecutive square steps can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square step in the step diagram and / or the flowchart, and the combination of the square steps in the step diagram and / or the flowchart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.
[0103] The embodiments of the present invention have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The selection of terms used herein is intended to best explain the principles of the embodiments, practical applications, or technical improvements in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.
Claims
1. A method for determining user operation characterization data about an application, comprising: In response to determining that the user's request for the operation representation data is verified, generating change information about the user's operation representation data in the memory database; The memory database synchronously sends the change information of the user's operation representation data to the message queue, wherein the change information at least indicates the change time, change type and change value of the operation representation data; In response to detecting a confirmation message regarding the message queue receiving the change information, synchronously updating the operation representation data of the user stored in the memory database; as well as Sending change information of the user's operation representation data to the disk database through the message queue, so that the user's operation representation data stored in the disk database is asynchronously updated; The user's operation characterization data stored in the disk database is configured to be used to restore the operation characterization data stored in the memory database when the memory database fails; the message queue is deployed on an independent server different from the server where the memory database or the disk database is located.
2. The method according to claim 1, further comprising: Based on the predetermined time, confirm whether the change information of the operation representation data in the message queue within the predetermined time interval is consistent with the update of the operation representation data in the memory database; In response to confirming that the operation characterization data corresponding to the change information of the operation characterization data of the message queue within the predetermined time interval has been updated in the memory database, confirming that the change information of the operation characterization data is consistent with the update of the operation characterization data in the memory database; as well as In the memory database, the change information related to the updated operation representation data within a predetermined time interval is deleted.
3. The method according to claim 1, wherein: The user's operation characterization data stored in the disk database is configured to be used to restore the operation characterization data stored in the memory database when a failure occurs in the memory database, including: In response to determining that the memory database fails, determining whether there is change information of the operation representation data in the message queue that has not been sent to the disk database; In response to determining that there is no change information of the operation characterization data that has not been sent to the disk database in the message queue, determining whether there is any operation characterization data of the user that has not been updated in the disk database; and In response to determining that there is no user's operation representation data that has not been updated in the disk database, the operation representation data stored in the memory database is restored based on the user's operation representation data stored in the disk database.
4. The method according to claim 1, wherein: The operation characterization data is points. The user's operation characterization data stored in the disk database is also configured to offset the payment amount of the order on the application. Determining that the user's request for the operation characterization data has passed the verification includes: In response to determining that the user completes an interactive operation on the application, receiving a request from the user for obtaining the operation representation data, wherein the interactive operation at least includes browsing a page, answering a question, and purchasing a product; Based on the received acquisition request, performing risk verification on the user corresponding to the acquisition request, the risk verification including offline risk verification and real-time risk verification; and In response to determining that the user passes both the offline risk check and the real-time risk check, it is determined that the acquisition request of the user is verified.
5. The method according to claim 4, wherein: The offline risk verification includes: Based on a predetermined period, obtaining the user's interactive operation data, login data, and change information of the operation representation data, so as to obtain the user's historical behavior data; Generate historical risk control reminders about the user based on the user's historical behavior data within a predetermined analysis period; Inputting the generated historical risk control prompts about the user into a predetermined risk control prediction model to obtain the historical risk label of the user; and In response to determining that the historical risk tags of the user indicate a high risk, it is determined that the user has failed the offline risk check.
6. The method according to claim 4, wherein: The real-time risk verification includes: Based on the user's current interactive activity operations, login data, and change information of operation representation data, obtain the user's real-time behavior data; Generate real-time risk control prompts for users based on their real-time behavior data; Inputting the generated real-time risk control prompt of the user into a predetermined risk control prediction model to obtain the real-time risk label of the user; and In response to determining that the real-time risk tag of the user indicates a high risk, it is determined that the user has failed the real-time risk check.
7. The method according to claim 1, further comprising: Based on a predetermined period, obtaining change information of the user's login data and operation representation data, generating an activity information prompt about the user, so as to input the user's activity information prompt into a predetermined activity prediction model to obtain the user's predicted activity information; Based on the user's predicted activity information, obtain the user's predicted login time and predicted operation representation data; as well as In response to determining that the predicted login time of the user is about to arrive, the operation representation data of the user is pulled from the disk database, so as to preload the change information of the operation representation data of the user into the memory database.
8. The method according to claim 4, further comprising: Generate prompts about the user's behavior preferences based on the user's basic information and historical interactive activity information; wherein the historical interactive activity information at least includes the user's answer information, browsing information and product purchase information; Input the generated prompts of behavior preference into a predetermined large language model and conduct multiple rounds of dialogue to generate a user profile; Based on the generated user portrait, the user's historical recommendation information and the user's historical interactive activity information, a prompt about the user's behavioral preference is generated again; Inputting the regenerated behavioral preference prompts into a predetermined large language model to conduct multiple rounds of dialogue to generate a user profile in the information system; and Based on the user portrait in the information system, question information, product information and news information are recommended to the user.
9. A computing device comprising: at least one processing unit; At least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the device to perform the steps of the method according to any one of claims 1 to 8.
10. A computer-readable storage medium having a computer program stored thereon, wherein the computer program implements the method according to any one of claims 1 to 8 when executed by a machine.
11. A computer program product, characterized in that The invention comprises a computer program, which, when executed by a machine, performs the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Method for pre-loading, server side, client and system
CN104753922A
Credit distribution method, system and device
CN105933295A
User behavior sensing method and device, equipment and medium
CN111754241A
User message synchronization method and device, server and computer storage medium
CN112015805A
Data synchronization method, device and equipment and storage medium
CN112527899A
