The first just-needed infrastructure on Sui: Object retrieval database

What is Object?

Object is the biggest feature of Sui blockchain and Sui move programming. The Sui chain summarizes the characteristics of the current blockchain and abstracts the primitive language of Object.
The structure of BTC transactions is based on the UTXO model, but BTC does not have a Turing-complete contract programming platform.
Object is a higher-level abstraction of the UTXO model, which allows UTXO not only to stay in simple functions such as financial payment and transfer, but also to encode any object in the physical world with Object abstraction.
For example: game virtual characters, we can abstract each character as an Object, and the characteristics of the character, such as hair color, eye size, etc., can be abstractly described by Object.

Why does Sui need Object to retrieve the database?

BTC Because of the UTXO model, the storage cost on the Bitcoin network is extremely small, because UTXO maintains the account system off-chain. Unlike Ethereum, all information under the account is registered and modified under the PAT tree.
One of the biggest benefits of this is that the on-chain storage is small enough to support concurrent execution on the chain. But there is also a drawback. For BTC browser or wallet development, we must maintain a UTXO retrieval pool to summarize and index UTXOs of different addresses into one place.
For BTC platforms that only serve cryptocurrencies, a dedicated UTXO pool service is required for maintenance. For objects on the Sui chain that can encode the world, a retrieval database is needed.

Object Retrieves the product representation of the database.

The most typical retrieval database service objects are: Sui's wallet and browser.

Why does the wallet need the Object retrieval database?

Because there are many accounts in the wallet, the relationship between assets (such as NFT, token) under each account, that is, the relationship between the related objects under each account, requires an off-chain database to index.
When there is not much data on the chain, we can maintain a small relational database of accounts and objects similar to litesql under each wallet.
But when the data on the chain becomes more and more abundant, after the traditional large-scale games are launched on the Sui network, I need a public object retrieval relational database.

Why do browsers need Object to retrieve the database?

Sui's browser is a product display for any object index under any account. This is the most need for a multi-functional and complete Object relational database to store and retrieve.

ComingChat is under development, and an open source search database is being built one after another.

  • We ComingChat have developed Sui's mobile wallet, and at this point we need to build a small mobile account Object micro-retrieval database like litesql.
  • Next, we are building a social system on the Sui chain similar to WeChat Moments (or Twitter). We call it Daomoment. At this time, there are a large number of different user accounts and Moments Objects that need to be retrieved and stored off-chain.
  • The Game Studio on the Sui chain that we will do later requires a large relational database specially used to store the relationship index between accounts and objects on the Sui chain.
    Because our product development on Sui is inseparable from this Object retrieval database, we plan to make a general open source index database for the relationship between accounts and Objects on the Sui chain.
    We will set aside a common Object API for the convenience of other teams building on the Sui network.