Inspiration & What it does
In the first Ionian was inspired by decentralized storage solutions like Arweave & Filecoin. These networks have allowed the world to start shifting from a centralized to a decentralized internet. These solutions compared to a centralized storage provider allow for:
No censorship
Decentralized storage solutions will not allow for a single point of failure as the networks are operated by many node providers. Due to this no government or organization can decide over who and when accesses something on the internet.
*Low Storage Costs*
Numerous smaller providers with extra space can operate nodes which allows for a significantly lower cost compared to centralized storage solutions.
*Greater Security and Privacy*
Many decentralized storage solutions shard the data into smaller chunks, make copies of the original data and then encrypt each portion separately using hashes or public-private keys. What’s more, none of the owner’s personal information is present in any stored data, unlike with centralized storage systems.
Filecoin and Arweave have enabled a wave of decentralizing the internet. These two decentralized storage networks are a great solution as an archive layer for Web 3. For solutions looking to utilize structured data management, data mutability and atomicity these networks may lack that complexity. Data mutability and atomicity facilitates traditional big-data & internet apps in Web2. It is essential for social apps like Twitter, code management systems like Git, or collaborative editing apps like Google Doc.
In order to allow data durability, efficient data indexing and readability, and also data mutability and atomicity with transactional semantics for decentralized apps Ionian was inspired by Tango & Corfu, which are also production systems deployed in giant companies like Microsoft and Meta. The key inspiration was to allow for create a modular, layered design seen in Web 2.0 storage solutions and transplant into a Web 3 solution.
How we built it
The design of Ionian is inspired by a series of research work Corfu and Tango which are also production systems deployed in giant companies like Microsoft and Meta. We observe that the full stack of distributed storage systems often employs a layered design. The lowest layer is an archive system which provides permanent persistency and append-only property. This layer can be designed with a log abstraction. To decentralize the log layer, we identify two core pieces of logic in the log system that can be decoupled and decentralized separately - data maintenance and data ordering. Decentralization of data maintenance can be tackled with a network of storage nodes through Proof-of-Storage, while data ordering can be simply fulfilled through employing the smart contract of one existing layer-1 blockchain. This modular design enables the decentralized log system to seamlessly leverage the evolution of layer-1 blockchain technology for better throughput and latency. In addition, through grafting to multiple layer-1 blockchains, the log system can easily scale linearly in a sharded way. Furthermore, choosing to integrate with layer-1 blockchain that is EVM-compatible will allow users to directly interact with our system through Metamask which has much better user experience and familiarity. As such, the Ionian system’s token can easily join the family of tokenomics on the blockchain. On top of the decentralized log, Ionian introduces the key-based object structure into the log entry, which enables the serving nodes to consistently construct the state of an upper layer of key-value store through playing the entries in the recorded sequence in the log. This key-value layer enables the mutability of the data and allows for applications like decentralized file systems or social networks like Twitter. Upon the key-value layer, Ionian further builds transactional semantics to provide ACID for applications with concurrent data updating - most commonly seen in Google doc’s collaborative editing. The total order provided by the underlying log layer further makes the concurrency control of the transactional processing easy to be implemented.
With this full stack layering design, Ionian is looking forward to revolutionize the way developers utilize decentralized web storage solutions for applications, providing a firm base to build a thriving ecosystem.
Challenges we ran into
Since the start of the project we have identified several challenges, but the have spotted creating a strong ecosystem upon our infrastructure as the most challenging one.
This has two subcategories:
Bringing in a great number of node operators, which require a well designed incentive mechanism along great business development skills.
Having substantial amount of apps build on top of Ionian, which will require getting the word out there, reacting to user feedbacks and having an outstanding tech support for devs to start building.
Accomplishments that we're proud of
We are proud to have established the foundations of the log layer, which is the lowest layer of our layered design. You can see the demonstration of this in the demo video.
What we learned
We have learned that established systems like Arweave might even have drawbacks and give space for newcomers in the field. And that creating a decentralized storage solution that serves apps needing a more complex solution (i.e.: structured data management, data mutability and atomicity) needs a lot research and designing before jumping into the development.
What's next for Ionian Network
The next steps for Ionian will be to:
- Develop the top two layer (key value store layer & transactional semantics) that will give the USP of the product
- Set-up a test network and start testing the product
- Getting devs to try out Ionian and asking for feedback
Log in or sign up for Devpost to join the conversation.