Stories
Slash Boxes
Comments

SoylentNews is people

SoylentNews is powered by your submissions, so send in your scoop. Only 12 submissions in the queue.
posted by n1 on Thursday September 11 2014, @05:48AM   Printer-friendly
from the anything-but-oracle dept.

Ulitzer's Business Wire reports:

The Spine -- a collection of national applications, services, and directories -- connects clinicians, patients and local service providers throughout England to essential national services, such as electronic prescriptions and patient health records.

Spine is used by more than 20,000 organizations that provide health care across England, including primary and secondary care sites, pharmacies, opticians and dentists. Riak, the open source distributed database, is key to providing the reliability and scalability for the platform to drive efficiency and improve patient care.

The NHS' move to revamp the Spine, in a major project led by England's Health and Social Care Information Centre (HSCIC), was driven by the need for a scalable, resilient and flexible system that would also result in cost-savings for the organization.

With these requirements in mind, the NHS selected Riak Enterprise, the commercial version of Basho's distributed open source, highly available NoSQL database, to support the transition and implementation of the new Spine. Basho and the HSCIC collaborated throughout to ensure the technical knowledge of both organizations was reflected in enhancements to Riak and the wider project itself.

El Reg's coverage notes that the old system used a (closed-source, proprietary) Oracle product and the new software is NoSQL running on an open-source stack. It also notes the decision was made in October 2013.

