Our approach
Decimal Functional Architecture
Our approach
Decimal strives to provide flexibility and try not to assume the requirements of the user. Which is why Decimal provides flexibility in mechanisms used to get data feeds which make different tradeoffs. So user can pick what tradeoffs they want to make in their feed and they can also used a combination of mechanisms as back up based on the needs of the application. Mechanisms to get data feeds are classified into the following types
On Demand feeds
Insured feeds
On Demand Feeds
On Demand feeds are data feed mechanism where user submits a request attaching reward to the data feed and then any agent can pick up the request and submit data onchain. In this approach data updates are very fast as it is a competitive market, the data will be provided. But this does not provide any guarentees on data will be submitted.
Insured Feeds
Insured feeds need agents who participate to stake tokens in case of inactivity. Insured feeds are data feeds which are insured on the scale of entire stake of all agents in the network, hence provide economic guarantees for availability of data feed. In case of insured feeds, the agent who participates will be assigned data feeds to serve, randomly based on the stake of the agent.
On Demand and Insured feeds are explained in more detail in the next sections.
Step 01: Build a Job
Clients can create their own jobs – generated either via our drag-n-drop GUI interface or dropping their own custom code image. Each job is also assigned with their own rewards.
Step 02: Submit Job
The job, once submitted, is associated to the Assignment Contract, ready for execution. This job is published onto the marketplace.
Step 03-A: Insured Jobs
Insured jobs are special jobs backed by Decimal’s crypto-economic guarantees to ensure that the jobs have a multi-fold monetary compensation policy for any delays. Only jobs that meet certain criteria are eligible for Insurance coverage – meaning extremely complex or proprietary algorithms are difficult to support.
Similarly, there are dedicated agents responsible for executing these insured jobs, who can only qualify for executing these jobs through staking, compensated also through extra rewards.
The job is time-bound and pre-assigned to a series of dedicated agents. It is the responsibility of the first agent to execute this job within the given time-slot. If he fails to execute within the allocated time-frame, his stakes are slashed and the next agent in the assignment queue is assigned the responsibility – with the added bonus of winning part of the slashed funds from the previous agent.
Any feed delays are also compensated back to the client as well from part of the slashed funds.
As only one agent at a time is allocated to provide the feed, this is the most optimized option towards TEE resource usage, making it an extremely cost-efficient solution, enabling cheaper rewards for the clients.
Step 03-B: On-Demand Jobs
On-Demand jobs are more general purpose and can accommodate a much wider variety of job requests – including extremely complex or proprietary algorithms.
These jobs are made available to the entire pool of agents to compete and provide a response. The first agent to process and publish the response on-chain, earns the rewards.
Since multiple agents are actively trying to earn the rewards, there is much higher resource wastage, demanding the rewards to be equally proportionate.
Also, as there are no prerequisites or onboarding requirements to qualify to participate in executing on-demand jobs, there is no barrier-to-entry for anyone to participate and earn.
Step 04: Rewards Allocation
Once the jobs are executed, and the data is published on-chain (either from Insured feeds or On-Demand feeds) the final Data Feed Contract verifies the conditions set by the client and allocates the corresponding job rewards to the beneficiary/s.
In short –
Clients have full freedom to define their jobs of choice, per their budget.
Agents have complete and fair access to participate and earn.
Note: Our approach is continuously being refined and will continue to be updated over time, if you have a question that is not answered here, shoot us an email at tech@decimal.at, or reach out to us over our social media channels.
Last updated