If you are asked to name the most important pioneer in database development, the name Edgar Codd is probably the first name that comes to mind. He pioneered the concept of relational database. But another person deserves credit as well. Nearly a decade earlier Charles Bachman did fundamental work, developing the first database management system.
He was working with technology that we would hardly recognise today. Let’s put the technology of the mid-1960’s in perspective. In 1965 I got to work on an IBM 360/50 which was a brand-new model from IBM. I recall it had 128,000 bytes of storage and stored data on IBM 2311 disks which stored a whole 7 megabytes on removable platters. This was state of the art hardware in the mid 1960’s. Compare that with the specs of your phone.
The disk drives were supported by software called Index Sequential Access Method (ISAM). This allowed you to read fixed format records sequentially, or randomly by providing a record key. This opened up new possibilities compared with the magnetic tapes we had used for commercial computing before this. For example you could include the key of a customer record in an invoice record to create a link. These days you would call this a foreign key. We thought this was pretty cool.
Charles Bachman was already working on database systems.
In 1961, Charles Bachman started work at GE on a system he called the Integrated Data Store (IDS). It ran on a GE 200 series machine and he released it in 1963 It was using the navigational model which he had developed. So it modelled relationships, had a data definition language, data manipulation language and so on. It was a proper Database Management System (DBMS) and despite hardware that was severely limited, it was very fast. More details here. Not to mention years ahead of it’s time. The great man talks about the system here.
Enter the Conference/Committee on Data Systems Languages (CODASYL)
CODASYL was massively successful in developing COBOL, a standard coding language for commercial software. COBOL was created in 1959 and there are probably people still using it today. It was ubiquitous at the time in commercial computing.
CODASYL decided to start a new project to develop a database system and chose IDS as their starting position.
It was a big deal. Everyone knew that Database technology was the future and that the CODASYL database was going to be the key technology. The ISO adopted the CODASYL database specifications under the name Network Database Language (NDL), Man-centuries of work went into development and planning. It was implemented on a number of computers1. I can’t emphasise enough that at the time everyone thought this was the future, and I circulated at the time in quite classy circles.
Charles Bachman received the Turing award in recognition of his pioneering work. He worked for a number of companies continuing the development of IDS. He was never in Academia, just worked on practical applications of his revolutionary technology.
Then in the mid to late 70’s everyone lost interest.
Edgar Codd published “A Relational Model of Data for Large Shared Data Banks” in 1970. 10 RDBMSs were implemented or under way within three years of Codd’s landmark paper2 . Oracle came later in 1979 and the world we live in now took form. the CODASYL database was dead.
People have mentioned technical issues, like the way foreign keys worked as the reason CODASYL went out of favour. The people who make purchasing decisions at this level wouldn’t know a foreign key if it bit them. Personally I put it down to some fairly pedestrian reasons:
- Fashion: Never under-estimate the power of fashion. People avoid technologies if they are ‘out of date’. By this stage CODASYL was ten years old and here was this shining new thing that had this…
- …Solid academic provenance. Codd’s work was very impressive. He developed a whole new algebra with impressive mathematical formulae. He identified a dozen or so rules that an RDBMS must adhere to if it is to be truly relational3. Not to mention a whole new set of terminology. So an RDBMS had the “here is the science” bit. A whole algebra! You have to be impressed…
- At the same time as having these really impressive and difficult-looking concepts, at it’s most fundamental level an RDBMS is a souped up ISAM system. Quite a lot of souping up to be fair, but fixed format records, with a primary key and direct access via the key is a pretty good start. If you understand ISAM then you are on your way to understanding the RDBMS. You don’t really need to understand the algebra and for most applications you don’t need the complex stuff. By the late 1970’s, IBM users really understood ISAM.
Bachman carried on working on IDS, which eventually got purchased by Computer Associates which in turn was gobbled up by Broadcom. Broadcom still have a product called IDMS, but they call it a relational system, so I don’t know if it is the same system four decades later.
Yes, Edgar Codd was a great pioneer, but a decade earlier the fundamentals of database technology were being established by Charles Bachman.
- Wikipedia says that these systems were ‘roughly’ conforming to the standard. ↩︎
- According to this paper. I recommend a read of this to get an idea of the competitive atmosphere at the time. ↩︎
- The rules are important, but check them out for yourself. I am not at all convinced by rule 5. Data manipulation by data strings opened up a very nasty security hole. ↩︎

Leave a comment