Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Harmonized Data Source - Use

...

PostgreSQL for the HDS DBMS

status: {proposed | rejected | accepted | deprecated | … | superseded by ADR-0005}

date: {YYYY-MM-DD when the decision was last updated}

deciders:

...

consulted: {list everyone whose opinions are sought (typically subject-matter experts); and with whom there is a two-way communication}

informed: {list everyone who is kept up-to-date on progress; and with whom there is a one-way communication}

...

entire TSC and AWG.  Not controversial


...

Use PostgreSQL as the database management system for a relational Harmonized Data Store

Context and Problem Statement

{Describe the context and problem statement, e.g., in free form using two to three sentences or in the form of an illustrative story. You may want to articulate the problem in form of a question and add links to collaboration boards or issue management systems.}

Decision Drivers

  • {decision driver 1, e.g., a force, facing concern, …}
  • {decision driver 2, e.g., a force, facing concern, …}

Considered Options

The Harmonized Data Store should be implemented using well known technologies and utilize open source solutions if possible.

Decision Drivers

  • open source for dbms
  • experience and familiarity to the community of potential developers

Considered Options

  • MongoDB
  • PostgreSQL
  • Oracle, SQL Server, MySQL
  • {title of option 1}
  • {title of option 2}
  • {title of option 3}

Decision Outcome

Chosen option: "{title of option 1}PostgreSQL", because {justification. e.g., only option, which meets k.o. criterion decision driver | which resolves force {force} | … | comes out best (see below)}.it is open source and relational technology is familiar to most development organizations.

Consequences

  • Good, because {positive consequence, e.g., improvement of one or more desired qualities, …}
  • Bad, because {negative consequence, e.g., compromising one or more desired qualities, …}

Validation

  • learning curve is small
  • Good, because no extra cost or setup complexity

Validation

??{describe how the implementation of/compliance with the ADR is validated. E.g., by a review or an ArchUnit test}

Pros and Cons of the Options

{title of option 1}

...

MongoDB

  • Good, because {argument a}easy to add data and extract data
  • Good, because {argument b}Neutral, because {argument c}schema on write
  • Bad, because {argument d}

{title of other option}

{example | description | pointer to more information | …}

  • Good, because {argument a}
  • Good, because {argument b}
  • Neutral, because {argument c}
  • Bad, because {argument d}

More Information

...

  • experience limited in potential maintainers
  • Bad, because proprietary system