The business environment is governed by key strategic choices taken by companies and enterprises in a bid to unlock new business momentum and to outshine the competition. Behind the decisions of every board meeting, road map, and business strategy lays a valuable pool of data that influences the final course of action. Even in the daily flow of operations it’s imperative for companies to be able to access their data centers and retrieve information fast and secure. 

This is especially true for companies that operate in key sectors such as healthcare, where a significant delay in data access can lead to an erroneous medical investigation that can jeopardize the patient’s health. Furthermore, in multiple sectors including banking, supply chain, finance and transportation, inconsistent fluctuations in data availability and accuracy usually translate to disruptions in business continuity that lead to costly financial and reputation damages. As society as a whole is getting closer and closer to the ultimate goal of digitalization, it becomes increasingly clear that companies, enterprises, governmental institutions, in fact, any type of organization that is reliant on data for their operations requires a fault resistant IT infrastructure capable of providing high levels of data availability.

fault-tolerant

Cloud computing has evolved over the past decade into one of the most attractive propositions for companies and businesses in search of a quick and easy way to deploy a highly customizable and scalable IT infrastructure for their applications. Given this rise in popularity and the suite of benefits offered by cloud services and cloud infrastructures, Modex has identified an opportunity to create a new type of infrastructure that marries the flexibility and the scalability potential of cloud infrastructures with the decentralization, distribution and availability inherent to blockchain technology. 

The ins and outs of data availability

The advent of the digital twenty-first century has ushered in an exponential increase in the amount of data that companies collect and operate with on a daily basis. But even the largest data pool is rendered obsolete if its contents cannot be accessed fast and secure.

Data availability

Data availability refers to the ability of a system to guarantee that valuable data necessary for business operations can always be accessible whenever and wherever needed, even in a disaster scenario where the main system is down. As a metric, data availability measures the degree of accessibility of information by end-users, applications and other IT systems for processing. The mechanisms used to facilitate and safeguard data availability need to operate on a 24/7 basis. A system can be considered to be highly available when it is capable of sustaining the accessibility and management of data systems even during adverse circumstances for the company such as a cybersecurity attack, system malfunction or natural disaster. This is a critical aspect for any business that operates with high volumes of data because if data cannot be accessed, it is equivalent to not having the data in the first place.

If we were to transpose Abraham Maslow’s pyramid of needs to the business environment, data accessibility would most certainly act as a foundation. When the whole business apparatus relies on a steady flow of data to function in optimal parameters, other factors pertaining to data become relevant such as accuracy and correctness. Accessing incorrect and outdated information can prove as damaging as the inability to access data, and in some cases even more so. Whatever the case, failures in the data availability dimension creates a snowballing effect of accumulated damages the effects of which become visible directly in the services provided by the business and an increase in the downtime a company is experiencing.

The pitfalls of low data availability

The business logic of a company dictates what type of data it relies on to function as well as how the data is being used within the organization to serve the needs of its customers. Taking this aspect into consideration, the impact of data unavailability can vary greatly from company to company. Key sectors such as healthcare are a prime example where data availability inconsistencies can have dire results not only for the service providers but for the end consumer, the patient who can receive inadequate treatment if his medical records are corrupt or impossible to be accessed.

Business continuity

In most cases, fluctuations in data availability have a direct impact on business continuity, a grim proposition for every company and organization. The inability to provide continuity to services is a heavy blow for companies from a financial standpoint that unleashes a domino effect, spreading dissent and dissatisfaction within the user community which can have a long-lasting negative impact on a brand’s image. The pitfalls of inconsistent data availability usually translate to lost revenue, compliance liability, lost opportunities and reputation damage.

Financial damages

For companies that provide data-driven services over a network, the inability to access essential business data that drives those services leads to a disruption of operations that results in financial damages. Companies that do not provide data-based services to end customers aren’t exempt from this conundrum. Regardless of the sphere of activity, every company has dedicated employees who need to access various business data to perform their job. 

