Loading ...
Sorry, an error occurred while loading the content.

Re: [XP] "Databases" (was: summary of the discusion

Expand Messages
  • daswartz@prodigy
    Hello Sean, ... In 1999, we were beginning to build a relatively small system; our first XP project. We had Ron Jeffries in to mentor/coach us. We were all
    Message 1 of 4 , Nov 8, 2009
    • 0 Attachment
      Hello Sean,

      > I'm curious about real-world practices here. How many people really do
      > start out with a flat file and switch to a database only when they
      > need it?

      > I can understand wanting to defer the decision about the *type* of
      > database (relational, object, schema-less/no-SQL, etc) but how far
      > into a project can you really defer the decision about whether you
      > *need* a database? How many projects really go live without a
      > database?

      > As I say, just curious about people's experiences...

      In 1999, we were beginning to build a relatively small system; our
      first XP project. We had Ron Jeffries in to mentor/coach us. We were
      all experienced folks with a minimum of 15 years of experience. the
      system was sort of a big multi-dimensional spreadsheet with a bunch of
      prebuilt formulas, and data coming from file feeds from various
      systems and web entry.

      Shortly after we built a one day spike of the system that we threw
      away, we sat down to talk about the first set of cards we were
      going to work on. One of our discussion items was which DBMS we
      were going to use for persistence. Ron spoke up and said "When did the
      customer say you had to store the data in a database? Couldn't you
      just keep it in memory and stream it to disk occasionally to save it."
      While being a little uncomfortable with the idea, we decided to give
      it a try.

      We ended up building a minimal XML object broker framework to save and
      retrieve objects from flat files in directories named after object
      classes.

      Today, that original system is a product family with 10, or so,
      instantiations, all continuing to share the vast majority of their
      code. All but one of them still use the (quite a bit expanded) XML in
      flat files scheme. The one exception stores one of its classes in a
      relational table. One of the current systems calculates and manages
      about 40-50 million "spreadsheet cells" each day.

      Occasionally we talk about replacing the flat files with a relational
      store, but, except for the one instance, where we plugged in a
      relational store after the fact, it hasn't been worth the effort.


      __
      Doug swartz
    Your message has been successfully submitted and would be delivered to recipients shortly.