CN113763034A - Advertisement data processing method and device - Google Patents

Advertisement data processing method and device Download PDF

Info

Publication number
CN113763034A
CN113763034A CN202110904171.7A CN202110904171A CN113763034A CN 113763034 A CN113763034 A CN 113763034A CN 202110904171 A CN202110904171 A CN 202110904171A CN 113763034 A CN113763034 A CN 113763034A
Authority
CN
China
Prior art keywords
layer filter
filter
user
advertisement data
identification information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110904171.7A
Other languages
Chinese (zh)
Inventor
谢寰宇
李涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Apas Digital Cloud Information Technology Co ltd
Original Assignee
Zhengzhou Apas Digital Cloud Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhengzhou Apas Digital Cloud Information Technology Co ltd filed Critical Zhengzhou Apas Digital Cloud Information Technology Co ltd
Priority to CN202110904171.7A priority Critical patent/CN113763034A/en
Publication of CN113763034A publication Critical patent/CN113763034A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Abstract

The embodiment of the application discloses a method and a device for processing advertisement data, which are used for solving the problems that in the process of counting advertisement click data in the prior art, the storage space occupied by the advertisement click data is large and the storage cost is high. The method comprises the following steps: responding to the click operation of the user on the advertisement data in the advertisement data statistical period, and acquiring user identification information of the user; judging whether a multilayer filter corresponding to the advertisement data statistical period is created at present; if yes, storing the user identification information into a target layer filter; if not, a first layer filter is created, and the user identification information is stored in the first layer filter; when receiving a query request aiming at the click information of the user on the advertisement data in the advertisement data statistical period, querying the click information by using a multi-layer filter so as to determine whether to continuously push the advertisement for the user according to the queried click information. The technical scheme saves the storage space occupied by the advertisement click data and saves the storage cost.

Description

