An advertising attribution method and apparatus

By receiving real-time event data and performing partitioning and multi-threaded processing, the stability and accuracy issues of the advertising analysis system under high traffic surges have been resolved, enabling efficient advertising attribution and delivery strategy optimization.

CN119648301BActive Publication Date: 2025-11-28GUANGZHOU MENGQU INFORMATION TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411558260.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-01
Publication Date
2025-11-28
Estimated Expiration
2044-11-01

AI Technical Summary

Technical Problem

When faced with a surge in traffic, advertising analytics systems are prone to request timeouts, data loss, and processing errors, which can affect the efficiency and accuracy of ad attribution.

Method used

By receiving real-time event data, advertising attribution is performed based on partitioning conditions and thread processing mechanisms, and the results are stored using batch processing services to achieve load balancing and multi-threaded processing, thereby improving CPU performance utilization.

Benefits of technology

It improves the stability and reliability of the advertising analysis system, enhances the efficiency and accuracy of advertising attribution, and helps companies optimize their advertising strategies.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119648301B_ABST
    Figure CN119648301B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of data analysis, and discloses an advertisement attribution method and device. The method can be applied to an advertisement analysis system, and the method comprises the following steps: receiving real-time event data reported through an advertisement attribution service interface; the real-time event data comprises a plurality of message events; performing a partition operation on the real-time event data based on preset partition conditions to obtain a plurality of consumption tasks; each consumption task comprises at least one message event; performing an advertisement attribution operation on each consumption task based on a preset thread processing mechanism to obtain an advertisement attribution result corresponding to each consumption task; and storing all the advertisement attribution results into a target database corresponding to the advertisement analysis system based on a preset batch service. It can be seen that the application can enable the advertisement analysis system to efficiently cope with large-flow impact, thereby improving advertisement attribution efficiency and accuracy, and being beneficial to improving the analysis accuracy of advertisement delivery effect.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data analysis, and in particular to an advertisement attribution method and device. BACKGROUND

[0002] Advertisement attribution is to identify the contribution of each advertisement touch point (such as clicking on an advertisement, browsing a webpage, etc.) to user conversion behavior, thereby helping enterprises optimize advertisement placement strategies and improve advertisement placement effectiveness and return on investment.

[0003] In practical applications, advertisement attribution needs to process a large amount of real-time data. However, when the traffic related to advertisements surges, the advertisement analysis system needs to cope with large traffic surges. If the system does not have the ability to process a large number of requests in a timely manner, it is easy to cause request timeouts, data loss, processing errors, etc., thereby affecting the efficiency and accuracy of advertisement attribution.

[0004] Therefore, it is particularly important to propose a technical solution that can enable the advertisement analysis system to efficiently cope with large traffic surges, thereby improving the efficiency and accuracy of advertisement attribution, and improving the analysis accuracy of advertisement placement effectiveness. SUMMARY

[0005] The present application provides an advertisement attribution method and device, which can enable the advertisement analysis system to efficiently cope with large traffic surges, thereby improving the efficiency and accuracy of advertisement attribution, and being beneficial to improving the analysis accuracy of advertisement placement effectiveness.

[0006] To solve the above technical problems, the first aspect of the present application discloses an advertisement attribution method, which is applied to an advertisement analysis system, and the method comprises:

[0007] Receiving real-time event data reported through an advertisement attribution service interface; the real-time event data comprises a plurality of message events;

[0008] Performing a partition operation on the real-time event data based on a preset partition condition to obtain a plurality of consumption tasks; each consumption task comprises at least one message event;

[0009] Performing an advertisement attribution operation on each consumption task based on a preset thread processing mechanism to obtain an advertisement attribution result corresponding to each consumption task;

[0010] Storing all advertisement attribution results to a target database corresponding to the advertisement analysis system based on a preset batch service.

[0011] As an optional implementation manner, in the first aspect of the present application, before the advertisement attribution operation is performed on each consumption task based on the preset thread processing mechanism to obtain the advertisement attribution result corresponding to each consumption task, the method further comprises:

[0012] based on the reporting time sequence of each of the message events in the real-time event data, sequentially creating a linked list node corresponding to each of the message events, and sequentially inserting the linked list node corresponding to each of the message events into an event linked list corresponding to the advertisement analysis system;

[0013] wherein each of the linked list nodes corresponding to the message events comprises each of the message events and a processing state identifier corresponding to the message event, and when each of the linked list nodes is recorded into the event linked list, the processing state identifier of each of the message events is an unprocessed state identifier;

[0014] and in the process of performing the advertisement attribution operation on each of the consumption tasks based on the preset thread processing mechanism to obtain an advertisement attribution result corresponding to each of the consumption tasks, the method further comprises:

[0015] after detecting that the advertisement attribution operation is completed for any of the message events, modifying the processing state identifier corresponding to the message event to a processed state identifier in the event linked list.

[0016] As an optional implementation, in the first aspect of the application, the event linked list is provided with an ACK position; and the method further comprises:

[0017] based on the determined scanning sequence of the event linked list, sequentially reading the processing state identifier of each of the linked list nodes in the event linked list until the processing state identifier of the currently read linked list node is the unprocessed state identifier, and determining a linked list node corresponding to a linked list node read in sequence in advance as a target node;

[0018] determining the node position information corresponding to the target node as the ACK position corresponding to the event linked list; the ACK position is used to indicate that the node position indicated by the ACK position and all the message events corresponding to the node position before the node position have been processed;

[0019] when detecting that there is a processing condition inquiry request about the event linked list, generating ACK response information corresponding to the processing condition inquiry request according to the ACK position, and feeding back the ACK response information to an initiating end of the processing condition inquiry request.

[0020] As an optional implementation, in the first aspect of the application, the process of performing the advertisement attribution operation on each of the consumption tasks based on the preset thread processing mechanism to obtain an advertisement attribution result corresponding to each of the consumption tasks comprises:

[0021] scheduling each of the consumption tasks to a thread pool matched with the consumption task based on a task scheduling mechanism corresponding to the advertisement analysis system;

[0022] determining, for each of the thread pools, event processing logic corresponding to each of the message events in the consumption task to be processed by the thread pool;

[0023] performing, for each of the thread pools, an advertisement attribution operation on the consumption task based on the event processing logic corresponding to each of the message events in the consumption task to be processed by the thread pool, to obtain an advertisement attribution result corresponding to the consumption task.

[0024] As an optional implementation, in the first aspect of the present application, the scheduling each of the consumption tasks to a thread pool matched with the consumption task based on a task scheduling mechanism corresponding to the advertisement analysis system comprises:

[0025] obtaining a scheduling identifier type preset by a task scheduler corresponding to the advertisement analysis system;

[0026] obtaining a scheduling identifier corresponding to each of the consumption tasks according to the scheduling identifier type;

[0027] performing hash distribution on each of the consumption tasks according to the scheduling identifier corresponding to each of the consumption tasks, to schedule each of the consumption tasks to a thread pool matched with the scheduling identifier corresponding to the consumption task.

[0028] As an optional implementation, in the first aspect of the present application, the determining, for each of the thread pools, event processing logic corresponding to each of the message events in the consumption task to be processed by the thread pool comprises:

[0029] parsing each of the message events in the consumption task to be processed by the thread pool, to obtain an event type identifier corresponding to each of the message events;

[0030] determining, according to the event type identifier corresponding to each of the message events, event processing logic corresponding to the message event by the thread pool;