If their access is obstructed, it will have a ripple effect throughout the whole organization, leading to decreased overall productivity and operational bottlenecks. When we take into account companies that operate within a consortium, the disruptive effects will circulate to every connected business channel, potentially creating friction points in distribution channels and other logistical dimensions.

Compliance liability

Every organization that operates with sensitive customer data needs to fall in line with various legal obligations concerning how the data is managed, stored and transferred. Failure to comply with the provisions of regulatory guidelines leads to considerable fines and even to a complete halt of operations as a result of the suspension of the license for processing sensitive data. 

Healthcare providers need to make sure they are compliant with the Health Insurance Portability and Accountability Act (HIPAA), while companies that are involved with processing credit card payments need to comply with the Payment Card Industry Data Security Standard (PCI DSS). HIPAA, PCI DSS and the General Data Protection Regulation (GDPR) from Europe offer strict regulatory guidelines concerning data availability.

Lost Opportunities

Business decisions aren’t taken on a whim. The advent of digitalization has created a system in which decisions, conclusions and strategies are shaped by the result of analytics software that ingests massive amounts of data in search of patterns and to formulate predictions. The ability to identify consumer trends, habits and other useful business insights help shape new business practices, giving companies the opportunity to restructure their operations, rethink strategies and target new emerging markets. Decision making in the business realm has reached such a point that data availability has become mandatory. Without clear visibility of quality data, companies would be unable to formulate adequate solutions to improve their business offering.

Lost business opportunities

Brand and reputation damage

In the business world success can often be measured by the image a company has managed to project into the market and into the community of users. In today’s highly competitive business scene, companies rely on the reputation of their brand which they have spent years to nurture and grow to differentiate themselves from their competition. Countless real-world examples have proven over the years that building a reputation is a costly and lengthy process that requires a lot of effort and financial resources, but at the same time, the very same projection in the community can be dismantled in a fraction of the time necessary to build your reputation. 

Once a brand has fallen in disfavor, it is quite difficult to bounce back into the spotlight, and the damages produced by a tarnished reputation can leave a deep impact that can potentially spell the downfall of that business. The inability to access your data stores directly interferes with your ability to provide services to your end customers which creates dissatisfaction and the risk of alienating your customer base. Even a small window of downtime can have lasting effects on a company’s public perception. Social media channels have become a powerful instrument through which customers can vent their frustration and share their annoyance regarding your services. Ensuring data availability is a viable way of avoiding serious backlash from your user base, especially if your company activates in a business sector that operates with sensitive data.

Modex BCDB, ensuring high data availability through blockchain

Modex BCDB is a software solution designed to augment the data storage component of existing software solutions by combining the familiarity of traditional database systems with a blockchain backend to unlock a series of functionalities and features like decentralization, data distribution, integrity, immutability and replication, that help guarantee high levels of availability for the data stored in the system.

From an integration standpoint, Modex BCDB intervenes in the development stack by positioning itself between the database and the existing application server to act as a liaison between a client’s database and a blockchain network. After implementing the Modex technological layer, insert commands still follow the paradigm of classic database systems, but each data entry passes through a hashing function that produces a unique hash that is stored into the blockchain to ensure data integrity and transform a centralized system into a decentralized one. In essence, a beneficiary maintains its data structure intact at the database level but gains access to all of the advantages of blockchain technology by storing their hash in a blockchain.

howmodexbcdbisdesigned

The benefits of this approach are clear cut. Traditionally, if someone tampers with your database, be it an external attacker, or someone who managed through social engineering to steal company credentials to access the database from a company endpoint, they can propagate a series of disruptive effects that could lead to a complete halt of operations. Modex BCDB prevents these types of scenarios by storing the hash of the information on a blockchain, to ensure the integrity and immutability of data records. In a data availability context, inaccurate information can be just as damaging as the inability to access your data records. 

