Site-independent access volume determination method, apparatus, device, and storage medium

By identifying the type of access data and generating multi-dimensional identifiers, the problem of large errors in calculating unique access volume is solved, and accurate and efficient updates of unique access volume are achieved.

CN116684458BActive Publication Date: 2026-01-06CHINA CONSTRUCTION BANK +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310714710.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-15
Publication Date
2026-01-06
Estimated Expiration
2043-06-15

AI Technical Summary

Technical Problem

Existing methods for calculating unique visitors have significant errors because they cannot accurately detect different individuals or unregistered users using the same IP address, which affects the accuracy of operational analysis and user research.

Method used

By identifying the access data of the target object, distinguishing between registered and unregistered accounts, and generating multi-dimensional identifiers using device identifiers, network usage behavior, and object attribute information, we can ensure that unique visitors are accurately identified and that unique access counts are updated.

Benefits of technology

It improves the accuracy and efficiency of unique visitor count calculation, avoids duplicate statistics, and ensures the authenticity and credibility of unique visitor count.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116684458B_ABST
    Figure CN116684458B_ABST
Patent Text Reader

Abstract

The application discloses a site-independent access amount determination method and device, equipment and a storage medium, and relates to the field of data processing. The method performs type identification on an account identifier in object access data to obtain a target account type. When the target account type is a registered account type, it is determined whether the account identifier is located in a historical access account set of a target site. If it is determined that the account identifier is not located in the historical access account set, a first object identifier of a target object in the device identifier dimension is generated according to the unregistered account identifier and a target device identifier carried by the object access data. If it is determined that the first object identifier is not located in a first identifier set of the target site, it is determined that the target object is a new independent access person of the target site, and the independent access amount of the target site is updated to obtain an updated independent access amount, so that the number of new independent access persons of the target site can be accurately counted, and the accuracy of the independent access amount of the site is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data processing, and provides a method, apparatus, device, and storage medium for determining the number of unique visits to a website. Background Technology

[0002] Unique visitors (UV) (also known as unique visitors or uniquely identified visitors) refer to the number of unique visitors to a website, application, or other online service within a specified period (i.e., each individual is counted only once). The number of unique visitors, or unique visits, is the most accurate indicator of the target site's actual traffic.

[0003] In numerous fields, including finance, UV (unique visitor) calculation is widely used in website operation analysis and user research. By counting the UV of a specific website, application, or other online service in real time, it can provide reliable reference data for related website operations, news updates, and advertising. For example, financial institutions such as banks often display financial products and investment policies through web pages. The UV of these web pages, to a certain extent, represents the level of attention these products receive, greatly influencing the financial institutions' subsequent web page placement strategies.

[0004] However, current methods for calculating unique visitors typically rely on counting the number of Internet Protocol (IP) addresses accessing a site. This method requires each unique visitor to have one and only one unique IP address. Therefore, in scenarios where different individuals use the same IP address to access the site, the technology cannot accurately detect the true unique visitors, resulting in a large error in the calculated unique visit volume. This has a serious negative impact on business operations analysis, user research, and other related tasks.

[0005] Therefore, there is an urgent need for an effective method to improve the accuracy of unique website visits. Summary of the Invention

[0006] This application provides a method, apparatus, device, and storage medium for determining the number of unique website visits, in order to improve the accuracy of determining the number of unique website visits.

[0007] On the one hand, a method for determining the number of unique visitors to a website is provided, the method comprising:

[0008] The target object type is obtained by identifying the account identifier in the object access data of the target object. The object access data is generated based on the access operation of the target object to the target site, and the account identifier is assigned by the target site to the target object.

[0009] If the target account type is a registered account type of the target site, then determine whether the account identifier is located in the historical access account set of the target site;

[0010] If the target object is not in the set of historical access accounts, a first object identifier in the device identifier dimension is generated based on the unregistered account identifier of the target site and the target device identifier carried in the object access data.

[0011] If the first object identifier is not located in the first identifier set of the target site, then the target object is determined to be a new independent visitor of the target site, and each element in the first identifier set represents a historical visitor based on the device identifier dimension;

[0012] Update the unique visit count of the target site to obtain the updated unique visit count.

[0013] On the one hand, a device for determining the number of unique visits to a website is provided, the device comprising:

[0014] A type identification unit is used to identify the type of the account identifier in the object access data of the target object, and obtain the target account type corresponding to the account identifier. The object access data is generated based on the access operation of the target object to the target site, and the account identifier is assigned by the target site to the target object.

[0015] The first determining unit is configured to determine whether the account identifier is located in the historical access account set of the target site if the target account type is a registered account type of the target site;

[0016] An identifier generation unit is used to generate a first object identifier for the target object in the device identifier dimension based on the unregistered account identifier of the target site and the target device identifier carried in the object access data if the target object is not in the historical access account set.

[0017] The second determining unit is used to determine that the target object is a newly added independent visitor of the target site if the first object identifier is not located in the first identifier set of the target site. Each element in the first identifier set represents a historical access object based on the device identifier dimension.

[0018] The parameter update unit is used to update the unique visit count of the target site to obtain the updated unique visit count.

[0019] Optionally, the second determining unit is specifically used for:

[0020] Determine whether the object access data carries network usage behavior information of the target object, wherein the network usage behavior information includes at least one of the network address information used by the target object when accessing the target site and the access behavior information generated;

[0021] If the network usage behavior information is carried, a second object identifier for the target object in the network usage behavior dimension is generated based on the unregistered account identifier and the network usage behavior information;

[0022] If the first object identifier is not in the first identifier set and the second object identifier is not in the second identifier set of the target site, then the target object is determined to be the newly added independent visitor. Each element in the second identifier set represents a historical visitor based on the network usage behavior dimension.

[0023] Optionally, the first determining unit is further configured to:

[0024] If the target account type is an unregistered account type, then determine whether the target device identifier is located in the device identifier set of the target site; wherein, the device identifier set includes device identifiers of historical access objects that accessed the target site within a preset time range;

[0025] If the target object is not in the set of device identifiers, then the target object is determined to be the newly added independent visitor.

[0026] Optionally, the first determining unit is specifically used for:

[0027] If the target account type is the registered account type, determine whether the target site's object attribute set contains the target object attribute information corresponding to the account identifier. The object attribute set includes the identity attribute information provided by the registered object of the target site when it registered its identity in the past.

[0028] If the target object attribute information corresponding to the account identifier is not included, then it is determined whether the account identifier is located in the historical access account set.

[0029] Optionally, the first determining unit is further configured to:

[0030] If the target object attribute information is included, then a third object identifier based on the target object attribute information is generated for the target object based on the object attribute dimension.

[0031] If the third object identifier is not located in the third identifier set of the target site, then the target object is determined to be the newly added independent visitor, and each element in the third identifier set represents a historical visitor based on the object attribute.

[0032] Optionally, the parameter update unit is further configured to:

[0033] Based on the object access data, at least one set of detection parameters of the target site is updated according to a preset parameter update strategy. The at least one set of detection parameters includes a set of historical access accounts, a set of device identifiers, a first set of identifiers, a second set of identifiers, and a third set of identifiers.

[0034] On one hand, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of any of the above methods.

[0035] On the one hand, a computer storage medium is provided that stores computer program instructions thereon, which, when executed by a processor, implement the steps of any of the above methods.

[0036] On one hand, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the steps of any of the methods described above.

[0037] In this embodiment, by identifying the account identifier in the object access data generated from the target object's access operation to the target site, the target account type corresponding to the account identifier is obtained. When the target account type is a registered account type of the target site, it is determined whether the account identifier is in the historical access account set of the target site. If it is determined that the account identifier is not in the historical access account set, a first object identifier for the target object in the device identifier dimension is generated based on the unregistered account identifier of the target site and the target device identifier carried in the object access data. If it is determined that the first object identifier is not in the first identifier set of the target site, the target object is determined to be a new unique visitor to the target site, and the unique visit count of the target site is updated to obtain the updated unique visit count.

