NYCPHP Meetup

NYPHP.org

[nycphp-talk] Some comments on the XML Talk

Elliotte Harold elharo at metalab.unc.edu
Thu Nov 1 06:37:09 EDT 2007


ali mohammad wrote:

> At the risk of slightly sounding off topic (but it does base on
> Kenneth's question on specific examples), I would like anybody's views
> on the applicability of XML database to clinical databases where the
> information that needs to be stored comes from a domain that is largely
> undefined or unpredictable in advance (maybe the more precise term is
> unstructured data but I am not too sure as I am amateur programmer
> myself). I did have in the past developed clinical databases (data
> captured from clinical trials) using the EAV model out of relational
> tables. The queries turned out to be terribly slow so I was forced to
> used a combination of true relational tables and EAV tables out of
> hacked up relational tables. Even then, the performance levels sucked. 
> 

If you're going to do EAV, you need an EAV database. While you can 
theoretically store anything in tables, if you insist on pounding EAV 
triangles into rectangular SQL holes, performance will be abysmal, as 
you noticed. The EAV model fits some medical applications very well, but 
you really do need a database designed for that use case.

XML is seeing extensive uptake in the healthcare industry, though I'm 
not personally aware of any applications that use an XML database (yet). 
  That may just be a matter of time. The key differences that might 
suggest using an XML database for medical data are:

1. No predefined schemas is required. You're always free to add new 
information as it comes to light.
2. Null data doesn't take up any space. You simply leave it out.

These are also characteristics that EAV databases share relative to SQL 
databases. Whether XML databases may have other characteristics that 
make them inferior or superior to EVA databases for medical apps, I 
don't know.

P.S. By "medical apps" I'm referring to ones that include diagnoses, 
treatments, and the practice of medicine. Medical billing, patient 
management, and so forth isn't all that different from other business 
applications. Those sorts of applications do perform reasonably well in 
a relational database.

-- 
Elliotte Rusty Harold  elharo at metalab.unc.edu
Java I/O 2nd Edition Just Published!
http://www.cafeaulait.org/books/javaio2/
http://www.amazon.com/exec/obidos/ISBN=0596527500/ref=nosim/cafeaulaitA/



More information about the talk mailing list