Skip to main content

FAQ: Blockchain

How is this blockchain?​

The blockchain storage structure is the foundation of data storage in MDB. This doesn't change the fact that MDB is a centralized database management system. All data in MDB is stored in centralized blockchains within a single machine.

Built-in blockchain storage provides an additional layer of security without compromising data privacy. A blockchain implementation is more secure than traditional systems and provides the following benefits.

  • Prevents Illicit Changes from Inside Employees: Users cannot update or delete physical data.
  • Detects Illicit Hacker Changes: Blockchain detects changes to data by storing a cryptographic digest.
  • Detects Authority Ordered Illicit Changes: MDB digests can be freely distributed publicly. Cover-ups can be detected by comparing the published digest to the current contents.

How do I use the blockchain-ness?​

The blockchain aspect of MDB is abstracted from the database user. Every time you read or write blockchain hashes are verified. You can manually validate all hashes by running a CHECK VALIDITY command on the master database.

What are the different kinds of blockchains?​

Different bSQL blockchains provide an interface-like method of interfacing with immutable data. They optimize applications based-off of table / blockchain usage patterns.

  • HISTORICAL → Optimized for historical data collection and logging. The historical blockchain is a bare-bone ledger optimized for fast insert speeds, large datasets, and non-primary key dependent data.

  • HISTORICAL PLUS → Handles primary key dependent data and is optimized for infrequently updated data with inter-blockchain dependencies.

  • TRADITIONAL → Provides traditional features such as primary and foreign keys as well as blockchain-specific attributes such as time series selection, validity, and lifetime tracking. This container was designed to manage relational data while providing fast access to mutation history.

  • SPARSE → Provides the same functionality as a traditional blockchain but optimizes storage by only storing changed values.

How do I determine which blockchain to use?​

The table below illustrates the basic methodology for choosing a blockchain to fit your database needs.

BlockchainFREQUENT INSERTIONSINFREQUENT INSERTIONSFREQUENT UPDATESINFREQUENT UPDATES
historical✓✕✕
historical(+)✓✓
traditional✓✓✓
sparse✓✓