[0038] This method first identifies the account identifiers assigned to target objects by the target site, distinguishing between registered and unregistered visitors, and then determines the unique visit volume calculation process corresponding to the account type. When the account type is a registered account, it first checks whether the account identifier exists in the target site's historical visit accounts. This directly determines whether the visitor has previously accessed the target site through this registered account, avoiding duplicate counting of objects that have already visited the site, ensuring the accuracy of unique visit volume calculation, and saving subsequent determination processes, thus improving the efficiency of site unique visit volume calculation. When the account identifier is not in the historical visit account set, based on the unregistered account identifier of the target site and the target device identifier carried in the object access data, a first object identifier for the target object in the device identifier dimension is generated. By further identifying whether the visitor is a unique visitor in the device identifier dimension, it avoids errors in unique visit volume statistics caused by the visitor previously accessing the site through an unregistered account, further improving the accuracy of unique visit volume calculation. When it is determined that the first object identifier is not in the first identifier set of the target site, the target object is identified as a new unique visitor of the target site, and the unique visit count of the site is updated to accurately count the number of new unique visitors of the target site.

[0039] Other features and advantages of this application will be set forth in the following description and will be apparent in part from the description or may be learned by practicing the application. The purposes and other advantages of this application may be realized and obtained by means of the structures particularly pointed out in the written description, claims, and drawings. It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not intended to limit this disclosure. Attached Figure Description

[0040] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0041] Figure 1 This is a schematic diagram illustrating an application scenario provided in the embodiments of this application;

[0042] Figure 2 This is a schematic diagram illustrating another application scenario provided by an embodiment of this application;

[0043] Figure 3 A flowchart illustrating a method for determining unique website visits provided in an embodiment of this application;

[0044] Figure 4A schematic diagram of a filter chain provided in an embodiment of this application;

[0045] Figure 5 A schematic diagram illustrating a process for calculating independent access volume, provided for an embodiment of this application;

[0046] Figure 6 A schematic diagram of a device for determining the number of unique visits to a site provided in an embodiment of this application;

[0047] Figure 7 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. Detailed Implementation

[0048] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application. Unless otherwise specified, the embodiments and features in the embodiments of this application can be arbitrarily combined with each other. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than that shown here.

[0049] The terms "first" and "second" in the specification, claims, and accompanying drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the term "comprising" and any variations thereof are intended to cover non-exclusive protection. For example, a process, method, system, product, or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or devices. The term "multiple" in this application can mean at least two, for example, two, three, or more, and the embodiments of this application do not impose limitations.

[0050] The data collection, dissemination, and use in this application all comply with relevant national laws and regulations.

[0051] To facilitate understanding of the technical solutions provided in the embodiments of this application, some key terms used in the embodiments of this application will be explained below:

[0052] Tracking data refers to special code, scripts, or tags set in applications or websites to track and record user behavior. It's used to capture and record information related to user behavior or system events. Tracking data is typically used for purposes such as analyzing user behavior, performance monitoring, and troubleshooting. When a user performs a specific action or a specific system event occurs, the tracking code is triggered and sends relevant data to data collection tools or analysis platforms for subsequent analysis and use.

[0053] Visitors: Individuals who access websites, applications, or other sites without providing personal identification information, registering, or logging in. Anonymous visitors typically access sites using temporary identities assigned by the site, without logging in with a personal account. Websites cannot directly associate visitors with specific personal identities, thus providing a degree of personal information privacy protection.

[0054] Cookies are small text files sent by a server to a user's browser and stored on the user's device. They are used to record and store specific user information when a user visits a website. Websites can use cookies to record user preferences, identify users, and provide personalized content. When a user visits the same website again, the browser sends the stored cookie to the server, allowing the website to process the information accordingly.

[0055] A filter is a component or technology used to filter data. It can receive input data and filter out data that meets the conditions according to predefined rules or conditions. It is used in fields such as data processing, query optimization, and data filtering.

[0056] A filter chain is a collection of filters organized in a specific order, chaining multiple filters together to process and filter input data sequentially. Each filter can perform specific operations or transformations on the data and pass the processed data to the next filter, ultimately yielding the final result.

[0057] A filter group is a structure that organizes multiple filters together and applies them simultaneously. It can apply multiple filters to input data at the same time to achieve more complex data processing logic. Filter groups can also merge or cross-reference the results of multiple filters to obtain more accurate data filtering results.

[0058] Roaring Bitmap: A compressed bitmap data structure used for storing and manipulating large-scale sparse or dense bitmap data in memory. It employs multi-level encoding and bitwise operations to reduce memory footprint and improve query performance. Roaring Bitmap supports logical operations on bitmaps, such as union, intersection, and difference, enabling efficient filtering and querying of large sets of integers.

[0059] Bitmap: A data structure used to represent and manipulate sets of bits, typically used to solve the problem of efficiently storing and retrieving large amounts of Boolean values. A bitmap consists of a series of binary bits, each representing the presence or absence of an element or marker. When an element exists, the corresponding bit is set to 1; when the element does not exist, the corresponding bit is set to 0. Through bitwise operations, fast insertion, deletion, and retrieval operations can be performed on bitmaps, making them an effective tool for processing large datasets.

[0060] Compressed Bitmap: A compressed bitmap is a data structure used for efficient storage and manipulation of large sets of bits. It reduces storage space by employing compression algorithms and provides efficient bit operations such as union and intersection.

[0061] A Bloom filter is a probabilistic data structure for quickly determining whether data exists. It primarily uses a bit array and multiple hash functions to map data into a bit array and applies the same hash function during the query to efficiently determine if an element belongs to a set. Bloom filters are suitable for fast querying and deduplication of large-scale datasets, with advantages including low memory usage and high query performance.

[0062] Cuckoo Filter: A data structure for quickly determining whether an element exists in a set. It outperforms traditional Bloom filters in terms of space utilization and query efficiency, and also supports deletion operations.

[0063] Bloom Filter with Expiration: A data structure that extends Bloom filters by allowing you to specify the expiration time of an element when it is added to the filter. With an expiration filter, you can check whether an element has expired while determining whether the element exists.

[0064] Hash operation: An operation that maps data of arbitrary length to a fixed-length value. Input data is converted into a hash value, also known as a hash code, hash value, or digest, using a hash function. A hash function takes input data, performs calculations on it, and generates a unique output result.

[0065] The design concept of the embodiments of this application is briefly introduced below:

[0066] Currently, UV (unique visitor) calculation is widely used in website operation analysis and user research. By counting the UV of a specific website, application, or other online service in real time, it can provide reliable reference data for related website operations, news updates, and advertising. For example, financial institutions such as banks often display financial products and investment policies through web pages. The UV of these web pages, to a certain extent, represents the level of attention these products receive, greatly influencing the financial institutions' subsequent web page placement strategies.

[0067] However, current methods for calculating unique visitors typically rely on either IP address statistics (counting the number of IP addresses accessing the site) or user account statistics (calculating unique visitors based on registered user accounts logged in). The IP address method requires each unique visitor to have exactly one unique IP address. Therefore, in scenarios where different individuals use the same IP address or the same individual uses multiple IP addresses, this method cannot accurately detect the true unique visitors (UV). Similarly, in scenarios where user registration and login are not mandatory (i.e., allowing anonymous visitor access), the user account method cannot accurately detect the true UV because different individuals use the same guest account. Both of these technologies suffer from significant errors in unique visit calculation, which can severely negatively impact operational analysis, user research, and other business operations.

[0068] In view of the above problems, this application provides a method for determining the unique visit volume of a website. By identifying the account identifier in the object access data generated from the access operations of a target object to a target website, it distinguishes between registered and unregistered access objects and determines the unique visit volume determination process corresponding to the account type. When the account type is a registered account, it first determines whether the account identifier exists in the historical access accounts of the target website. This directly determines whether the access object has previously accessed the target website through the registered account, avoiding duplicate counting of objects that have already visited the website, ensuring the accuracy of unique visit volume calculation, and saving subsequent determination processes, thus improving the efficiency of unique visit volume calculation. When the account identifier is not in the historical access account set, a first object identifier for the target object in the device identifier dimension is generated based on the unregistered account identifier of the target website and the target device identifier carried in the object access data. By further identifying whether the access object is a unique visitor in the device identifier dimension, it avoids errors in unique visit volume statistics caused by the access object previously accessing the website through an unregistered account, further improving the accuracy of unique visit volume calculation. When it is determined that the first object identifier is not in the first identifier set of the target site, the target object is identified as a new unique visitor of the target site, and the unique visit count of the site is updated to accurately count the number of new unique visitors of the target site.