Hashing a string produces a unique hash digest that cannot be reversed to reveal the original input. If an attacker modifies an entry in the database, the hash of that data will also change, so when the system compares the new hash with the old one, it will reject any unauthorized changes, and recover the data from other nodes from the network. Through Modex BCDB the information is now physically decentralized across multiple nodes, which makes accessing data much faster. Having multiple copies of your data spread all over the network acts as a fast and efficient backup mechanism, through which compromised data can be restored with minimal downtime.

Blockchains are highly valued for their ability to guarantee data immutability and integrity, which they achieve by storing a digital signature of the information present in the database in interdependent structures called blocks. Unlike traditional database engines, blockchain is an append-only structure which means that information can only be added to the network but never deleted. At first glance, this may seem troublesome because it may lead to the accumulation of redundant data, but in fact, this feature acts as a timekeeping mechanism for the data, as it creates an exact historical record of each version of the data, providing useful information like when it was modified, how it was modified and who modified it.

Data integrity

Access to a complete and incorruptible ledger of all the data that was introduced in the system places companies and organizations in a position of power as external actors will find it nearly impossible to modify data records without the system rejecting any unauthorized modifications. Furthermore, once data is validated and appended to the chain of blocks, it is distributed to every full node and partial nodes. This architectural design is what ensures blockchain’s near-real-time backup capabilities.

A major advantage of the Modex BCDB solution is that it enables centralized legacy systems to make the transition to a decentralized, distributed model without requiring a complete infrastructure overhaul. Decentralization and distribution are core blockchain features that can significantly enhance the security of businesses, making them less susceptible to availability oriented attacks. Decentralization means that the network does not rely on a central server to host all the data, but distributes it across every network participant, also known as nodes. A blockchain network is composed of multiple types of nodes that perform different functions, full nodes for example store a copy of the entire blockchain. 

As a result, the system doesn’t have a single point of failure. If a node is compromised, sysadmins just have to address the vulnerability which allows the malicious user to access the network and restore the node to its previous version, or they can simply cut out the node entirely from the network. If a node is compromised as a result of an attack or a system malfunction, its data contents can be retrieved from other member nodes of the system to avoid any damages caused by a prolonged downtime.

A quick look at zero fault-tolerance

Fault tolerance is a concept present in many spheres of activity and industries including the aeronautic industry, but it also plays an important role in the IT infrastructures that rest at the foundation of many companies, businesses and organizations, being of particular interest in the field of data storage.

Given this context, fault tolerance refers to the ability of an IT infrastructure or storage system to continue operations without interruptions when one or more of its components fail. A system is considered fault tolerant when it can withstand both hardware and software failures and continue to function without affecting business continuity and data access.

Zero fault tolerance

Achieving fault tolerance with Modex BCDB

The goal of a fault-tolerant system is to avoid or at least to minimize as much as possible the risk of a complete system shut down in case of a fault in one or more of its components. From a high-level overview, the fastest way of achieving fault tolerance is by ensuring that the system in question doesn’t have a single point of failure.

The Modex BCDB solution enables companies and organizations to seamlessly connect a blockchain backend to their existing IT infrastructures. At its core, blockchain is a peer to peer, decentralized and distributed network of computer nodes that simultaneously act as both a client and a server. Blockchain is by design inefficient and redundant in order to achieve a high level of fault tolerance and immutability for the records introduced in the system.

Redundancy in the form of hardware components is an integral aspect of fault-tolerant systems. Usually, two or more systems operate in parallel, where applications and instances are mirrored. In case of a failure in the primary systems, the secondary one kicks in and takes over the workload without generating any system downtime. Cloud service providers offer redundant hardware components that can act as a safety mechanism when the primary systems are down. Modex BCDB is available on the Azure marketplace as an Infrastructure as a Service offering. Azure subscribers can access all the benefits of blockchain in the cloud, to achieve new levels of fault tolerance for their systems. With a pay as you use model, Azure can easily help customers set up a secondary backup system that can ensure continuity during a failover.

Backup system IMG

Diversity is another important aspect of fault tolerance. Hardware components require a steady supply of electricity to operate. If the main electricity supply fails due to a power station failure or power outages caused by a storm, then it is usually not possible to access an alternative electricity grid. By diversifying the electricity supply with other sources, such as backup generators that kick in when the main power is down. This type of scenario is usually referred to as graceful degradation – when a system maintains its functionalities, albeit at a reduced performance.