[0031] and, for each of the thread pools, the performing, based on the event processing logic corresponding to each of the message events in the consumption task to be processed by the thread pool, an advertisement attribution operation on the consumption task, to obtain an advertisement attribution result corresponding to the consumption task comprises:

[0032] According to the event processing logic and the attribution analysis information, an advertisement attribution operation is performed on each of the message events in the consumption task to obtain an event attribution result corresponding to each of the message events in the consumption task; each of the consumption tasks comprises an event attribution result corresponding to all the message events included in the consumption task.

[0033] According to the event processing logic and the attribution analysis information, an advertisement attribution operation is performed on each of the message events in the consumption task to obtain an event attribution result corresponding to each of the message events in the consumption task; each of the consumption tasks comprises an event attribution result corresponding to all the message events included in the consumption task.

[0034] As an optional implementation, in the first aspect of the application, the storing, by the batch accumulation service, of all the advertisement attribution results to the target database corresponding to the advertisement analysis system comprises:

[0035] The batch accumulation service is used to temporarily store each of the advertisement attribution results in a system memory corresponding to the advertisement analysis system.

[0036] The data quantity of the advertisement attribution results temporarily stored in the system memory is detected to determine whether the data quantity is greater than or equal to a preset batch processing quantity.

[0037] When it is detected that the data quantity of the advertisement attribution results temporarily stored in the system memory is greater than or equal to the batch processing quantity, all the advertisement attribution results temporarily stored in the system memory are written to the target database corresponding to the advertisement analysis system.

[0038] The second aspect of the application discloses an advertisement attribution device, which is applied to an advertisement analysis system and comprises:

[0039] The receiving module is configured to receive real-time event data reported through an advertisement attribution service interface; the real-time event data comprises a plurality of message events.

[0040] The partition module is configured to perform a partition operation on the real-time event data based on a preset partition condition to obtain a plurality of consumption tasks; each of the consumption tasks comprises at least one of the message events.

[0041] The attribution module is configured to perform an advertisement attribution operation on each of the consumption tasks based on a preset thread processing mechanism to obtain an advertisement attribution result corresponding to each of the consumption tasks.

[0042] The storage module is configured to store, by a batch accumulation service, all the advertisement attribution results to a target database corresponding to the advertisement analysis system.

[0043] As an optional implementation, in the second aspect of the present application, the device further comprises:

[0044] a node creation module, configured to create a linked list node corresponding to each of the message events in sequence based on the time sequence of reporting of each of the message events in the real-time event data, before the attribution module performs the advertisement attribution operation on each of the consumption tasks based on the preset thread processing mechanism to obtain the advertisement attribution result corresponding to each of the consumption tasks;

[0045] a data insertion module, configured to insert the linked list node corresponding to each of the message events into the event linked list corresponding to the advertisement analysis system in sequence;

[0046] wherein the linked list node corresponding to each of the message events comprises each of the message events and a processing state identifier corresponding to the message event; and the processing state identifier of each of the message events is an unprocessed state identifier when each of the linked list nodes is recorded into the event linked list;

[0047] and the device further comprises:

[0048] a modification module, configured to modify the processing state identifier corresponding to the message event to a processed state identifier in the event linked list after detecting that the advertisement attribution operation on any of the message events is completed during the process in which the attribution module performs the advertisement attribution operation on each of the consumption tasks based on the preset thread processing mechanism to obtain the advertisement attribution result corresponding to each of the consumption tasks.

[0049] As an optional implementation, in the second aspect of the present application, the event linked list is provided with an ACK position; and the device further comprises:

[0050] a reading module, configured to read the processing state identifier of each of the linked list nodes in the event linked list in sequence based on the determined scanning sequence corresponding to the event linked list, until the processing state identifier of the currently read linked list node is the unprocessed state identifier, and determine the linked list node corresponding to the linked list node with the read sequence first as a target node;

[0051] a determination module, configured to determine the node position information corresponding to the target node as the ACK position corresponding to the event linked list; the ACK position is used to indicate that all the message events corresponding to the node position indicated by the ACK position and before the node position have been processed;

[0052] A response module configured to, when detecting that there is a processing condition inquiry request about the event chain table, generate ACK response information corresponding to the processing condition inquiry request according to the ACK position, and feed back the ACK response information to an initiating end of the processing condition inquiry request.

[0053] As an optional implementation form, in the second aspect, the attribution module is configured to perform the advertisement attribution operation on each of the consumption tasks based on a preset thread processing mechanism, and the specific manner of obtaining the advertisement attribution result corresponding to each of the consumption tasks comprises:

[0054] scheduling each of the consumption tasks to a thread pool matched with the consumption task based on a task scheduling mechanism of the advertisement analysis system;

[0055] determining, for each of the thread pools, event processing logic corresponding to each of the message events in the consumption task to be processed by the thread pool;

[0056] performing, for each of the thread pools, the advertisement attribution operation on the consumption task based on the event processing logic corresponding to each of the message events in the consumption task to be processed by the thread pool, to obtain the advertisement attribution result corresponding to the consumption task.

[0057] As an optional implementation form, in the second aspect, the attribution module is configured to schedule each of the consumption tasks to a thread pool matched with the consumption task based on a task scheduling mechanism of the advertisement analysis system, and the specific manner comprises:

[0058] obtaining a scheduling identifier type preset by a task scheduler of the advertisement analysis system;

[0059] obtaining a scheduling identifier corresponding to each of the consumption tasks according to the scheduling identifier type;

[0060] performing hash distribution on each of the consumption tasks according to the scheduling identifier corresponding to each of the consumption tasks, to schedule each of the consumption tasks to a thread pool matched with the scheduling identifier corresponding to the consumption task.

[0061] As an optional implementation form, in the second aspect, the attribution module is configured to determine, for each of the thread pools, event processing logic corresponding to each of the message events in the consumption task to be processed by the thread pool, and the specific manner comprises:

[0062] parsing each of the message events in the consumption task to be processed by the thread pool to obtain an event type identifier corresponding to each of the message events;

[0063] According to the event type identifier corresponding to each of the message events, determine event processing logic corresponding to the message events for the thread pool;

[0064] According to the event processing logic corresponding to each of the message events in the consumption task to be processed by the thread pool, obtain attribution analysis information corresponding to the consumption task; the attribution analysis information includes one or more combinations of the following: reported device information corresponding to each of the message events, reported account information corresponding to each of the message events, and advertisement information corresponding to each of the message events;

[0065] According to the event processing logic corresponding to each of the message events in the consumption task to be processed by the thread pool, obtain attribution analysis information corresponding to the consumption task; the attribution analysis information includes one or more combinations of the following: reported device information corresponding to each of the message events, reported account information corresponding to each of the message events, and advertisement information corresponding to each of the message events;

[0066] According to the event processing logic and the attribution analysis information, perform advertisement attribution operations on each of the message events in the consumption task to obtain event attribution results corresponding to each of the message events in the consumption task; each of the consumption tasks includes event attribution results corresponding to all of the message events included in the consumption task.

[0067] As an optional implementation, in the second aspect of the present application, the specific manner in which the storage module stores all of the advertisement attribution results in the target database corresponding to the advertisement analysis system based on the preset batch service includes:

[0068] Based on the preset batch service, temporarily store each of the advertisement attribution results in the system memory corresponding to the advertisement analysis system;

[0069] Detect whether the data quantity of the advertisement attribution results temporarily stored in the system memory is greater than or equal to a preset batch processing quantity;