[0069] To further improve the accuracy of determining unique site visitors, this application embodiment further generates a second object identifier for the target object in the network usage behavior dimension based on the unregistered account identifier and the network usage behavior information when determining that the object access data carries network address information and access behavior information used by the target object when accessing the target site. When it is determined that the first object identifier is not located in the first identifier set, it further determines whether the target object is a new unique visitor of the target site by judging whether the second object identifier is also not located in the second identifier set of the target site, which includes various historical access objects based on the network usage behavior dimension. This method, based on the uniqueness of the access object in the network usage behavior dimension, combines the device identifier dimension and the network usage behavior dimension to further comprehensively and accurately identify site visitors, further avoiding duplicate statistics and calculations of site visitors, and enhancing the accuracy and reliability of calculating unique site visitors.

[0070] To further improve the efficiency of calculating unique website visits, this embodiment of the application, before determining that the target account type is a registered account type and whether the account identifier is in the historical access account set, can first determine whether the target site's object attribute set contains the target object attribute information corresponding to the account identifier. This object attribute set includes the identity attribute information provided by the registered objects of the target site when they were registered in the past. When it is determined that the object attribute set contains the target object attribute information, a third object identifier based on the object attribute dimension of the target object is directly generated based on the target object attribute information. By determining that the third object identifier is not in the third identifier set of the target site, which includes historical access objects based on object attributes, the target object is determined to be a new unique visitor. This method introduces the unique identity attribute information of registered access objects, and can directly identify the access object based on the third object identifier in the object attribute dimension, without having to combine it with other dimensions such as account identifier, device identifier, network usage behavior, etc. This can achieve faster and more accurate determination of whether the access object is a unique visitor, thus improving the efficiency of calculating unique website visits.

[0071] To further improve the accuracy of determining unique website visitors, this application also provides a method for identifying unregistered visitors. When the target account type is determined to be an unregistered account, it is determined whether the target device identifier is located in the device identifier set of the target website. This device identifier set includes device identifiers of historical visitors who accessed the target website within a preset time range. If the target device identifier is not located in the device identifier set, the target is determined to be a newly added unique visitor.

[0072] To ensure the accuracy of determining the number of unique visitors to a site, this embodiment of the application, after determining that the target object is a new unique visitor, will also update the various detection parameter sets of the target site based on the object's access data according to a preset parameter update strategy. These include the historical access account set, device identifier set, first identifier set, second identifier set, and third identifier set. By accurately recording and maintaining the relevant identifiers of the access objects in each dimension, each detection parameter set can accurately reflect the situation of the historical access objects of the target site at the latest moment in each dimension, thus ensuring the accuracy and reliability of determining the number of unique visitors to the site.

[0073] The following is a brief introduction to the application scenarios to which the technical solutions of this application can be applied. It should be noted that the data collection, dissemination, and use in the technical solutions of this application all comply with the requirements of relevant national laws and regulations, and the application scenarios described below are only for illustrating the embodiments of this application and not for limitation. In specific implementation, the technical solutions provided by the embodiments of this application can be flexibly applied according to actual needs.

[0074] The technical solutions provided in this application can be applied to any scenario where the number of unique visitors to a website, application, or other online service is determined. Figure 1 The diagram shown is an application scenario diagram provided by an embodiment of this application. In this scenario, a terminal device 100 and a site device 101 may be included.

[0075] Terminal device 100 is the device used by the accessing object to access the target site provided by the site device, such as a personal computer, mobile phone, or tablet computer. The accessing object can access the target site and interact with the site device through a client installed on the terminal device, sending access requests, receiving responses, and displaying the site's content and functions to the accessing object. The client can be a software client (such as a browser or mobile application), or a webpage or mini-program client; the specific type of client is not limited here.

[0076] Site device 101 can be a computer device with certain processing power and storage capacity, such as a personal computer (PC), server, etc., and can be configured to execute any of the methods provided in the embodiments of this application. Further examples will not be listed here. Site device 101 can host websites, applications, or other online services, and provide data storage and management functions for these sites. It processes access requests from terminal devices and provides the necessary data information and site services to the terminal devices. The embodiments of this application do not limit the specific type of site. Based on the site unique access volume determination method provided in the embodiments of this application, site device 101 processes the object access data generated by the target object accessing the target site through the terminal device to determine whether the target object is a new unique visitor to the target site and decides whether to update the unique access volume of the target site. Site device 101 can also be configured with a database, which can be used to store the detection parameter set involved in the scheme provided in the embodiments of this application, intermediate data generated during the site unique access volume determination process, and information sent by the terminal device that needs to be stored.

[0077] In this embodiment, the terminal device 100 and the site device 101 can communicate directly or indirectly through one or more networks 102. The network 102 can be a wired network or a wireless network. For example, the wireless network can be a mobile cellular network or a Wireless-Fidelity (WIFI) network. Of course, it can also be other possible networks, and this embodiment of the invention does not limit them.

[0078] It should be noted that, Figure 1The examples shown are merely illustrative; in reality, the number of terminal devices 100 and site devices 101 is not limited and is not specifically limited in this embodiment.

[0079] In one possible implementation, such as Figure 2 The diagram shown is another application scenario provided by the embodiment of this application. In this scenario, it may include site device 201, terminal device 202, and server 203.

[0080] Site device 201 is a computer device with certain processing capabilities and storage capacity. For example, it can be any device that can host websites, applications or other online services, such as a personal computer (PC) or server, to provide data storage and management functions for the above-mentioned sites, process access requests from terminal devices, and provide the required data information and site services to the terminal devices.

[0081] Terminal devices 202 can be any computer devices with certain processing capabilities, such as mobile phones, personal computers (PCs), tablet computers (PADs), laptops, desktop computers, mobile internet devices (MIDs), smart TVs, smart in-vehicle devices, and smart wearable devices, etc. Any device that can connect to site device 201 and server 203 is acceptable. This embodiment does not impose any specific limitations.

[0082] Server 203 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. It can be configured to execute any of the methods provided in this application embodiment, and will not be listed individually here. The target object accesses the target site provided by site device 201 through terminal device 202. Based on the site unique access volume determination method provided in this application embodiment, the server processes the object access data generated by the target object's access operation to the target site to determine whether the target object is a new unique visitor to the target site and decides whether to update the unique access volume of the target site. It should be understood that the execution subject of this method being a server is merely an illustrative example and should not be construed as a limitation of the method.

[0083] In this embodiment, the site device 201, terminal device 202, and server 203 can communicate directly or indirectly through one or more networks. This network can be a wired network or a wireless network; for example, the wireless network can be a mobile cellular network or a Wireless-Fidelity (WIFI) network, or any other possible network. This embodiment of the invention does not limit the types of networks used.

[0084] It should be noted that, Figure 2 The examples shown are merely illustrative; in reality, the number of site devices 201, terminal devices 202, and servers 203 is unlimited and is not specifically limited in this embodiment. Figure 1 , Figure 2 The components and structures shown are merely exemplary and not restrictive. In real-world scenarios, other components and structures may be included as needed.

[0085] The method for determining the number of unique visits to a site provided by an exemplary embodiment of this application will be described below with reference to the accompanying drawings and the application scenarios described above. It should be noted that the application scenarios described above are only shown to facilitate understanding of the spirit and principles of this application, and the implementation of this application is not limited in any way in this respect.

[0086] See Figure 3 The diagram shown is a flowchart illustrating the method for determining unique website visits provided in this application embodiment. The execution entity of this method is... Figure 1 The site equipment shown or Figure 2 The specific implementation process of this method for the server shown is as follows:

[0087] Step 301: Perform type identification on the account identifier in the object access data of the target object to obtain the target account type corresponding to the account identifier.

[0088] In this embodiment of the application, the access operation performed by the target object on the target site will generate object access data corresponding to the target object. The object access data carries the account identifier assigned to the target object by the target site. By identifying the type of the account identifier, the target account type of the account identifier can be determined, and the subsequent processing flow can be determined according to the target account type.

[0089] In one possible implementation, object access data can be in various forms, such as site access logs and event tracking data from the target site (e.g., web pages, applications). Site access logs are typically stored in text files or database formats, recording access information about the target site, including access events, IP addresses, and accessed pages or resources. When an object accesses the site through a browser or application, the target site's server automatically records this information and generates corresponding site access logs. These logs can be obtained and analyzed using server log files or other data analysis tools. Event tracking data is obtained by the target site's developers and related personnel through event tracking within the target site's applications or web pages. Event tracking includes embedding special code, tags, or scripts within the site that can capture object access behavior in real time and generate corresponding event records. These events and object behaviors are recorded as event logs. Therefore, event tracking data carries object behavior data, including browsing, clicking, searching, form submission, and other access operations and related information. This data can also be obtained and analyzed by the site's backend or specific analysis tools.

[0090] Specifically, this involves writing event tracking code into the client-side code of the target site, such as an application or website. This tracking code is responsible for capturing key information such as the real-time access behavior and access event triggering of an object, and sending the real-time tracking data to the target site's server or a third-party data processing platform in a specific format. After receiving the real-time tracking data, the server or third-party data processing platform parses, verifies, and processes the data to obtain the object access data corresponding to the object and stores it in a database or distributed storage system, so that the object access data can be processed using the site independent access volume determination method provided in this application embodiment.

[0091] In one possible implementation, the account identifier can be a registration account number assigned by the target site to an individual registering an account. This number may include, but is not limited to, a registered username, a registered member number, the individual's registered email address, or a mobile phone number. The registration account number uniquely identifies a registered user and is associated with account information pre-stored in the target site's database. This account information includes identity attributes submitted by the registered user during previous account registrations, including but not limited to name, age, gender, contact number, email address, ID number, and home address. Therefore, the target account type can be determined by comparing the registration account number with multiple pre-stored registration account information in the target site's database. For example, it can be determined whether the account is a registered account type by querying the account database to verify the existence of the account number.

[0092] In one possible implementation, where the target site does not require registration, allowing anonymous access as a guest (unregistered), the account identifier may include both the registered account number and the unregistered account number. The unregistered account number can be a fixed number uniformly assigned by the target site to all anonymous visitors, such as "guest," or it can be a randomly assigned, non-fixed number. Therefore, for guest account numbers of the unregistered account type, since guest account numbers have a relatively fixed data format, they can be directly determined using pre-set identification rules. For example, if the guest number is fixed as "guest," the extracted account identifier can be directly compared to see if it matches "guest." If the guest number is a randomly generated, non-fixed number, it can be determined whether the account identifier meets specific format or length rules to determine if it is an unregistered account type.

[0093] Step 302: Determine whether the target account type is a registered account type. If yes, proceed to step 303; otherwise, proceed to step 306.

[0094] In this embodiment, the target account type is obtained by identifying the account identifier in the object access data. Based on the target account type, it can be distinguished whether the object is accessing the site as a registered object or as an anonymous unregistered object. Different independent access volume determination processes are designed for different account types. This allows this embodiment to accurately determine whether the object is a new independent visitor to the target site in scenarios such as objects accessing the site anonymously as unregistered objects or objects first accessing the site anonymously as unregistered objects and then accessing the site as registered objects, thereby improving the accuracy of determining the site's independent access volume.

[0095] Step 303: Determine whether the account identifier is in the historical access account set of the target site. If yes, proceed to step 307; otherwise, proceed to step 304.

[0096] In this embodiment, when it is determined that the account type of the current visitor's account identifier is a registered account type, the consistency of the current visitor's account identifier with each historical visitor in the historical visitor account set is compared to determine whether it is located in the historical visitor account set. The historical visitor account set of the target site stores the registration account numbers of each historical independent visitor who has visited the target site within a preset time range. This preset time range can be set according to the actual business needs of the target site, and this embodiment does not limit it. If it is determined that the current visitor's account identifier is located in the historical visitor account set of the target site, it can be determined that the visitor has used this account identifier to visit the target site, that is, the current visitor is not a new independent visitor of the target site. However, determining solely from the account identifier dimension cannot guarantee the accuracy of determining the site's independent visit volume. Therefore, even if it is determined that it is not in the historical visitor account set, this embodiment will continue to execute the subsequent determination process.

[0097] In one possible implementation, different deduplication methods such as bitmap, Roaring Bitmap, Compressed Bitmap, and filters can be used to determine whether an account identifier is located in the historical access account set. The choice can be made based on specific business requirements such as accuracy, hardware cost, and time cost. This application embodiment does not specifically limit the deduplication method. A filter is a data component commonly used in data processing, query optimization, and data filtering to filter data. Common filters include Bloom filters, Cuckoo filters, Bloom filters with Expiration, and Filter Chains. A filter can receive one or more input data points and, based on predefined rules or conditions, quickly retrieve and determine whether one or more specific data points exist in a stored dataset, efficiently filtering out data that does not meet the conditions to improve processing efficiency.

[0098] Specifically, the operation of determining whether an account identifier is in the historical access account set in this embodiment of the application is performed using a Bloom filter. This includes using a Bloom filter to store the registered account numbers of independent visitors who have accessed the target site within a preset time range, thereby obtaining the historical access account set of the target site. Taking the historical access account set as [1001, 2002, 3003, 4004] and the account identifier of the current access object as 2002 as an example, assuming the bit array size of the Bloom filter is 10, and three different hash functions are used to calculate the hash value, when determining whether an account identifier is in the historical access account set, a hash operation is performed on the account identifier to obtain three corresponding hash values: h1 = 2, h2 = 5, h3 = 8. The bit array of the Bloom filter is then queried for the bit corresponding to the above hash value. If all bits are 1, that is, the bits at indices 2, 5, and 8 of the bit array are all 1, then it is determined that the account identifier is in the historical access account set. If any bit is 0, it can be determined that the account identifier does not exist in the historical access account set. The Bloom filter can make full use of the high-speed access capability of memory and avoid frequent disk I / O operations, thereby reducing the consumption of computing resources.

[0099] Specifically, the operation of determining whether an account identifier is in the historical access account set in this embodiment of the application is performed using RoaringBitmap. This includes using RoaringBitmap's Application Programming Interface (API) to sequentially add the registered account numbers of independent visitors who have accessed the target site within a preset time range to RoaringBitmap. For example, by calling bitmap.add(1001), bitmap.add(2002), bitmap.add(3003), and bitmap.add(4004), these registered account numbers are added to RoaringBitmap to obtain the historical access account set [1001, 2002, 3003, 4004]. The account identifier 2002 of the current access object is used as the input parameter of RoaringBitmap to perform logical operations. The contains() method of RoaringBitmap can be used to check whether the account identifier exists in the historical access account set. If `bitmap.contains(2002)` returns true, it indicates that the account identifier is in the historical access account set; otherwise, it indicates that the account identifier is not in the historical access account set. RoaringBitmap can efficiently store and manipulate bitmap data using compression algorithms and bitwise operations, significantly reducing storage space requirements. Furthermore, it offers fast execution speed for logical operations on bitmaps. Therefore, using RoaringBitmap as a filter can quickly determine whether an account identifier is in the historical access account set, thereby identifying whether the target object is a new independent visitor.

[0100] In one possible implementation, to improve the accuracy, efficiency, and computational resources of identifying unique website visitors, when the target account type is determined to be a registered account type, it can be first determined whether the target site's object attribute set contains the target object attribute information corresponding to the account identifier. If the object attribute set contains the target object attribute information, a third object identifier based on the object attribute dimension is generated for the target object. If it is determined that the third object identifier is not in the target site's third identifier set, the target object is identified as a new unique visitor to the target site. If it is determined that the object attribute set does not contain the target object attribute information corresponding to the account identifier, the subsequent process of determining whether the account identifier is in the historical visitor account set continues.

