LDS Requirements

Published on February 2017 | Categories: Documents | Downloads: 46 | Comments: 0 | Views: 279
of 5
Download PDF   Embed   Report



Executive Summary The longitudinal Data Store (LDS) is a data store to store all raw messages received into Orion systems (Generally Rhapsody, but not limited to) as they were received, the only change supported will be the debatching o messages where they have been received in bul!" The LDS is to meet Orion#s and $ustomers re%uirements to store all messages so that they can replayed i re%uired, this data store will be available or new and e&iting $ustomers and will be a !ey component o the new Data 'lat orm (rchitecture being developed" The !ey re%uirements or the LDS are) • • • • • • • • Store more than *+,+++ ,essages per minute Store more than One -illion ,essages Store message as it was received (Do not care i Good, -ad or .gly Data) Retrieve a list o ,essage /denti iers Retrieve any stored ,essage (given a ,essage /denti ier) 0o message can be deleted or modi ied Store ,eta1data as re%uired or the new data plat orm architecture ,eta1data should be modi iable, but a version history o changes must be !ept"

The ollowing will not be delivered) • ,ulti Tenancy (0o ,ulti Tenancy (rchitecture available) • Storing more than one 'atient /denti ier in ,eta1data, the new data plat orm architecture will %uery an 2,'/ to provide a list o 'atient /denti iers re%uired or matching with ,eta1data" These re%uirements are database technology agnostic"

LDS Requirements

The ollowing scenario#s are to provide li!ely use cases or the LDS or e&isting Deployments and deployments with the new data plat orm architecture Scenario 1: Rhapsody Replay. Store all messages received into Rhapsody even i the data -ad, the messages should be as received or debatched or messages received in a batch, need to be able to replay messages bac! through Rhapsody or changes to Rhapsody routes, application changes re%uiring additional data or data remapping" Li!ely re%uests or messages are li!ely to be around ,essage Type or ,essage Source (3hich com point did the message com in on)" Scenario 2: Application or Database p!rade.

3hen changes to applications re%uire signi icant database changes or customers data is not easily mapped to new database schema then messages need to be replayed through Rhapsody or the the new data plat orm" The entire LDS could be replayed or speci ic message types, also need to be able to load current messages irst and then historical bac!load o messages" Scenario ": #e$ Data plat%orm out o% sequence replay. The new data plat orm supports the ollowing re%uirements • 'laybac! o se%uences (ordered list o messages) as re%uested by an application, the LDS will need to provide the message or a speci ic ,essage /D ((lso called LDS/D, 2vent/D)" • 4or a given 'atient provide, all messages or messages o a speci ic type or within a date range, the data plat orm will provide a list o valid 'atient /denti iers (4rom an 2,'/)" • 'rovide all messages or a given ,essage type, or since a speci ic ,essage /D, or rom a speci ic 2&ternal /nter ace"

#on &oals
This version will not support the ollowing eatures)

• Storing more than one patient /denti ier, in order to retrieve messages based on 'atient /denti ier a list o 'atient /denti iers will need to be provided rom an 2,'/ in order to guarantee a match with the 'atient /denti ier stored in the LDS" 2ven i all 'atient /denti ier#s in the message were stored, there are no guarantees that the message contains all the possible 'atient /denti iers" • ,ulti Tenancy in an LDS, (s the multi Tenancy (rchitecture does not e&ist this cannot be currently implemented or supported"

Detailed Speci%ications
The !ey re%uirement or the LDS is that it stores the message as it was received, the only operation permitted is debatching a message where it was received as a bul! load" The message itsel is not allowed to be updated in anyway though ,eta1data about the message can be modi ied" / ,eta1data is modi ied the history o changes needs to be !ept" The LDS must provide inter aces to store the message, update ,eta1data about the message, retrieve a stored message given a ,essage/D and provide a list o stored ,essage/D#s based on message iltering re%uirements" The LDS must store all messages whether it is Good, -ad or .gly data" 'er%ormance and si(in! criteria 4rom e&perience with e&isting customers, Rhapsody can process up to 56,+++ messages per minute, the LDS should be able to store a minimum o *+,+++ messages per minute so that the LDS is not a bottlenec!, message retrieval orm the LDS should be as per1 ormant"

Typical messages are in the 7ilobyte si8e range (9L: type messages), though some messages (e&ample $$D) can be ,egabytes in si8e, the LDS needs to support storage and retrieval o these divergent si8es, the *++,++ messages per minute assumes that the ma;ority o the stored messages are at the smaller end o the si8ing scale" ,essages need to be stored orever, we have speci ic customers where we are e&pecting to bac! load <++ ,illion messages and then store an additional =++ ,illion ,essages per year, there ore the LDS need to be able to store a minimum o One -illion messages rom production release" )nter%aces 4our inter aces have been identi ied or the LDS" Store *essa!e Rhapsody (or some other product) calls this inter ace to store the original message and re%uired ,eta1data, only error messages are returned to the calling application" The message will be stored in the LDS even i ,eta1data is missing, the LDS will store Good, -ad and .gly messages"

,eta1data re%uired with the message is) • 'atient /denti ier • (lso re%uired is relevant 0ame space • This will be the irst record i there are more than one, an e&ample in an 9L: message would be the irst 'atient /denti ier in the '/D * ield • 4T> • ,essage 4ormat e&ample 9L:, ?,L • ,essage Type e&ample OR,, OR., OR$ • >ersion, this will be provided by Rhapsody con iguration and is used i the source o the messages changes e&ample upstream application is upgraded and the messages change slightly" This is to be used in the Data plat orm to help identi y business rules to run" • Source 4acility @ Organi8ation, which acility did this message originate rom, i not provided in the message Rhapsody to speci y the $omm point • Source (pplication, which application did this message originate rom, i not provided in the message Rhapsody to speci y the $omm point • 2&ternal Source, which source system is providing the messages, i not provided Rhapsody to speci y $omm point" Other ,eta data to be stored that the LDS will provide is) • Received Date@Time, this is when the message was stored not when it was sent or received into Rhapsody" • LDS /denti ier, some uni%ue way to /denti y each message stored in the LDS Retrieve *essa!e This inter ace retrieves the stored message and ,eta1data or a speci ied LDS /denti ier"

Retrieve list o% LDS)D+s This inter ace retrieves a list LDS /denti iers given none, one or many ilter criteria" The ilter criteria are) -etween speci ied date range Since a provided LDS /denti ier List o 'atient /denti ier#s (including relevant 0ame space) 4T> • ,essage 4ormat e&ample 9L:, ?,L • ,essage Type e&ample OR,, OR., OR$ • >ersion • 2&ternal Source • • • • *odi%y the *eta,data %or a stored *essa!e 4or a given LDS /denti ier, the ,eta1data should be able to be modi ied" The previous (historical) ,eta1data must be stored along with when and by what@who made the change"

