Next Page Prev Page Main Index Home

Boxes or Attractors
Why not use relational?

At the core of MPbase is the unique way it organizes information. This organization is very different from a traditional DBMS. In a traditional database the various tables, rows and columns can be viewed as boxes. The access to each box is by its label. The more precisely defined the label, the less you can put in one box. So you can either have lots of precise little boxes or a few big, but vague, boxes.

The problem is that neither design makes a good general choice. This would tend to imply that the best choice would be the midpoint between the two. The unfortunate reality is that the midpoint suffers from the problems of both while having few of the benefits of either. It really is the worst of both worlds.

This is what causes high-performance database designs to specialize in only one type of transaction. This is also what causes the more general-purpose database designs to be tolerable for anything, really good at nothing. Any attempt to improve some single aspect of the general-purpose database design will tend to trash some other area of functionality.

This either/or mentality is so ingrained in the current database paradigm that no one dares to ask "What if we could have both?" As long as you are predefining boxes to hold your data you cannot. If you were to give up the fixed boxes, how on earth would you ever find anything? The answer is to let the data sort itself out. This is only possible under a content-addressable schema.

Using this content-addressable model, the need for fixed meta-data goes away. If you do not have fixed boxes you do not need fixed-box labels. What you get in its place is virtual meta-data, or the ability to define and label your boxes on the fly. By definition, if the data content determines its location in the data store, the more alike the data, the closer together it is stored.

In this model you could say: like data attracts. Hence the most common data elements are the best attractors. This creates the most natural possible structure for loading, updating, finding or analyzing the data. It allows the ability to "zoom" in and out. From a high-level macro view to a detailed analysis of subtle differences between almost matching data.

Just looking at the resulting structure can be very informative. Data found in large clumps is going to be very similar. Data found off by itself is normally going to be ether in error or interesting. Some types of analysis will focus on the "stray" data, others on one or more of the data "clumps." In ether case the other type of data can easily be kept out of the way.

Next Page Prev Page Main Index Home © 1998-2004 NPSI