[0101] Specifically, object attribute information includes the identity attribute information provided by registered objects on the target site during their historical registration, including but not limited to each object's name, age, gender, contact number, email address, ID number, and home address. The target site stores the received identity attribute information of each object in its database and associates the identity attribute information of different objects with the registration account number assigned to that object to obtain an object attribute set. Therefore, when the target object attribute information corresponding to the account identifier is retrieved from the object attribute set in the database, the identity attribute information uniquely corresponding to the current visitor and identifying its natural person identity is determined. Based on the identity attribute information, a third object identifier for the target object is generated using a hash algorithm or MD5 algorithm based on the object attribute dimension. By comparing the consistency of the third object identifier of the current visitor with each third identifier in the third identifier set, it is determined whether it is located in the third identifier set. Each element in the third identifier set represents a historical visitor based on object attributes. That is, the target site's third identifier set can store the third identifiers of each historical independent visitor who has visited the target site within a preset time range, in terms of the object attribute dimension. If the third object identifier of the accessed object is determined to be within the set of third identifiers, it can be directly determined that the natural person object uniquely corresponding to the object attribute information has visited the target site. This allows for a more accurate and rapid determination that the accessed object is not a new independent visitor to the target site, reducing subsequent filtering operations and improving the efficiency of determining independent visitors. Furthermore, it avoids errors in calculating the number of independent visits caused by the same natural person repeatedly accessing the site using different registered account numbers. However, if the object attribute set does not contain the target object attribute information corresponding to the account identifier, this embodiment continues to execute the subsequent process of determining independent visitors to the site using the historical access account set.

[0102] Step 304: Based on the unregistered account identifier of the target site and the target device identifier carried in the object access data, generate the first object identifier of the target object in the device identifier dimension.

[0103] In this embodiment of the application, to avoid the situation where the same natural person first accesses the target site anonymously as an unregistered object and then accesses it again through a registered account, causing duplicate calculation of the site's unique access volume and resulting in errors in the determination of unique access volume, this embodiment of the application, when determining that the current access object is accessing as a registered object and the account identifier does not exist in the historical access account set of the target site, will generate a first object identifier for the current access object in the device identifier dimension based on the unregistered account identifier of the target site and the target device identifier carried in the object access data of the current access object. This first object identifier will be used for further judgment of the access object in the device identifier dimension to ensure the accuracy of the site's unique access volume.

[0104] Specifically, in scenarios where the target site does not require registration, allowing anonymous access as a guest (unregistered), the unregistered account number can be a fixed number uniformly assigned by the target site to all anonymous guests, such as "guest". The target device identifier carried in the object access data is information used to uniquely identify the device used by the object to access the target site. It can be any identifier that can be used to represent the device, including but not limited to the device's Media Access Control (MAC) address, International Mobile Equipment Identity (IMEI) number, and Universally Unique Identifier (UUID).

[0105] In one possible implementation, to protect the personal privacy of the accessed object and improve data security, this application embodiment can use a hash algorithm or a message digest algorithm (MD5) to encrypt device identifiers such as MAC address, IMEI number, and UUID, generating an irreversible identifier. This encrypted identifier is then used as the target device identifier, and together with the identifier of the unregistered account on the target site, generates the first object identifier for the accessed object in the device identifier dimension. Since the encrypted target device identifier is irreversible, it is impossible to reconstruct the object's device information using the target device identifier, thus ensuring the security of the object information.

[0106] Step 305: Determine whether the first object identifier is located in the first identifier set of the target site. If yes, proceed to step 307; otherwise, proceed to step 308.

[0107] In this embodiment, each element in the first identifier set of the target site represents a historical visitor based on the device identifier dimension. Specifically, the first identifier set stores the first identifiers of historical independent visitors who have anonymously visited the target site as guests using a specific device within a preset time range, each in the device identifier dimension. This preset time range can be set according to the actual business needs of the target site, and is not limited in this embodiment. When obtaining the first object identifier of the visitor in the device identifier dimension, the consistency of the first object identifier of the current visitor is compared with each first identifier in the first identifier set to determine if it is located in the first identifier set. If it is determined that the first object identifier of the current visitor is located in the first identifier set, it can be determined that the current visitor has used the device and anonymously visited the target site as a guest, meaning the current visitor is not a new independent visitor to the target site. If it is determined that the first object identifier of the current visitor does not exist in the first identifier set, combined with the previously determined account identifier of the current visitor's registered account type, which also does not exist in the historical visitor account set of the target site, the visitor is determined to be a new independent visitor to the target site based on both the account identifier dimension and the device identifier dimension, ensuring the accuracy of determining the site's unique visit volume.

[0108] In one possible implementation, different deduplication methods such as RoaringBitmap, bitmap, and filters can be used to determine whether the first object identifier is located in the first identifier set of the target site. This application does not specifically limit the deduplication method.

[0109] In one possible implementation, for multiple different filtering operations such as determining whether an account identifier is in the historical access account set and determining whether a first object identifier is in the first identifier set, a filter chain consisting of two filters can be used. The two filters respectively store sets of detection parameters representing the historical access account set and the first identifier set. Different filters on the same filter chain are traversed; that is, within the same filter chain, if the previous filter determines that the detection parameter representing the account identifier does not exist in the detection parameter set stored in the filter, the next filter is used for judgment, until a filter determines that the current detection parameter exists in the detection parameter set, or all filters in the filter chain determine that the corresponding detection parameter does not exist in the detection parameter set.

[0110] Specifically, in filter chain B consisting of filters B1 and B2, if the preceding filter B1 determines that the account identifier does not exist in the historical access account set, then the next filter B2 is used to determine whether the first object identifier is located in the first identifier set, until either filter B1 or B2 determines that the current detection parameter exists in the detection parameter set, thus determining that the access object is not a new unique visitor to the target site. Alternatively, if all filters in the filter chain determine that the specific detection parameter does not exist in the detection parameter set, then the access object is determined to be a new unique visitor to the target site.

[0111] In one possible implementation, to further improve the accuracy of determining unique site visits, this embodiment of the application, when determining that the current visitor accesses the site using an unregistered identity and that the target object's first object identifier in the device identifier dimension does not exist in the target site's first identifier set, can further determine whether it is a new unique visitor to the target site by combining the characteristics of the target object in the network usage behavior dimension. By determining whether the object access data carries the target object's network usage behavior information, if it is determined that it carries network usage behavior information, a second object identifier for the target object in the network usage behavior dimension is generated based on the unregistered account identifier and the network usage behavior information. When it is determined that the first object identifier is not located in the first identifier set, and the second object identifier is located in the target site's second identifier set, the target object is determined to be a new unique visitor.

[0112] In one possible implementation, the second identifier set of the target site includes historical access objects based on network usage behavior dimensions. That is, the second identifier set can store network usage behavior information of each historical independent visitor to the target site within a preset time range. The network usage behavior information includes at least one of the network address information used by the object when accessing the target site and the resulting access behavior information. For example, the network address information may be the user's IP address, and the access behavior information may be the user's cookies, browser fingerprints, etc.

[0113] Specifically, object A accesses a target site that allows anonymous access as an unregistered user, but object A uses different devices to access the target site anonymously. Therefore, determining that the target object is a new independent visitor to the target site solely by identifying that the first object identifier of the target object in the device identifier dimension does not exist in the first identifier set of the target site has a certain degree of error. Furthermore, the target object's IP address and other network usage behavior information are usually determined by the local area network where the object resides and do not change with the device used by the object. Therefore, this embodiment further combines object A's unregistered account identifier with the same network usage behavior information when using different devices to generate a second object identifier for object A in the network usage behavior dimension, to further determine whether object A is a new independent visitor to the target site. For example, unregistered user A, under the local area network with IP address 123.456.789.1, first uses device 1 to access the target site. Based on the IP address information and the unregistered account identifier "guest", a second object identifier "A" for object A in the network usage behavior dimension can be generated. If user A accesses the target site again using device 2, since the IP address and the unregistered account identifier guest are the same, the generated second object identifier A is also the same, it can be determined that unregistered user A is not an independent visitor to the target site.