Robert Pogson's commentary is also interesting.

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 1) by Anonymous Coward on Thursday September 11 2014, @07:24AM

    by Anonymous Coward on Thursday September 11 2014, @07:24AM (#91957)

    I mean, it's cool that they are switching to Open Source. But there are enough Open Source SQL databases they could have chosen. I mean, for health data, correctness is critical. SQL gives certain guarantees, and NoSQL explicitly scraps those guarantees in exchange for better performance on large data sets. But for critical data, data integrity is more important than performance. After all, you'll not die if your data is stored in the database a second later. But you'll die if an error in the database causes you to get the wrong medication.

    Starting Score:    0  points
    Moderation   +1  
       Underrated=1, Total=1

    Total Score:   1  
  • (Score: 1) by Anonymous Coward on Thursday September 11 2014, @07:38AM

    by Anonymous Coward on Thursday September 11 2014, @07:38AM (#91959)

    MariaDB++

  • (Score: 3) by skullz on Thursday September 11 2014, @08:10AM

    by skullz (2532) on Thursday September 11 2014, @08:10AM (#91962)

    I think the biggest selling factor for them would be the ability to plop nodes onto their datastore easily. So as long as they could flag changed data as "potentially not consistent" that would act as a gatekeeper for records which were recently updated with new allergy info.

  • (Score: 4, Informative) by c0lo on Thursday September 11 2014, @08:11AM

    by c0lo (156) Subscriber Badge on Thursday September 11 2014, @08:11AM (#91963) Journal

    and NoSQL explicitly scraps those guarantees in exchange for better performance on large data sets.

    Not necessarily: there are NoSQL-es [wikipedia.org] (immediately consistent) and then, again, there are NoSQL-es [wikipedia.org] (eventually consistent).
    In particular, TFA states:

    Spine1 has been completely rebuilt and Oracle’s relational database jettisoned for a NoSQL distributed system called Riak, from Basho.

    Wikipedia says Riak is "eventually consistent" and that is used by 25% of the Fortune 50 [wikipedia.org] (which means: if it's good for multibillion transnationals, should be good enough for low-end matters such as brits health-care - after all, a life is valued at max $7.9M in US [wikipedia.org]).

    Ah, BTW, the system that is using Riak, TFA says:

    loads such as those stuffed into massive, mission-critical systems like Spine.

    (with my emphasis). Now, there's a difference between mission critical [wikipedia.org] and life critical [wikipedia.org] (I infer that, while a failure within NHS may become unpleasant, it is unlikely that will cause loss of life).

    --
    https://www.youtube.com/@ProfSteveKeen https://soylentnews.org/~MichaelDavidCrawford
    • (Score: 2) by Wootery on Thursday September 11 2014, @10:40AM

      by Wootery (2341) on Thursday September 11 2014, @10:40AM (#91979)

      I infer that, while a failure within NHS may become unpleasant, it is unlikely that will cause loss of life

      This is probably incorrect. I don't know exactly what they're storing on there, but things like medical triage really are matters of life and death, and software failures in this area really have caused loss of life in the past.

      • (Score: 2) by Wootery on Thursday September 11 2014, @10:50AM

        by Wootery (2341) on Thursday September 11 2014, @10:50AM (#91981)

        Having gone back and actually read the summary....

        The Spine -- a collection of national applications, services, and directories -- connects clinicians, patients and local service providers throughout England to essential national services, such as electronic prescriptions and patient health records.

        The patient health records sounds like the important bit here. I imagine there could be some consequences to this stuff failing, but I suspect you're right that it wouldn't generally result in death, but instead in an Error 404.

        The consequences of the system getting hacked could be very severe, if they really are hooking up patient health records to a widely-accessible database...

  • (Score: 2) by M. Baranczak on Thursday September 11 2014, @01:29PM

    by M. Baranczak (1673) on Thursday September 11 2014, @01:29PM (#92000)

    "NoSQL" doesn't really tell you anything about the system. It just tells you that it isn't a traditional relational DB.

    And you're understating the performance issues. A one-second delay isn't too bad - what about a five-hour delay because someone else is updating the table schema and some resource gets locked? When you have millions of records in a relational DB, those are the kind of problems you run into all the time.

    • (Score: 2) by strattitarius on Thursday September 11 2014, @04:28PM

      by strattitarius (3191) on Thursday September 11 2014, @04:28PM (#92047) Journal
      I am a bit ignorant about NoSQL. What is the fundamental difference between a NoSQL database and a massively massive MUCK table or the EAV [wikipedia.org] model?
      --
      Slashdot Beta Sucks. Soylent Alpha Rules. News at 11.
  • (Score: 3, Insightful) by choose another one on Thursday September 11 2014, @05:03PM

    by choose another one (515) on Thursday September 11 2014, @05:03PM (#92058)

    Trouble is, the better performance on large data sets (ability to scale hardware out instead of up) is the key to the cost saving on this replacement - despite Pogson believing that it is the licence change that delivers scalability savings and not the architecture change. I doubt that any of the open source RDBMS's have any track record at the scale of NHS Spine, or that they are likely to scale better than Oracle, whereas various NoSQL solutions definitely will. On the other hand, 10+yrs ago when the first solution started, there were probably zero credible NoSQL options.

    for critical data, data integrity is more important than performance. After all, you'll not die if your data is stored in the database a second later. But you'll die if an error in the database causes you to get the wrong medication.

    ...unless the data being stored too-late is the correction to your medication.

    More seriously, availability of your record is also critical, and lack of availability can easily be fatal (e.g. drug allergy info). This is a big dataset, with access from large numbers of distant systems, it _is_ going to end up partitioned. Spine v1 was specced at four nines availability, which probably didn't include scheduled downtime or downtime for connection from the thousands of hospitals _to_ the spine, so end user availability would be less. Doctors aren't simply going to stop treating people for an hour or a day or so a year, historical / local cached record copies will be needed and offline updates to be reconciled later.

    Once you accept the data is partitioned, CAP theorem comes into play and you need to trade off consistency against availability, and availability is critical... Consistency ? - less so. Do different patient records need to be consistent ? - unlikely, even when, say, you transfer a kidney from one patient to another, in reality it isn't an atomic transaction and may end up half complete. Do different patient records need to be consistent with some other data e.g. appointment booking ? - possibly but not immediately, and not life threatening if it isn't, whereas not being able to get your record in an emergency because the system is updating a routine checkup appointment in two months time actually could be life threatening.

    In fact, the system needs to be able to guarantee no lost data (no update to a record lost, ever), and that every change (or addition - in fact, records are rarely if ever changed, just added to) must be audited, but those aren't the ACID guarantees. NoSQL and/or BASE guarantees should be able to do the job perfectly well. Only time, and data on running costs and maintainability, will tell us if this particular implementation actually does the job well.