[0070] When it is detected that the data quantity of the advertisement attribution results temporarily stored in the system memory is greater than or equal to the batch processing quantity, write all of the advertisement attribution results temporarily stored in the system memory to the target database corresponding to the advertisement analysis system.

[0071] The third aspect of the present application discloses another advertisement attribution device, which includes:

[0072] A memory in which an executable program code is stored;

[0073] A processor coupled to the memory;

[0074] The processor invokes the executable program code stored in the memory to execute part or all steps of the advertisement attribution method disclosed in the first aspect of the present application.

[0075] The fourth aspect of the present application discloses a computer storage medium storing computer instructions, which are invoked to execute part or all steps of the advertisement attribution method disclosed in the first aspect of the present application.

[0076] Compared with the prior art, the present application has the following beneficial effects:

[0077] In the present application, real-time event data reported through an advertisement attribution service interface is received; the real-time event data includes multiple message events; based on a preset partition condition, a partition operation is performed on the real-time event data to obtain multiple consumption tasks; each consumption task includes at least one message event; based on a preset thread processing mechanism, an advertisement attribution operation is performed on each consumption task to obtain an advertisement attribution result corresponding to each consumption task; based on a preset batch service, all advertisement attribution results are stored in a target database corresponding to an advertisement analysis system. As can be seen, by implementing the present application, real-time event data reported through an advertisement attribution service interface can be received first, then the real-time event data is partitioned based on a partition condition to obtain multiple consumption tasks, then an advertisement attribution operation is performed on each consumption task based on a thread processing mechanism to obtain a corresponding advertisement attribution result, and then the advertisement attribution result is stored in a corresponding database through a batch service, load balancing can be achieved through partitioning operation, message events can be effectively distributed, message events can be processed through a multi-thread processing mode, the utilization rate of CPU performance can be improved, thereby improving throughput, so that the advertisement analysis system can efficiently cope with large traffic impact, thereby facilitating to improve the stability and reliability of the advertisement analysis system, at the same time, the processing efficiency of consumption events can be improved through orderly processing of consumption events, thereby improving the advertisement attribution efficiency and accuracy, thereby facilitating to improve the analysis efficiency and accuracy of advertisement delivery effect, thereby facilitating to help enterprises optimize advertisement delivery strategies. BRIEF DESCRIPTION OF DRAWINGS

[0078] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.

[0079] Figure 1 is a flowchart of an advertisement attribution method disclosed by an embodiment of the present application;

[0080] Figure 2is a flow diagram of another advertising attribution method disclosed by the embodiment of the present application;

[0081] Figure 3 is a flow diagram of yet another advertising attribution method disclosed by the embodiment of the present application;

[0082] Figure 4 is a structural diagram of an advertising attribution device disclosed by the embodiment of the present application;

[0083] Figure 5 is a structural diagram of another advertising attribution device disclosed by the embodiment of the present application;

[0084] Figure 6 is a structural diagram of yet another advertising attribution device disclosed by the embodiment of the present application. DETAILED DESCRIPTION

[0085] In order to enable persons skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by persons skilled in the art without creative labor fall within the scope of protection of the present application.

[0086] The terms "first", "second", and the like in the specification and claims of the present application and the above-mentioned drawings are used to distinguish different objects, and are not used to describe a specific order. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, device, product, or end including a series of steps or units is not limited to the listed steps or units, but can optionally include steps or units not listed, or can optionally include other steps or units inherent to the process, method, product, or end.

[0087] Reference herein to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the present application. The appearance of the phrase in various places in the specification does not necessarily all refer to the same embodiment, nor does it necessarily refer to a separate or alternative embodiment. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with each other.

[0088] The application discloses an advertisement attribution method and device, which can receive real-time event data reported through an advertisement attribution service interface first, partition the real-time event data based on partition conditions, guide a plurality of consumption tasks, perform advertisement attribution on each consumption task based on a thread processing mechanism, obtain corresponding advertisement attribution results, and store the advertisement attribution results in a corresponding database through a batch service, so that load balancing can be realized through partition operation, message events can be effectively distributed, the CPU performance utilization rate can be improved through a multi-thread processing mode to improve the throughput, so that the advertisement analysis system can efficiently cope with large traffic impact, thereby helping to improve the stability and reliability of the advertisement analysis system, and the processing efficiency of consumption events can be improved through orderly processing of the consumption events, so that the advertisement attribution efficiency and accuracy are improved, thereby helping to improve the analysis efficiency and accuracy of the advertisement delivery effect, and helping to help enterprises optimize the advertisement delivery strategy.

[0089] Embodiment one

[0090] Please refer to Figure 1 , Figure 1 is a flowchart of an advertisement attribution method disclosed by the embodiment of the application. Wherein, Figure 1 The advertisement attribution method described can be applied to an advertisement attribution device, which can include one of an advertisement attribution terminal, an advertisement attribution equipment, an advertisement attribution system and a server, wherein the server can include a local server or a cloud server, and the embodiment of the application does not limit the server; the method can also be applied to an advertisement analysis system, and further, the advertisement analysis system can be used for analyzing advertisement business, and the embodiment of the application does not limit the advertisement analysis system. As shown in the figure, Figure 1 The advertisement attribution method can include the following operations:

[0091] 101, receiving real-time event data reported through an advertisement attribution service interface.

[0092] In the embodiment of the application, the real-time event data can include a plurality of message events; further, the real-time event data reported by the advertisement attribution service interface can include message events reported by a plurality of terminals through the advertisement attribution service interface, and the embodiment of the application does not limit the real-time event data; further optionally, when the terminal reports the message event, a corresponding event type identifier can be set for each message event, further optionally, the event type identifier can include one or a combination of a plurality of registration event type identifiers, login event type identifiers, click event type identifiers, browsing event type identifiers, closing event type identifiers and purchase event type identifiers, or can include other event type identifiers related to advertisement business, and the embodiment of the application does not limit the event type identifier; for example, Figure 3is a flow diagram of another advertisement attribution method disclosed by the embodiments of the present application, as shown in Figure 3 The real-time event data can include message events (such as registration event A and login event A) from terminal A and terminal B, and the embodiments of the present application are not limited.

[0093] 102. Based on the preset partition condition, performing partition operation on the real-time event data to obtain a plurality of consumption tasks.

[0094] In the embodiments of the present application, each consumption task includes at least one message event. The above-mentioned partition operation can belong to a load balancing technology; alternatively, step 102 can be specifically: obtaining the real-time usage of a plurality of processing units in the advertisement analysis system, and according to the real-time usage of the processing units, evenly distributing the real-time event data to different processing units to realize partitioning of the real-time event data, obtaining grouped data corresponding to the plurality of processing units, and determining each group of partitioned data as a consumption task, and the embodiments of the present application are not limited; wherein the processing unit can be a computing unit capable of performing advertisement attribution on the message event, for example: a server, and the embodiments of the present application are not limited.

[0095] In the embodiments of the present application, as another optional implementation, the real-time event data can be partitioned by the message passing system corresponding to the advertisement analysis system to obtain a plurality of consumption tasks, wherein, for example, as shown in Figure 5 The message passing system can be a Kafka system, and the embodiments of the present application are not limited.

[0096] 103. Based on the preset thread processing mechanism, performing advertisement attribution operation on each consumption task to obtain an advertisement attribution result corresponding to each consumption task.

[0097] In the embodiments of the present application, the advertisement attribution result can be an analysis result of a user of a reporting terminal corresponding to each message event in each consumption task about an advertisement service; wherein, alternatively, the advertisement attribution result corresponding to each consumption task can include one or a combination of a plurality of combinations of advertisement attribution attribution, advertisement delivery data, user behavior data and conversion data corresponding to each message event, and the embodiments of the present application are not limited.

[0098] 104. Based on the preset batch service, storing all advertisement attribution results to a target database corresponding to the advertisement analysis system.

[0099] In the embodiments of the present application, the target database corresponding to the advertisement analysis system can be used to record the advertisement attribution result, and can also be used to record the preset advertisement information (such as advertisement channel information), and the embodiments of the present application are not limited.

[0100] As can be seen, the method described in the embodiments of the present invention can first receive real-time event data reported through the advertising attribution service interface, then partition the real-time event data based on partitioning conditions, assign multiple consumption tasks, and then perform advertising attribution on each consumption task based on a thread processing mechanism to obtain the corresponding advertising attribution results. Finally, the advertising attribution results are stored in the corresponding database through a batch processing service. This method can achieve load balancing through partitioning operations, effectively distribute message events, and improve CPU performance utilization through multi-threaded processing, thereby increasing throughput. This allows the advertising analysis system to efficiently cope with large traffic surges, thus improving the stability and reliability of the advertising analysis system. Furthermore, it can improve the processing efficiency of consumption events through orderly processing, thereby improving the efficiency and accuracy of advertising attribution, which in turn improves the efficiency and accuracy of advertising performance analysis, ultimately helping enterprises optimize their advertising strategies.

[0101] In an optional embodiment, before performing advertising attribution operations on each consumption task based on a preset thread processing mechanism to obtain the advertising attribution results corresponding to each consumption task, the method may further include the following operations:

[0102] Based on the reporting time order of each message event in the real-time event data, a linked list node corresponding to each message event is created sequentially, and the linked list node corresponding to each message event is inserted sequentially into the event linked list corresponding to the advertising analysis system.

[0103] Each linked list node corresponding to a message event includes each message event and its corresponding processing status identifier; and when each linked list node is recorded in the event linked list, the processing status identifier of each message event is an unprocessed status identifier.

[0104] Optionally, the event list corresponding to the advertising analysis system can be an event list related to the current advertising business in the advertising analysis system, which is not limited in this embodiment of the invention; furthermore, the event list can be a linear list, which is not limited in this embodiment of the invention.

[0105] For example, such as Figure 5 As shown, before message events enter the thread pool, they can be first added to a linked list, such as... Figure 5 The event linked list shown can include events 1-5 and five linked list nodes corresponding to the processing status identifiers of each event. The processing status identifiers can be, for example: Figure 5 The "Processing Y" or "Processing N" indicated are either processed status indicators or unprocessed status indicators. When an event list is inserted into a linked list node, the default processing status indicator for that linked list node is "Processing N". This embodiment of the invention does not impose any limitations on this.

[0106] As can be seen, this optional embodiment can create a linked list node corresponding to each message event based on the event reporting time order, and insert the linked list node containing the message event and the corresponding processing status identifier into the event linked list. By setting the event linked list and recording the processing status of the event, it can ensure that all received message events are not lost or omitted during the processing in the multi-threaded processing mode while recording message events in an orderly manner. This improves the accuracy and reliability of message event recording, and further helps to improve the reliability of the process of attribution processing for each message event.

[0107] In this optional embodiment, optionally, during the process of performing advertising attribution operations on each consumption task based on a preset thread processing mechanism to obtain the advertising attribution results corresponding to each consumption task, the method may further include the following operations:

[0108] After detecting that the advertising attribution operation for any message event has been completed, the processing status flag corresponding to that message event is modified to the processed status flag in the event chain.

[0109] For example, such as Figure 5 As shown, if it is detected that the advertising attribution operation for event 4 has been completed, the processing status identifier of event 4 is changed to "processing Y". This embodiment of the invention does not limit the scope of the invention.

[0110] As can be seen, this optional embodiment can also modify the processing status identifier of the message event to the processed status identifier after detecting that the advertising attribution operation for any message event has been completed. This can update the processing status of the message event in the event chain in a timely manner, further improving the accuracy and timeliness of message event recording, and facilitating more efficient management of message event processing through the event chain.

[0111] In this optional embodiment, the event list may optionally be set with an ACK position; and the method may further include the following operations:

[0112] Based on the determined scanning order of the event linked list, the processing status identifier of each linked list node in the event linked list is read in sequence until the processing status identifier of the currently read linked list node is an unprocessed status identifier, and the linked list node whose reading order is earlier is determined as the target node.

[0113] The node position information corresponding to the target node is determined as the ACK position corresponding to the event chain; the ACK position is used to indicate that the node position indicated by the ACK position and all message events corresponding to the node position before that position have been processed;

[0114] When a request for information on the processing status of the event chain is detected, an ACK response is generated based on the ACK position, and the ACK response is sent back to the initiator of the request.

[0115] For example, when the event list is a linear list, the scanning order can be from the head to the tail of the list; when the event list is a non-linear list, the scanning order can be determined by the developer, and this embodiment of the invention does not limit it.

[0116] The ACK (Acknowledge character) response information includes at least the ACK position mentioned above, and may also include other information that needs to be responded to; however, this embodiment of the invention does not impose any limitations.

[0117] It should be noted that because this advertising attribution method uses a multi-threaded processing mode, multiple message events may be processed simultaneously. However, the time to complete the advertising attribution operation for each message event may differ, and there may be a sequential order. For example, the following might occur: Figure 5 The event list states shown are as follows: the processing status identifiers for events 1-5 are YYNYN respectively. Figure 5 The linked list node corresponding to event 2 is the target node mentioned above, not the linked list node corresponding to event 4. That is, the ACK position in this event linked list currently points to the linked list node corresponding to event 2, meaning the ACK position is equivalent to... Figure 5 The ACK position in the message indicates that all events prior to event 2 and including event 2 itself have been processed, thus enabling an ACK response to ensure that reported message events are not lost or omitted.

[0118] As can be seen, this optional embodiment can also sequentially read the processing status identifier of each linked list node in the event linked list based on the scanning order until the currently read processing status identifier is an unprocessed status identifier, and determine the linked list node that was read first in the linked list node order as the target node. Then, the node position information of the target node is used to determine the ACK position, indicating that the node position indicated by the ACK position and all message events corresponding to the node position before that node position have been processed. If a processing status inquiry request is detected, ACK response information is generated based on the ACK position to feed back the response information to the request initiator. By recording the ACK position, the accuracy and flexibility of recording the event processing status in the event linked list can be improved, which is conducive to improving the feedback efficiency and accuracy of inquiry requests. Furthermore, it can ensure that message events are not lost or omitted during the processing, which is conducive to improving the reliability of the process of attribution processing for each message event.

[0119] In another optional embodiment, the advertisement analysis system can be deployed based on k8s (kubernetes) containerization technology. This can enable rapid horizontal expansion in practice based on containerization technology, enabling the advertisement analysis system to more efficiently cope with large traffic surges and thus improve advertisement attribution efficiency.

[0120] In yet another optional embodiment, the advertisement analysis system can be developed based on the Golang language, without limitation of the embodiments of the present application. This can enable the advertisement analysis system to have high performance, easy readability, and easy use.

[0121] Embodiment Two

