IOTA Permanode As a Service

The full article was originally published by Stefano Della Valle on Medium. Read the full article here.

Long-lasting data storage on IOTA’s Tangle

At first glance it may seem absurd that someone would need a service in order to have an IOTA node.
That’s because the activation of a known IOTA node is in fact a very simple operation, and in the coming releases the configuration of peering with other nodes will be fully automated.

However, node activation may be required for several reasons and some of these introduce additional complexities.

For example, if an application based on the IOTA network publishes data, being able to ensure node response times is a key factor. This involves an organizational cost and a specific expertise to keep the node efficient as performance needs increase.

Another typical requirement of such applications is to preserve this data over a long period of time.

The standard node actually deletes transactions from its database after a configurable period of time, and it does not provide any function to discriminate which transactions to delete and which ones to keep.

These two needs, which were directly perceived by us during the development of our other projects, motivated us to create the Things Lab Permanode service.

The Things Lab Permanode service

Things Lab’s IOTA Permanode service provides a fully managed IOTA node with “industry grade” features and the peculiarity of preserving the transactions produced by customers, according to their specific time requirement.

Each customer can create a specific application identity that will tag their transactions, allowing them to be precisely identified in the database.

The system has been developed on the Google Firebase platform and is therefore able to support virtually unlimited simultaneous connections, making it possible to guarantee the performance and reliability of the service.

In this first version, the service supports the following standard IRI API (IOTA Reference Implementation):

  • GetTransactionToApprove: returns two valid transactions to link a new transaction;
  • BroadcastTransaction: sends one or more transactions to other IOTA public network nodes;
  • StoreTransaction: stores transactions on Google Firestore database.

Needless to say, the performance of the database is extremely high and is not affected by the number of connected customers.

Soon we will also release the AttachToTangle function, which runs ProfOfWork, thus providing all the API needed to create an IOTA transaction.

Data model

The call to StoreTransaction causes the transaction to be registered with its properties:

  • Hash;
  • Address;
  • Tag;
  • Bundle;
  • Timestamp;
  • Application ID;
  • Private flag.

Note: Application ID and Private flag are additional parameters produced by the Permanode application platform.

Searching and retrieving transactions in the database

The following search functions are also provided:

Read the full Article

The full article was originally published by Stefano Della Valle on Medium, where people are continuing the conversation by highlighting and responding to this story.

You might also like

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. AcceptRead More

Did you know?

Buy in without the stress of trying to time the market

when you setup a savings plan. If you haven’t started a plan yet, head to your Bitpanda account to get started!

Purchasing cryptocurrencies comes with a number of risks.
Never invest money that you can't afford to lose.

You can automatically invest

in IOTA with Bitpanda Savings!