Advertisement data processing method and device
Technical Field
The present application relates to the field of data analysis technologies, and in particular, to a method and an apparatus for processing advertisement data.
Background
To optimize advertisement placement, user click data for advertisements is typically counted.
Currently, when counting highly concurrent advertisement click data, the backend of the internet advertisement industry generally stores and counts advertisement click data based on a String structure of a Remote Dictionary service (Remote Dictionary service). In this way, the memory usage under a large data volume is very large, taking an example that SHA (Secure Hash Algorithm) 256 is adopted to calculate and store the Hash value for the advertisement click data, the memory size occupied for storing 1 ten thousand pieces of advertisement click data is approximately 3M, the memory size occupied for storing 1 hundred million pieces of advertisement click data is approximately 30G, the memory size occupied for storing 10 hundred million pieces of advertisement click data is approximately 300G, and the monthly storage cost for 10 hundred million pieces of advertisement click data is at least 4 ten thousand, which is a non-trivial expenditure. Obviously, in the aspect of realizing advertisement click data storage, the existing advertisement click data statistical mode not only needs to occupy a huge memory space, but also needs high storage cost.
Disclosure of Invention
The embodiment of the application aims to provide a method and a device for processing advertisement data, which are used for solving the problems that in the process of counting advertisement click data in the prior art, the storage space occupied by the advertisement click data is large and the storage cost is high.
In order to solve the above technical problem, the embodiment of the present application is implemented as follows:
in one aspect, an embodiment of the present application provides a method for processing advertisement data, including:
responding to the click operation of a user on advertisement data in an advertisement data statistical period, and acquiring user identification information of the user; judging whether a multilayer filter corresponding to the advertisement data statistical period is created currently;
if the multi-layer filter is created currently, determining that the multi-layer filter does not store the user identification information and has the lowest level, and storing the user identification information into the target layer filter;
if the multilayer filter is not established currently, establishing a first layer filter according to filtering information corresponding to a preset first layer filter, and storing the user identification information into the first layer filter; the filtering information comprises at least one of maximum storage data volume, fault tolerance rate and occupied memory corresponding to the first layer filter;
when receiving an inquiry request aiming at the click information of the user to the advertisement data in the advertisement data statistical period, inquiring the click information by utilizing the multilayer filter so as to determine whether to continuously push the advertisement for the user according to the inquired click information.
On the other hand, an embodiment of the present application provides an apparatus for processing advertisement data, including:
the acquisition and judgment module is used for responding to the click operation of the user on the advertisement data in the advertisement data statistical period and acquiring the user identification information of the user; judging whether a multilayer filter corresponding to the advertisement data statistical period is created currently;
the determining and storing module is used for determining that the multi-layer filter does not store the user identification information and has the lowest level, and storing the user identification information into the target layer filter if the multi-layer filter is created currently;
the creating and storing module is used for creating the first layer filter according to the preset filtering information corresponding to the first layer filter and storing the user identification information into the first layer filter if the multilayer filter is not created currently; the filtering information comprises at least one of maximum storage data volume, fault tolerance rate and occupied memory corresponding to the first layer filter;
and the query and determination module is used for querying the click information by utilizing the multilayer filter when receiving a query request aiming at the click information of the user on the advertisement data in the advertisement data statistical period so as to determine whether to continuously push the advertisement for the user according to the queried click information.
In another aspect, an embodiment of the present application provides an advertisement data processing apparatus, which includes a processor and a memory electrically connected to the processor, where the memory stores a computer program, and the processor is configured to invoke and execute the computer program from the memory to implement the above advertisement data processing method.
In still another aspect, an embodiment of the present application provides a storage medium for storing a computer program, where the computer program is executable by a processor to implement the foregoing advertisement data processing method.
By adopting the technical scheme of the embodiment of the application, the user identification information of the user is obtained by responding to the clicking operation of the user on the advertisement data in the advertisement data counting period, whether the multilayer filter corresponding to the advertisement data counting period is created currently is judged, if the multilayer filter is created currently, the user identification information is stored in the multilayer filter, if the multilayer filter is not created currently, the first layer filter is created according to the filtering information corresponding to the preset first layer filter, and the user identification information is stored in the first layer filter. Therefore, the advertisement click data (namely the user identification information of the user who executes the click operation on the advertisement data) is stored through the multilayer filter, so that the click information generated by the click operation of the user on the advertisement data can be compressed and stored, the storage space occupied by the advertisement click data is saved, and the storage cost is further saved. And when receiving an inquiry request aiming at the click information of the user on the advertisement data in the advertisement data statistical period, the multi-layer filter can be used for inquiring the click information so as to determine whether to continuously push the advertisement for the user according to the inquired click information, thereby improving the response efficiency of the inquiry request and realizing the effect of optimizing advertisement delivery.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, it is obvious that the drawings in the following description are only some embodiments described in the present application, and for those skilled in the art, other drawings can be obtained according to the drawings without any creative effort.
FIG. 1 is a schematic flow chart diagram of a method of processing advertisement data according to an embodiment of the present application;
FIG. 2 is a schematic diagram of storing user identification information in a bit array according to an embodiment of the present application;
FIG. 3 is a schematic diagram of querying a bit array for user identification information according to another embodiment of the present application;
FIG. 4 is a schematic flow chart diagram of a method of processing advertisement data according to another embodiment of the present application;
FIG. 5 is a schematic flow chart diagram of a method of processing advertisement data according to another embodiment of the present application;
fig. 6 is a schematic structural diagram of an advertisement data processing apparatus according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of an advertisement data processing device according to an embodiment of the present application.
Detailed Description
The embodiment of the application provides a method and a device for processing advertisement data, which are used for solving the problems that in the process of counting advertisement click data in the prior art, the storage space occupied by the advertisement click data is large and the storage cost is high.
In order to make those skilled in the art better understand the technical solutions in the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
Fig. 1 is a schematic flow chart of a processing method of advertisement data according to an embodiment of the present application, and as shown in fig. 1, the processing method of advertisement data includes:
s102, responding to the click operation of the user on the advertisement data in the advertisement data statistical period, and acquiring user identification information of the user; and judging whether a multi-layer filter corresponding to the advertisement data statistical period is created at present.
The advertisement data statistics period may be any time period, such as 12 hours, three days, a week, a month, etc., and may be set according to a specific application scenario. The user identification information may be information for identifying a user Identity, such as a user ID (Identity document), a user nickname, and a user account name. The number of layers of the multi-layer filter can be set according to specific application scenarios, such as 3 layers, 5 layers, and the like. The multi-layer filter may be a multiple bloom filter.
In this embodiment, if a multi-layer filter corresponding to the advertisement data statistics period is currently created, S104 is executed; if the multi-layer filter corresponding to the advertisement data statistical period is not created currently, S106 is executed.
S104, determining the target layer filter which does not store the user identification information and has the lowest hierarchy in the multi-layer filter, and storing the user identification information into the target layer filter. And then jumps to S108.
Each layer of filter is composed of a binary vector with a certain length and a series of random mapping functions. A binary vector of a certain length is also called a bit array, and the initial value of the binary value at each position in the bit array is 0, and when an element (in this embodiment, user identification information) is mapped to a certain position in the bit array, the binary value at the position is set to 1. In this embodiment, the element is mapped to a position in the bit array, which corresponds to the user identification information being stored in one of the plurality of filters. The series of random mapping functions are a plurality of hash functions carried by the multi-layer filter.
When the user identification information is stored in the target layer filter, the hash value corresponding to the user identification information can be calculated through a plurality of hash functions, so that the user identification information is mapped to a plurality of positions in the bit array according to the plurality of hash values. For example, k times of calculation is performed on the user identification information according to k hash functions carried by the multi-layer filter to obtain k hash values, and k positions in the bit array are respectively determined according to the k hash values, so that the user identification information is respectively mapped to the k positions, and the user identification information is stored in the target layer filter. k is a positive integer.
S106, a first layer filter is established according to the filtering information corresponding to the preset first layer filter, and the user identification information is stored in the first layer filter.
The filtering information may include information such as a maximum storage data amount, a fault tolerance rate, and an occupied memory corresponding to the first layer filter. The maximum storage data volume corresponding to the first layer of filter can be obtained by counting the number of users clicking the advertisement data by the operator of the advertisement pushing party. The fault tolerance rate may be selected according to the accuracy requirement of the statistical result of the advertisement click data (i.e., the user identification information of the user who performed the click operation on the advertisement data), such as one-ten-thousandth, five-ten-thousandth, and so on; the higher the accuracy requirement for the statistics of the ad click data (i.e., the more accurate the statistics), the smaller the fault tolerance rate should be selected. Under the condition that the maximum data storage amount is unchanged, the fault tolerance rate and the occupied memory are in negative correlation, namely the higher the fault tolerance rate is, the smaller the occupied memory is. For example, the memory occupied by the first filter when the fault tolerance is ten thousandths is smaller than the memory occupied by the first filter when the fault tolerance is five ten thousandths.
In one embodiment, the correspondence between the maximum amount of stored data and the length of the bit array may be preset, such that according to the correspondence, the length of the bit array constituting the first filter is determined according to the maximum amount of stored data corresponding to the first filter and the currently selected fault tolerance.
In one embodiment, the correspondence between the maximum amount of stored data and the length of the bit array may be as shown in equation (1):
Figure BDA0003201022450000051
wherein m is the length of the bit array, n is the maximum storage data volume, and p is the fault tolerance.
And S108, when receiving an inquiry request aiming at the click information of the user on the advertisement data in the advertisement data statistical period, inquiring the click information by using a multi-layer filter so as to determine whether to continuously push the advertisement for the user according to the inquired click information.
By adopting the technical scheme of the embodiment of the application, the user identification information of the user is obtained by responding to the clicking operation of the user on the advertisement data in the advertisement data counting period, whether the multilayer filter corresponding to the advertisement data counting period is created currently is judged, if the multilayer filter is created currently, the user identification information is stored in the multilayer filter, if the multilayer filter is not created currently, the first layer filter is created according to the filtering information corresponding to the preset first layer filter, and the user identification information is stored in the first layer filter. Therefore, the advertisement click data (namely the user identification information of the user who executes the click operation on the advertisement data) is stored through the multilayer filter, so that the click information generated by the click operation of the user on the advertisement data can be compressed and stored, the storage space occupied by the advertisement click data is saved, and the storage cost is further saved. And when receiving an inquiry request aiming at the click information of the user on the advertisement data in the advertisement data statistical period, the multi-layer filter can be used for inquiring the click information so as to determine whether to continuously push the advertisement for the user according to the inquired click information, thereby improving the response efficiency of the inquiry request and realizing the effect of optimizing advertisement delivery.
In one embodiment, according to the embodiment shown in fig. 1, when determining whether a multi-layer filter corresponding to an advertisement data statistics period is currently created, it may first determine whether a first-layer filter corresponding to the advertisement data statistics period is currently created; when a first-layer filter is not created currently, creating the first-layer filter according to filtering information corresponding to a preset first-layer filter, and storing the user identification information into the first-layer filter; when a first-layer filter is created currently, whether the user identification information is stored in the first-layer filter or not is judged, if the user identification information is not stored in the first-layer filter, the user identification information is stored in the first-layer filter, and if the user identification information is stored in the first-layer filter, whether a second-layer filter corresponding to the advertisement data statistical period is created currently or not is judged. When a second-layer filter is not created currently, creating the second-layer filter according to filtering information corresponding to the preset second-layer filter, and storing the user identification information into the second-layer filter; when a second-layer filter is created currently, whether the user identification information is stored in the second-layer filter is judged, if the user identification information is not stored in the second-layer filter, the user identification information is stored in the second-layer filter, and if the user identification information is stored in the second-layer filter, whether a third-layer filter corresponding to the advertisement data statistical period is created currently is judged. And repeating the steps until the user identification information of the user is stored in the multi-layer filter, or each layer of the multi-layer filter stores the user identification information of the user.
In an embodiment of the present application, a multi-layer filter is used to store user identification information. When the user performs one click operation on the advertisement data in the advertisement data statistical period, the user identification information of the user is stored in the multi-layer filter once. For example, if a user performs a click operation on advertisement data for the first time in an advertisement data statistics period, user identification information of the user is stored in the first layer filter; the user performs click operation on the advertisement data for the second time in the advertisement data statistical period, and then the user identification information of the user is stored in the second layer filter, and at the moment, the user identification information of the user is stored in both the first layer filter and the second layer filter; the user executes click operation on the advertisement data for the third time in the advertisement data statistical period, and then the user identification information of the user is stored in the third filter, and at the moment, the user identification information of the user is stored in the first filter, the second filter and the third filter; and so on until each layer of the multi-layer filter stores the user identification information of the user.
The advertisement data is any advertisement data from the same advertiser, and is not specific to a certain piece of advertisement data. When the user identification information is stored in the multi-layer filter, the current user identification information is determined to be stored in which filter according to the click operation executed by the user on each advertisement data provided by the same advertiser. For example, if the advertiser a has advertisement data a, advertisement data B, and advertisement data C, then the user performs a click operation on the advertisement data a for the first time in the advertisement data statistics period, and then the user identification information of the user is stored in the first layer filter; then, the user performs a click operation on the advertisement data C for the first time in the advertisement data statistics period, and the user identification information of the user is stored in the second filter, and at this time, the user identification information of the user is stored in both the first filter and the second filter.
The following describes in detail an application of the advertisement data processing method provided in the embodiment of the present application when using Redis cache data, taking a multi-layer filter as an example of a multiple bloom filter. A bloom filter is a data structure characterized by efficient insertion and querying of data, which is more efficient and takes up less space than conventional data structures (e.g., String structures).
In one embodiment, the insertion complexity of the bloom filter is o (K), where K is the number of hash functions and is generally small; the query complexity of the bloom filter is O (K), and the query complexity is generally lower; the space complexity of the bloom filter is o (M), M is the length of the bit array, M can be calculated according to the above formula (1), the space complexity is generally small, and the memory size occupied by 1 hundred million pieces of data is about 100 megabits.
In an embodiment, before S102 is executed, the number of layers of the multilayer filter and filtering information corresponding to each layer of filter may be input and stored in the Redis, so that when it is determined that the multilayer filter corresponding to the advertisement data statistics period is not currently created or the created layers of filters all store the currently acquired user identification information, the number of layers and the filtering information of the multilayer filter stored in the Redis are acquired, and the current layer of filter is created according to the acquired number of layers and the filtering information of the multilayer filter.
For example, the number of layers of the multilayer filter and the filter information inputted and stored in the Redis are shown in table one. The number of layers of the multi-layer filter is 5, the maximum storage data volume of each layer of filter is obtained by counting the number of users clicking advertisement data by operators of the advertisement pushing party, the fault tolerance rate is selected to be 0.01 percent according to the accuracy requirement of the counting result of the advertisement clicking data of a specific application scene, and Redis can calculate the size of the memory occupied by each layer of filter by combining the formula (1) according to the input maximum storage data volume and the fault tolerance rate.
Watch 1
Hierarchy level Maximum storage data volume (volume) Fault tolerance ratio (percent) Occupying memory (million)
First layer 2 hundred million 0.01 210
Second layer 1.5 hundred million 0.01 160
Third layer 1 hundred million 0.01 100
The fourth layer 7 million 0.01 70
The fifth layer 5 million 0.01 50
According to the first table, it can be inferred that the total memory occupied by the multi-layer filter is about 600 megabytes, in an advertisement data statistical period, the number of clicks of most users on advertisement data is 3, the number of users exceeding 3 times is decreased along with the hierarchy, so the filter is only smaller and smaller along with the increment of the hierarchy, therefore, a 1-core 4G (the 4th generation mobile communication technology, fourth generation mobile communication technology) linux server is enough to support storing advertisement click data when the users click peaks, monthly storage cost is lower than 200 yuan, and storage cost is greatly saved.
In an embodiment, after it is determined that the currently acquired user identification information is not stored in the multi-layer filter and the target layer filter with the lowest hierarchy is created or the first layer filter is created according to the preset filtering information corresponding to the first layer filter, k times of calculation may be performed on the user identification information according to k hash functions carried by the multi-layer filter to obtain k hash values, and k positions in the array are respectively determined according to the k hash values, so that the user identification information is respectively mapped to the k positions, and the user identification information is stored in the target layer filter or the first layer filter.
Wherein, in each layer of filters, user identification information is stored by the bit array. The length m of the bit array can be calculated according to equation (1) above. Supposing that m is 8 (that is, a bit array comprises 8 bits) and k is 3 (that is, the number of hash functions is 3, the user identification information is calculated for 3 times to obtain 3 hash values) in the current layer filter, and the user identification information a is calculated for 3 times by using the 3 hash functions to obtain 3 hash values which are 1, 4 and 6 respectively; and 3 times of calculation is carried out on the user identification information b, and the obtained 3 hash values are 2, 4 and 5 respectively. As shown in fig. 2, the initial values of the binary numbers at the positions in the bit array are all 0, numbers 0 to 7 are subscripts (used for representing that the corresponding position is the number-th bit of the bit array, so that when the position in the bit array is determined according to the hash value, the position corresponding to the hash value can be quickly determined by finding the corresponding subscript according to the hash value), according to the hash value of a, the user identification information a can be determined to be respectively mapped to the 1 st, 4th and 6 th bits in the bit array, so that the binary numbers at the 1 st, 4th and 6 th bits of the bit array are set to be 1, and the user identification information a can be stored in the current layer filter; according to the hash value of b, the user identification information b can be determined to be respectively mapped to the 2 nd, 4th and 5 th bits in the bit array, so that the binary value of the 2 nd, 4th and 5 th bits in the bit array is set to be 1, and the user identification information b can be stored in the current layer filter. At this time, since the 4th bit has been set to 1, the binary value on the 4th bit is not changed when the user identification information b is stored.
In one embodiment, it is assumed that the hash function selects and sets a certain bit in the bit array under an equal probability condition, and the positions of bits (bits) to be set are calculated by each hash function independently, m is the length of the bit array, and k is the number of the hash functions. Then, the probability that a particular bit in the bit array is not set to 1 when performing hash value insertion is:
Figure BDA0003201022450000091
the probability that the bit is not set to 1 after the k hash values are all inserted is:
Figure BDA0003201022450000092
after inserting the maximum n pieces of user identification information, the probability that the binary value in a specific bit is still 0 is:
Figure BDA0003201022450000093
after inserting the maximum n pieces of user identification information, the probability that the binary number value in a specific bit is 1 is:
Figure BDA0003201022450000094
when detecting whether a certain user identification information is in the layer filter, it may be detected that a certain user identification information which is not in the layer filter exists in the layer filter by mistake, and the probability (i.e. fault tolerance rate) is determined by the following formula:
Figure BDA0003201022450000095
according to the formula (6), the length m and the maximum storage data amount n of the current bit array are unchanged through calculation, and the number of the hash functions is calculated
Figure BDA0003201022450000101
The fault tolerance is minimal.
According to practice, a multi-layer filter is adopted to store user identification information, and when 5 hundred million user identification information is stored and the fault tolerance rate is ten parts per million, the occupied memory size is about 500 million; when the fault tolerance rate is five parts per million, the occupied memory size is about 1000 million. When the user identification information is stored by adopting a traditional data structure (such as a String structure), the occupied memory size is about 50000 million when 5 hundred million user identification information is stored. Therefore, the memory of the multilayer filter with higher fault tolerance rate occupies less, even only occupies 1% of the memory of the traditional data structure, so that the server resources can be saved to the maximum extent only by determining the fault tolerance rate in advance.
In one embodiment, when it is determined that the target layer filter with the lowest hierarchy does not store the user identification information in the multi-layer filter, S104 is executed, the query may be performed sequentially from the first layer filter and according to a sequence from the low hierarchy to the high hierarchy until the target layer filter with the user identification information not stored in the multi-layer filter is queried.
In this embodiment, by sequentially querying the target layer filter which is not stored with the user identification information and has the lowest hierarchy among the multiple layers of filters according to the sequence from low to high, the target layer filter can be determined quickly and accurately, and the implementation is simple.
In one embodiment, if the highest-level filter in the multiple-level filters is sequentially queried from the first-level filter and according to the sequence from the low level to the high level, and the user identification information is stored in each level of filter, the prompt information is output to prompt the user that the number of clicks on the advertisement data reaches the threshold of the number of clicks, and at this time, no advertisement is pushed for the user.
The number of layers of the filter can be set according to a preset click number threshold value of the advertisement data in the advertisement data counting period of the user. For example, in order to optimize advertisement delivery, a user whose number of clicks on advertisement data in an advertisement data counting period is less than or equal to 2 needs to be counted and stored, at this time, a threshold of number of clicks may be preset to 2, and then the number of layers of filters may be set to 2, so that when user identification information is stored in each layer of filters, information prompting the user that the number of clicks on advertisement data has reached the threshold of number of clicks is output. In this case, the number of filter layers may be set to a positive integer greater than 2. In addition, the prompt message may further include a message prompting the user for a failure in insertion of the user identification information.
In this embodiment, after traversing the multiple filters and when the user identification information is stored in each filter, the prompt information is output, so that not only the storage condition of the user identification information can be prompted, but also the effect of quickly responding to the query request according to the prompt information can be realized when the user queries the click information of the advertisement data in the following process.
In one embodiment, the following steps a1-A3 may be repeatedly performed starting from the first-layer filter and in the order of the levels from low to high until the target-layer filter in the multi-layer filter that does not store the user identification information is queried, starting from the first-layer filter and in the order of the levels from low to high:
step a1, for the current layer filter to be queried, determine whether the current layer filter has been created.
Wherein, the number of layers of the current layer filter is less than or equal to the total number of layers of the multilayer filter. If the current layer filter has been created, go to step A2; if the current layer filter is not created, then proceed to step A3.
Step a2, determine whether the current layer filter stores the user identification information. And if the user identification information is not stored in the current layer filter, determining the current layer filter as a target layer filter. And if the user identification information is stored in the current filter, inquiring the next filter of the current filter.
When judging whether the user identification information is stored in the current layer filter, k times of calculation can be carried out on the user identification information according to k hash functions carried by the multi-layer filter to obtain k hash values, and then whether binary numbers on the bit array forming the current layer filter and corresponding positions of the k hash values are 1 or not is determined; if yes, determining that the user identification information is stored in the current layer filter; if not, it is determined that the user identification information is not stored in the current layer filter.
Along the example of fig. 2, assuming that it is required to determine whether the user identification information a is stored in the current layer filter, 3 hash functions carried by the multi-layer filter are used to calculate the user identification information a for 3 times, and the obtained 3 hash values are 1, 4, and 6 respectively, and then according to the hash value of a, it can be determined whether binary values on the 1 st, 4th, and 6 th bits of the bit array forming the current layer filter are all 1, as shown in fig. 3, it can be determined that binary values on the 1 st, 4th, and 6 th bits of the bit array are all 1, so it can be determined that the user identification information a may be stored in the current layer filter (due to false determination caused by hash collision); similarly, if it is determined whether the user identification information b is stored in the current layer filter, the hash value of the user identification information b may be calculated according to the 3 hash functions, the obtained 3 hash values are 2, 4, and 5, and then it may be determined whether binary values on the 2 nd, 4th, and 5 th bits of the bit array constituting the current layer filter are all 1 according to the hash value of b, as shown in fig. 3, it may be determined that binary values on the 2 nd, 4th, and 5 th bits of the bit array are all 1, so it may be determined that the user identification information b is stored in the current layer filter; similarly, if it is determined whether the user identification information c is stored in the current layer filter, the hash value of the user identification information c may be calculated according to the 3 hash functions, the obtained 3 hash values are 3, 6, and 7, and then it may be determined whether binary values on the 3 rd, 6 th, and 7 th bits of the bit array constituting the current layer filter are all 1 according to the hash value of c, as shown in fig. 3, it may be determined that binary values on the 3 rd, 6 th, and 7 th bits of the bit array are not all 1, so it may be determined that the user identification information c is not stored in the current layer filter.
Wherein, the next filter of the current filter is queried, that is, step a1 is executed for the next filter.
Step A3, creating a current layer filter according to the filtering information corresponding to the current layer filter, and determining the current layer filter as a target layer filter.
The filtering information corresponding to the current-layer filter may include information such as a maximum storage data amount, a fault tolerance rate, and an occupied memory corresponding to the current-layer filter.
In this embodiment, by sequentially querying the target layer filter which is not stored with the user identification information and has the lowest hierarchy among the multiple layers of filters according to the sequence from low to high, the target layer filter can be determined quickly and accurately, and the implementation is simple.
In one embodiment, the click information may include a number of clicks. In executing S108, click information may be queried using a multi-layered filter according to the following steps B1-B4 to determine whether to continue to push advertisements for the user according to the queried click information:
step B1, determining the threshold N of the number of clicks of the user on the advertisement data within the advertisement data statistics period.
Wherein N is a positive integer less than the total number of layers of the multilayer filter. It should be noted that the setting time of the threshold N of the number of clicks is not limited in the present application, and for example, the setting time may be set synchronously when the filtering information corresponding to the multi-layer filter is set, or may be set at a certain time before the query request of the user is received.
Step B2, judging whether the user identification information is stored in the (N + 1) th layer filter of the multi-layer filter; if yes, go to step B3; if not, go to step B4.
Before performing step B2, it may first be determined whether a layer N +1 filter has been created; if yes, go to step B2; if not, go to step B4. That is, the N +1 th filter is not created, which indicates that the number of clicks of the advertisement data by the user does not reach the threshold number of clicks.
And step B3, determining that the click times of the user on the advertisement data reach the click time threshold value, and outputting information that the advertisement is not continuously pushed for the user.
And step B4, determining that the click times of the user on the advertisement data do not reach the click times threshold value, and outputting information for continuously pushing the advertisement for the user.
In the embodiment, the click information is inquired by using the multilayer filter, so that whether the advertisement is continuously pushed to the user is determined according to the inquired click information, the effect of optimizing the advertisement delivery can be quickly and accurately realized, and the data storage cost is saved.
In one embodiment, before querying the click information using the multi-layer filter, it may be determined whether the multi-layer filter has been created, such that when querying the click information using the multi-layer filter, the click information is queried using the multi-layer filter if the multi-layer filter has been created, and the number of clicks is determined to be zero if the multi-layer filter has not been created.
If the number of clicks is zero, it can be determined that the number of clicks of the advertisement data by the user does not reach the threshold value of the number of clicks, and information for continuously pushing the advertisement for the user can be output at this time.
In the embodiment, before the click information is queried by using the multi-layer filter, whether the multi-layer filter is created or not is judged, so that the response efficiency of the query request can be further improved, and the optimization of advertisement putting is realized more quickly and accurately.
In one embodiment, the created multi-layer filters and the advertisement data statistical period can be stored in an associated mode, a filter cleaning task is created, when the filter cleaning task is triggered, the expired advertisement data statistical period is determined according to the current time and the advertisement data statistical period corresponding to each multi-layer filter stored in the associated mode, and the multi-layer filter corresponding to the expired advertisement data statistical period is deleted.
The filter cleaning task can be a timing task, and the timing time can be set according to a specific application scene. For example, the timing time is 1 am every day, then the filter cleaning task is triggered at 1 am every day.
Assuming that the advertisement data statistical period is from 12 am of each day to 12 am of the next day, and the timing time of the filter cleaning task is 15 minutes of each day, the multi-layer filter created in 5-month-1 day needs to be stored in association with 5-month-1 day, and the filter cleaning task is triggered at 12 am of 5-month-2 day by 15 minutes, at this time, according to the current time (12 am of 5-month-2 day by 15 minutes), and the advertisement data statistical periods (including 5-month-1 day and 5-month-2 day) respectively corresponding to the multi-layer filters stored in association, it is determined that 5-month-1 day is the expired advertisement data statistical period, and the multi-layer filter stored in association with 5-month-1 day is deleted.
It should be noted that the creation timing of the filter cleaning task may also be when setting filtering information corresponding to a multi-layer filter, which is not limited in the present application.
In the embodiment, the multi-layer filter corresponding to the expired advertisement data statistical period is deleted by creating the filter cleaning task, so that the storage space can be cleaned simply and quickly, and the data storage cost can be saved.
Fig. 4 is a schematic flow chart of a method for processing advertisement data according to another embodiment of the present application, as shown in fig. 4, the method including:
s401, responding to the click operation of the user on the advertisement data in the advertisement data statistical period, acquiring user identification information of the user, and judging whether a multilayer filter corresponding to the advertisement data statistical period is created at present; if yes, executing S403; if not, go to S402.
The user identification information may be information for identifying a user Identity, such as a user ID (Identity document), a user nickname, and a user account name.
S402, creating a first layer filter according to the filtering information corresponding to the preset first layer filter, and storing the currently acquired user identification information into the first layer filter.
While or after performing S402, monitoring the user 'S click operation on the advertisement data within the advertisement data statistics period may continue, so that when the user' S click operation on the advertisement data is monitored, S401 is performed again.
The filtering information may include information such as a maximum storage data amount, a fault tolerance rate, and an occupied memory corresponding to the first layer filter.
S403, judging whether the current layer filter is established or not according to the sequence of the first layer filter from low to high; if yes, go to S404; if not, go to step S406.
Wherein, when S403 is executed for the first time, the current layer filter is the first layer filter. The number of layers of the current layer filter is less than or equal to the total number of layers of the multi-layer filter.
S404, judging whether the currently acquired user identification information is stored in the current layer filter; if yes, returning to the step S403, and continuing to judge the next filter, wherein the next filter is a new current filter; if not, go to S405.
S405, determining the current layer filter as the target layer filter. And then jumps to S407.
S406, creating a current layer filter according to the filtering information corresponding to the current layer filter, and determining the current layer filter as a target layer filter.
The filtering information may include information such as a maximum storage data amount, a fault tolerance rate, and an occupied memory corresponding to the current layer filter.
And S407, storing the currently acquired user identification information into the target layer filter.
The specific processes of S401 to S407 are described in detail in the above embodiments, and are not described herein again.
By adopting the technical scheme of the embodiment of the application, the user identification information of the user is obtained by responding to the clicking operation of the user on the advertisement data in the advertisement data counting period, whether the multilayer filter corresponding to the advertisement data counting period is created currently is judged, if the multilayer filter is created currently, the user identification information is stored in the multilayer filter, if the multilayer filter is not created currently, the first layer filter is created according to the filtering information corresponding to the preset first layer filter, and the user identification information is stored in the first layer filter. Therefore, the advertisement click data (namely the user identification information of the user who executes the click operation on the advertisement data) is stored through the multilayer filter, so that the click information generated by the click operation of the user on the advertisement data can be compressed and stored, the storage space occupied by the advertisement click data is saved, and the storage cost is further saved.
Fig. 5 is a schematic flow chart of a method for processing advertisement data according to another embodiment of the present application, as shown in fig. 5, the method including:
s501, when receiving a query request aiming at click information of a user on advertisement data in an advertisement data statistical period, judging whether a multilayer filter is established; if yes, go to S503; if not, go to S502.
S502, determining that the number of clicks of the advertisement data by the user in the advertisement data statistical period is zero. And then jumps to S507.
S503, determining the threshold value N of the number of clicks of the advertisement data by the user in the advertisement data statistical period.
Wherein N is a positive integer less than the total number of layers of the multilayer filter. In this embodiment, the execution timing of S503 is not limited. For example, in addition to executing S501 first and executing the execution sequence of S503 only when it is determined that a multi-layer filter has been created as exemplified in the present embodiment, S503 may be executed first and then executing S501, and executing S504 when it is determined that a multi-layer filter has been created; or S501 and S503 are performed simultaneously, and S504 is performed in the case where it is determined that the multi-layered filter has been created.
S504, judging whether the (N + 1) th layer filter is established; if yes, go to S505; if not, go to S508.
S505, judging whether the (N + 1) th layer filter of the multi-layer filter stores the user identification information of the user; if yes, go to S506; if not, go to S507.
S506, determining that the number of clicks of the advertisement data by the user reaches a threshold value of the number of clicks, and outputting information that the advertisement is not pushed to the user any more.
S507, determining that the click times of the user on the advertisement data do not reach the click times threshold value.
And S508, outputting information for continuously pushing the advertisement for the user.
The specific processes of S501 to S508 are described in detail in the above embodiments, and are not described herein again.
In addition, if the highest-level filter in the multiple-level filters is sequentially inquired from the first-level filter according to the sequence from low to high in the hierarchy, and the user identification information is stored in each layer of filter, prompt information is output to prompt the user that the click frequency of the advertisement data reaches the click frequency threshold value. When receiving a query request aiming at the click information of the user on the advertisement data in the advertisement data statistical period, querying whether a prompt that the click times of the user on the advertisement data reach a click times threshold exists in the prompt information, and if so, outputting information which does not push the advertisement for the user any more; if not, outputting information for continuously pushing the advertisement for the user.
By adopting the technical scheme of the embodiment of the application, when the query request aiming at the click information of the user on the advertisement data in the advertisement data statistical period is received, the click information can be queried by utilizing the multilayer filter, so that whether the advertisement is continuously pushed to the user or not is determined according to the queried click information, the response efficiency of the query request is improved, and the effect of optimizing advertisement delivery is realized.
In summary, particular embodiments of the present subject matter have been described. Other embodiments are within the scope of the following claims. In some cases, the actions recited in the claims can be performed in a different order and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may be advantageous.
Based on the same idea, the advertisement data processing method provided in the embodiment of the present application further provides an advertisement data processing device.
Fig. 6 is a schematic structural diagram of an advertisement data processing apparatus according to an embodiment of the present application, and as shown in fig. 6, the advertisement data processing apparatus includes:
the obtaining and judging module 610 is configured to obtain user identification information of a user in response to a click operation of the user on advertisement data within an advertisement data statistics period; judging whether a multilayer filter corresponding to the advertisement data statistical period is created at present;
a determining and storing module 620, configured to determine, if a multi-layer filter is currently created, that a target layer filter with the lowest hierarchy does not store user identification information in the multi-layer filter, and store the user identification information in the target layer filter;
the creating and storing module 630 is configured to create a first layer filter according to filtering information corresponding to a preset first layer filter if a multilayer filter is not created currently, and store user identification information into the first layer filter; the filtering information comprises at least one item of maximum storage data volume, fault tolerance rate and occupied memory corresponding to the first layer of filter;
the query and determination module 640 is configured to, when a query request for click information of the user on advertisement data within an advertisement data statistics period is received, query the click information using a multi-layer filter to determine whether to continue to push an advertisement for the user according to the queried click information.
In one embodiment, the determining and storing module 620 includes:
and the first query unit is used for sequentially querying from the first-layer filter and according to the sequence of the levels from low to high until a target-layer filter which does not store the user identification information in the multi-layer filter is queried.
In one embodiment, the first query unit is specifically configured to:
the following steps are repeatedly executed in the order of the levels from low to high, starting from the first layer of filter:
judging whether the current layer filter is established or not aiming at the current layer filter to be inquired;
if the current layer filter is established, judging whether the current layer filter stores user identification information or not; if the user identification information is not stored in the current layer filter, determining the current layer filter as a target layer filter; if the user identification information is stored in the current filter, inquiring the next filter of the current filter;
if the current layer filter is not created, creating the current layer filter according to the filtering information corresponding to the current layer filter, and determining the current layer filter as a target layer filter;
wherein, the number of layers of the current layer filter is less than or equal to the total number of layers of the multilayer filter.
In one embodiment, the first query unit is specifically configured to:
if the highest filter in the multiple filters is sequentially inquired from the first filter according to the sequence of the levels from low to high, and user identification information is stored in each filter, prompt information is output to prompt a user that the click times of the advertisement data reach a click time threshold value.
In one embodiment, the click information includes a number of clicks;
the query and determination module 640 includes:
the first determining unit is used for determining a threshold N of the number of clicks of the user on the advertisement data in the advertisement data statistical period; n is a positive integer less than the total number of layers of the multilayer filter;
the judging unit is used for judging whether the (N + 1) th layer filter of the multi-layer filter stores user identification information or not;
the first determining and outputting unit is used for determining that the click times of the user on the advertisement data reach a click time threshold value and outputting information which does not continuously push the advertisement for the user;
and the second determining and outputting unit is used for determining that the click times of the user on the advertisement data do not reach the click times threshold value if the advertisement data are not clicked, and outputting information for continuously pushing the advertisement for the user.
In one embodiment, the apparatus for processing advertisement data further comprises:
the judging module is used for judging whether a multilayer filter is established or not;
the query and determination module 640 includes:
the second query unit is used for querying click information by utilizing the multi-layer filter if the multi-layer filter is created;
and the second determining unit is used for determining that the click times are zero if the multi-layer filter is not created.
By adopting the device of the embodiment of the application, the user identification information of the user is obtained by responding to the clicking operation of the user on the advertisement data in the advertisement data counting period, whether the multilayer filter corresponding to the advertisement data counting period is created currently is judged, if the multilayer filter is created currently, the user identification information is stored in the multilayer filter, and if the multilayer filter is not created currently, the first layer filter is created according to the filtering information corresponding to the preset first layer filter, and the user identification information is stored in the first layer filter. Therefore, the advertisement click data (namely the user identification information of the user who executes the click operation on the advertisement data) is stored through the multilayer filter, so that the click information generated by the click operation of the user on the advertisement data can be compressed and stored, the storage space occupied by the advertisement click data is saved, and the storage cost is further saved. And when receiving an inquiry request aiming at the click information of the user on the advertisement data in the advertisement data statistical period, the multi-layer filter can be used for inquiring the click information so as to determine whether to continuously push the advertisement for the user according to the inquired click information, thereby improving the response efficiency of the inquiry request and realizing the effect of optimizing advertisement delivery.
It should be understood by those skilled in the art that the apparatus for processing advertisement data in fig. 6 can be used to implement the method for processing advertisement data described above, and the detailed description thereof should be similar to that described in the foregoing method, and is not repeated herein to avoid complexity.
Based on the same idea, an embodiment of the present application further provides an advertisement data processing device, as shown in fig. 7. The advertisement data processing device may have a large difference due to different configurations or performances, and may include one or more processors 701 and a memory 702, and one or more stored applications or data may be stored in the memory 702. Memory 702 may be, among other things, transient storage or persistent storage. The application program stored in memory 702 may include one or more modules (not shown), each of which may include a series of computer-executable instructions in a processing device for advertisement data. Still further, the processor 701 may be configured to communicate with the memory 702, and execute a series of computer-executable instructions in the memory 702 on a processing device for advertisement data. The apparatus for processing advertisement data may also include one or more power supplies 703, one or more wired or wireless network interfaces 704, one or more input-output interfaces 705, and one or more keyboards 706.
In particular, in this embodiment, the apparatus for processing advertisement data includes a memory, and one or more programs, wherein the one or more programs are stored in the memory, and the one or more programs may include one or more modules, and each module may include a series of computer-executable instructions for the apparatus for processing advertisement data, and the one or more programs configured to be executed by the one or more processors include computer-executable instructions for:
responding to the click operation of the user on the advertisement data in the advertisement data statistical period, and acquiring user identification information of the user; judging whether a multilayer filter corresponding to the advertisement data statistical period is created at present;
if a multi-layer filter is created currently, determining that the multi-layer filter does not store user identification information and is a target layer filter with the lowest level, and storing the user identification information into the target layer filter;
if the multilayer filter is not established currently, establishing a first layer filter according to the filtering information corresponding to the preset first layer filter, and storing the user identification information into the first layer filter; the filtering information comprises at least one item of maximum storage data volume, fault tolerance rate and occupied memory corresponding to the first layer of filter;
when receiving a query request aiming at the click information of the user on the advertisement data in the advertisement data statistical period, querying the click information by using a multi-layer filter so as to determine whether to continuously push the advertisement for the user according to the queried click information.
By adopting the device of the embodiment of the application, the user identification information of the user is obtained by responding to the clicking operation of the user on the advertisement data in the advertisement data counting period, whether the multilayer filter corresponding to the advertisement data counting period is created currently is judged, if the multilayer filter is created currently, the user identification information is stored in the multilayer filter, and if the multilayer filter is not created currently, the first layer filter is created according to the filtering information corresponding to the preset first layer filter, and the user identification information is stored in the first layer filter. Therefore, the advertisement click data (namely the user identification information of the user who executes the click operation on the advertisement data) is stored through the multilayer filter, so that the click information generated by the click operation of the user on the advertisement data can be compressed and stored, the storage space occupied by the advertisement click data is saved, and the storage cost is further saved. And when receiving an inquiry request aiming at the click information of the user on the advertisement data in the advertisement data statistical period, the multi-layer filter can be used for inquiring the click information so as to determine whether to continuously push the advertisement for the user according to the inquired click information, thereby improving the response efficiency of the inquiry request and realizing the effect of optimizing advertisement delivery.
The embodiment of the present application further provides a storage medium, where the storage medium stores one or more computer programs, where the one or more computer programs include instructions, and when the instructions are executed by an electronic device including multiple application programs, the electronic device can execute each process of the foregoing advertisement data processing method embodiment, and can achieve the same technical effect, and in order to avoid repetition, details are not repeated here.
The systems, devices, modules or units illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. One typical implementation device is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
For convenience of description, the above devices are described as being divided into various units by function, and are described separately. Of course, the functionality of the units may be implemented in one or more software and/or hardware when implementing the present application.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
The application may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The application may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
The embodiments in the present application are described in a progressive manner, and the same and similar parts among the embodiments can be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment.
The above description is only an example of the present application and is not intended to limit the present application. Various modifications and changes may occur to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims (10)

