A data distribution method, apparatus, device, medium, and product
By constructing a user trust graph on the blockchain and updating trust values in real time, the problem of unfair data resource allocation in high-concurrency scenarios is solved, and the reasonable allocation and transparency of data resources are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- LINGSHU TECH CO LTD
- Filing Date
- 2026-05-28
- Publication Date
- 2026-07-14
Smart Images

Figure CN122390115A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of resource allocation algorithms, and more particularly to a data allocation method, apparatus, device, medium, and product. Background Technology
[0002] Currently, data allocation, especially for concert, sporting event, and art exhibition ticket allocation, suffers from unfair distribution due to the influx of large amounts of ticket and user resources, and the corresponding social effects.
[0003] For example, due to the lack of data transparency in traditional centralized ticketing systems, unscrupulous organizers can artificially reserve some "internal tickets" through the system backend, making it impossible for ordinary users to obtain tickets fairly. Furthermore, existing systems rely on a "first-come, first-served" principle for ticket purchases, allowing unauthorized buyers to use high-performance server clusters and automated ticket-grabbing scripts or software to complete ticket purchases within milliseconds, while ordinary users, due to their slower operating speed, are almost unable to secure tickets. Even though most ticketing platforms have now added real-name authentication restrictions, unauthorized buyers can still obtain bulk real user information through certain means, seize bulk ticket resources, and profit from them.
[0004] Therefore, there is an urgent need for a data allocation method to ensure the rational allocation of data resources in scenarios with a large number of users and resources. Summary of the Invention
[0005] This invention provides a data allocation method, apparatus, device, medium, and product to solve the problem of ensuring effective allocation of data resources in high-concurrency scenarios. By introducing a user trust graph on the blockchain and a real-time update mechanism, it ensures the reasonable allocation of a large amount of data resources.
[0006] According to one aspect of the present invention, a data allocation method is provided, comprising: A user trust graph is determined based on the communication request initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and the user database; the user trust graph is constructed using blockchain; each node in the user trust graph is a user identifier; and the edges represent the trust relationships between user nodes. Based on the task assignment identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and the third-party database, the initial trust value in the user trust graph is updated in real time to obtain the target trust value. Based on the target trust value and trust value threshold, the request initiator and the request receiver are assigned objects to be allocated. According to another aspect of the present invention, a data allocation apparatus is provided, comprising: The determination module is used to determine a user trust graph based on the communication request initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and a user database; the user trust graph is constructed using a blockchain; each node in the user trust graph is a user identifier; and the edges represent the trust relationships between user nodes. The update module is used to update the initial trust value in the user trust graph in real time based on the assigned task identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and a third-party database, so as to obtain the target trust value. The allocation module is used to allocate objects to be allocated to the request initiator and the request receiver based on the target trust value and the trust value threshold.
[0007] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the data allocation method according to any embodiment of the present invention.
[0008] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the data allocation method described in any embodiment of the present invention.
[0009] According to another aspect of the present invention, a computer program product is provided, the computer program product comprising a computer program that, when executed by a processor, implements the data allocation method according to any embodiment of the present invention.
[0010] The technical solution of this invention, by introducing a user trust graph and a real-time update mechanism on the blockchain, ensures the reasonable allocation of a large amount of data resources and solves the problem of ensuring the effective allocation of data resources in high-concurrency scenarios.
[0011] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0012] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0013] Figure 1 This is a flowchart of a data allocation method provided according to an embodiment of the present invention; Figure 2 This is a flowchart of a user trust graph determination method provided by an embodiment of the present invention; Figure 3 This is a flowchart of a data allocation method provided according to an embodiment of the present invention; Figure 4 This is a schematic diagram of the structure of a data distribution device according to an embodiment of the present invention; Figure 5 This is a schematic diagram of the structure of an electronic device that implements the data allocation method of the present invention. Detailed Implementation
[0014] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0015] It should be noted that the terms "comprising" and "having" and any variations thereof in the specification, claims and accompanying drawings of this invention are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such process, method, product or device.
[0016] Furthermore, it should be noted that the information collected in the technical solution of this invention is information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of related data all comply with the relevant laws, regulations and standards of relevant countries and regions, necessary confidentiality measures have been taken, and public order and good morals are not violated. Corresponding operation entry points are provided for users to choose to authorize or refuse.
[0017] Figure 1This invention provides a flowchart of a data allocation method according to an embodiment of the present invention. This embodiment is applicable to situations requiring the reasonable allocation of data resources, particularly ticketing data resources. The method can be executed by a data allocation device, which can be implemented in hardware and / or software and can be configured in a server. Figure 1 As shown, the method includes: S110. Based on the communication request initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and the user database, a user trust graph is determined; the user trust graph is constructed by the blockchain; each node in the user trust graph is a user identifier; the edges represent the trust relationships between user nodes.
[0018] The data allocation can include resource allocation, preferably ticketing data resources such as concerts, sporting events, and art exhibitions. Allocation can be based on blockchain technology within the ticketing system according to user resources and ticketing data resources. The request initiator and recipient are registered users logged into the ticketing system, both of whom are ticket buyers. The communication request is initiated by the request initiator to the request recipient, and can be a handshake request to establish a connection, such as for friend association within the ticketing system. The initial trust value is a trust value assigned by the ticketing system to each registered user for subsequent data resource allocation. The user database includes at least one registered user, distinguished by a user identifier, including user registration information and a trust value. The user trust graph is constructed by uploading user information to the blockchain based on social relationships between users. Trust relationships are defined as whether users are friends or have greeted each other.
[0019] Specifically, the request recipient is determined based on the communication request initiated by the request initiator to the request recipient and the user database. Furthermore, the relationship between the request initiator and the request recipient is determined based on the communication request. The initial trust values of the request initiator and the request recipient, as well as the relationship between them, are uploaded to the blockchain so that the blockchain can determine a user trust graph based on this relationship. Each node in the user trust graph is a user identifier, and the edges represent the trust relationships between user nodes.
[0020] Optional, such as Figure 2 The method for determining a user trust graph, as shown, determines the user trust graph based on the communication request initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and a user database, including: S111. Obtain the communication request initiated by the request initiator to the request recipient; the communication request includes the initiator identifier corresponding to the request initiator and the recipient identifier corresponding to the request recipient.
[0021] The initiator identifier and receiver identifier are used to distinguish users, and both the initiator identifier and receiver identifier are obtained by hashing the user information.
[0022] Specifically, it retrieves the communication request initiated by the request initiator to the request recipient, such as a handshake request; the handshake request includes the initiator's identifier and the recipient's identifier.
[0023] S112. Determine the trust relationship between the request initiator and the request receiver based on the communication request and the user database.
[0024] In this context, trust relationship refers to the social relationship between the request initiator and the request recipient, such as whether they are friends or not.
[0025] Specifically, the system determines the recipient based on the communication request initiated by the request initiator to the request recipient, combined with the user database. The determination is made based on the communication request and feedback. Optionally, the trust relationship between the request initiator and the request receiver can be determined based on the communication request and the user database, including: The request recipient is located in the user database based on the recipient identifier. Send the communication request to the request recipient and receive the communication feedback from the request recipient; If the communication feedback is "agree", a trust association is established between the request initiator and the request recipient, thus obtaining a trust relationship.
[0026] Among them, communication feedback can be a handshake feedback, requesting the receiver whether to accept the communication from the requesting sender, such as requesting the receiver to accept and request the sender to become friends and transmit information; communication feedback can be agreement, that is, agreeing to accept and request the sender to become friends and transmit information; communication feedback can also be disagreement, that is, disagreeing to accept and request the sender to become friends and transmit information.
[0027] Specifically, the system searches for the requesting recipient in the user database based on the recipient identifier in the communication request; then it sends the communication request to the requesting recipient and receives the communication feedback from the requesting recipient; if the communication feedback indicates agreement to transmit information with the requesting sender, a trust association is established between the requesting initiator and the requesting recipient, thus obtaining a trust relationship between the requesting recipient and the requesting sender; if the communication feedback indicates disagreement to transmit information with the requesting sender, no trust association is established between the requesting initiator and the requesting recipient.
[0028] Understandably, communication requests such as handshakes establish a trust relationship between the requester and receiver, providing the blockchain with accurate trust relationships between users. This facilitates the blockchain's construction of a user trust graph based on these relationships, enabling real-time updates of trust values to the user trust graph and ensuring fair data distribution. S113. Upload the request initiator, request recipient, and trust relationship to the blockchain so that the blockchain can build a user trust graph based on the request initiator, request recipient, and trust relationship.
[0029] Specifically, by uploading the request initiator, request recipient, and trust relationship to the blockchain, the blockchain receives at least one trust relationship, and each trust relationship includes both the request initiator and the request recipient. Based on at least one trust relationship, a user trust graph is constructed for each user. The request initiator in a trust relationship can be designated as the target user, and the corresponding request recipient as the associated user. The user information of the target user is hashed to obtain a hash identifier. Based on the hash identifier of the target user, the remaining trust relationships are traversed to obtain other associated users. The target user and associated users are used to construct a target user trust graph for the target user, so that a target user can have at least one associated user. The user trust graphs corresponding to all target users are merged to obtain the user trust graph. In the user trust graph, each node is the user identifier corresponding to the user, and the edges are the trust relationships between user nodes. Thus, a user node can connect to at least one user node.
[0030] S114. Obtain the user trust graph issued by the blockchain.
[0031] Specifically, after the blockchain constructs a user trust graph based on the uploaded request initiator, request recipient, and trust relationship, it receives the user trust graph issued by the blockchain.
[0032] It is understandable that by introducing communication requests such as handshake requests to obtain trust relationships between users, and further putting these trust relationships on the blockchain, a user trust graph is constructed by combining the on-chain social trust graph, linking users with trusting social relationships. This effectively ensures that when a large amount of data resources are waiting to be allocated, they can be allocated in a controllable and reasonable manner based on the social trust dimension. This further ensures that when a large number of data allocation requests are made concurrently, the system will not crash due to high concurrency.
[0033] In one optional embodiment of the present invention, before obtaining the user trust graph issued by the blockchain, a user database is constructed based on the user's registration information. Specifically, this involves obtaining the registration information uploaded by each logged-in user, authenticating the registration information, and obtaining the authentication result. If the authentication is successful, an initial trust value is assigned to the logged-in user. A user identifier is generated based on the registration information, and the user identifier is associated with the initial trust value and stored in the user database. By assigning initial trust values to each user, a standard basis is provided for subsequent data resource allocation, ensuring the rationality of the allocation of large amounts of data resources.
[0034] S120. Based on the task assignment identifier, user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and the third-party database, the initial trust value in the user trust graph is updated in real time to obtain the target trust value.
[0035] Among them, the task allocation identifier is used to identify the data resource task to be allocated; the transfer request is the transfer of trust value between the request initiator and the request recipient; the third-party database can be an official database, such as one that stores high-trust users such as well-known artists, celebrities, and core fan club leaders in the allocation of ticketing resources; the target trust value is the trust value of each user after real-time updates, which is used for the final allocation of data resources.
[0036] Specifically, users with high trust values are identified based on the data resource allocation task identifier, the user registration information of the request initiator and the request recipient, and a third-party database. Trust values of these users can be redistributed. Furthermore, the trust values of each user are updated in real time based on subsequent transfer requests between the request initiator and the request recipient to obtain the target trust value, which serves as the basis for data resource allocation.
[0037] S130. Assign objects to be allocated to the request initiator and the request receiver based on the target trust value and the trust value threshold.
[0038] Among them, the trust value threshold is the basis for classifying data resource allocation eligibility; the objects to be allocated can be resources such as eligibility and tickets.
[0039] Specifically, the target trust value can be compared with the trust value threshold. Users whose target trust value is higher than the trust value threshold are considered as users who are eligible for data resource allocation. The eligibility of the request initiator and the request recipient is determined based on their target trust values. If they are eligible, the allocation of the target object is carried out directly.
[0040] In one optional aspect of the present invention, target trust values higher than the trust threshold are filtered out, and at least one target trust value is sorted according to its numerical value. The target trust values are then allocated to objects according to their numerical value based on the total amount of data resources. This ensures that users with trust values higher than the trust threshold can obtain data resources, avoiding the problem of obtaining data resources through abnormal means. This is especially relevant in the ticket allocation scenario, where some abnormal ticket buyers use automated scripts to maliciously snatch tickets.
[0041] This invention, through its embodiments, determines a user trust graph based on communication requests initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and a user database. The user trust graph is constructed using a blockchain; each node in the user trust graph is a user identifier; edges represent the trust relationships between user nodes. The initial trust value in the user trust graph is updated in real-time based on the allocation task identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and a third-party database, to obtain a target trust value. Based on the target trust value and a trust value threshold, the request initiator and the request recipient are assigned objects. This technical solution, by introducing a user trust graph on the blockchain and a real-time update mechanism, ensures the rational allocation of large amounts of data resources and solves the problem of ensuring effective allocation of data resources in high-concurrency scenarios.
[0042] Figure 3 This is a flowchart of a data allocation method provided by an embodiment of the present invention. Based on the above embodiments, this embodiment supplements the real-time update method of the target trust value. It should be noted that for parts not detailed in this embodiment, please refer to the relevant descriptions in other embodiments. For example... Figure 3 As shown, the method includes: S210. Based on the communication request initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and the user database, a user trust graph is determined; the user trust graph is constructed by the blockchain; each node in the user trust graph is a user identifier; the edges represent the trust relationships between user nodes.
[0043] S220. Based on the task assignment identifier, the user registration information of the request initiator and the request recipient, and a third-party database, determine the seed user from the request initiator and the request recipient.
[0044] Seed users are certified users, that is, highly trusted users in the current data allocation scenario, who can be request initiators and / or request recipients.
[0045] Specifically, officially certified users are identified based on the assigned task identifier and the third-party database. Furthermore, the authentication information in the user registration information of the request initiator and the request recipient is matched. If the match is successful, the request initiator and / or the request recipient are identified as seed users.
[0046] Optionally, seed users can be determined from the request initiator and request recipient based on the task assignment identifier, user registration information of the request initiator and request recipient, and a third-party database, including: The corresponding custom user type is determined based on the user registration information of the request initiator and the request recipient; The standard user type corresponding to the assigned task is determined from a third-party database based on the task assignment identifier. Seed users are determined from the request initiator and request receiver based on custom user types and standard user types.
[0047] Custom user types are defined as whether a user is a high-trust user, which can be quantified using hash values. For example, in a ticketing data allocation scenario, a user can register as a well-known artist, a core fan club leader, etc., which can be obtained by hashing the authentication information and registration type in the user's registration information. Standard user types are high-trust users with official authentication. For example, in a ticketing data allocation scenario, third-party data sources such as Weibo can be used to find the core fan club leader and other user types corresponding to the ticketing data allocation scenario. These types are also quantified using hash values, obtained by hashing the authentication information and registration type in third-party data.
[0048] Specifically, the custom user types corresponding to the request initiator and the request recipient are determined based on the user registration information of the request initiator and the request recipient; the allocation task is determined from the third-party database based on the allocation task identifier, and at least one standard user type corresponding to the allocation task is found; the custom user type and the standard user type are compared and matched, and if the match is successful, the successfully matched user is used as the seed user, and the request initiator and / or the request recipient can be used as the seed user.
[0049] Understandably, by introducing a third-party data source to verify seed users, the trust value of users is updated and allocated. This ensures that when multiple data resource allocation requests are subsequently received, data resources can be reasonably allocated based on officially certified users with high trust values. This avoids server crashes when encountering high concurrency requests and further ensures the rationality and fairness of data resource allocation in data resource allocation scenarios, achieving transparency in data allocation.
[0050] S230. Update the initial trust value corresponding to the seed user in the user trust graph based on the seed user's seed user identifier to obtain the candidate trust value.
[0051] The seed user identifier is used to represent the seed user, and its identifier information is a hash value; the candidate trust value is the updated initial trust value, which can be superimposed with the seed trust value corresponding to the seed user.
[0052] Specifically, the initial trust value is found in the user trust graph based on the seed user's seed user identifier. The initial trust value is then updated by overlaying the seed trust value corresponding to the seed user identifier to obtain the candidate trust value corresponding to the seed user. It should be noted that if the user is not a seed user, the user's initial trust value is directly used as the candidate trust value after one round of updates for subsequent transfer requests.
[0053] It should be noted that the values of the initial trust value and the seed trust value can be set according to actual needs. In this invention, the seed trust value is preferably 40%-80% of the initial trust value. For example, if the initial trust value is allocated to 100, then for the user in the user trust graph who is a seed user, the seed trust value of 40 is added to update the initial trust value, and the candidate trust value corresponding to the user is 140. This embodiment of the invention does not impose specific limitations on this and can be set according to actual needs.
[0054] S240. Based on the transfer request and user trust graph, the candidate trust value is updated in real time to obtain the target trust value.
[0055] Specifically, the trust value to be transferred is determined based on the transfer request between the request initiator and the request recipient. The trust value is then transferred and received in conjunction with the user trust graph. Candidate trust values are updated in real time as the target trust value. For example, if the transfer request is initiated by the request recipient, then the request recipient is the transferor. The request recipient carries the identification information of the transfer recipient and the trust value to be transferred. The trust value is then transferred to the transfer recipient so that the transferor can update the target trust value based on the transferred trust value and the candidate trust value. The transfer recipient then updates the target trust value based on the transferred trust value and the candidate trust value.
[0056] Optionally, the candidate trust values are updated in real time based on the transfer request and the user trust graph to obtain the target trust value, including: Based on the donor in the transfer request, search the user trust graph to obtain at least one associated user of the donor; the donor is either the request initiator or the request recipient. The recipient of the transfer is verified based on the associated user identifier of at least one associated user and the user identifier of the recipient in the transfer request. If the verification is successful, the receiving trust value is determined based on the transfer trust value and transfer coefficient in the transfer request; Update the target trust value corresponding to the recipient based on the received trust value and the candidate trust value of the recipient. Update the target trust value of the donor based on the transfer trust value and the donor's candidate trust value.
[0057] Among them, the associated user is a user who has a trust relationship with the transferor on the user trust graph; the associated user identifier is used to distinguish different users; the transfer trust value is the trust value transferred from the transferor to the transferee; the received trust value is the trust value actually received by the transferee; the transfer coefficient can be an attenuation coefficient, which can be between 0 and 1, and is preferably 0.58 in this embodiment of the invention; it should be noted that relevant technical personnel can set it manually according to actual experience, and this embodiment of the invention does not impose specific limitations on it.
[0058] Specifically, based on the donor in the transfer request, a search is conducted in the user trust graph. Using the donor as the target node, at least one user node with an edge relationship to that node is identified as an associated user. The donor is either the request initiator or the request recipient. Further, the associated user identifier of the associated user is determined, along with the user identifier of the transfer recipient in the transfer request. The user identifier of the transfer recipient is matched with at least one associated user identifier to verify the transfer recipient. If the verification is successful, meaning the user identifier of the transfer recipient matches at least one associated user identifier, the receiving trust value is determined based on the transfer trust value and transfer coefficient in the transfer request. The target trust value corresponding to the transfer recipient is updated based on the receiving trust value and the candidate trust value of the transfer recipient.
[0059] Understandably, secondary verification of transfer requests based on user trust graphs is used to prevent indiscriminate transfers that could lead to unfair data resource allocation, such as malicious distribution in ticketing scenarios. Furthermore, by combining transfer coefficients with a decay coefficient to ensure that trust value circulation occurs within a trusted social circle, it avoids invalid circulation or arbitrary spread among users, effectively curbing abnormal acquisition of trust values and preventing unfairness in subsequent data resource allocation based on trust values.
[0060] Optionally, after obtaining the target trust value by updating the initial trust value in the user trust graph in real time based on the task assignment identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and a third-party database, the process includes: Get the transfer requests within the forecast period; The transfer request is parsed to obtain the user identifiers of the transferor and the transfer recipient. The counting mechanism, the user ID of the transfer recipient, and the transfer request are used to count the number of transfers received and the number of transfer requests corresponding to the user ID of the transfer recipient. Anomaly detection results were obtained by performing anomaly detection on the number of received donations and the number of donation requests based on a prediction model. If the anomaly detection result indicates that the recipient's user identifier is abnormal, the target trust value corresponding to the recipient will be reset to zero.
[0061] The prediction period is a pre-set detection period used to detect whether the transfer requests within the period are abnormal and whether they affect the allocation of long-term data resources; the user identifier is used to distinguish between the transferor and the transferee; the number of received transfers is the number of times the transferee has received transfers; the number of transfer requests is the number of times the transferee has initiated transfer requests; the prediction model can be a large model such as a deep learning model, used for anomaly detection; the anomaly detection result can be that the transferee is normal or the transferee is abnormal.
[0062] Specifically, the process involves: acquiring all transfer requests within the prediction period; parsing each transfer request to obtain the user identifiers of the transferor and the transfer recipient; determining the user identifier of any transfer recipient based on a counting mechanism and the transfer requests, and then counting the number of transfers received and the number of transfer requests corresponding to that recipient; performing anomaly detection on the number of transfers received and the number of transfer requests based on the prediction model, and obtaining anomaly detection results; if the anomaly detection result indicates that the user identifier of the transfer recipient is abnormal, then resetting the target trust value corresponding to the transfer recipient to zero.
[0063] Understandably, by counting anomalies within the prediction period and combining this with anomaly detection using a prediction model, and further introducing a penalty mechanism, strong supervision of the data resource allocation process can be achieved, effectively ensuring the rationality of the data resource allocation process and preventing abnormal acquisition of data resources.
[0064] In an optional embodiment of the present invention, the recipient of the transfer can be determined through the user's report request information, and the number of transfer requests and the number of transfers received by the recipient can be counted according to a counting mechanism; and anomaly detection can be performed on the number of transfer requests and the number of transfers received through a prediction model to determine whether the recipient of the transfer is abnormal. By introducing the report information of other users, anomaly detection can be further targeted, which has stronger applicability, ensures the accuracy of trust value updates, effectively avoids the rule-based nature of the punishment mechanism, improves the flexibility of the punishment mechanism, and further improves the fairness and rationality of data resource allocation.
[0065] In an optional embodiment of the present invention, the penalty mechanism can also be a continuous penalty mechanism. If the recipient of the transfer is abnormal, the transferor is determined based on the transferee's transfer request; and the transfer trust value of the transferor is updated according to the transfer trust value in the transfer request. If the updated target trust value of the transferor is lower than the trust threshold, the data resources acquired by the transferor can be released. This continuous penalty mechanism ensures the rationality and fairness of data resource allocation and enhances the authority of data resource allocation.
[0066] In an optional embodiment of the present invention, the punishment mechanism can also be recorded on the blockchain and associated with the user trust graph, so as to ensure that the abnormal records of abnormal users are immutable and publicly verifiable, forming an effective deterrent and ensuring the effectiveness of data resource allocation.
[0067] S250. Based on the target trust value and trust value threshold, allocate the objects to be allocated to the request initiator and the request receiver.
[0068] This invention determines whether trust value can be transferred by using a transfer request and a user trust graph, ensuring the effectiveness of subsequent data resource allocation. Furthermore, it determines the receiving trust value based on the attenuation coefficient and the transferred trust value, ensuring that data resources circulate within a real social trust circle and avoiding ineffective and unlimited diffusion. This prevents data resource allocation from being easily affected by environmental factors and resulting in unreasonable resource allocation.
[0069] Figure 4 This invention provides a schematic diagram of a data allocation device according to an embodiment of the present invention. This embodiment is applicable to situations involving the reasonable allocation of data resources, particularly ticketing data resources. The data allocation device can be implemented in hardware and / or software and can be configured in a server. Figure 4 As shown, the data allocation device 300 includes a determining module 310, an updating module 320, and an allocation module 330: The determination module 310 is used to determine the user trust graph based on the communication request initiated by the request initiator to the request receiver, the initial trust values of the request initiator and the request receiver, and the user database; the user trust graph is constructed by the blockchain; each node in the user trust graph is a user identifier; the edges are the trust relationships between each user node; The update module 320 is used to update the initial trust value in the user trust graph in real time based on the task assignment identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and the third-party database, so as to obtain the target trust value. The allocation module 330 is used to allocate objects to the request initiator and the request receiver based on the target trust value and the trust value threshold.
[0070] This invention, through its embodiments, determines a user trust graph based on communication requests initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and a user database. The user trust graph is constructed using a blockchain; each node in the user trust graph is a user identifier; edges represent the trust relationships between user nodes. The initial trust value in the user trust graph is updated in real-time based on the allocation task identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and a third-party database, to obtain a target trust value. Based on the target trust value and a trust value threshold, the request initiator and the request recipient are assigned objects. This technical solution, by introducing a user trust graph on the blockchain and a real-time update mechanism, ensures the rational allocation of large amounts of data resources and solves the problem of ensuring effective allocation of data resources in high-concurrency scenarios.
[0071] Optionally, the determination module 310 includes a communication request acquisition unit, a trust relationship determination unit, an upload unit, and a user trust graph acquisition unit; The communication request acquisition unit is used to acquire the communication request initiated by the request initiator to the request recipient; the communication request includes the initiator identifier corresponding to the request initiator and the recipient identifier corresponding to the request recipient. The trust relationship determination unit is used to determine the trust relationship between the initiator identifier and the receiver identifier based on the communication request and the user database. The upload unit is used to upload the initiator identifier, receiver identifier, and trust relationship to the blockchain, so that the blockchain can build a user trust graph based on the initiator identifier, receiver identifier, and trust relationship; The user trust graph acquisition unit is used to acquire the user trust graph issued by the blockchain.
[0072] Optionally, a trust relationship determination unit is specifically used to find the requesting recipient from the user database based on the recipient's identifier; Send the communication request to the request recipient and receive the communication feedback from the request recipient; If the communication feedback is "agree", a trust association is established between the initiator's identifier and the receiver's identifier, thus obtaining a trust relationship.
[0073] Optionally, the update module 320 includes a seed user determination unit, a candidate trust value determination and update unit, and a target trust value update unit; The seed user determination unit is used to determine seed users from the request initiator and request recipient based on the task allocation identifier, the user registration information of the request initiator and request recipient, and a third-party database. The candidate trust value determination and update unit is used to update the initial trust value corresponding to the seed user in the user trust graph based on the seed user identifier of the seed user, so as to obtain the candidate trust value. The target trust value update unit is used to update the candidate trust values in real time based on the transfer request and the user trust graph to obtain the target trust value.
[0074] Optionally, the seed user determination unit is specifically used to determine the corresponding custom user type based on the user registration information of the request initiator and the request receiver; The standard user type corresponding to the assigned task is determined from a third-party database based on the task assignment identifier. Seed users are determined from the request initiator and request receiver based on custom user types and standard user types.
[0075] Optionally, the target trust value update unit is specifically used to search in the user trust graph based on the donor in the transfer request to obtain at least one associated user of the donor; the donor is either the request initiator or the request recipient. The recipient of the transfer is verified based on the associated user identifier of at least one associated user and the user identifier of the recipient in the transfer request. If the verification is successful, the receiving trust value is determined based on the transfer trust value and transfer coefficient in the transfer request; Update the target trust value corresponding to the recipient based on the received trust value and the candidate trust value of the recipient. Update the target trust value of the donor based on the transfer trust value and the donor's candidate trust value.
[0076] Optionally, the data distribution device 300 also includes an anomaly detection module for acquiring transfer requests within the prediction period; The transfer request is parsed to obtain the user identifiers of the transferor and the transfer recipient. The counting mechanism, the user ID of the transfer recipient, and the transfer request are used to count the number of transfers received and the number of transfer requests corresponding to the user ID of the transfer recipient. Anomaly detection results were obtained by performing anomaly detection on the number of received donations and the number of donation requests based on a prediction model. If the anomaly detection result indicates that the recipient's user identifier is abnormal, the target trust value corresponding to the recipient will be reset to zero.
[0077] The data allocation device provided in the embodiments of the present invention can execute the data allocation method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the method execution.
[0078] According to embodiments of the present invention, the present invention also provides an electronic device, a readable storage medium, and a computer program product.
[0079] Figure 5A schematic diagram of an electronic device 10 that can be used to implement embodiments of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0080] like Figure 5 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0081] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0082] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as data allocation methods.
[0083] In some embodiments, the data allocation method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or mounted on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the data allocation method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the data allocation method by any other suitable means (e.g., by means of firmware).
[0084] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0085] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0086] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0087] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0088] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0089] A computing system can include clients and servers. Clients and servers are generally geographically separated and typically interact via communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a host product within the cloud computing service system. This addresses the shortcomings of traditional physical hosts and dedicated virtual services, such as high management difficulty and weak business scalability.
[0090] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0091] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A data allocation method, characterized in that, include: A user trust graph is determined based on the communication request initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and the user database. The user trust graph is constructed using blockchain technology; each node in the user trust graph serves as a user identifier. The edges represent the trust relationships between user nodes; Based on the task assignment identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and the third-party database, the initial trust value in the user trust graph is updated in real time to obtain the target trust value. Based on the target trust value and trust value threshold, the request initiator and the request receiver are assigned objects to be allocated.
2. The method according to claim 1, characterized in that, The step of determining the user trust graph based on the communication request initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and the user database includes: Obtain the communication request initiated by the request initiator to the request recipient; the communication request includes the initiator identifier corresponding to the request initiator and the recipient identifier corresponding to the request recipient; The trust relationship between the initiator identifier and the receiver identifier is determined based on the communication request and the user database. The initiator identifier, the receiver identifier, and the trust relationship are uploaded to the blockchain so that the blockchain can construct a user trust graph based on the initiator identifier, the receiver identifier, and the trust relationship; Obtain the user trust graph issued by the blockchain.
3. The method according to claim 2, characterized in that, Determining the trust relationship between the initiator identifier and the receiver identifier based on the communication request and the user database includes: The request recipient is located from the user database based on the recipient identifier. The communication request is sent to the request recipient, and the communication feedback from the request recipient is received. If the communication feedback is "agree", then a trust association is established between the initiator identifier and the receiver identifier, thus obtaining a trust relationship.
4. The method according to claim 1, characterized in that, The process of updating the initial trust value in the user trust graph in real time based on the task allocation identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and a third-party database to obtain the target trust value includes: Seed users are determined from the request initiator and the request recipient based on the task assignment identifier, the user registration information of the request initiator and the request recipient, and a third-party database; The initial trust value corresponding to the seed user in the user trust graph is updated based on the seed user's seed user identifier to obtain the candidate trust value; The candidate trust value is updated in real time based on the transfer request and the user trust graph to obtain the target trust value.
5. The method according to claim 4, characterized in that, The process of determining seed users from the request initiator and the request recipient based on the task allocation identifier, the user registration information of the request initiator and the request recipient, and a third-party database includes: The corresponding custom user type is determined based on the user registration information of the request initiator and the request recipient; The standard user type corresponding to the assigned task is determined from a third-party database based on the task assignment identifier. Seed users are determined from the request initiator and the request receiver based on the custom user type and the standard user type.
6. The method according to claim 4, characterized in that, The step of updating the candidate trust value in real time based on the transfer request and the user trust graph to obtain the target trust value includes: Based on the transferor in the transfer request, at least one associated user of the transferor is obtained in the user trust graph; the transferor is either the request initiator or the request recipient. The recipient of the transfer is verified based on the associated user identifier of the at least one associated user and the user identifier of the recipient in the transfer request. If the verification is successful, the receiving trust value is determined based on the transfer trust value and transfer coefficient in the transfer request; The target trust value corresponding to the transfer recipient is updated based on the received trust value and the candidate trust value of the transfer recipient. The target trust value corresponding to the donor is updated based on the donated trust value and the donor's candidate trust value.
7. The method according to claim 1, characterized in that, After obtaining the target trust value by updating the initial trust value in the user trust graph in real time based on the task assignment identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and a third-party database, the process includes: Get the transfer requests within the forecast period; The transfer request is parsed to obtain the user identifier of the transferor and the user identifier of the transfer recipient; Based on the counting mechanism, the user ID of the transfer recipient, and the transfer request, the number of times the transfer was received and the number of transfer requests corresponding to the user ID of the transfer recipient are obtained. Anomaly detection results are obtained by performing anomaly detection on the number of times the donation was received and the number of donation requests based on a prediction model. If the anomaly detection result indicates that the user identifier of the transfer recipient is abnormal, then the target trust value corresponding to the transfer recipient will be cleared to zero.
8. A data distribution device, characterized in that, include: The determination module is used to determine a user trust graph based on the communication request initiated by the request initiator to the request recipient, the initial trust values of the request initiator and the request recipient, and the user database. The user trust graph is constructed using blockchain technology. Each node in the user trust graph is a user identifier; The edges represent the trust relationships between user nodes; The update module is used to update the initial trust value in the user trust graph in real time based on the assigned task identifier, the user registration information of the request initiator and the request recipient, the transfer request between the request initiator and the request recipient, and a third-party database, so as to obtain the target trust value. The allocation module is used to allocate objects to be allocated to the request initiator and the request receiver based on the target trust value and the trust value threshold.
9. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the data allocation method according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the data allocation method according to any one of claims 1-7.
11. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the data allocation method according to any one of claims 1-7.