[0114] In one possible implementation, for the newly added detection parameters in the network usage behavior dimension used to determine whether the target object is a new independent visitor, the operation of determining whether the second object identifier of the target object in the network usage behavior dimension is located in the second identifier set of the target site can be performed by adding a new filter in the filter chain.

[0115] For details, please refer to Figure 4 As shown, filter chain B consists of filters B1, B2, and B3. These three filters determine whether a target object is a new unique visitor to the target site from the dimensions of account identifier, device identifier, and network usage behavior, respectively. Filter B1 checks if the account identifier exists in the historical access account set, filter B2 checks if the first object identifier is in the first identifier set, and filter B3 checks if the second object identifier is in the target site's second identifier set. This continues until any one of filters B1, B2, or B3 determines that a specific detection parameter exists in the corresponding detection parameter set, thus determining that the visitor is not a new unique visitor to the target site. Alternatively, if all filters in the filter chain determine that a specific detection parameter does not exist in the detection parameter set, then the visitor is determined to be a new unique visitor to the target site.

[0116] Step 306: Determine whether the target device identifier is located in the device identifier set of the target site. If yes, proceed to step 307; otherwise, proceed to step 308.

[0117] In this embodiment, when it is determined that the target account type of the accessing object's account identifier is an unregistered account type of the target site, i.e., the accessing object is anonymously accessing the target site using an unregistered identity, the target device identifier carried in the access data can be directly compared with the device identifiers in the target site's device identifier set to determine whether it is located in the device identifier set. This device identifier set can store the device identifiers of historical independent visitors who have accessed the target site within a preset time range. Therefore, if it is determined that the target device identifier of the accessing object is not in the device identifier set, the target object can be identified as a newly added independent visitor.

[0118] In one possible implementation, when the object access data carries network usage behavior information of the target object, the network usage behavior information can also be combined to determine the access object that performs anonymous access using an unregistered object identity, thereby further improving the accuracy of determining the site's unique visit volume.

[0119] Specifically, when it is determined that the target device identifier of the current visitor is not in the device identifier set of the target site, it is determined that no historical independent visitor has used this device to anonymously access the target site. However, if the same individual has anonymously accessed the target site using another device, there will be an error in the calculation of the site's unique visit volume. Therefore, in this embodiment, after determining that the target device identifier of the current visitor is not in the device identifier set of the target site, it will also determine whether the network usage behavior information, such as the IP address and cookies of the current visitor, is in the historical network usage behavior information set of the target site. This historical network usage behavior information set includes the network usage behavior information used by each of the historical independent visitors of the target site, to determine whether any historical independent visitors have used the same network usage behavior information to anonymously access the target site. If it is determined that no historical independent visitor has used this network usage behavior information to anonymously access the target site, then the current visitor can be determined as a new independent visitor of the target site.

[0120] Step 307: Determine that the target object is not a new unique visitor to the target site.

[0121] In this embodiment, the criteria for determining independent visitors to a site are provided in multiple dimensions, including account identifier, device identifier, network usage behavior, and object attribute information. As long as any one of the detection parameters corresponding to the above criteria exists in the detection parameter set corresponding to each historical independent visitor of the target site, it can be determined that the target object is not a new independent visitor of the target site, without having to execute the subsequent independent visit determination process. This enables a quick determination of whether the target object is an independent visitor of the target site without having to judge the detection parameters in all dimensions sequentially, thus reducing the consumption of computing resources.

[0122] Step 308: Identify the target audience as new unique visitors to the target site.

[0123] Step 309: Update the unique visitors to the target site to obtain the updated unique visitors.

[0124] In this embodiment of the application, when it is determined that an object belongs to a new unique visitor of the target site, the UV of the target site can be updated by increasing the value by one unit, so as to accurately and timely count the latest unique visitors of the target site.

[0125] In one possible implementation, after the target object is identified as a new unique visitor, the target object becomes a historical unique visitor of the target site. Therefore, according to a preset parameter update strategy, the historical access account set, device identifier set, first identifier set, second identifier set, and third identifier set of the target site can be updated based on the account identifier, target device identifier, and detection parameters such as the first object identifier, second object identifier, and third object identifier generated during the determination of the site's unique access volume. By accurately recording and maintaining the relevant identifiers of the access objects in each dimension, each detection parameter set can accurately reflect the situation of the historical access objects of the target site at the latest moment in each dimension, ensuring the accuracy and reliability of the determination of the site's unique access volume.

[0126] The following describes the solution of this application embodiment with specific examples. Table 1 below shows a multi-level, multi-dimensional filter for determining unique website visits provided by this application embodiment. This multi-level, multi-dimensional filter includes three filter groups A, B, and C, ordered from highest to lowest priority. The design of the multi-level, multi-dimensional filter enables rapid determination of whether an access object is a unique visitor based on one or more specific detection parameters, without needing to judge all detection parameters, thus reducing computational load. Based on the multi-level, multi-dimensional filter composed of multiple filter groups, when specific detection parameters need to be added or removed according to actual business needs, it is only necessary to increase or decrease the filter groups, the number of filter groups, or their priorities, to achieve flexible adjustment of the multi-dimensional filter.

[0127] Filter group Filter chains (those with the same number belong to the same chain) Detection parameters A 1 Third object identifier B 2 Account ID B 2 First object identifier B 2 Second object identifier C 3 Target device identification C 3 Internet usage behavior information

[0128] Table 1

[0129] The filter group, as the smallest processing unit, can be composed of a filter switch, a filter device, and an update device. The filter switch is used to determine whether the input data has the detection parameters required by the filter group, thereby determining whether the filter group can process the input data. The filter device is used to detect whether the detection parameters of the input data are already in the detection parameter set inside the filter group. The update device is used to update the data into the detection parameter set for new detection parameters that are determined not to be in the detection parameter set inside the filter group. Each part of the structure can be freely assembled through configuration, reducing development and maintenance costs.

[0130] Specifically, filter group A is used to detect whether the third object identifier of the target object in the object attribute dimension is located in the third identifier set of the target site. Filter group C is used to detect whether the target device identifier of the target object is located in the device identifier set of the target site and whether the network usage behavior information of the target object is located in the historical network usage behavior information set of the target site. Filter group B is used to sequentially detect whether the account identifier of the target object is located in the historical access account set of the target site, whether the first object identifier of the target object in the device identifier dimension is located in the first identifier set of the target site, and whether the second object identifier of the target object in the network usage behavior dimension is located in the second identifier set of the target site. Different filter groups operate mutually exclusively, that is, the filter group with higher priority performs the relevant detection parameter judgment and processing first, unless the object access data of the input filter group does not include the detection parameters corresponding to that filter group, then the filter with lower priority is used for judgment and processing. If the input data includes the detection parameters of the current filter group, then the judgment result of the current filter is directly used as the final result, and the filter with lower priority is not used for processing.

[0131] Specifically, taking a target object with the account identifier "guest" and an unregistered account type, a target device identifier "MAC1," and network usage behavior information "IP1" as an example, since the target object's account type is unregistered, the target object lacks a third object identifier in the object attribute dimension. Therefore, the highest priority filter group A lacks detection parameters, and the target object proceeds to filter group B in descending order of priority. Filter group B also requires the first account type (registered account type) as a detection parameter. Therefore, the next highest priority filter group C is used to determine whether the target object's target device identifier "MAC1" is located in the target site's device identifier set. If it is determined that the "MAC" is not located in the device identifier set, the target object's network usage behavior information "IP1" is then checked to see if it is located in the target site's historical network usage behavior information set. If it is also not located in the set, the target object is determined to be an independent visitor to the target site.

