Ultra Chill Recap: Tech Focus on Ultra’s Data Architecture
Today we have something a bit different, with our first tech focused episode. We’re excited to bring on Romain Gilles to speak about Ultra’s data architecture, how it organizes that data, and what we use it for. We want to give you all a sense of how we’re preparing everything to unlock a data-centric, enterprise-scale operation.
About Romain and the Data team
Romain Gilles is Ultra’s Lead Data Architect and is helping Ultra create a robust, modern system for collecting, preparing, and leveraging all sorts of data.
His previous experience was in the finance industry, where he leveraged massive parallel computing to crunch the numbers and produce useful market indicators and other KPIs used by finance professionals to make trading decisions.
Our Data team provides streamlined access to Ultra’s data to the backend, our back office admin system, the Finance team, and of course the Ultra client itself. For example, if we want to build suggestions based on a user’s previous purchase history, it is the Data team’s work which enables this.
Ultra is Hiring a Data Developer
We’re currently looking for an experienced Data Developer who’ll work on our data platform’s every aspect, deploying and following components from dev to production. Interested? Apply today!
What is data?
At its most basic form, data is simply any quantifiable unit of information. In the larger context of Ultra, this could be anything from login attempts (successful, failed, etc.), to the Oracle and its vast information array, and back to a user’s transaction history. Everything that any admin, developer, publisher, blockchain account, or end-user does within Ultra’s platform can become a data point which can then be built on top of.
As you can imagine, this is a huge amount of information, and keeping it organized, and then providing it in a usable form is quite a difficult task.
What is event-based architecture?
Simply put, event-based architecture means that instead of asking for data when you think you might need it, you are instead constantly fed a stream of relevant data and you use it when it is appropriate.
For Ultra, the advantages are immense. It makes development easier, as we can use a reactive pattern, which is more flexible and less fragile. It also means that the underlying data doesn’t need to be massaged into a specific form before being sent to the client.
The data is already well organized into categories, or topics, which can be subscribed to at will by Ultra’s development team. Once the data is being stored, if Ultra decides to build new features on top of the existing data, the development doesn’t have to be done twice.
With this strategy, there is no need for complex queries to the blockchain, which can be slow and costly. Instead, our Data team leverages an open-source technology called Kafka to constantly stream events from the blockchain. Historical data is already present in a system like this, which means that things like a transaction history come built in.
An open network requires better data architecture
Because the Ultra Mainnet is an open network, and actions can be performed on it by many different parties, we have a situation where we need a mechanism to synchronize data between our platform and any potential platforms that third parties will build in the future.
This adds an extra layer of complexity to an already complex system.
For example, if a third party wants to leverage our NFT standard and create their own NFT marketplace on our network, but not within the Ultra platform, they can do so. That’s what is great about an open network! The NFTs that are minted on that third party platform can be sold on Ultra’s marketplace, too, but we need a way to be notified of their existence and of their current status.
This is exactly what the Data team has built. Of course, because their solution is more general, this applies to all transactions which happen on our network, from a newly minted NFT to a third party creating their own blockchain accounts. It all seamlessly acts as one ecosystem.
Preparing to scale Ultra to millions of users
Much of the work that Ultra does is in preparation for our eventual opening of the platform to the public, and the millions of users which we anticipate will pour in. To this end, we have been carefully crafting every piece of the system to be robust and scalable.
The work that the Data team have been doing is an enabler for this scaling, especially when it comes to the blockchain and its inherent limitations with regards to access time, and the lack of historical data.
Having talented, smart individuals like Romain on the team who can leverage their decades of experience to provide the tools that we need in-house helps ensure that the future of Ultra’s project is bright.
We are always on the lookout for capable developers who are interested in the cutting edge. Make sure to check out our open positions.
Ultra has been built to extinguish the frontier between blockchain and mass market, between dApps and apps and between legacy virtual items and NFTs.