Social Graph Quality Analysis
Last updated
Last updated
ULAS social graph quality analysis protocol is built with ULAS social application chain as the underlying data source, and other social graph protocols will be gradually introduced to improve the social graph data source. In addition, relevant data from other protocols will be used at the data source level to make the data more comprehensive, and the data source will be obtained through special data analysis tools off-chain, so that multi-dimensional data from multiple platforms can be reorganized into a specific data sources. Such data will be stored in the relational database through special data analysis tools off-chain, so that the multi-dimensional data from multiple platforms can be reorganized into a specific structure, and then the relational data will be provided to the graph analysis layer through SQL interaction, and the graph analysis layer will analyze and calculate the multi-dimensional data of the social graph through off-chain algorithms, and come up with a series of portraits & scores & relationships. The data will be stored in the Nebula graph database, and the upper dapp layer will get the required data through GraphQL interaction as needed, and finally present the user-oriented on-chain application services.
In the first stage, the data source is mainly from ULAS Postfi, ULAS' own social media.
Followed by the Social Graph aggregation from data sources including Lens/Cyberconnect, and we will also aggregate Defi/Gamefi related data as a supplement to the Social Graph.
The data structure of the underlying infrastructure varies and needs to be parsed and reorganized by the data indexing layer to make the data available. At the same time, we need to build a special data acquisition and parsing tool for each protocol or platform. The following describes how to acquire data from each protocol and the process of indexing.
ULAS Postfi is built on the ULAS social application chain, where social activities such as Post/Repost/Comment/Like/Follow
happen on the chain. ULAS provides a set of GraphQL-based web APIs that allow callers to access social dimension data on the chain in an efficient and easy way.
Lens Protocol's social data is also built on-chain, the main Post(Publication)/Repost(Mirror)/Comment/Follow
are all on-chain activities. The API of Lens is also based on GraphQL and requires the Apollo client to be installed on the calling end for data interaction.
Cyberconnects’, moreover, social graph data can be obtained using APIs or sdk. For the sake of unifying the technical language of the data parsing layer and future horizontal expansion, we use APIs to obtain the required data. The data parsing tool built by Cyberconnect only collects a limited amount of data in the social dimension.
Defi & Gamefi & IPFS related social dimension data parsing is not our prioritization at this stage.
The data parsing is mainly focused on acquiring and serializing the data within the defined social dimensions, and building the classification & index.
ULAS Social Graph Quality Analysis Protocol defines generalized social dimensions (v1), mainly including the following.
post (quantity & quality [ total number of comments\likes\reposts + user social weight[all] ])
comment (quantity & quality [ total number of comments\like\reposts + user social weight[all] ])
like (quantity)
repost (quantity)
followers (quantity & quality)
following (quantity)
create time (length of time)
Based on the above defined dimensional indicators, the data parsing tool of each platform or protocol fetches the API through the program, gets the returned data and starts to store the data into the relational repository (IPFS storage solution is not considered because of the high frequency read and write demand and the existence of correlation of data), the primary key of the table points to the account DID (unique identification), and a separate tablespace is built for each platform The primary key of the table points to the account DID (unique identification). A separate tablespace is built for each platform to store the data of the corresponding social dimensions of each platform.
To conclude, we will maintain a data storage space (persistent storage) related to social dimensions in the data resolution layer, which will be continuously updated over time, including the continuous increase of data size and the continuous construction of indexes. The result is the continuous enrichment and improvement of the social graph data of web3 users.
The following is the structure of the social graph data after parsing and classification (visualized in the form of KV).
The core of the graph analysis layer lies in ULAS social graph analysis algorithm, which obtains data from data indexing layer for algorithm calculation, obtains analysis results to be stored in graph database, and finally exposes GraphQL APIs to the public to provide open services for upper layer applications.
ULAS social graph analysis algorithm is still under devlopment, so we can't provide detailed & stable mechanism description for now.
Note: A preliminary version of the mechanism description is expected to be available in September, so stay tuned.
ULAS is currently developing and building a series of applications based on the graph analytics layer, which can obtain graph analytics data from the foundational layer through APIs, including ad recommendation services, user credit ratings, and user asset proofs, and related applications will be expected to develop based on the ULAS social application chain.
The graph quality analysis data built by ULAS is open and combinable and not limited to Cosmos ecosystem.
Note: GraphQL APIs documentation is still under preparation and not yet available, so stay tuned.
Based on ULAS social application chain and social graph quality analysis algorithm, we are developing the Personal Graph Quality Index and User Profiling acoordingly.
The Personal Graph Quality Index consists of 5 main dimensions.
Social Influence Index
Reputation Index
Fans quality Index
Cost Efficiency index
Conversion Index
The indices of each dimension are calculated based on the social graph quality analysis algorithm, and the final results are presented as follows:
The user profile is mainly analyzed algorithmically based on tag, and we also provide the function of multi-chain asset aggregation, so that users can freely present their own asset information, enrich the personal profile. The final user profile is presented as follows:
ULAS will build a set of composable GraphQL APIs with detailed interface documentation instructions. In addition, we will set up a technical communication channel on Discord, and there will be dedicated technical staff responsible for technical interfacing with external applications.
Note: At present, we provide limited interfaces related to social graph quality analysis, if we cannot provide effective quality analysis service, please wait for the time being
ULAS Graph Quality Analysis is a holistic solution with data sources from on-chain & off-chain and computational analysis off-chain.
Blockchain network needs to maintain a large-scale consensus network, it is a huge resource overhead to perform complex calculations and build indexes on the chain, which can easily bring down the whole consensus network and lead to block stoppage, because any calculation on the chain needs to be performed on all nodes once, and there is a Gas ceiling, once the complexity of the calculation exceeds the Gas ceiling, the calculation cannot be performed on the chain, even if it does not exceed the Gas Even if the Gas limit is not exceeded, frequent analytical calculations will occupy most of the block space, which makes it difficult to execute other types of on-chain transactions.
The prevailing solution is to build an analysis and calculation platform under the chain, store the analysis results persistently, and then provide services to the public with an API or SDK. This is feasible in terms of cost and technical maturity, and the on-chain is more as a data source for calculation and analysis and storage of analysis results.
Firstly, our social graph quality analysis algorithm is open source, anyone can build the algorithm analysis program by themselves. Secondly, our data sources are from public data sets such as on-chain & off-chain & decentralized storage. This means that anyone can use the open source ULAS algorithm analysis program, using the same public data sources, and execute the results to verify whether our off-chain calculations & analysis are falsified.
In addition, we will make hash on-chain verification for each analysis calculation result, so that anyone can easily verify it.
In addition, we are also focusing on using zero-knowledge proofs to build proofs of results for submission to the chain, but the maturity of the technology is still not high, and because of cost considerations, we will not use zero-knowledge proofs to generate proofs of analysis results for the time being.