-estin! Requirements
The minimum testing re%uired to ma!e sure that the LDS is it or purpose i"e" can store and retrieve messages in a timely manner (timely being *+"+++ per minute) is outlined brie ly below" /n order to test di erent LDS designs, the same process and test message set needs to be used in all testing, this can be e&tended as re%uired, but will give a comparative and level playing ield or all per ormance testing" Load One -illion messages rom a standard set o messages" • 'er ormance Test team pre generated 9L: messages ((ppro&imately =+ ,illion -atched) are located) • AAauc!land=Aper testbac!upsADataBGenerationAOR.sBOne,illion'atients • AAauc!land=Aper testbac!upsADataBGenerationA(DT(+CsB3ith,ultipleDiagno ses(nd'rocedure • Test to ind ma&imum storage rate that the LDS can support (the loading system should not be the bottlenec!) • ( ter -illion have been loaded, test random and se%uential retrieval rates o stored messages • Test using provided inter ace ilters • 2nsure testing retrieves older and new data to see i there are any per ormance issues around age o messages" • Test retrieving and storing at the same time as this is the more realistic usage pattern • 'revious tests provide ma&imum store@retrieve per ormance, this provides normal 'er ormance

(lso need to test large documents as standard 9L: messages are, though the most common typical small"

Sponsor Documents

Or use your account on


Forgot your password?

Or register your new account on


Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in