Either a system is built from scratch, or an existing system is modified. However, neither approach is cost effective as it takes many man-years of effort and hundreds of thousands of dollars to produce an operational system. The idea of extensible DBMSs is a powerful concept, and is certainly a more attractive approach to DBMS customization than current methods. At the logical front-end of a DBMS, it should be possible to introduce new object types and new operators. For example, conventional relational DBMSs provide only integer, float, and string data types.
Nontraditional applications require novel data types, such as polygons and time-series.
Also, it should be possible to express and process recursive queries and rules. At the physical back-end of a DBMS, it should be possible to admit new storage structures, new concurrency control and recovery algorithms, and new query optimization algorithms. These are just some of the more important examples. First, we are using theoretical models of logical and physical database organization to help identify the software atoms of database management systems. There are several important advantages to this approach.