1. A method for processing advertisement data, comprising:
responding to the click operation of a user on advertisement data in an advertisement data statistical period, and acquiring user identification information of the user; judging whether a multilayer filter corresponding to the advertisement data statistical period is created currently;
if the multi-layer filter is created currently, determining that the multi-layer filter does not store the user identification information and has the lowest level, and storing the user identification information into the target layer filter;
if the multilayer filter is not established currently, establishing a first layer filter according to filtering information corresponding to a preset first layer filter, and storing the user identification information into the first layer filter; the filtering information comprises at least one of maximum storage data volume, fault tolerance rate and occupied memory corresponding to the first layer filter;
when receiving an inquiry request aiming at the click information of the user to the advertisement data in the advertisement data statistical period, inquiring the click information by utilizing the multilayer filter so as to determine whether to continuously push the advertisement for the user according to the inquired click information.
2. The method of claim 1, wherein the determining a lowest-level target-level filter of the multi-level filters that does not store the user identification information comprises:
and sequentially inquiring from the first layer filter and according to the sequence of the levels from low to high until the target layer filter which does not store the user identification information in the multi-layer filter is inquired.
3. The method according to claim 2, wherein the sequentially querying from the first-layer filter and from the lower level to the higher level of the hierarchy until querying the target-layer filter of the multi-layer filter that does not store the user identification information comprises:
the following steps are repeatedly executed from the first layer of filter and according to the sequence of the levels from low to high:
judging whether a current layer filter to be inquired is established or not;
if the current layer filter is established, judging whether the user identification information is stored in the current layer filter; if the user identification information is not stored in the current layer filter, determining that the current layer filter is the target layer filter; if the user identification information is stored in the current filter, inquiring a filter next to the current filter;
if the current layer filter is not created, creating the current layer filter according to the filtering information corresponding to the current layer filter, and determining the current layer filter as the target layer filter;
wherein the number of layers of the current layer filter is less than or equal to the total number of layers of the multilayer filter.
4. The method according to claim 2, wherein the sequentially querying from the first-layer filter and from the lower level to the higher level of the hierarchy until querying the target-layer filter of the multi-layer filter that does not store the user identification information comprises:
if the highest-layer filter in the multiple-layer filters is sequentially inquired from the first-layer filter and according to the sequence of the levels from low to high, and the user identification information is stored in each layer of filter, outputting prompt information to prompt that the click times of the user on the advertisement data reach a click time threshold value.
5. The method of claim 1, wherein the click information comprises a number of clicks;
the querying the click information by using the multi-layer filter to determine whether to continue to push the advertisement for the user according to the queried click information includes:
determining a threshold N of clicking times of the advertisement data within the advertisement data counting period by the user; n is a positive integer less than the total number of layers of the multilayer filter;
judging whether the user identification information is stored in the (N + 1) th layer filter of the multilayer filter;
if so, determining that the number of clicks of the advertisement data by the user reaches the threshold value of the number of clicks, and outputting information which does not continue to push advertisements for the user;
if not, determining that the number of clicks of the advertisement data by the user does not reach the threshold value of the number of clicks, and outputting information for continuously pushing the advertisement for the user.
6. The method of claim 5, wherein prior to querying the click information using the multi-layered filter, further comprising:
determining whether the multi-layer filter has been created;
the querying the click information by using the multi-layer filter comprises the following steps:
if the multi-layer filter is created, inquiring the click information by using the multi-layer filter;
and if the multi-layer filter is not created, determining that the click times are zero.
7. An apparatus for processing advertisement data, comprising:
the acquisition and judgment module is used for responding to the click operation of the user on the advertisement data in the advertisement data statistical period and acquiring the user identification information of the user; judging whether a multilayer filter corresponding to the advertisement data statistical period is created currently;
the determining and storing module is used for determining that the multi-layer filter does not store the user identification information and has the lowest level, and storing the user identification information into the target layer filter if the multi-layer filter is created currently;
the creating and storing module is used for creating the first layer filter according to the preset filtering information corresponding to the first layer filter and storing the user identification information into the first layer filter if the multilayer filter is not created currently; the filtering information comprises at least one of maximum storage data volume, fault tolerance rate and occupied memory corresponding to the first layer filter;
and the query and determination module is used for querying the click information by utilizing the multilayer filter when receiving a query request aiming at the click information of the user on the advertisement data in the advertisement data statistical period so as to determine whether to continuously push the advertisement for the user according to the queried click information.
8. The apparatus of claim 7, wherein the determining and storing module comprises:
and the first query unit is used for sequentially querying from the first layer filter and according to the sequence of the levels from low to high until the target layer filter which does not store the user identification information in the multi-layer filter is queried.
9. An apparatus for processing advertisement data, comprising a processor and a memory electrically connected to the processor, wherein the memory stores a computer program, and the processor is configured to call and execute the computer program from the memory to implement the method for processing advertisement data according to any one of claims 1 to 6.
10. A storage medium for storing a computer program to be executed by a processor to implement the method of processing advertisement data according to any one of claims 1 to 6.
CN202110904171.7A 2021-08-06 2021-08-06 Advertisement data processing method and device Pending CN113763034A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110904171.7A CN113763034A (en) 2021-08-06 2021-08-06 Advertisement data processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110904171.7A CN113763034A (en) 2021-08-06 2021-08-06 Advertisement data processing method and device

