It’s estimated that in 5 years there will be over 20 billion connected devices that require management, storage and retrieval of massive amounts of data. As many of us know the current system in place to handle such volume is Cloud Storage. Where a hosting company utilizes physical servers to logically store digital data in pools. The database industry is growing exponentially as more and more devices come online. The need for fast, reliable and secure data storage is a necessity now more than ever. Bluzelle is looking to bridge the gap between current database storage systems like the Cloud with blockchain technology. Just below we are going to dive into the Bluzelle project to get a deeper understanding of how they are going to accomplish this challenge.
In the past, database storage was a single system model where all data and information for application was held in one central location. This system was not only expensive to scale but there were multiple choke points causing a significant number of failure sources. As time went on the system became refined and evolved into Cloud Storage. Although Cloud Storage did solve a lot of the problems that the preexisting model had, there are still limitations to this current system. For example, a hosting company is required to have servers that run constantly in order to make data retrievable. The data is centralized in these servers, meaning that if a cyber attack where to occur, massive amounts of data would be at risk. Moving forward, Bluzelle has created a system that is looking to replace Cloud Storage by utilizing blockchain principles and sharding & partitioning concepts to create an AirBnB like marketplace for data storage and management.
The Bluzelle Solution
Through integration of blockchain principals and sharding & partitioning concepts. Bluzelle seeks to create a storage database for decentralized applications (dApps).To ensure developers get the highest throughout in performance, reliability and scalability, Bluzelle implements swarming technologies.
What is a Swarm?
A swarm is a large group of nodes (computers) that work together to store and manage data. Nodes in these swarms can go down and new nodes can come up with minimal impact on the network. Within these swarms data is turned into shards and distributed amongst different swarms. In addition, shards within a swarm are replicated and shared amongst other nodes. This ensures that if one node goes down that holds a specific data shard, that shard is also held by an alternative node in the same swarm. Swarming technology rivals world wide distribution of data because data can be stored in the most efficient manner possible. Instead of having data distributed globally and having a longer latency period on consensus. Data can be spread by the network to specific swarms for efficient availability. Overall Bluzelle is a meta-swarm comprised of multiple swarms.
What are Data Shards & Partial Replication?
Bluzelle by design only stores the data amongst a strategic subset of the nodes, statistically providing a guarantee that the data is always available and still achieving the benefits of boundless horizontal scaling. Partial replication exists because only ONE swarm amongst all the swarms in the network replicates a given piece of data. An interesting incumbent technology that can be compared to this is the content delivery network (CDN).
Shard stands for “System for Highly Available Replicated Data” By partitioning the database along logical lines, the database becomes much easier to work with. A logical shard is the smallest unit in Bluzelle and contains individual units of data that all share the same partition key. A partition key is a unique identifier that allows the shard to be accessed for the retrieval of information. In Bluzelle, groups of logical shards are stored on leaf swarms, and it is the amalgamation of these leaf swarms that makes up the entirety of the Bluzelle database.
How Does Bluzelle Retrieve Information Efficiently?
Bluzelle uses JCH (Jump consistent hashing) to map from the key to the id of the swarm that the key is replicated in. Once that id is found, Bluzelle uses Kademlia hashing to find the means to reach that swarm even if that specific swarm is not running. Using Kademlia’s own form of “finger tables”, each node in the network only needs to know information about how to reach other leaf swarms. This means that irrespective of how large the network ever becomes, every node can reach every other leaf swarm within a certain amount of tries, O(log(n)) to be exact (where n is the number of swarms on the network). As a result, Bluzelle is able to handle exponential growth.
A benefit of having a logical shard stored on multiple physical nodes is speed. By having the same data accessible through different hardware resources at various geographical locations, the system may load-balance queries to retrieve data from nearby nodes that are least taxed at any given moment in time. This permits Bluzelle to dynamically perform queries and retrieve data in the most efficient way possible, maximizing use of the shared resources spanning across multiple nodes.
Just below is a table breaking down all of Bluzelle’s features:
Application of Bluzelle
There are many use cases for a fast, reliable, and immutable decentralized database storage system. We are going to go over just a couple of use cases below:
Prediction Market Analysis
One field that utilizes massive amounts of data is the prediction market field. In this field AIs and Humans collect massive amounts of data both from the cryptocurrency/stock market and the internet. The goal is to collect information on specific cryptos/stocks in order to alert consumers of a possible change in market trend. This field is highly profitable and many companies such as Cindicator (CND) have already gained a serious foothold in this industry.
However, in order to make accurate predictions massive amounts of data need to be collected, analyzed and stored. The data being stored includes but is not limited to: questions being asked, different possible outcomes, market trends/price action, news/press releases, different possible outcomes, predictions of analysts and information of actual events. This is just the tip of the iceberg when it comes to making accurate market predictions. As you can see there is a ton of information that needs to be collected, analyzed and stored. This is where the speed, reliability and immutability of the Bluzelle network comes into play.
Another use case for the Bluzelle network is the map and traffic analysis field. Think of applications like Google Maps or Waze both applications need to collect massive amounts of accurate and current data. The data collected can span from anything to the latest accident or traffic jam, all the way to a new store location that people want to get directions to. In both applications the storage necessary for this big data collection needs to be able to handle such high demand. In addition the consumers using the information to guide them need to be able to readily access the information with speed.
These are just two use cases of many that the Bluzelle network is looking to get into.
How is Bluzelle Network Secure?
Bluzelle employs several methods to prevent Sybil attacks so that when a bad actor is caught, they can be blacklisted, and economically penalized leading to complete removal from the network. These anti-Sybil attack methods are:
• Producers are required to put up a BNT stake to participate in the network. This stake serves as a requirement for participation and as a strong economic deterrent from bad behaviour.
• The Kademlia distributed hash table is used as it relies on message redundancy and the XOR distance function. Neighbours are selected and messages are redundantly sent to multiple neighbors of the intended node for anti-Sybil verification purposes. Nodes that mislead the swarm location effort will be systematically tracked down and caught.
• A request to a swarm for CRUD functionality is done with redundancy, where multiple nodes in the same swarm all perform the request. Given the node->swarm membership rules for Bluzelle, it is statistically unlikely that multiple such nodes chosen to perform a given transaction are colluding bad actors that deliver bad yet consistent data.
• Swarm membership is determined by the network and cannot be chosen by nodes. This means that a would-be Sybil attacker who attempts to join the network with n nodes or masquerading with the identity of n nodes will not be able to gain a critical mass of memberships into any single swarm.
• Nodes can be posed a challenge request to participate in a proof of storage test. This test is performed in cooperation with the consumer on either a random network-initiated basis or by the consumer directly and forces the targeted node to prove they have the correct data.
How to Become a Storage Node?
For those seeking to rent out their hardware devices to the Bluzelle network in return for financial reward, the process of becoming one is quite simple. However, in order to become a producer (storage node) the Bluzelle network first does an analysis of your hardware through proof of storage and other analytics. This ensures that your hardware has the power and storage available to help the network grow as a whole. In addition, when you become a producer you must put up a financial stake in Bluzelle Native Tokens (BNT) – the in house network currency – because when you are transacting with a consumer and fail to complete the job within a specific time frame, that financial stake is returned to the consumer. Similar to the Mining Network for Bitcoin, nodes in the Bluzelle network are striving to have the most reliable and efficient hardware out there. This allows the network to continuously improve in efficiency and reliability.
Is BLZ the same as BNT?
The BLZ coin is not the same as the BNT coin. The BLZ coin is the publicly traded coin that is tied to Bluzelle. The purpose of this publicly traded coin is to allow new users to attain BNT coin. How is this done? Through the use of the smart contract gateway implemented in the Bluzelle network. The exchange rate from BLZ to BNT or vice versa is 1:1, when exchanging Bluzelle takes a micro-transaction fee to support the network and generate revenue. For example, exchanging 100 BLZ to BNT, the balance of your BNT wallet would be 99.9 where a micro-transaction fee of .01 is taken out.
Current Status on the Bluzelle Network
Bluzelle ended its token sale for its ICO on January 20th 2018. Where they raised around €19.5 million dollars worth of revenue. The network is scheduled to be launched April of 2018. Just below is a past road map of all their achievements.
We can expect to see big things in the future for Bluzelle, keep this coin on your watch list and stay tuned for more updates on this coin. If this network gains full scale integration we are going to see a serious shift in Database Storage technology that is going to give current silicon valley companies and Cloud Storage companies a run for their money.