[0132] Each filter group also includes one or more filters. When multiple filters exist, they can exist in the form of a filter chain. For example, filter group B includes filters B1, B2, and B3. The three filters B1, B2, and B3 exist in filter group B in the form of a filter chain. Filters on the same filter chain are traversed. That is, in the same filter chain, if the first filter B1 determines that the detection parameter representing the account identifier does not exist in the detection parameter set stored by the filter, then the next filter B2 is used, and so on, until a filter determines that the current detection parameter exists in the detection parameter set, or all filters in the filter chain determine that the corresponding detection parameter does not exist in the detection parameter set.

[0133] Specifically, taking the target object's account identifier as account1, and the account type as a registered account, with the first object identifier as guest+MAC1 and the second object identifier as guest+IP1 as an example, since the target object does not have a third object identifier in the object attribute dimension, the highest priority filter group A lacks detection parameters, and the target object enters filter group B in descending order of priority. The three filters B1, B2, and B3 in the filter chain of filter group B sequentially check whether account1 is in the target site's historical access account set, whether guest+MAC1 is in the target site's first identifier set, and whether guest+IP1 is in the target site's second identifier set. If any one of filters B1, B2, or B3 detects that the relevant detection parameters already exist in the detection parameter set, it is determined that the target object is not a unique visitor to the target site. If all filters B1, B2, and B3 in the filter chain determine that the corresponding detection parameters do not exist in the detection parameter set, then the target object is determined to be a unique visitor to the target site, and the unique visitor count for the site is updated.

[0134] See Figure 5 The diagram shown is a flowchart illustrating the calculation of independent access volume based on the multi-level, multi-dimensional filters shown in Table 1, according to an embodiment of this application. The specific implementation process of this method is as follows:

[0135] Step 501: Determine whether the target object has the detection parameters required by filter group A. If yes, proceed to step 502; otherwise, proceed to step 503.

[0136] Step 502: Determine whether the third object identifier of the target object is located in the third identifier set of the target site. If yes, end; otherwise, proceed to step 510.

[0137] Step 503: Determine whether the target object has the detection parameters required by filter group B. If yes, proceed to step 504; otherwise, proceed to step 507.

[0138] Step 504: Determine whether the target object's account identifier is in the target site's historical access account set. If yes, end the process; otherwise, proceed to step 505.

[0139] Step 505: Determine whether the first object identifier of the target object in the device identifier dimension is located in the first identifier set of the target site. If yes, end; otherwise, proceed to step 506.

[0140] Step 506: Determine whether the second object identifier of the target object in the network usage behavior dimension is located in the second identifier set of the target site. If yes, end; otherwise, proceed to step 510.

[0141] Step 507: Determine whether the target object has the detection parameters required by filter group C. If yes, proceed to step 508; otherwise, end.

[0142] Step 508: Determine whether the target device identifier of the target object is located in the device identifier set of the target site. If yes, end; otherwise, proceed to step 509.

[0143] Step 509: Determine whether the network usage behavior information of the target object is located in the historical network usage behavior information set of the target site. If yes, end; otherwise, proceed to step 510.

[0144] Step 510: Increase the UV of the target site by one unit to obtain the increased UV.

[0145] Please see Figure 6 Based on the same inventive concept, embodiments of this application also provide a site unique visit determination device 60, which includes:

[0146] The type identification unit 601 is used to identify the type of the account identifier in the object access data of the target object and obtain the target account type corresponding to the account identifier. The object access data is generated based on the access operation of the target object to the target site, and the account identifier is assigned by the target site to the target object.

[0147] The first determining unit 602 is used to determine whether the account identifier is located in the historical access account set of the target site if the target account type is a registered account type of the target site.

[0148] The identifier generation unit 603 is used to generate a first object identifier for the target object in the device identifier dimension based on the unregistered account identifier of the target site and the target device identifier carried by the object access data if the target object is not in the historical access account set.

[0149] The second determining unit 604 is used to determine the target object as a newly added independent visitor of the target site if the first object identifier is not located in the first identifier set of the target site. Each element in the first identifier set represents a historical access object based on the device identifier dimension.

[0150] The parameter update unit 605 is used to update the unique visit count of the target site and obtain the updated unique visit count.

[0151] Optionally, the second determining unit 604 is specifically used for:

[0152] Determine whether the object access data carries network usage behavior information of the target object. The network usage behavior information includes at least one of the network address information used by the target object when accessing the target site and the access behavior information generated.

[0153] If network usage behavior information is carried, a second object identifier for the target object in the network usage behavior dimension is generated based on the unregistered account identifier and the network usage behavior information.

[0154] If the first object identifier is not in the first identifier set and the second object identifier is not in the second identifier set of the target site, then the target object is determined to be a newly added independent visitor. Each element in the second identifier set represents a historical visitor based on the network usage behavior dimension.

[0155] Optionally, the first determining unit 602 is also used for:

[0156] If the target account type is an unregistered account type, then determine whether the target device identifier is in the device identifier set of the target site; wherein, the device identifier set includes the device identifiers of historical access objects that accessed the target site within a preset time range;

[0157] If the target is not in the device identifier set, then the target is determined to be a newly added unique visitor.

[0158] Optionally, the first determining unit 602 is specifically used for:

[0159] If the target account type is a registered account type, determine whether the target site's object attribute set contains the target object attribute information corresponding to the account identifier. The object attribute set includes the identity attribute information provided by the registered object of the target site when it was registered in the past.

[0160] If the target object attribute information corresponding to the account identifier is not included, then determine whether the account identifier is located in the historical access account set.

[0161] Optionally, the first determining unit 602 is also used for:

[0162] If the target object attribute information is included, a third object identifier based on the target object attribute dimension is generated based on the target object attribute information.

[0163] If the third object identifier is not located in the third identifier set of the target site, the target object is determined to be a newly added independent visitor. Each element in the third identifier set represents a historical visitor based on the object attribute.

[0164] Optionally, parameter update unit 605 is also used for:

[0165] Based on object access data, at least one set of detection parameters for the target site is updated according to a preset parameter update strategy. The at least one set of detection parameters includes a set of historical access accounts, a set of device identifiers, a first set of identifiers, a second set of identifiers, and a third set of identifiers.

[0166] This device identifies registered and unregistered visitors by recognizing the account identifiers assigned to target objects by the target site, and determines the unique visit volume calculation process corresponding to the account type. When the account type is a registered account, it first checks whether the account identifier exists in the target site's historical access accounts. This directly determines whether the visitor has previously accessed the target site through this registered account, avoiding duplicate counting of objects that have already visited the site, ensuring the accuracy of unique visit volume calculation, and saving subsequent determination processes, thus improving the efficiency of site unique visit volume calculation. When the account identifier is not in the historical access account set, it generates a first object identifier for the target object in the device identifier dimension based on the unregistered account identifier of the target site and the target device identifier carried in the object access data. By further identifying whether the visitor is a unique visitor in the device identifier dimension, it avoids errors in unique visit volume statistics caused by the visitor previously accessing the site through an unregistered account, further improving the accuracy of unique visit volume calculation. When it is determined that the first object identifier is not in the first identifier set of the target site, the target object is identified as a new unique visitor of the target site, and the unique visit count of the site is updated to accurately count the number of new unique visitors of the target site.

[0167] For ease of description, the above sections are divided into functional units (or modules) and described separately. Of course, in implementing this application, the functions of each unit (or module) can be implemented in one or more software or hardware components. This device can be used to execute the methods shown in the embodiments of this application; therefore, the functions that each functional module of the device can achieve can be referred to the descriptions of the foregoing embodiments, and will not be repeated here.

[0168] Please see Figure 7 Based on the same technical concept, embodiments of this application also provide a computer device. In one embodiment, as shown in the figure, the computer device may include a memory 701, a communication module 703, and one or more processors 702.

[0169] The memory 701 is used to store computer programs executed by the processor 702. The memory 701 may mainly include a program storage area and a data storage area. The program storage area may store the operating system, and the data storage area may store various operation instruction sets, etc.