Publications (1)

Publication Number Publication Date
CN113763034A true CN113763034A (en) 2021-12-07

Family

ID=78788673

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110904171.7A Pending CN113763034A (en) 2021-08-06 2021-08-06 Advertisement data processing method and device

Country Status (1)

Country Link
CN (1) CN113763034A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116258524A (en) * 2023-03-14 2023-06-13 深圳乐信软件技术有限公司 Advertisement putting method, device, equipment and storage medium based on bloom filter

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109542339A (en) * 2018-10-23 2019-03-29 拉扎斯网络科技(上海)有限公司 Data hierarchy access method, device, multi-layered memory apparatus and storage medium
CN110209874A (en) * 2019-04-24 2019-09-06 北京奇艺世纪科技有限公司 Information processing method, device, electronic equipment and storage medium
WO2020151332A1 (en) * 2019-01-23 2020-07-30 平安科技(深圳)有限公司 Data deletion method and apparatus, computer device, and storage medium
CN112217893A (en) * 2020-10-12 2021-01-12 广州欢网科技有限责任公司 Frequency and quantity control method, device and equipment for advertisement delivery and advertisement delivery system
CN112527433A (en) * 2020-12-08 2021-03-19 平安科技(深圳)有限公司 Page popup control method and device, computer equipment and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109542339A (en) * 2018-10-23 2019-03-29 拉扎斯网络科技(上海)有限公司 Data hierarchy access method, device, multi-layered memory apparatus and storage medium
WO2020151332A1 (en) * 2019-01-23 2020-07-30 平安科技(深圳)有限公司 Data deletion method and apparatus, computer device, and storage medium
CN110209874A (en) * 2019-04-24 2019-09-06 北京奇艺世纪科技有限公司 Information processing method, device, electronic equipment and storage medium
CN112217893A (en) * 2020-10-12 2021-01-12 广州欢网科技有限责任公司 Frequency and quantity control method, device and equipment for advertisement delivery and advertisement delivery system
CN112527433A (en) * 2020-12-08 2021-03-19 平安科技(深圳)有限公司 Page popup control method and device, computer equipment and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116258524A (en) * 2023-03-14 2023-06-13 深圳乐信软件技术有限公司 Advertisement putting method, device, equipment and storage medium based on bloom filter
CN116258524B (en) * 2023-03-14 2024-02-02 深圳乐信软件技术有限公司 Advertisement putting method, device, equipment and storage medium based on bloom filter

