A data updating method and device, electronic equipment and computer readable medium
By acquiring information representing data changes and updating the database to be updated, the problem of data lag in the data synchronization scheme is solved, thereby improving the accuracy of database data and enhancing the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING YOUZHUJU NETWORK TECH CO LTD
- Filing Date
- 2022-09-27
- Publication Date
- 2026-06-05
AI Technical Summary
Existing data synchronization solutions result in a poor user experience, with data recorded in the database lagging behind real-time data generated by the data supply platform, affecting the accuracy of information retrieval and user experience.
By acquiring data change representation information, querying the first description information in the database to be updated, and using the second actual description information corresponding to the object aggregation identifier to update the database, the data stored in the database is made consistent with the latest data in the data supply platform.
This improves the accuracy of data in the database, avoids the adverse effects caused by inaccurate data, and thus enhances the user experience.
Smart Images

Figure CN115470227B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a data updating method, apparatus, electronic device, and computer-readable medium. Background Technology
[0002] Data synchronization refers to synchronizing data generated in real time from a first data service platform (e.g., an advertising display platform) to a second data service platform (e.g., the advertiser's client), so that users of the second data service platform (e.g., advertisers) can view data information generated by the first data service platform (e.g., the number of times an advertisement is viewed, resource value consumption, etc.) from the second data service platform.
[0003] However, some data synchronization solutions have flaws, resulting in a poor user experience. Summary of the Invention
[0004] To address the aforementioned technical problems, this application provides a data updating method, apparatus, electronic device, and computer-readable medium that can improve user experience.
[0005] To achieve the above objectives, the technical solution provided in this application is as follows:
[0006] This application provides a data updating method, the method comprising:
[0007] Obtain data change characterization information; the data change characterization information carries the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used;
[0008] Query the first description information corresponding to the object identifier from the database to be updated;
[0009] If it is determined that the first description information in the database is different from the first actual description information of the object to be used, then the database to be updated is updated using the second actual description information corresponding to the object aggregation identifier; the second actual description information includes the first actual description information.
[0010] In one possible implementation, updating the database to be updated using the second actual description information corresponding to the object aggregation identifier includes:
[0011] The second actual description information corresponding to the object aggregation identifier is used to replace the second database description information corresponding to the object aggregation identifier in the database to be updated; the second database description information includes the first database description information.
[0012] In one possible implementation, the second storage description information includes the stored data value corresponding to at least one reference field; the second actual description information includes the actual data value corresponding to the at least one reference field.
[0013] And / or,
[0014] The first storage description information includes the stored data value corresponding to the target field in the at least one reference field; the first actual description information includes the actual data value corresponding to the target field.
[0015] In one possible implementation, after acquiring the data change characterization information, the method further includes:
[0016] Based on the object identifier of the object to be used, query the first actual description information of the object to be used from the data supply platform;
[0017] And / or,
[0018] Before updating the database to be updated using the second actual description information corresponding to the object aggregation identifier, the method further includes:
[0019] Based on the object aggregation identifier corresponding to the object to be used, query the second actual description information corresponding to the object aggregation identifier from the data supply platform.
[0020] In one possible implementation, the database to be updated is periodically updated at preset time intervals;
[0021] The method further includes:
[0022] When it is determined that the time interval between the current time and the last periodic update time of the database to be updated is lower than the preset time interval, and the time interval between the current time and the last periodic update time reaches the preset correction time interval, the third actual description information corresponding to the object aggregation identifier is obtained, and the database to be updated is updated using the third actual description information.
[0023] In one possible implementation, before acquiring the data change characterization information, the method further includes:
[0024] Receive an object data change message; the object data change message carries the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used;
[0025] Based on the object data change message, determine the data change representation information;
[0026] The data change characterization information is stored in a preset storage space;
[0027] The acquisition of data change characterization information includes:
[0028] When the preset reading conditions are met, the data change characterization information is read from the preset storage space.
[0029] In one possible implementation, the data update method is applied to a first device; the database to be updated is stored in a second device; and a data communication link exists between the first device and the second device.
[0030] This application also provides a data updating device, including:
[0031] The first acquisition unit is used to acquire data change characterization information; the data change characterization information carries the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used;
[0032] The first query unit is used to query the first database description information corresponding to the object identifier from the database to be updated.
[0033] The first update unit is configured to update the database to be updated by using the second actual description information corresponding to the object aggregation identifier if it is determined that the first database description information is different from the first actual description information of the object to be used; the second actual description information includes the first actual description information.
[0034] This application also provides an electronic device, the device comprising: a processor and a memory;
[0035] The memory is used to store instructions or computer programs;
[0036] The processor is configured to execute the instructions or computer program in the memory, so that the electronic device performs the data update method provided in this application.
[0037] This application also provides a computer-readable medium storing instructions or a computer program that, when executed on a device, causes the device to perform the data update method provided in this application.
[0038] This application also provides a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the data update method provided in this application.
[0039] Compared with the prior art, this application has at least the following advantages:
[0040] In the technical solution provided in this application, after obtaining the data change characterization information, the system first queries the database to be updated based on the object identifier of the object to be used carried by the data change characterization information, and queries the database to be updated for the first storage description information corresponding to the object identifier (e.g., the stored data value of the object to be used in a certain field). This is so that when it is determined that the first storage description information is different from the first actual description information of the object to be used (e.g., the actual data value of the object to be used in a certain field), it can be determined that the data stored in the database to be updated for the object to be used may not be up-to-date. Therefore, it can be determined that the data stored in the database to be updated for the object aggregation identifier corresponding to the object to be used needs to be updated. Thus, the database to be updated is updated using the second actual description information corresponding to the object aggregation identifier (e.g., the latest data related to all objects corresponding to the object aggregation identifier), so that the updated database to be updated stores the second actual description information corresponding to the object aggregation identifier. This ensures that the data stored in the database to be updated for the object aggregation identifier corresponding to the object to be used is up-to-date, thereby improving the accuracy of the data in the database to be updated and effectively avoiding adverse effects caused by poor data accuracy, thus improving the user experience. Attached Figure Description
[0041] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0042] Figure 1 A flowchart illustrating a data update method provided in an embodiment of this application;
[0043] Figure 2 A schematic diagram illustrating a data update process provided in an embodiment of this application;
[0044] Figure 3 This is a schematic diagram of the structure of a data update device provided in an embodiment of this application;
[0045] Figure 4 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0046] Research has revealed that some data synchronization solutions (e.g., report data synchronization solutions) typically synchronize data generated by a data supply platform (e.g., report data) to a user's (e.g., advertiser's) database, allowing the user to view this data via an electronic device. However, due to inherent limitations in these solutions (e.g., synchronization failures due to network instability, missing data synchronization), the data recorded in the database obtained through these solutions may lag behind the real-time data generated by the data supply platform. This discrepancy between the data recorded in the database and the real-time data generated by the data supply platform negatively impacts the user experience when querying information from that database. The data supply platform can be used to display an object (e.g., an advertisement, video), allowing the platform to provide synchronized data related to that object to the database.
[0047] Based on the above findings, in order to solve the technical problems shown in the background section, this application provides a data update method. The method includes: after obtaining data change characterization information, firstly, based on the object identifier of the object to be used carried by the data change characterization information, querying the database to be updated for the first storage description information corresponding to the object identifier (e.g., the stored data value of the object to be used in a certain field). This is so that when it is determined that the first storage description information is different from the first actual description information of the object to be used (e.g., the actual data value of the object to be used in a certain field), it can be determined that the data stored in the database to be updated for the object to be used may not be the latest, thereby confirming that... The data stored in the database to be updated for the object aggregation identifier corresponding to the object to be used needs to be updated. Therefore, the database to be updated is updated using the second actual description information corresponding to the object aggregation identifier (e.g., the latest data related to all objects corresponding to the object aggregation identifier). This ensures that the updated database stores the second actual description information corresponding to the object aggregation identifier, making the data stored in the database to be updated for the object aggregation identifier corresponding to the object to be used up-to-date. This improves the accuracy of the data in the database to be updated, effectively avoiding adverse effects caused by poor data accuracy, and thus enhancing the user experience.
[0048] Furthermore, the embodiments of this application do not limit the executing entity of the data update method. For example, the data update method provided in the embodiments of this application can be applied to devices with data processing functions, such as terminal devices or servers. The terminal device can be a smartphone, computer, personal digital assistant (PDA), or tablet computer, etc. The server can be a standalone server, a cluster server, or a cloud server.
[0049] It is understood that before using the technical solutions of the various embodiments in this disclosure, users will be informed of the type, scope of use, and usage scenarios of the personal information involved in an appropriate manner, and user authorization will be obtained.
[0050] For example, upon receiving a user's active request, a prompt message is sent to the user to explicitly inform them that the requested operation will require the acquisition and use of the user's personal information. This allows the user to independently choose, based on the prompt message, whether to provide personal information to the software or hardware such as electronic devices, applications, servers, or storage media performing the operations of this disclosed technical solution.
[0051] As an optional but not limited implementation, in response to a user's active request, sending a prompt message to the user can be done via a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0052] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.
[0053] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of the present application.
[0054] To better understand the technical solution provided in this application, the data update method provided in this application will be explained below with reference to some accompanying drawings. For example... Figure 1 As shown, the data update method applied to a data processing platform provided in this application includes the following steps S1-S3. Wherein, the... Figure 1 This is a flowchart of a data update method provided in an embodiment of this application.
[0055] S1: Obtain data change representation information; this data change representation information carries the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used.
[0056] The data processing platform is used to synchronize relevant data (e.g., report data) of certain objects to a database accessible to the users to which these objects belong. The object refers to any resource data that can be displayed using the data supply platform; however, this application embodiment does not limit the object, for example, it can be resource data such as advertisements, videos, images, and audio. The report data refers to data related to the object, used to describe the object's status in certain aspects (e.g., number of clicks, number of queries, number of impressions, resource value consumption, etc.), so that the report data can represent the display status of the object by the data supply platform (e.g., number of impressions, number of interactive operations triggered by users for the object, etc.). The user to which the object belongs refers to the user who owns the object (e.g., advertisers, etc.), so that the object can introduce relevant content of items (e.g., commodities such as cups or virtual services such as haircuts, etc.) provided by the user. The "database accessible to the user to whom the object belongs" is used to respond to a data query request triggered by the user to whom the object belongs, and to provide the user with data information obtained in response to the data query request. Furthermore, this application embodiment does not limit the "database accessible to the user to whom the object belongs," for example, it can refer to a database that can be used by the user to whom the object belongs to perform data queries using some application. It should be noted that this application embodiment does not limit the device that triggers the data query request; for example, it can be a client (e.g., an electronic device) that can be used by the user to whom the object belongs to for data queries, and is different from the data supply platform and the data processing platform.
[0057] Furthermore, the aforementioned data supply platform refers to a platform capable of communicating with the aforementioned data processing platform, used to display objects, and used to collect relevant data (e.g., report data) of these objects in real time. It should be noted that the embodiments of this application do not limit the data supply platform; for example, it can be implemented using any electronic device (e.g., terminal device or server) capable of communicating with the data processing platform, used to display objects, and used to collect relevant data of these objects in real time.
[0058] The "data change representation information" mentioned above describes a change in the relevant data of an object (e.g., report data). Therefore, when this data change representation information describes a change in the relevant data of an object to be used, it can carry the object identifier of the object to be used and the corresponding object aggregation identifier. Here, the object to be used refers to the object whose data has changed (e.g., an advertisement). The object identifier of the object to be used (e.g., the identification document ID of an advertisement) is used to uniquely identify the object. The corresponding object aggregation identifier (e.g., the ID of an advertiser) is used to uniquely identify the user to whom the object belongs, so that the "object aggregation identifier corresponding to the object to be used" can indicate who the owner of the object to be used (e.g., the advertiser) is.
[0059] It should be noted that, for a user who owns an object (e.g., an advertiser), when that user owns at least one object (e.g., multiple advertisements), a pre-established association between the user's identifier (e.g., the advertiser's ID) and the object identifiers of these objects (e.g., the IDs of these advertisements) can be constructed to indicate who owns these objects. The user identifier is used to uniquely identify the user who owns the object.
[0060] It should also be noted that the embodiments of this application do not limit the implementation of the above-mentioned object identifier, object aggregation identifier and user identifier. For example, they can be preset according to the application scenario.
[0061] Furthermore, the embodiments of this application do not limit the process of obtaining the data change characterization information mentioned above. For ease of understanding, the following description is provided with reference to examples.
[0062] As an example, in some application scenarios (e.g., report data synchronization scenarios), the process of obtaining the information representing the changes in the data mentioned above may specifically include steps 11-14 below.
[0063] Step 11: Receive object data change message; the object data change message carries the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used.
[0064] The object data change message refers to a message sent by the aforementioned data supply platform indicating that the relevant data of the object to be used has changed; moreover, this application embodiment does not limit the generation process of the object data change message, for example, it can be generated using... Figure 2 The message generation process shown in area 201 is implemented.
[0065] Furthermore, the embodiments of this application do not limit the aforementioned object data change message. For example, the object data change message may at least carry the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used. Alternatively, the object data change message may also carry the object identifier of the object to be used, the object aggregation identifier corresponding to the object to be used, and the time when the relevant data of the object to be used changed.
[0066] Based on the relevant content in step 11, after the data supply platform detects that the relevant data of the object to be used has changed, the data supply platform can first generate an object data change message for the object to be used based on the object identifier of the object to be used, the object aggregation identifier corresponding to the object to be used, and the time when the relevant data of the object to be used changed; then the data supply platform sends the object data change message to the data processing platform so that the data processing platform can subsequently take corresponding processing operations based on the object data change message (e.g., Figure 2 (The operations performed by the data processing platform are shown).
[0067] Step 12: Determine the data change representation information based on the object data change message.
[0068] It should be noted that the implementation of step 12 in this application embodiment is not limited. For example, it can specifically be: directly determining the above object data change message as data change representation information. Alternatively, step 12 can specifically be: using the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used carried in the object data change message to determine the data change representation information, so that the data change representation information includes the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used.
[0069] Step 13: Store the data change representation information in the preset storage space.
[0070] The preset storage space can be pre-set. For example, the preset storage space can refer to a database deployed for the data processing platform that is dedicated to storing certain information (e.g., information similar to the data change representation information mentioned above), so that the data processing platform can read the information from the database later.
[0071] Based on the relevant content of steps 12-13, after the data processing platform receives the object data change message sent by the data supply platform, it can store the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used, carried in the object data change message, into a preset storage space (e.g., a database), so that the data processing platform can subsequently know that the relevant data of the object to be used has changed based on the content recorded in the preset storage space.
[0072] Step 14: When the preset reading conditions are met, read the data change representation information from the preset storage space.
[0073] The preset read conditions can be set in advance according to the application scenario. For example, in some application scenarios (e.g., report data synchronization), the preset read condition may specifically be: the trigger condition of the data compensation process is met. This data compensation process refers to the compensation update processing for the "database accessible to the user to which the object belongs" mentioned above (e.g., Figure 2 The compensation update process shown in area 202 is described below. It should be noted that this embodiment does not limit the triggering conditions for the data compensation process. For example, when the data compensation process is executed once every preset time interval (e.g., 1 day), the triggering condition for the data compensation process can be: the time difference between the current time and the last execution start time of the data compensation process reaches the preset time interval. This preset time interval can be set in advance according to the application scenario.
[0074] Based on the relevant content in step 14 above, it is known that for the data processing platform, when it determines that the triggering conditions for the data compensation process have been met, it can determine that compensation update processing needs to be performed on the "database accessible to the user to which the object belongs" mentioned above (for example, Figure 2 The compensation update process shown in the middle area 202 can determine that the preset reading conditions mentioned above have been met. Therefore, the data processing platform can read all the stored content (e.g., the data change representation information mentioned above) from the preset storage space so that the data processing platform can know which objects' related data have changed within the preset time period mentioned above. This allows the data processing platform to focus on determining whether the related data of these objects that have changed has been synchronized to the "database that the object's user can access".
[0075] S2: Query the first description information of the object identifier from the database to be updated.
[0076] The database to be updated refers to a database that can be used by the user to which the object to be used belongs, and is used to record relevant data about the object to be used. The user to which the object to be used belongs refers to the user who owns the object to be used (e.g., an advertiser), so that the object to be used (e.g., an advertisement) can introduce relevant content about some items provided by that user.
[0077] Furthermore, this application embodiment does not limit the database to be updated mentioned above. For example, the database to be updated can be used to record key-value pairs of a large number of objects (e.g., the objects to be used mentioned above) under at least one reference field. The key-value pair represents the correspondence between the field identifier of the reference field and the data value stored in the object under the reference field, so that the key-value pair can represent the state of the object in a certain aspect (e.g., resource consumption). The field identifier of the reference field is used to uniquely identify the reference field (or the aspect). Additionally, this application embodiment does not limit the "at least one reference field." For example, the "at least one reference field" can be set according to the actual application scenario.
[0078] The first description information refers to the data value recorded in the database to be updated, which corresponds to the object identifier of the object to be used and also corresponds to the field identifier of the target field. The target field is a reference field used for anomaly detection processing of the relevant record content of an object in the database to be updated; and this target field can be set according to the actual application scenario. Furthermore, this application embodiment does not limit the target field; for example, it can be a reference field of resource value consumption. The resource value consumption represents the resource value required for the user of the object to be used to provide corresponding feedback based on the display behavior triggered by the object on the data supply platform.
[0079] Based on the relevant content of S2 above, when the database to be updated is used to provide data query functions for the object to be used to the user of the object to be used, for the data processing platform, after the data processing platform reads the object identifier of the object to be used from the preset storage space, it can be determined that the relevant data of the object to be used has changed. Therefore, the data processing platform can query the first storage description information corresponding to the object identifier from the database to be updated based on the object identifier of the object to be used, so that the first storage description information can represent the data value stored in the target field for the object to be used in the database to be updated, so that the data processing platform can use the first storage description information to determine whether the database to be updated stores the relevant data of the object to be used after the change.
[0080] S3: If it is determined that the first description information in the database is different from the first actual description information of the object to be used, then the second actual description information corresponding to the object aggregation identifier is used to update the database to be updated; the second actual description information includes the first actual description information.
[0081] The first actual description information refers to the real-time data value presented by the data supply platform for the object to be used under the target field (that is, the latest data value presented by the object to be used under the target field).
[0082] Furthermore, the embodiments of this application do not limit the process of obtaining the first actual description information mentioned above. For example, it can specifically be: after the data processing platform obtains the object identifier of the object to be used, it queries the first actual description information of the object to be used from the data supply platform mentioned above based on the object identifier, so that the first actual description information can represent the latest data value presented by the data supply platform for the object to be used under the target field.
[0083] The second actual description information refers to the real-time data values presented in at least one reference field for all objects owned by the user to which the object to be used belongs in the data supply platform mentioned above. That is, when the user to which the object to be used belongs owns at least one object to be aggregated, and the at least one object to be aggregated includes the object to be used, the second actual description information can include the actual description information of the at least one object to be aggregated. Here, the object to be aggregated refers to the object owned by the "user to which the object to be used belongs" mentioned above. The actual description information of the y-th object to be aggregated refers to the real-time data value presented in the data supply platform for the y-th object to be aggregated under the at least one reference field (that is, the latest data value presented for the y-th object to be aggregated under the at least one reference field). y is a positive integer, y≤Y, where Y is a positive integer and represents the number of objects in the "at least one object to be aggregated" mentioned above.
[0084] As can be seen, since the actual description information of the object to be used mentioned above refers to the real-time data value presented by the data supply platform for the object to be used under at least one reference field, and the at least one reference field includes the target field mentioned above, the actual description information of the object to be used can at least include the first actual description information of the object to be used mentioned above, thereby making the second actual description information mentioned above at least include the first actual description information of the object to be used.
[0085] Furthermore, the embodiments of this application do not limit the process of obtaining the second actual description information mentioned above. For example, it can specifically be: when the data processing platform determines that the first description information in the database is different from the first actual description information in the database, it can be determined that the storage of the object to be used in the database to be updated has an anomaly (e.g., the relevant data after the change of the object to be used is not stored). Therefore, in order to avoid the adverse effects caused by the anomaly, the data processing platform can query the second actual description information corresponding to the object aggregation identifier from the data supply platform based on the object aggregation identifier corresponding to the object to be used, so that the second actual description information can represent the accurate data of all objects owned by the user to which the object belongs in the data supply platform, so that the second actual description information can be used to update the database to be updated, so that the database to be updated can store relatively accurate data for the user to which the object belongs.
[0086] Furthermore, the embodiments of this application are not limited to the implementation of the above-described step "querying the second actual description information corresponding to the object aggregation identifier from the data supply platform based on the object aggregation identifier corresponding to the object to be used". For example, it can be implemented using any existing or future method that can query the accurate data presented in the data supply platform of all objects owned by the user to which the object belongs based on the object aggregation identifier corresponding to the object to be used. Alternatively, it can specifically be: first, based on the object aggregation identifier corresponding to the object to be used, determine each object identifier that has a corresponding relationship with the object aggregation identifier; then, query the real-time data value presented by the object identified by each object identifier under at least one reference field from the data supply platform based on each object identifier, to obtain the second actual description information corresponding to the object aggregation identifier, so that the second actual description information includes the real-time data values presented by all objects under at least one reference field.
[0087] Furthermore, this application embodiment does not limit the implementation of the step "update the database to be updated using the second actual description information corresponding to the object aggregation identifier" in S3 above. For example, it can specifically be: using the second actual description information corresponding to the object aggregation identifier to replace the second database description information corresponding to the object aggregation identifier in the database to be updated, so as to achieve the purpose of using the second actual description information to cover the second database description information in the database to be updated, so that the updated database to be updated contains the second actual description information, but does not contain the second database description information. This is beneficial to ensure that the data stored in the database to be updated is consistent with the data presented in the data supply platform above.
[0088] The second database description information refers to the data values stored in the database to be updated for all objects owned by the user to whom the object to be used belongs, under at least one reference field. That is, when the user to whom the object to be used belongs owns at least one object to be aggregated, and that at least one object to be aggregated includes the object to be used, the second database description information can include the object database description information of that at least one object to be aggregated. The object database description information of the y-th object to be aggregated refers to the data values stored in the database to be updated for that y-th object to be aggregated under at least one reference field. y is a positive integer, y≤Y, where Y is a positive integer and represents the number of objects in "at least one object to be aggregated" mentioned above.
[0089] As can be seen, since the object storage description information of the object to be used mentioned above refers to the data value that has been stored in the database for the object to be used under at least one reference field, and the at least one reference field includes the target field mentioned above, the object storage description information of the object to be used can at least include the first storage description information mentioned above, thereby making the second storage description information mentioned above at least include the first storage description information mentioned above.
[0090] Based on the relevant content of the second actual description information above, it can be known that since the second actual description information may include at least the first actual description information above, the database to be updated based on the second actual description information shall at least store the first actual description information for the object to be used.
[0091] In other words, when the second database description information mentioned above includes stored data values corresponding to at least one reference field, and the first database description information mentioned above includes stored data values corresponding to the target field among the at least one reference field, the first actual description information includes the actual data values corresponding to the target field among the at least one reference field, and the second actual description information includes the actual data values corresponding to the at least one reference field. Here, the stored data value corresponding to the i-th reference field refers to the data value stored in the database to be updated for the object to be used under the i-th reference field. The stored data value corresponding to the target field refers to the data value stored in the database to be updated for the object to be used under the target field. The actual data value corresponding to the i-th reference field refers to the real-time data value presented in the data supply platform for the object to be used under the i-th reference field. The actual data value corresponding to the target field refers to the real-time data value presented in the data supply platform for the object to be used under the target field. i is a positive integer, i≤I, I is a positive integer, and I represents the number of fields in "at least one reference field" mentioned above.
[0092] Based on the relevant content of S1 to S2 above, for the data update method provided in this application embodiment, after obtaining the data change characterization information, the method first queries the database to be updated based on the object identifier of the object to be used carried by the data change characterization information, and queries the database to be updated for the first storage description information corresponding to the object identifier (e.g., the stored data value of the object to be used in a certain field). This is so that when it is determined that the first storage description information is different from the first actual description information of the object to be used (e.g., the actual data value of the object to be used in a certain field), it can be determined that the data stored in the database to be updated for the object to be used may not be the latest, thereby determining that the data to be updated is not up-to-date. The data stored in the database corresponding to the object aggregation identifier of the object to be used needs to be updated. Therefore, the database to be updated is updated using the second actual description information corresponding to the object aggregation identifier (e.g., the latest data related to all objects corresponding to the object aggregation identifier). This ensures that the updated database stores the second actual description information corresponding to the object aggregation identifier, making the data stored in the database corresponding to the object aggregation identifier of the object to be used up-to-date. This improves the accuracy of the data in the database to be updated, effectively avoiding adverse effects caused by poor data accuracy, and thus enhancing the user experience.
[0093] In fact, to better improve the user experience in some data update scenarios (e.g., data updates at the top of the hour), this application embodiment also provides another possible implementation of the above data update method. In this implementation, when the database to be updated can be periodically updated at a preset time interval (e.g., updates at the top of the hour), the data update method may further include step 21 below. It should be noted that this application embodiment does not limit the execution time of step 21.
[0094] Step 21: When it is determined that the time interval between the current time and the last periodic update time of the database to be updated is lower than the preset time interval, and the time interval between the current time and the last periodic update time reaches the preset correction time interval, the third actual description information corresponding to the aggregate identifier of the above object is obtained, and the database to be updated is updated using the third actual description information.
[0095] The preset time interval can be set in advance according to the application scenario. For example, in the scenario of updating data on the hour, the preset time interval can be 1 hour.
[0096] The "last periodic update time of the database to be updated" mentioned above refers to the moment (e.g., the start time) of the update process that was completed for the database to be updated, which is the most recent update process that was used to achieve the purpose of periodic update processing at preset time intervals.
[0097] The preset correction interval refers to the time interval set in advance according to the application scenario, which is used to supplement the data when processing the results obtained from the "periodic update processing according to the preset time interval" mentioned above. For example, in the scenario of updating data on the hour, the preset correction interval could be 15 minutes.
[0098] The third actual description information refers to the real-time data values presented in at least one reference field for all objects owned by the user to whom the object to be used belongs in the data supply platform mentioned above, which are required during the data supplementation process. It should be noted that the relevant content of this third actual description information is similar to that of the second actual description information mentioned above, and will not be repeated here for the sake of brevity.
[0099] Based on the relevant content of step 21 above, in some application scenarios (e.g., hourly data updates), when the database to be updated is used to provide data query functions for the object to be used to the user of the object to be used, for the data processing platform, after the data processing platform completes a data update process of "periodic update processing according to a preset time interval" (e.g., completing an hourly update process), when a preset correction condition is met (that is, the time interval between the current time and the previous periodic update time of the database to be updated is lower than the preset time interval, and the time interval between the current time and the previous periodic update time reaches the preset correction time interval), the data processing platform queries the third actual description information corresponding to the object aggregation identifier (e.g., based on the object aggregation identifier corresponding to the object to be used) from the data supply platform. Figure 2 The data (such as the aggregated data shown in the middle area 203) is used to update the database to be updated, so that the database to be updated can better represent the data value of the object to be used after the change in the previous stage (for example, the time period from 3:00 to 4:00 on September 1, 2022). This can effectively overcome the defects of the above-mentioned "periodic update processing according to preset time intervals" (for example, the inability to obtain the report data changes that occur near the end time), thereby effectively improving the user experience.
[0100] It should be noted that the embodiments of this application do not limit the implementation of the data processing platform described above. For example, it can be any electronic device that can execute the data update method provided in the embodiments of this application.
[0101] It should also be noted that the embodiments of this application do not limit the relationship between the aforementioned data processing platform, data supply platform, and platform used to provide data query functions for the aforementioned database to be updated to the "user to which the object belongs" of the aforementioned object. For example, these three platforms can be different devices. That is, the data processing platform can be a first device, so that the first device can execute any implementation of the data update method provided in the embodiments of this application; the platform used to provide data query functions for the aforementioned database to be updated to the "user to which the object belongs" of the aforementioned object can be a second device, so that the database to be updated is stored on the second device, and that the second device can respond to the data query request triggered by the "user to which the object belongs" of the aforementioned object and provide data query results; the data supply platform can be a third device, so that the third device can provide the first device with some object-related data (e.g., some advertising report data, etc.). There is a data communication link between the first device and the second device, so that the first device can communicate with the second device; and there is also a data communication link between the first device and the third device, so that the first device can also communicate with the third device.
[0102] It should also be noted that, for Figure 2 Regarding the "subscription" status, users of the data processing platform (i.e., data processing personnel) can choose whether to subscribe to relevant data (e.g., report data) for the user to whom the object to be used belongs.
[0103] It should also be noted that the embodiments of this application do not limit the application scenario of the data update method described above. For example, it can be any data synchronization scenario (e.g., advertising report data synchronization scenario, etc.).
[0104] Based on the data update method provided in the embodiments of this application, the embodiments of this application also provide a data update device, which is described below in conjunction with... Figure 3 Explanation and clarification will be provided. Among them, Figure 3 This is a schematic diagram of a data update device provided in an embodiment of this application. It should be noted that for technical details of the data update device provided in this embodiment, please refer to the relevant content of the data update method above.
[0105] like Figure 3 As shown, the data update device 300 provided in this application embodiment includes:
[0106] The first acquisition unit 301 is used to acquire data change characterization information; the data change characterization information carries the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used.
[0107] The first query unit 302 is used to query the first database description information corresponding to the object identifier from the database to be updated;
[0108] The first update unit 303 is used to update the database to be updated by using the second actual description information corresponding to the object aggregation identifier if it is determined that the first database description information is different from the first actual description information of the object to be used; the second actual description information includes the first actual description information.
[0109] In one possible implementation, the first update unit 303 is specifically used to: replace the second actual description information corresponding to the object aggregation identifier in the database to be updated with the second actual description information corresponding to the object aggregation identifier; the second actual description information includes the first actual description information.
[0110] In one possible implementation, the second storage description information includes the stored data value corresponding to at least one reference field; the second actual description information includes the actual data value corresponding to the at least one reference field.
[0111] And / or,
[0112] The first storage description information includes the stored data value corresponding to the target field in the at least one reference field; the first actual description information includes the actual data value corresponding to the target field.
[0113] In one possible implementation, the data update device 300 further includes:
[0114] The second query unit is used to query the first actual description information of the object to be used from the data supply platform based on the object identifier of the object to be used after obtaining the data change characterization information.
[0115] In one possible implementation, the data update device 300 further includes:
[0116] The third query unit is used to query the second actual description information corresponding to the object aggregation identifier from the data supply platform before updating the database to be updated using the second actual description information corresponding to the object aggregation identifier.
[0117] In one possible implementation, the database to be updated is periodically updated at preset time intervals;
[0118] The data update device 300 further includes:
[0119] The second acquisition unit is used to acquire the third actual description information corresponding to the object aggregation identifier when it is determined that the time interval between the current time and the last periodic update time of the database to be updated is lower than the preset time interval, and the time interval between the current time and the last periodic update time reaches the preset correction time interval.
[0120] The second update unit is used to update the database to be updated using the third actual description information.
[0121] In one possible implementation, the data update device 300 further includes:
[0122] A message receiving unit is used to receive object data change messages; the object data change messages carry the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used.
[0123] An information determination unit is used to determine data change characterization information based on the object data change message;
[0124] An information storage unit is used to store the data change characterization information into a preset storage space;
[0125] The first acquisition unit 301 is specifically used to: read the data change characterization information from the preset storage space when it is determined that the preset reading conditions have been met.
[0126] In one possible implementation, the data update device 300 is applied to a first device; the database to be updated is stored in a second device; and a data communication link exists between the first device and the second device.
[0127] Based on the aforementioned content regarding the data update device 300, it is understood that, for the data update device 300 provided in this application embodiment, after obtaining the data change characterization information, it first queries the database to be updated based on the object identifier of the object to be used carried by the data change characterization information, and queries the database to be updated for the first storage description information corresponding to the object identifier (e.g., the stored data value of the object to be used in a certain field). This is so that when it is determined that the first storage description information is different from the first actual description information of the object to be used (e.g., the actual data value of the object to be used in a certain field), it can be determined that the data stored in the database to be updated for the object to be used may not be the latest, thereby determining that the data to be updated is not the latest. The data stored in the new database corresponding to the object aggregation identifier of the object to be used needs to be updated. Therefore, the database to be updated is updated using the second actual description information corresponding to the object aggregation identifier (e.g., the latest data related to all objects corresponding to the object aggregation identifier). This ensures that the updated database stores the second actual description information corresponding to the object aggregation identifier, making the data stored in the database corresponding to the object aggregation identifier of the object to be used up-to-date. This improves the accuracy of the data in the database to be updated, effectively avoiding adverse effects caused by poor data accuracy, and thus enhancing the user experience.
[0128] In addition, this application also provides an electronic device, which includes a processor and a memory: the memory is used to store instructions or computer programs; the processor is used to execute the instructions or computer programs in the memory so that the electronic device performs any implementation of the data update method provided in this application.
[0129] See Figure 4 This diagram illustrates a structural schematic of an electronic device 400 suitable for implementing embodiments of the present disclosure. The terminal devices in these embodiments may include, but are not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 4 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.
[0130] like Figure 4As shown, electronic device 400 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 401, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 402 or a program loaded from storage device 408 into random access memory (RAM) 403. RAM 403 also stores various programs and data required for the operation of electronic device 400. The processing device 401, ROM 402, and RAM 403 are interconnected via bus 404. Input / output (I / O) interface 405 is also connected to bus 404.
[0131] Typically, the following devices can be connected to I / O interface 405: input devices 406 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 407 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 408 including, for example, magnetic tapes, hard disks, etc.; and communication devices 409. Communication device 409 allows electronic device 400 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 4 An electronic device 400 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0132] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 409, or installed from a storage device 408, or installed from a ROM 402. When the computer program is executed by the processing device 401, it performs the functions defined in the methods of embodiments of this disclosure.
[0133] The electronic device provided in this embodiment belongs to the same inventive concept as the method provided in the above embodiments. Technical details not described in detail in this embodiment can be found in the above embodiments, and this embodiment has the same beneficial effects as the above embodiments.
[0134] This application also provides a computer-readable medium storing instructions or a computer program that, when executed on a device, causes the device to perform any implementation of the data update method provided in this application.
[0135] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0136] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and end-to-end networks (e.g., ad hoc end-to-end networks), as well as any currently known or future-developed networks.
[0137] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0138] The aforementioned computer-readable medium carries one or more programs, which, when executed by the electronic device, enable the electronic device to perform the aforementioned methods.
[0139] Computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can 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 can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0140] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0141] The units described in the embodiments of this disclosure can be implemented in software or hardware. The names of the units / modules do not necessarily limit the specific unit itself.
[0142] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0143] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. Machine-readable media can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0144] It should be noted that the various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the systems or apparatus disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the descriptions are relatively simple, and relevant parts can be referred to the method section.
[0145] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0146] It should also be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0147] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.
[0148] The above description of the disclosed embodiments enables those skilled in the art to make or use this application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. Therefore, this application is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A data update method, characterized in that, The method includes: Acquire data change characterization information; the data change characterization information carries the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used, the object to be used is resource data, the object aggregation identifier indicates the user to which the object to be used belongs, and the data change characterization information indicates that the data associated with the object to be used has changed; Query the first description information corresponding to the object identifier from the database to be updated; If it is determined that the first description information in the database is different from the first actual description information of the object to be used, then the database to be updated is updated using the second actual description information corresponding to the object aggregation identifier; the second actual description information includes the first actual description information, the second actual description information includes the actual description information of at least one object to be aggregated, the users to which the objects of each object to be aggregated belong are the same, and the at least one object to be aggregated includes the object to be used.
2. The method according to claim 1, characterized in that, The step of updating the database to be updated using the second actual description information corresponding to the object aggregation identifier includes: The second actual description information corresponding to the object aggregation identifier is used to replace the second database description information corresponding to the object aggregation identifier in the database to be updated; the second database description information includes the first database description information.
3. The method according to claim 2, characterized in that, The second storage description information includes the stored data value corresponding to at least one reference field; the second actual description information includes the actual data value corresponding to the at least one reference field. And / or, The first storage description information includes the stored data value corresponding to the target field in the at least one reference field; the first actual description information includes the actual data value corresponding to the target field.
4. The method according to claim 1, characterized in that, After acquiring the data change characterization information, the method further includes: Based on the object identifier of the object to be used, query the first actual description information of the object to be used from the data supply platform; And / or, Before updating the database to be updated using the second actual description information corresponding to the object aggregation identifier, the method further includes: Based on the object aggregation identifier corresponding to the object to be used, query the second actual description information corresponding to the object aggregation identifier from the data supply platform.
5. The method according to claim 1, characterized in that, The database to be updated is periodically updated according to a preset time interval; The method further includes: When it is determined that the time interval between the current time and the last periodic update time of the database to be updated is lower than the preset time interval, and the time interval between the current time and the last periodic update time reaches the preset correction time interval, the third actual description information corresponding to the object aggregation identifier is obtained, and the database to be updated is updated using the third actual description information.
6. The method according to claim 1, characterized in that, Before acquiring the data change characterization information, the method further includes: Receive an object data change message; the object data change message carries the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used; Based on the object data change message, determine the data change representation information; The data change characterization information is stored in a preset storage space; The acquisition of data change characterization information includes: When the preset reading conditions are met, the data change characterization information is read from the preset storage space.
7. The method according to claim 1, characterized in that, The data update method is applied to the first device; the database to be updated is stored in the second device; and there is a data communication link between the first device and the second device.
8. A data update device, characterized in that, include: The first acquisition unit is used to acquire data change characterization information; The data change representation information carries the object identifier of the object to be used and the object aggregation identifier corresponding to the object to be used. The object to be used is resource data. The object aggregation identifier indicates the user to which the object to be used belongs. The data change representation information indicates that the data associated with the object to be used has changed. The first query unit is used to query the first database description information corresponding to the object identifier from the database to be updated. The first update unit is configured to update the database to be updated by using the second actual description information corresponding to the object aggregation identifier if it is determined that the first database description information is different from the first actual description information of the object to be used; the second actual description information includes the first actual description information, the second actual description information includes the object actual description information of at least one object to be aggregated, the users to which the objects of each object to be aggregated belong are the same, and the at least one object to be aggregated includes the object to be used.
9. An electronic device, characterized in that, The device includes: a processor and a memory; The memory is used to store instructions or computer programs; The processor is configured to execute the instructions or computer program in the memory to cause the electronic device to perform the method according to any one of claims 1-7.
10. A computer-readable medium, characterized in that, The computer-readable medium stores instructions or computer programs that, when executed on the device, cause the device to perform the method according to any one of claims 1-7.