[0170] Memory 701 may be volatile memory, such as random-access memory (RAM); memory 701 may also be non-volatile memory, such as read-only memory, flash memory, hard disk drive (HDD), or solid-state drive (SSD); or memory 701 may be any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but is not limited thereto. Memory 701 may be a combination of the above-described memories.

[0171] Processor 702 may include one or more central processing units (CPUs) or digital processing units, etc. Processor 702 is used to implement the above-mentioned method for determining the number of unique site visits when calling the computer program stored in memory 701.

[0172] The communication module 703 is used to communicate with terminal equipment, site equipment or other network equipment.

[0173] This application embodiment does not limit the specific connection medium between the memory 701, communication module 703, and processor 702 described above. This application embodiment... Figure 7 The memory 701 and the processor 702 are connected via a bus 704, and the bus 704 is in Figure 7 The diagram uses thick lines to describe the connections between other components; these are for illustrative purposes only and should not be considered limiting. The 704 bus can be divided into address bus, data bus, control bus, etc. For ease of description, Figure 7 It is described using only a thick line, but does not indicate that there is only one bus or one type of bus.

[0174] The memory 701 stores a computer storage medium containing computer-executable instructions for implementing the site unique visit determination method of the embodiments of this application. The processor 702 is used to execute the site unique visit determination methods of the above embodiments.

[0175] Based on the same inventive concept, embodiments of this application also provide a storage medium storing a computer program, which, when executed on a computer, causes a computer processor to perform the steps in the site unique visit determination method according to various embodiments of this application described above.

[0176] In some possible implementations, various aspects of the site unique visit determination method provided in this application can also be implemented in the form of a program product, which includes program code. When the program product is run on a computer device, the program code is used to cause the computer device to perform the steps in the site unique visit determination method according to various exemplary embodiments of this application described above. For example, the computer device can perform the steps of the various embodiments.

[0177] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0178] The program product of the embodiments of this application may employ a portable compact disc read-only memory (CD-ROM) and include program code, and may run on a computing device. However, the program product of this application is not limited thereto. In this application, the readable storage medium may be any tangible medium that contains or stores a program that may be used by or in conjunction with a command execution system, apparatus, or device.

[0179] A readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying readable program code. This propagated data signal may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting a program for use by or in conjunction with a command execution system, apparatus, or device.

[0180] The program code contained on the readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.

[0181] Program code for performing the operations of this application can be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0182] It should be noted that although several units or sub-units of the device have been mentioned in the detailed description above, this division is merely exemplary and not mandatory. In fact, according to embodiments of this application, the features and functions of two or more units described above can be embodied in one unit. Conversely, the features and functions of one unit described above can be further divided and embodied by multiple units.

[0183] Furthermore, although the operations of the method of this application are described in a specific order in the accompanying drawings, this does not require or imply that these operations must be performed in that specific order, or that all the operations shown must be performed to achieve the desired result. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step, and / or one step may be broken down into multiple steps.

[0184] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can 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, etc.) containing computer-usable program code.

[0185] Although preferred embodiments of this application have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of this application.

[0186] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.

Claims

1. A method for determining access volume at a site, characterized by, The method comprises: type identification of an account identifier in object access data of a target object, to obtain a target account type corresponding to the account identifier, the object access data being generated based on an access operation of the target object to a target site, and the account identifier being an account identifier allocated by the target site to the target object; if the target account type is a registered account type of the target site, determining whether the account identifier is located in a historical access account set of the target site; if not located in the historical access account set, generating a first object identifier of the target object in a device identifier dimension based on an unregistered account identifier of the target site and a target device identifier carried by the object access data; if the first object identifier is not located in a first identifier set of the target site, determining that the target object is a new independent visitor of the target site, each element in the first identifier set representing a historical access object based on a device identifier dimension; based on the number of new independent visitors, increasing and updating the independent access amount of the target site to obtain an updated independent access amount.

2. The method of claim 1, wherein, if the first object identifier is not located in the first identifier set of the target site, determining that the target object is a new independent visitor of the target site, comprising: determining whether the object access data carries network usage behavior information of the target object, the network usage behavior information including at least one of network address information used by the target object when accessing the target site and access behavior information generated; if the network usage behavior information is carried, generating a second object identifier of the target object in a network usage behavior dimension based on the unregistered account identifier and the network usage behavior information; if the first object identifier is not located in the first identifier set and the second object identifier is not located in a second identifier set of the target site, determining that the target object is the new independent visitor, each element in the second identifier set representing a historical access object based on a network usage behavior dimension.

3. The method of claim 1, wherein, After type identification of an account identifier in object access data of a target object, to obtain a target account type corresponding to the account identifier, the method further comprises: if the target account type is an unregistered account type, determining whether the target device identifier is located in a device identifier set of the target site; wherein the device identifier set contains device identifiers of historical access objects accessing the target site within a preset time range; if not located in the device identifier set, determining that the target object is the new independent visitor.

4. The method of claim 1, wherein, if the target account type is a registered account type of the target site, determining whether the account identifier is located in a historical access account set of the target site, comprising: If the target account type is the registered account type, it is determined whether the target object attribute information corresponding to the account identifier is included in an object attribute set of the target site, the object attribute set including identity attribute information provided by a registered object of the target site when registering an historical identity; If the target object attribute information corresponding to the account identifier is not included, it is determined whether the account identifier is located in the historical access account set.

5. The method of claim 4, wherein, After determining whether the target object attribute information corresponding to the account identifier is included in the object attribute set of the target site if the target account type is the registered account type, the method further includes: If the target object attribute information is included, a third object identifier of the target object based on an object attribute dimension is generated based on the target object attribute information; If the third object identifier is not located in a third identifier set of the target site, it is determined that the target object is the new independent visitor, each element in the third identifier set representing a historical access object based on the object attribute.

6. The method according to any one of claims 1 to 5, wherein If the target object is the new independent visitor of the target site, the method further includes: Based on the object access data, at least one detection parameter set of the target site is updated according to a preset parameter update strategy, the at least one detection parameter set including a historical access account set, a device identifier set, a first identifier set, a second identifier set and a third identifier set.

7. A station-independent access volume determination apparatus characterized by comprising: The device includes: A type identification unit configured to identify a type of an account identifier in object access data of a target object, obtain a target account type corresponding to the account identifier, and generate the object access data based on access operations of the target object to a target site, and the account identifier is assigned by the target site to the target object; A first determination unit configured to determine whether the account identifier is located in a historical access account set of the target site if the target account type is a registered account type of the target site; An identifier generation unit configured to generate a first object identifier of the target object in a device identifier dimension based on an unregistered account identifier of the target site and a target device identifier carried by the object access data if the account identifier is not located in the historical access account set; A second determination unit configured to determine that the target object is a new independent visitor of the target site if the first object identifier is not located in a first identifier set of the target site, each element in the first identifier set representing a historical access object based on the device identifier dimension; A parameter update unit configured to increase an independent access amount of the target site based on a number of the new independent visitors, and obtain an updated independent access amount.

8. The apparatus of claim 7, wherein, The first determination unit is specifically configured to: If the target account type is the registered account type, it is determined whether the target object attribute information corresponding to the account identifier is included in an object attribute set of the target site, the object attribute set including identity attribute information provided by a registered object of the target site when registering an historical identity; If the target object attribute information corresponding to the account identifier is not included, it is determined whether the account identifier is located in the historical access account set.

9. The apparatus of claim 7, wherein, The parameter updating unit is specifically configured to: Based on the object access data, at least one detection parameter set of the target site is updated according to a preset parameter updating strategy, and the at least one detection parameter set includes a historical access account set, a device identifier set, a first identifier set, a second identifier set, and a third identifier set. 10.A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein, The processor executes the computer program to implement the steps of the method in any one of claims 1 to 6. 11.A computer storage medium having a computer program stored thereon, wherein, The computer program is executed by the processor to implement the steps of the method in any one of claims 1 to 6. 12.A computer program product comprising a computer program, wherein, The computer program is executed by the processor to implement the steps of the method in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Mobile device website visitor metric system and method

    CN101764710A

  • Unique visitor statistical method and device

    CN108900619A