[0122] Please refer to Figure 2 , Figure 2 is a flowchart of an advertisement attribution method disclosed by the embodiments of the present application. Among them, Figure 2 The advertisement attribution method described can be applied to an advertisement attribution device, which can include one of an advertisement attribution terminal, an advertisement attribution equipment, an advertisement attribution system, and a server, wherein the server can include a local server or a cloud server, without limitation of the embodiments of the present application; the method can also be applied to an advertisement analysis system, further, the advertisement analysis system can be used for analyzing advertisement business, without limitation of the embodiments of the present application. As Figure 2 shown, the advertisement attribution method can include the following operations:

[0123] 201, receiving real-time event data reported through an advertisement attribution service interface.

[0124] In the embodiments of the present application, the real-time event data includes a plurality of message events.

[0125] 202, performing partitioning operation on the real-time event data based on a preset partitioning condition, to obtain a plurality of consumption tasks.

[0126] In the embodiments of the present application, each consumption task includes at least one message event.

[0127] 203, based on a task scheduling mechanism corresponding to the advertisement analysis system, scheduling each consumption task to a thread pool matched with the consumption task.

[0128] In the embodiments of the present application, as Figure 5 shown, each thread pool can process multiple threads, i.e., can process multiple consumption tasks, without limitation of the embodiments of the present application.

[0129] 204, for each thread pool, determining event processing logic corresponding to each message event in the consumption task to be processed by the thread pool.

[0130] In the embodiment of the present application, the event processing logic can be code logic or event processing flow logic, and the embodiment of the present application is not limited.

[0131] 205. For each thread pool, according to the event processing logic corresponding to each message event in the consumption task required to be processed by the thread pool, the consumption task is executed to perform an advertisement attribution operation, and an advertisement attribution result corresponding to the consumption task is obtained.

[0132] 206. Based on the preset batch service, all advertisement attribution results are stored in the target database corresponding to the advertisement analysis system.

[0133] In the embodiment of the present application, for the other detailed description of steps 201-202 and step 206, please refer to the detailed description of steps 101-102 and step 104 in embodiment one, and the embodiment of the present application will not be repeated.

[0134] It can be seen that the method described in the embodiment of the present application can first receive real-time event data reported through the advertisement attribution service interface, then partition the real-time event data based on the partition condition, and then perform advertisement attribution on each consumption task based on the thread processing mechanism to obtain the corresponding advertisement attribution result. Then, through the batch service, the advertisement attribution result is stored in the corresponding database. Through the partition operation, load balancing can be achieved, the message event can be effectively distributed, and the message event can be processed through the multi-thread processing mode, which can improve the utilization rate of CPU performance, thereby improving the throughput. The advertisement analysis system can efficiently cope with large traffic impact, thereby helping to improve the stability and reliability of the advertisement analysis system. At the same time, the processing efficiency of the consumption event can be improved by orderly processing the consumption event, thereby improving the advertisement attribution efficiency and accuracy, and thereby helping to improve the analysis efficiency and analysis accuracy of the advertisement delivery effect, thereby helping enterprises to optimize the advertisement delivery strategy. In addition, each consumption task can be scheduled to a thread pool matched with the task based on the task scheduling mechanism, and then the event processing logic corresponding to each message event is determined, and then the advertisement attribution operation is performed on the consumption task based on the event processing logic corresponding to each message event to obtain the advertisement attribution result. On the basis of improving the scheduling accuracy of the consumption task, the multi-thread processing efficiency and processing accuracy for the message event can be improved, thereby helping to further improve the advertisement attribution efficiency and advertisement attribution accuracy for the consumption event.

[0135] In an optional embodiment, based on the task scheduling mechanism corresponding to the advertisement analysis system, each consumption task is respectively scheduled to a thread pool matched with the consumption task, which can include the following operations:

[0136] obtain a scheduling identifier type preset by a task scheduler corresponding to the advertisement analysis system;

[0137] According to the scheduling identifier type, obtain a scheduling identifier corresponding to each consumption task;

[0138] According to the scheduling identifier corresponding to each consumption task, perform hash distribution on each consumption task to schedule each consumption task to a thread pool matched with the scheduling identifier corresponding to the consumption task.

[0139] Optionally, the scheduling identifier type can include one or more combinations of a device identifier type (such as a device code) of a reporting device corresponding to a message event, a user identifier type (such as a user ID) of an account logged in by the reporting device corresponding to the message event, and an advertisement channel identifier type corresponding to the message event, and can also include other identifier types that can be used to distinguish the message event in the consumption task, which is not limited by the embodiments of the present application.

[0140] It can be seen that the optional embodiment can obtain a scheduling identifier corresponding to each consumption task according to the scheduling identifier type preset by the task scheduler, and then perform hash distribution on each consumption task according to the scheduling identifier corresponding to each consumption task to schedule each consumption task to a thread pool matched with the scheduling identifier corresponding to the consumption task, thereby improving the scheduling accuracy of the consumption task and the message event, facilitating the allocation of the message event to a more suitable thread pool, and further facilitating the more targeted processing of the message event, and further improving the advertisement attribution efficiency and the advertisement attribution accuracy for the consumption event.

[0141] In another optional embodiment, for each thread pool, determining an event processing logic corresponding to each message event in the consumption task to be processed by the thread pool can include the following operations:

[0142] Parsing each message event in the consumption task to be processed by the thread pool to obtain an event type identifier corresponding to each message event;

[0143] According to the event type identifier corresponding to each message event, determine the event processing logic corresponding to the message event for the thread pool.

[0144] For example, as shown in Figure 5 The event type identifier corresponding to each message event obtained by parsing each message event can be a registration event type identifier or a login event type identifier, and the corresponding event processing logic is determined according to the above event type identifier.

[0145] It can be seen that the optional embodiment can determine the event processing logic corresponding to the message event according to the event type identifier corresponding to each message event parsed, can improve the analysis accuracy of the message event, thereby improving the determination accuracy of the event processing logic corresponding to the message event, and is conducive to the advertising attribution accuracy for the consumption event.

[0146] In the optional embodiment, optionally, for each thread pool, according to the event processing logic corresponding to each message event in the consumption task to be processed by the thread pool, the advertising attribution operation is performed on the consumption task to obtain the advertising attribution result corresponding to the consumption task, which can include the following operations:

[0147] According to the event processing logic corresponding to each message event in the consumption task to be processed by the thread pool, the attribution analysis information corresponding to the consumption task is obtained; the attribution analysis information includes one or more combinations of the reporting device information corresponding to each message event, the reporting account information corresponding to each message event, and the advertising information corresponding to each message event.

[0148] According to the event processing logic and the attribution analysis information, the advertising attribution operation is performed on each message event in the consumption task to obtain the event attribution result corresponding to each message event in the consumption task; wherein each consumption task includes the event attribution result corresponding to all message events included in the consumption task.

[0149] It can be seen that the optional embodiment can further obtain attribution analysis information according to the event processing logic, and perform advertising attribution on the message event according to the event processing logic and the attribution analysis information, which can further improve the advertising attribution accuracy for the consumption event, thereby facilitating the improvement of the accuracy of the advertising attribution result.

[0150] In the optional embodiment, optionally, for each thread pool, according to the event processing logic and the attribution analysis information, the advertising attribution operation is performed on each message event in the consumption task to obtain the event attribution result corresponding to each message event in the consumption task, which can include the following operations:

[0151] Obtain the reference analysis information required by the thread pool from the target database corresponding to the advertising analysis system;

[0152] Compare the attribution analysis information and the reference analysis information to obtain an information comparison result;

[0153] According to the event processing logic and the information comparison result, the advertising attribution operation is performed on each message event in the consumption task to obtain the event attribution result corresponding to each message event in the consumption task.

[0154] It can be seen that the optional embodiment can further obtain reference analysis information, compare the attribution analysis information with the reference analysis information to obtain an information comparison result, and perform advertisement attribution on the message event in combination with the information comparison result, thereby further improving the accuracy of advertisement attribution for the consumption event.

[0155] Optionally, the method can further include the following operations:

[0156] According to the all-event processing logic, determine the key reference information commonly required by the advertisement attribution operation in the advertisement analysis system for the current advertisement business;

[0157] Before performing the advertisement attribution operation on each consumption task based on the preset thread processing mechanism to obtain the advertisement attribution result corresponding to each consumption task, obtain all the key reference information from the target data corresponding to the advertisement analysis system and locally cache all the key reference information.

[0158] The reference analysis information and the key reference information can have an intersection, and when there is an intersection, the corresponding key reference information can be directly read from the local cache as the reference analysis information without multiple accesses to the database. For example, if each message event in the current advertisement business needs to obtain advertisement channel information in the target database for advertisement attribution processing, the advertisement channel information can be locally cached in advance, and the embodiment of the application is not limited.

[0159] It can be seen that the optional embodiment can further locally cache the key reference information required for processing the current advertisement business in advance, thereby avoiding frequent access to the database for these necessary information, reducing the network bandwidth occupation and the database access frequency, and further improving the consumption event processing efficiency.

[0160] In yet another optional embodiment, based on the preset batch service, storing all the advertisement attribution results to the target database corresponding to the advertisement analysis system can include the following operations:

[0161] Based on the preset batch service, temporarily storing each advertisement attribution result in the system memory corresponding to the advertisement analysis system;

[0162] Detecting whether the data quantity of the advertisement attribution results temporarily stored in the system memory is greater than or equal to the preset batch processing quantity;

[0163] When it is detected that the data quantity of the advertisement attribution results temporarily stored in the system memory is greater than or equal to the batch processing quantity, writing all the advertisement attribution results temporarily stored in the system memory to the target database corresponding to the advertisement analysis system.

[0164] It can be seen that the optional embodiment can temporarily store multiple advertising attribution results in the system memory based on the batch service, and when the amount of data temporarily stored in the system memory is greater than or equal to the preset batch processing amount, the temporarily stored advertising attribution results are written into the target database in batches, so that the database access frequency is reduced, the database burden is reduced, the storage efficiency of the advertising attribution results is improved, and the operation efficiency of the advertising analysis system is improved.

[0165] Embodiment three

[0166] Please refer to Figure 4 , Figure 4 is a structural schematic diagram of an advertising attribution device disclosed by an embodiment of the application. Wherein, Figure 4 The advertising attribution device described can include one of an advertising attribution terminal, an advertising attribution equipment, an advertising attribution system and a server, wherein the server can include a local server or a cloud server, and the embodiment of the application does not limit it; the device can be applied to an advertising analysis system, and further, the advertising analysis system can be used for analyzing advertising business, and the embodiment of the application does not limit it. As shown in the figure, Figure 4 The advertising attribution device can include:

[0167] The receiving module 301 is configured to receive real-time event data reported through an advertising attribution service interface; the real-time event data includes multiple message events;

[0168] The partition module 302 is configured to perform a partition operation on the real-time event data based on a preset partition condition, to obtain multiple consumption tasks; each consumption task includes at least one message event;

[0169] The attribution module 303 is configured to perform an advertising attribution operation on each consumption task based on a preset thread processing mechanism, to obtain an advertising attribution result corresponding to each consumption task;

[0170] The storage module 304 is configured to store all advertising attribution results into a target database corresponding to the advertising analysis system based on a preset batch service.

[0171] It can be seen that the device described in the embodiment of the application can first receive real-time event data reported through an advertising attribution service interface, then partition the real-time event data based on partition conditions, guide multiple consumption tasks, then perform advertising attribution on each consumption task based on a thread processing mechanism to obtain corresponding advertising attribution results, and then store the advertising attribution results in a corresponding database through a batch service. Load balancing can be achieved through partitioning, message events can be effectively distributed, and message events can be processed through a multi-thread processing mode, so as to improve the utilization rate of CPU performance and thus improve throughput, so that the advertising analysis system can efficiently cope with large traffic impact, thereby helping to improve the stability and reliability of the advertising analysis system. In addition, the processing efficiency of consumption events can be improved through orderly processing of consumption events, so as to improve the advertising attribution efficiency and accuracy, thereby helping to improve the analysis efficiency and accuracy of advertising delivery effect, and thereby helping to help enterprises optimize advertising delivery strategies.

[0172] In an optional embodiment, as shown in Figure 5 the device can further include:

[0173] The node creation module 305 is configured to, before the attribution module 303 performs advertising attribution on each consumption task based on the preset thread processing mechanism to obtain the advertising attribution result corresponding to each consumption task, sequentially create a linked list node corresponding to each message event based on the reporting time sequence of each message event in the real-time event data.

[0174] The data insertion module 306 is configured to sequentially insert the linked list node corresponding to each message event into the event linked list corresponding to the advertising analysis system.

[0175] The linked list node corresponding to each message event includes each message event and a processing state identifier corresponding to the message event, and the processing state identifier of each message event is an unprocessed state identifier when each linked list node is recorded to the event linked list.

[0176] In addition, as shown in Figure 5 the device can further include:

[0177] The modification module 307 is configured to, during the process in which the attribution module 303 performs advertising attribution on each consumption task based on the preset thread processing mechanism to obtain the advertising attribution result corresponding to each consumption task, after detecting that the advertising attribution operation on any message event is completed, modify the processing state identifier corresponding to the message event to a processed state identifier in the event linked list.

[0178] It can be seen that the apparatus described in the optional embodiment can create the linked list node corresponding to each message event based on the time sequence of event reporting, and insert the linked list node containing the message event and the corresponding processing status identifier into the event linked list, so as to ensure that all received message events will not be lost or missed in the processing process in the multi-thread processing mode while recording the message events in order, thereby improving the recording accuracy and reliability of the message events, and further improving the reliability of the process of attribution processing for each message event; and the processing status identifier corresponding to the message event can be modified to the processed status identifier after detecting that the advertisement attribution operation for any message event is completed, so as to update the processing status of the message event in the event linked list in time, further improve the recording accuracy and timeliness of the message events, and facilitate more efficient management of the message event processing situation through the event linked list.

[0179] In the optional embodiment, optionally, the event linked list is provided with an ACK position; and as shown in the optional embodiment, the apparatus can further include: Figure 5

[0180] The reading module 308 is configured to read the processing status identifiers of each linked list node in the event linked list in sequence based on the determined scanning sequence corresponding to the event linked list, until the processing status identifier of the currently read linked list node is the unprocessed status identifier, and determine the linked list node corresponding to the linked list node read in the sequence in advance as the target node;

[0181] The determining module 309 is configured to determine the node position information corresponding to the target node as the ACK position corresponding to the event linked list; the ACK position is used to indicate that all message events corresponding to the node position indicated by the ACK position and before the node position have been processed;

[0182] The responding module 310 is configured to, when detecting that there is a processing situation inquiry request about the event linked list, generate the ACK response information corresponding to the processing situation inquiry request according to the ACK position, and feed back the ACK response information to the initiator of the processing situation inquiry request.

[0183] ​It can be seen that the apparatus described in the optional embodiment can also read the processing status identifier of each chain table node in the event chain table in turn based on the scanning order until the currently read processing status identifier is the unprocessed status identifier, determine the chain table node corresponding to the read order before the chain table node as the target node, and determine the node position information of the target node as the ACK position to indicate that the node position indicated by the ACK position and all message events corresponding to the node position before the node position have been processed. If it is detected that there is a processing condition inquiry request, the ACK response information is generated according to the ACK position to feed back the response information to the request initiating end. The recording accuracy and flexibility of the event processing condition in the event chain table can be improved by recording the ACK position, thereby facilitating the improvement of the feedback efficiency and feedback accuracy of the inquiry request, and further ensuring that the message event will not be lost or missed in the processing process, thereby facilitating the improvement of the reliability of the process of attribution processing for each message event.

[0184] In another optional embodiment, the attribution module 303 performs the advertisement attribution operation on each consumption task based on the preset thread processing mechanism. The specific manner in which the attribution module 303 obtains the advertisement attribution result corresponding to each consumption task can include:

[0185] Based on the task scheduling mechanism corresponding to the advertisement analysis system, each consumption task is scheduled to the thread pool matched with the consumption task.

[0186] For each thread pool, the event processing logic corresponding to each message event in the consumption task required to be processed by the thread pool is determined.

[0187] For each thread pool, the advertisement attribution operation is performed on the consumption task according to the event processing logic corresponding to each message event in the consumption task required to be processed by the thread pool, and the advertisement attribution result corresponding to the consumption task is obtained.

[0188] It can be seen that the apparatus described in the optional embodiment can first schedule each consumption task to the thread pool matched with the task based on the task scheduling mechanism, then determine the event processing logic corresponding to each message event, and then perform the advertisement attribution operation on the consumption task based on the event processing logic corresponding to each message event to obtain the advertisement attribution result. The multi-thread processing efficiency and processing accuracy for the message event can be improved on the basis of improving the scheduling accuracy of the consumption task, thereby facilitating the further improvement of the advertisement attribution efficiency and advertisement attribution accuracy for the consumption event.

[0189] In the optional embodiment, optionally, the specific manner in which the attribution module 303 schedules each consumption task to the thread pool matched with the consumption task based on the task scheduling mechanism corresponding to the advertisement analysis system can include:

[0190] obtain a scheduling identifier type preset by a task scheduler corresponding to the advertisement analysis system;

[0191] According to the scheduling identifier type, obtain a scheduling identifier corresponding to each consumption task;

[0192] According to the scheduling identifier corresponding to each consumption task, perform hash distribution on each consumption task to schedule each consumption task to a thread pool matched with the scheduling identifier corresponding to the consumption task.

[0193] It can be seen that the apparatus described in the optional embodiment can also obtain a scheduling identifier corresponding to each consumption task according to the scheduling identifier type preset by the task scheduler, and perform hash distribution on each consumption task according to the scheduling identifier corresponding to each consumption task to schedule each consumption task to a thread pool matched with the scheduling identifier corresponding to the consumption task, which can improve the scheduling accuracy of consumption tasks and message events, thereby facilitating the allocation of message events to more suitable thread pools, further facilitating the more targeted processing of message events, and further improving the advertisement attribution efficiency and accuracy for consumption events.

[0194] In the optional embodiment, optionally, for each thread pool, the specific manner in which the attribution module 303 determines the specific event processing logic corresponding to each message event in the consumption task to be processed by the thread pool can include:

[0195] Parsing each message event in the consumption task to be processed by the thread pool to obtain an event type identifier corresponding to each message event;

[0196] According to the event type identifier corresponding to each message event, determine the event processing logic corresponding to the message event for the thread pool;

[0197] In addition, for each thread pool, the specific manner in which the attribution module 303 performs an advertisement attribution operation on the consumption task according to the event processing logic corresponding to each message event in the consumption task to be processed by the thread pool to obtain an advertisement attribution result corresponding to the consumption task can include:

[0198] According to the event processing logic corresponding to each message event in the consumption task to be processed by the thread pool, obtain attribution analysis information corresponding to the consumption task; the attribution analysis information includes one or more combinations of report device information corresponding to each message event, report account information corresponding to each message event, and advertisement information corresponding to each message event;

[0199] According to the event processing logic and the attribution analysis information, an advertisement attribution operation is performed on each message event in the consumption task to obtain an event attribution result corresponding to each message event in the consumption task; wherein each consumption task includes the event attribution result corresponding to all message events included in the consumption task.

[0200] It can be seen that the apparatus described in the optional embodiment can also determine the event processing logic corresponding to the message event according to the event type identifier corresponding to each message event obtained through analysis, improve the analysis accuracy of the message event, thereby improving the determination accuracy of the event processing logic corresponding to the message event, and further improving the advertisement attribution accuracy for the consumption event; and can also obtain the attribution analysis information according to the event processing logic, and perform the advertisement attribution on the message event according to the event processing logic and the attribution analysis information, thereby further improving the advertisement attribution accuracy for the consumption event, and improving the accuracy of the advertisement attribution result.

[0201] In yet another optional embodiment, the storage module 304 can store all the advertisement attribution results to the specific target database of the advertisement analysis system based on the preset batch service in the following manner:

[0202] temporarily store each advertisement attribution result in the system memory of the advertisement analysis system based on the preset batch service;

[0203] detect whether the data quantity of the advertisement attribution results temporarily stored in the system memory is greater than or equal to the preset batch processing quantity;

[0204] when it is detected that the data quantity of the advertisement attribution results temporarily stored in the system memory is greater than or equal to the batch processing quantity, write all the advertisement attribution results temporarily stored in the system memory to the target database of the advertisement analysis system.

[0205] It can be seen that the apparatus described in the optional embodiment can temporarily store multiple advertisement attribution results in the system memory based on the batch service, and when the data quantity temporarily stored in the system memory is greater than or equal to the preset batch processing quantity, write the temporarily stored advertisement attribution results in batches to the target database, thereby reducing the database access frequency, reducing the database burden, improving the storage efficiency of the advertisement attribution result, and further improving the operation efficiency of the advertisement analysis system.

[0206] Embodiment Four

[0207] Please refer to Figure 6 , Figure 6 is a structural schematic diagram of another advertisement attribution apparatus disclosed in the embodiments of the present application. As shown in Figure 6 , the advertisement attribution apparatus can include:

[0208] a memory 401 storing executable program codes;

[0209] a processor 402 coupled with the memory 401;

[0210] The processor 402 invokes the executable program codes stored in the memory 401 to perform part or all of the steps of the advertisement attribution method described in the embodiment one or the embodiment two.

[0211] Embodiment five

[0212] The embodiment of the present application discloses a computer storage medium storing computer instructions, which when invoked, is used to perform part or all of the steps of the advertisement attribution method described in the embodiment one or the embodiment two.

[0213] Embodiment six

[0214] The embodiment of the present application discloses a computer program product including a non-transitory computer readable storage medium storing a computer program, and the computer program is operable to cause a computer to perform part or all of the steps of the advertisement attribution method described in the embodiment one or the embodiment two.

[0215] The above described apparatus embodiments are only schematic, wherein the modules described as separated components can or can not be physically separated, and the components displayed as modules can or can not be physical modules, i.e., can be located in one place, or can be distributed to multiple network modules. Part or all of the modules can be selected according to actual needs to achieve the purpose of the present embodiment scheme. Those skilled in the art can understand and implement without creative labor.

[0216] Those skilled in the art can clearly understand the implementation of the various embodiments by means of software and necessary general hardware platforms through the above specific description of the embodiments, and of course, the embodiments can also be implemented by hardware. Based on such understanding, the above technical solutions, essentially or in other words, the part of the prior art that contributes to the present application can be embodied in the form of a software product. The computer software product can be stored in a computer readable storage medium, including a read-only memory (ROM), a random access memory (RAM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), a one-time programmable read-only memory (OTPROM), an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disk storage, a magnetic disk storage, a magnetic tape storage, or any other computer readable medium that can be used to carry or store data.

[0217] Finally, it should be noted that: the advertisement attribution method and device disclosed by the embodiments of the present application are only the preferred embodiments of the present application, and are used to illustrate the technical solutions of the present application, but not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: the technical solutions recorded in the foregoing embodiments can still be modified, or some technical features can be replaced by equivalents; and these modifications or replacements do not make the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. An advertising attribution method, characterized by, The method is applied to an advertisement analysis system, and the method comprises: receiving real-time event data reported through an advertisement attribution service interface; the real-time event data comprises a plurality of message events; performing partitioning operation on the real-time event data based on preset partitioning conditions to obtain a plurality of consumption tasks; each consumption task comprises at least one message event; performing advertisement attribution operation on each consumption task based on a preset thread processing mechanism to obtain an advertisement attribution result corresponding to each consumption task; storing all the advertisement attribution results into a target database corresponding to the advertisement analysis system based on a preset batch service; wherein, before the performing advertisement attribution operation on each consumption task based on the preset thread processing mechanism to obtain an advertisement attribution result corresponding to each consumption task, the method further comprises: creating a linked list node corresponding to each message event in turn based on the reporting time sequence of each message event in the real-time event data, and inserting the linked list node corresponding to each message event into an event linked list corresponding to the advertisement analysis system in turn; wherein, each linked list node corresponding to each message event comprises the message event and a processing state identifier corresponding to the message event; and when each linked list node is recorded into the event linked list, the processing state identifier of each message event is an unprocessed state identifier; and, in the process of performing advertisement attribution operation on each consumption task based on the preset thread processing mechanism to obtain an advertisement attribution result corresponding to each consumption task, the method further comprises: after detecting that the advertisement attribution operation on any message event is completed, modifying the processing state identifier corresponding to the message event in the event linked list to a processed state identifier; wherein, the event linked list is provided with an ACK position; and the method further comprises: based on the determined scanning sequence of the event linked list, reading the processing state identifier of each linked list node in the event linked list in turn until the processing state identifier of the currently read linked list node is the unprocessed state identifier, and determining the linked list node corresponding to the linked list node read in the sequence in front as a target node; determining the node position information corresponding to the target node as the ACK position corresponding to the event linked list; the ACK position is used to indicate the node position indicated by the ACK position and that all the message events corresponding to the node position before the node position have been processed; when detecting that there is a processing condition inquiry request about the event linked list, generating ACK response information corresponding to the processing condition inquiry request according to the ACK position, and feeding back the ACK response information to the initiator of the processing condition inquiry request.

2. The advertising attribution method of claim 1, wherein, The performing advertisement attribution operation on each consumption task based on the preset thread processing mechanism to obtain an advertisement attribution result corresponding to each consumption task comprises: based on a task scheduling mechanism corresponding to the advertisement analysis system, scheduling each consumption task to a thread pool matched with the consumption task. For each thread pool, determine the event processing logic corresponding to each message event in the consumption task to be processed by the thread pool; For each thread pool, perform an advertisement attribution operation on the consumption task according to the event processing logic corresponding to each message event in the consumption task to be processed by the thread pool, to obtain the advertisement attribution result corresponding to the consumption task.

3. The advertising attribution method of claim 2, wherein, The task scheduling mechanism corresponding to the advertisement analysis system includes: Obtain the scheduling identifier type preset by the task scheduler corresponding to the advertisement analysis system; According to the scheduling identifier type, obtain the scheduling identifier corresponding to each consumption task; According to the scheduling identifier corresponding to each consumption task, hash distribute each consumption task to the thread pool matched with the scheduling identifier corresponding to the consumption task.

4. The advertising attribution method of claim 2, wherein, For each thread pool, the determination of the event processing logic corresponding to each message event in the consumption task to be processed by the thread pool includes: Parse each message event in the consumption task to be processed by the thread pool to obtain the event type identifier corresponding to each message event; According to the event type identifier corresponding to each message event, determine the event processing logic corresponding to the message event for the thread pool; And, for each thread pool, the advertisement attribution operation on the consumption task according to the event processing logic corresponding to each message event in the consumption task to be processed by the thread pool, to obtain the advertisement attribution result corresponding to the consumption task, includes: According to the event processing logic corresponding to each message event in the consumption task to be processed by the thread pool, obtain the attribution analysis information corresponding to the consumption task; The attribution analysis information includes one or more combinations of the report device information corresponding to each message event, the report account information corresponding to each message event, and the advertisement information corresponding to each message event; According to the event processing logic and the attribution analysis information, perform an advertisement attribution operation on each message event in the consumption task to obtain the event attribution result corresponding to each message event in the consumption task; Each consumption task includes the event attribution result corresponding to all message events included in the consumption task.

5. The advertising attribution method of any one of claims 1-4, wherein, The advertisement attribution result is stored in the target database corresponding to the advertisement analysis system based on the preset batch service, including: Based on the preset batch service, temporarily store each advertisement attribution result in the system memory corresponding to the advertisement analysis system; Detect whether the data quantity of the advertisement attribution results temporarily stored in the system memory is greater than or equal to the preset batch processing quantity; When it is detected that the data quantity of the advertisement attribution results temporarily stored in the system memory is greater than or equal to the batch processing quantity, write all the advertisement attribution results temporarily stored in the system memory to the target database corresponding to the advertisement analysis system.

6. An apparatus for advertising attribution, comprising: The device is used to perform the advertisement attribution method as claimed in any one of claims 1-5, and the device is applied to an advertisement analysis system, and the device comprises: a receiving module, configured to receive real-time event data reported through an advertisement attribution service interface; the real-time event data comprises a plurality of message events; a partitioning module, configured to perform a partitioning operation on the real-time event data based on a preset partitioning condition, to obtain a plurality of consumption tasks; each consumption task comprises at least one message event; an attribution module, configured to perform an advertisement attribution operation on each consumption task based on a preset thread processing mechanism, to obtain an advertisement attribution result corresponding to each consumption task; a storage module, configured to store all the advertisement attribution results to a target database corresponding to the advertisement analysis system based on a preset batch service.

7. An advertising attribution device, characterized in that, The device comprises: a memory in which executable program codes are stored; a processor coupled with the memory; the processor invokes the executable program codes stored in the memory to perform the advertisement attribution method as claimed in any one of claims 1-5.

8. A computer storage medium, characterized in that The computer storage medium stores computer instructions, and the computer instructions are invoked to perform the advertisement attribution method as claimed in any one of claims 1-5.

Citation Information

Patent Citations

  • Method and device for confirming message multi-thread consumption sequence based on double linked list

    CN113312187A

  • Method and system for processing attribution data

    CN117215805A