Similar Documents

Publication Publication Date Title
CN108289121B (en) Marketing information pushing method and device
JP6403787B2 (en) Method, apparatus and system for determining a location corresponding to an IP address
JP6716727B2 (en) Streaming data distributed processing method and apparatus
CN109309596B (en) Pressure testing method and device and server
CN106407207B (en) Real-time newly-added data updating method and device
CN111339436B (en) Data identification method, device, equipment and readable storage medium
CN108108384B (en) Data storage method and device
CN110413868A (en) Information recommendation method, device, system and storage medium
EP2652909B1 (en) Method and system for carrying out predictive analysis relating to nodes of a communication network
CN107301181B (en) Account recommendation method and device
CN111345011A (en) APP pushing method and device, electronic equipment and computer readable storage medium
US9135630B2 (en) Systems and methods for large-scale link analysis
CN106055630A (en) Log storage method and device
CN112035531A (en) Sensitive data processing method, device, equipment and medium
CN113763034A (en) Advertisement data processing method and device
CN110187992B (en) Fault analysis method and device
CN112182021B (en) User data query method, device and system
CN116150355A (en) Category classification method, text classification method and device, electronic equipment and medium
CN106469166A (en) A kind of information processing method and device
CN113067913B (en) Positioning method, device, server, medium and product
CN108763498B (en) User identity identification method and device, electronic equipment and readable storage medium
CN115511512A (en) Information acquisition method, device, equipment and storage medium
CN113010382A (en) Buried point data calculation method and device, storage medium and electronic equipment
CN111127064B (en) Method and device for determining social attribute of user and electronic equipment
CN111611056A (en) Data processing method and device, computer equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination