420 likes | 626 Views
INT 410: e-Biz Impact 4.1 to 5.4 Migration for a Top 20 Integrated Health System. Vicki Riggins Team Leader, Integration vriggins@carilion.com Wednesday, August 18, 2004. Carilion’s Migration from 4.1 to 5.4. Overview of Carilion Migration Goals Why Migrate History of Carilion’s Migration
E N D
INT 410: e-Biz Impact 4.1 to 5.4 Migration for a Top 20 Integrated Health System Vicki Riggins Team Leader, Integration vriggins@carilion.com Wednesday, August 18, 2004
Carilion’s Migration from 4.1 to 5.4 • Overview of Carilion • Migration Goals • Why Migrate • History of Carilion’s Migration • PO, SFM, AIM (4.1 vs 5.4) • Controller, Cluster (4.1 vs 5.4) • Carilion’s Interfaces: SFMs, POs, AIMs • Carilion’s Interfaces: Transaction Counts
Carilion’s Migration from 4.1 to 5.4, cont. • Carilion’s Servers • 4.1 lpcw, scripts for Web status • 5.x Global Console, Configurator • Server Configuration: System Resources, SNMPD.CNF • Resending transactions, Alerts, CNC • Adaptations: 4.1 to 5.x • Functionality Wishes for 6.0 • Questions
Overview of Carilion Health System • Ranked in the nation's top 20 integrated health networks and ranked 5th in the eastern region (Verispan) • Named Top 100 Most Wired and Top 25 Most Wireless health systems in the nation (Hospitals & Health Networks) • Carilion Roanoke Memorial and Community Hospitals were awarded Magnet Recognition by the American Nurses Credentialing Center (ANCC). It's the highest honor a hospital can receive for quality nursing.
Overview of Carilion Health System, cont. • As the region's local healthcare partner, Carilion provides the latest medical technology and care. • Spanning across western Virginia, Carilion provides a healthcare network that reinvests its earnings to provide easy access to care. • Carilion's 10 hospitals, Level I Trauma Center, Cancer Center of Western Virginia and other services serve communities with modern healthcare. • http://www.carilion.com
Migration Goals • Develop new interfaces on 5.x (June 2003 - current) • Provider Portal: ADT, MPI Merges, Doctor Updates. Lab Results (Oct 2003) • HIS ADT to Teletracking (Nov 2003) • Soarian 2.0b: HIS ADT, MPI Merges, Lab Results (Jan 2004) • HIS ADT, MR Merges, MPI Merges to Transcription (Apr 2004) • Soarian 2.0c: Lab Orders, Add-on Orders and Statuses (May 2004) • Provider Portal : Transcription, ED Reports, Radiology Reports (May 2004) • Migrate 4.1 interfaces as systems are upgraded • Lab Results to Lab Outreach and to EMR (Oct 2003) • Transcription to EMR (May 2004) • HIS, MPI, Radiology, ED, PACS, Voice Recognition, EMR (Jul 2004) • HIS ADT, MR Merges, MPI Merges to Cardiology (Aug 2004) • Standardize HIS ADT on Siemens Invision GRV3 (vs GRV1) • Standardize and stabilize 5.x environment • 5.4.1 Upgrade (May 2004) • New AIMs (July 2004)
Why Migrate? • Eliminates TDM size limitations • Eliminates IPCS queues • Eliminates flavor limitations • Eliminates need to run as root • Easier PC and server installation • Easier interface configuration (GUI) • Global Console allows view and control
Why Migrate?, cont. • Same development tools (MSG IDE, Tran IDE) with minor changes in ODL code • Ability to run several separate clusters vs 1 BSM • Stay current with vendor updates • Impact 4.1 EOL March 31, 2004 • Now supports XML • Now supports SNMP trap alerts
History of Carilion’s Migration • Summer 2002: 5.3 GA • 3 days of migration training, 2 folks from Sybase Professional Services onsite for one week of assessment and coding of AIMs • Fall 2002: Development • 2 folks from Sybase Professional Services onsite for one week of engine configuration and coding of AIMs • January 2003: 5.3.1 • March 2003: 5.3.1.8 IR • Began work with Sybase Engineers • July 2003: 5.3.2.6;5.3.2.7 • September 2003: 5.3.3.3 • October 2003: LIVE! • May 2004: 5.4.1 July 2004: The AIM! • Jan thru Mar 2005: Complete all 4.1 to 5.4 migration • May 2005: HP-UX to AIX
PO, AIM, SFM (4.1 vs 5.4) • Production Object (PO) • Functionality is basically the same as 4.1. The TranIDE tool is enhanced with larger displays but lacks the connected mode feature (use Global Console instead). • AIM • Functionality is basically the same as 4.1. The MSG-IDE tool is used for coding. It’s a good idea to obtain a robust, configurable AIM . Future versions of the product may have supportable AIMs (?). Configure AIMs using not only CFG files created by configurator but also by passing parameters on command line (e.g., to set timeout for ACK in delivery AIM -or- to define SFM flavor or engine in acquisition AIM) • SFM • Functionality is basically the same as 4.1. The configurator is used to configure POs, sources (AIMs or other SFMs) and destinations (AIMs or other SFMs). SFMs now have Completed, Pending and Unrouteable log. The autoarchive feature retains old Completed logs and is configurable by size. You need to experiment with what size works best for your site.
Controller, Cluster (4.1 vs 5.4) • Controller • The controller is a process that has multiple threads that includes SFMs and AIMs. You must decide what works best for your site when defining what exists on a controller. For troubleshooting purposes, it is best to have an SFM per controller. You can add ACQ and DEL AIMs to this same controller or have separate controllers for the AIMs. • Cluster • Unlike the 4.1 Impact Integration Engine that requires defining all of the interfaces in one bsmtab, the 5.4 e-Biz Impact Integration Engine allows defining multiple clusters. Each cluster has an XML file that defines the controllers and the applications (AIMs and/or SFMs) that are defined in that controller. The number of controllers and applications per cluster currently impacts responsiveness of the Global Console. Note: You can send transactions from SFM to SFM within a cluster or from SFM to SFM within an engine or across engines using dfcsrv (remote controller) w/o acq/del AIM.
Carilion’s Interfaces: Transaction Counts • Daily Counts 4.1: about 70,000 • Daily Counts 5.4: about 85,000 Note: These are transactions received from endpoint. Delivery to destinations is about 3 times this number.
Server Configuration • Production, Test/Staging, Development/QA • Current Enterprise Integration Engines (HP-UX 11) • Future Enterprise Integration Engines (AIX 5.2) • Lab Integration Engines (AIX 5.2)
Current Server Configuration - Production (HP) • MODEL: 9000/800/N4000-44 • RISC CHIP: PA8500 • CPU SPEED: 440 MHz • CPUS: 4 active processor(s) • MEMORY: 12288 Mbytes of memory • HP-UX VERSION: B.11.00 64 Bit • Disks: 20 G (plus 2 x 36 G for system) • HA: MC/SG Cluster (3 nodes)
Current Server Configuration - Test/QA (HP) • MODEL: 9000/800/N4000-44 • RISC CHIP: PA8500 • CPU SPEED: 360 MHz • CPUS: 2 active processor(s) • MEMORY: 8192 Mbytes of memory • HP-UX VERSION: B.11.00 64 Bit • Disks: 20 G (plus 2 x 36 G for system) • HA: MC/SG Cluster (2 nodes)
Future Server Configuration - Production (IBM) • MODEL: P660/6M1 • CPU SPEED: 600 MHz • CPUS: 4 active processor(s) • MEMORY: 12 G • AIX VERSION: 5.2 • Disks: 20 G (plus 2 x 36 G for system) • HA: HACMP (3 nodes)
Future Server Configuration - Test /QA (IBM) • MODEL: P660/6M1 • CPU SPEED: 600 MHz • CPUS: 2 active processor(s) • MEMORY: 8 G • AIX VERSION: 5.2 • Disks: 20 G (plus 2 x 36 G for system) • HA: HACMP (2 nodes)
Lab Server Configuration - Production (IBM) • MODEL: P660/6H1 • CPU SPEED: 600 MHz • CPUS: 2 active processor(s) • MEMORY: 8 G • AIX VERSION: 5.2, Maint. Level 3 • Disks: 20 G (plus 2 x 36 G for system) • HA: none
Lab Server Configuration - Test /QA (IBM) • MODEL: P660/6H1 • CPU SPEED: 600 MHz • CPUS: 2 active processor(s) • MEMORY: 8 G • AIX VERSION: 5.2, Maint. Level 3 • Disks: 20 G (plus 2 x 36 G for system) • HA: none
Server Configuration: System Resources • Tune kernel e.g, maxdsiz, maxssiz • Reference White Papers from Sybase: “e-Biz Impact 5.x Memory Management Technical Paper February 2004” and “Impact 5.4 Tuning - How to start tuning your HP-UX 11i system for Impact 5.4 January 2004 • Memory • Verify free memory and that your system is not swapping (top on HP-UX) • SNMP • Reference Sybase recommended settings (next slide)
Server Configuration: SNMPD.CNF File • MAX_THREADS (Carilion’s is set to 50) • The default MAX_THREADS setting is 10. This is the number of worker threads the master agent running on the port has. Worker threads satisfy requests for information from things such as the Global Console, other clusters involved in cluster-to-cluster communications, and command line command and control (ims54cnc). The more of these being used, the more the maximum threads number must increase. If you add another Global Console and experience unexpected behavior, increase your number of MAX_THREADS. • MAX_SUBAGENTS (Carilion’s is set to 100) • The default MAX_SUBAGENTS setting is 25. This is the number of subagents that the SNMP daemon can support. Each cluster process, which consists of the manager and each controller, is a subagent of the SNMP daemon. You should also allow for subagents from cluster-to-cluster communication and command line command and control. A typical symptom of this value being set too low would be seeing only a partial list of what you expect to display in the Global Console.
Server Configuration: SNMPD.CNF File, cont. • MAX_PDU_TIME(Carilion’s is set to 2500 ) • The value of this variable should be set to (MAX_THREADS * 60 seconds) * 100. The assumption is that the maximum turnaround time for a provisioning request (for example, an RPM MGX 8850 PXM1-based node connection provisioning) might take around 60 seconds. A multiplication factor of 100 is applied since this value is given in centiseconds (1/100th of a second). • For example, if the MAX_THREADS value is 5, this value would be 30000 centiseconds, 300 seconds or 5 minutes. However, since all the provisioning requests do not take 60 seconds, the default value of 30000 centiseconds or 300 seconds should suffice most of the scenarios. • The OSS/client/manager timeout must be set greater than or equal to the MAX_PDU_TIME value.
Server Configuration: SNMPD.CNF File, cont. • MAX_OUTPUT_WAITING (Carilion’s is set to 65536) • The value of this variable should be set to (MAX_THREADS * 4096). This parameter is the amount of space that the stack requires to buffer/queue the incoming requests and outgoing responses.
Re-sending Transactions • Configure a cluster with an ACQ AIM, DEL AIM and SFM to process batches of transactions. For instance, if an endpoint requests to have transactions resent from the Integration Engine vs the sending endpoint. • The sfmlog utility has many options for extracting transactions. Transactions can be extracted with a newline delimiter between each transaction.ims sfmlog -fCompleted.log -xgt1500 -gh0a -oresend.datecho >> resend.dat
Alerts • AIMs can detect disconnects, cancelled transactions, unrouteable transactions, and other scenarios that can be coded with ODL. • The sfmlog utility has many options for extracting transactions and can be used in scripting to detect the number of transactions that are queued to a destination • The alert daemon can be configured to be aware of current state of the cluster(s). Alerts can be OT alerts (can create a file) or SNMP traps.
CNC • CNC scripts should be written to stop cluster via a script (e.g., if you are going to shut down your server). • The CNC commands can also be used to stop and start applications from the command line vs using the Global Console. • The CNC commands can be used to automate script processing.
Adaptations: 4.1 to 5.x • Ability to monitor and control from any device with lpcw (4.1) vs Global Console Citrix deployment (5.x) • View and manage cancelled and unrouteable transactions using TranIDE connected (4.1) vs Global Console (5.x) • Load LIVE in TranIDE (4.1) vs extract with sfmlog (5.x) • Installation of Production Objects and Tables using TranIDE (4.1) vs ftp and manually saving versions (5.x) • StallTime and MaxQTime for sources and destinations in SFM (4.1) vs AIMs and scripts (5.x)
Functionality Wishes for 6.0 • Ability to monitor and control from any device (e.g. a Web page) • Native support of Java, JavaScript, JDBC, JMS • Native support of FTP and HTTP (SOAP) connections • Standard, robust, configurable connections (i.e., AIMs) that are product supported • StallTime and MaxQTime for sources and destinations in SFM • Enhanced repository that supports HL7 XML fields and rule components mapped to/from standard HL7
Functionality Wishes for 6.0 • TranIDE • drag and drop • check use of object before delete • check to see if fields are linked in PO at deletion - prompt yes/no • check to see what fields/filters/qualifierss/rule components are not being used anywhere (clean up of unused items) • ability to clone a rule component (use same principles as fields to keep the properties of it (qualifiers,filters, etc.) • Version control of AIMs, POs, tables, configuration files • Configurator/MSG IDE: More robust configuration for HL7 TCP/IP MLLP AIMs, realtime ftp AIMs (ACQ and DEL), reading/writing from JMS queue, SOAP connections • Note: We seem to be able to code ftp DEL but need to be able to assign dynamic socket for ftp ACQ