Replication is a process through which a central database system is replicated to a secondary database often referred to as a subscriber. The goal of this procedure is to enhance the performance of existing systems, increase the availability of data to satellite offices as well as to provide continuity to business operations in case of a failover scenario where the primary database malfunctions or is compromised by an attack.

Data replication

Database replication in Modex BCDB challenges the established dogma through its agnostic take on both database and blockchain engines. This feature enables Modex BCDB to remove a major barrier in database replication operations – replication across different database systems. As such, different NoSQL database can be successfully replicated without compromising data structures or impacting data consistency and overall performance. Furthermore, Modex BCDB removes the notion of subscriber databases which are usually relegated to read operations. Due to its blockchain backend, inserts made through Modex BCDB API into a database, are automatically replicated in near real-time across every database from the network.

In traditional database replication mechanisms, any modification made to a database is automatically replicated across subscriber databases. This can constitute a major security issue if an external party gets access to the database, as any malicious tampering will be replicated across the whole network. Database replication in Modex BCDB can be performed only through the Modex API which acts as a gatekeeper for the information stored in databases. Due to the nature of blockchain technology, any modifications made directly in a database system are discarded and reconstructed through the record versioning functionality. As such, any modification that isn’t performed through the Modex API will be treated by the system as a mistake or a potential attack.

Multi database replication

Multi-database replication is a highly sought after functionality by database administrators who need to operate and maintain different database systems. The advantages to this type of database replication have deep ramifications on both the business side as it reduces the time and subsequently the costs involved in migrating data multiple times, and also on the development side as database administrators are no longer required to initiate multiple replication operations. 

Modex BCDBfacilitates multi-database replication, regardless of the database engines involved, due to its agnostic take on this technology. This feature is further strengthened by the fact that in the Modex BCDB ecosystem, nodes no longer follow the publisher-subscriber relation (also known as the master-slave relation), as each node is treated equally in the system.

Fault tolerance vs high availability

While both fault tolerance and high availability focus on delivering optimal levels of operational continuity, they achieve this through different methods. Fault-tolerant systems are by design excellent at safeguarding against equipment failure. The main downside is that it can be expensive to implement because it requires a dedicated set of redundant hardware connected to the primary system that scans for failures and takes control when needed. On the other hand, high availability systems present themselves as a more cost-effective solution, although they come with the risk of a short period of downtime.

To better understand the differences between fault-tolerant and high availability systems consider the following analogy. The captain and copilot system used in commercial flights can be considered fault-tolerant. If the captain is no longer able to fly the plane, the copilot steps in immediately and gains the control of the aircraft. Conversely, a car with a spare tire is similar to a highly available system. If the car gets a flat tire, it will experience a brief period of “downtime” while the tire is replaced.

Given their expensive cost, fault-tolerant systems are usually applied in networks or systems where no period of downtime is acceptable. These are usually systems that have a direct impact on human lives if interrupted, such as healthcare, medical devices or the manufacturing of highly sensitive equipment.

Another shortcoming of fault-tolerant systems is the fact that they offer little to no protection against software failure which ranks among the most common reasons for system downtime for organizations. For companies focused on providing software-driven services that are not affected by a short period of downtime, high availability infrastructures seem to be a more cost-effective solution. Most organizations prefer to support the damages generated by a brief period of downtime, instead of investing in a costly fault-tolerant infrastructure that is susceptible to software problems.

Disaster recovery strategy

More often than not, companies usually tend to include in their business continuity plan elements from both fault-tolerant systems and high availability systems to ensure that their business or organization maintains essential functions during minor or major failures. By combining the benefits of cloud infrastructures with the advantages of blockchain technology, Modex BCDB delivers a unique mixture of fault tolerance and high availability features that helps enterprises and organizations to construct a customizable infrastructure resistant to a myriad of failover scenarios.