1 Designing a Data Exchange - Best Practices Data Exchange Scenarios –Sender vs. Receiver-initiated exchanges –Node Design Best Practices: –Handling Large.

Slides:



Advertisements
Similar presentations
Service Description: WSDL COMP6017 Topics on Web Services Dr Nicholas Gibbins –
Advertisements

ICIS-NPDES Plugin Design Preview Webinar ICIS-NPDES Full Batch OpenNode2 Plugin Project Presented by Bill Rensmith Windsor Solutions, Inc. 3/15/2012.
5/30/2012. Provides a method for finding services/data on the Exchange Network – discover data. Supports User Friendly Tools Can automatically collect.
Copyright Hub Software Engineering Ltd 2010All rights reserved Hub Document Exchange Product Overview Secure Transmission for Transaction-based Documents.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
SOAP Quang Vinh Pham Simon De Baets Université Libre de Bruxelles1.
Integration Framework Pennsylvania Treasury
UIC Data Conversion and Submission via CDX Node Client UIC Database V2 6/16/
TRI State Data Exchange …The Best Thing Since ….!.
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
Implementing ISA Server Caching. Caching Overview ISA Server supports caching as a way to improve the speed of retrieving information from the Internet.
Microsoft ® Official Course Interacting with the Search Service Microsoft SharePoint 2013 SharePoint Practice.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 7: Advanced File System Management.
Module 14: Scalability and High Availability. Overview Key high availability features available in Oracle and SQL Server Key scalability features available.
Passage Three Introduction to Microsoft SQL Server 2000.
Service Broker Lesson 11. Skills Matrix Service Broker Service Broker, provides a solution to common problems with message delivery and consistency that.
SQL Server 2000 and XML Erik Veerman Consultant Intellinet Business Intelligence.
webMethods platform solutions
State of Delaware Department of Natural Resources and Environmental Control.
NovaBACKUP 10 xSP Technical Training By: Nathan Fouarge
6/1/2001 Supplementing Aleph Reports Using The Crystal Reports Web Component Server Presented by Bob Gerrity Head.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 7: Advanced File System Management.
9 Chapter Nine Extracting and Transforming Data with SQL Server 2000.
Computers Are Your Future Eleventh Edition Chapter 4: System Software Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 10 Database Performance Tuning and Query Optimization.
Module 14: WCF Send Adapters. Overview Lesson 1: Introduction to WCF Send Adapters Lesson 2: Consuming a Web Service Lesson 3: Consuming Services from.
Chapter 8 Implementing Disaster Recovery and High Availability Hands-On Virtual Computing.
Facility Registry System and the Exchange Network Pat Garvey OEI/OIC May 2000.
OracleAS Reports Services. Problem Statement To simplify the process of managing, creating and execution of Oracle Reports.
Integration Broker PeopleTools Integration Broker Steps –Introduction & terminologies –Application Server PUB/SUB services (Application Server)
EIDE Design Considerations 1 EIDE Design Considerations Brian Wright Portland General Electric.
Exchange Design Best Practices Tools for Successful Flow Design and Implementation 1.
Computer Emergency Notification System (CENS)
(Business) Process Centric Exchanges
The State of Washington Node Lessons Learned from a Production Node and Beyond Guy Outred Windsor Solutions.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
CEN Advanced Software Engineering
1 Chapter Overview Performing Configuration Tasks Setting Up Additional Features Performing Maintenance Tasks.
10 1 Chapter 10 Distributed Database Management Systems Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
Implementing the XDS Infrastructure Bill Majurski IT Infrastructure National Institute of Standards and Technology.
ATLAS Detector Description Database Vakho Tsulaia University of Pittsburgh 3D workshop, CERN 14-Dec-2004.
6/1/2001 Supplementing Aleph Reports Using The Crystal Reports Web Component Server Presented by Bob Gerrity Head.
ECI – electronic Commerce Infrastructure “ An application to the Shares Market ” Demetris Zeinalipour ( Melinos Kyriacou
Copyright © 2006 Pilothouse Consulting Inc. All rights reserved. Search Overview Search Features: WSS and Office Search Architecture Content Sources and.
Node Mentoring Workshop “Sharing What We Node” CDX Test to Production Flow Steps New Orleans, Louisiana February 9-10, 2004.
Introduction to WQX XML Schema Doug Timms, enfoTech November 28, 2007.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
7 Strategies for Extracting, Transforming, and Loading.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
Steven Perry Dave Vieglais. W a s a b i Web Applications for the Semantic Architecture of Biodiversity Informatics Overview WASABI is a framework for.
Module 6: Administering Reporting Services. Overview Server Administration Performance and Reliability Monitoring Database Administration Security Administration.
Hands-On Microsoft Windows Server 2008 Chapter 5 Configuring Windows Server 2008 Printing.
PIX/PDQ – Today and Tomorrow Vassil Peytchev Epic.
1 Overview of the Hub Concept & Prototype for Secure Method of Information Exchange (SMIE) April 2013 Prepared by NZ & USA.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
SSIS ETL Data Resource Management. Create an ETL package using a wizard database server to database server The business goal of this ETL package is to.
SPS Spotlight Series October 2014
Introduction to DBMS Purpose of Database Systems View of Data
Databases (CS507) CHAPTER 2.
Jean-Philippe Baud, IT-GD, CERN November 2007
z/Ware 2.0 Technical Overview
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Bob Tabor | Microsoft Azure Fundamentals: Data Understanding Microsoft Azure Storage Queues Bob Tabor |
Implementing an OpenFlow Switch on the NetFPGA platform
Introduction to DBMS Purpose of Database Systems View of Data
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Chapter 11 Managing Databases with SQL Server 2000
New Technologies for Storage and Display of Meteorological Data
Presentation transcript:

1 Designing a Data Exchange - Best Practices Data Exchange Scenarios –Sender vs. Receiver-initiated exchanges –Node Design Best Practices: –Handling Large Transactions –State Management –Data Services –Data Validation –Schema Design

2 Data Exchange Scenarios

3 Requesting Data (1 of 3) Simple Query –Synchronous process –Ideal for small data sets –Ideal for both ad hoc and planned exchanges –Onus is on requestor to initiate exchange

4 Requesting Data (2 of 3) Solicit with Download –Asynchronous process –Good for larger datasets –Data Provider can schedule processing of request –Requester can use “GetStatus” to see if data is ready yet

5 Requesting Data (3 of 3) Solicit with Submit –Asynchronous process –Good for larger datasets –Does not require the requestor to continuously poll the data provider to see if data is ready

6 Sending Data (1 of 2) Simple Submit –Very simple and very common process –Typical for traditional regulatory flows –“Hides” data since is not exposed as a service

7 Sending Data (2 of 2) Notify with Download –Asynchronous approach to Simple Submit –Receiver can perform download at the time of their own choosing

8 Data Exchange Scenarios Nodes wait for requests Nodes may initiate actions (i.e. Submit) How can a node do both?

9 Node Components Example Node Architecture

10 Node Components Node can be divided into components, each playing a different role: 1.The Web Services Interface Acts as a listener for inbound requests and submissions Hosted on a Web Server (i.e. IIS, WebSphere) Should not do any heavy lifting (i.e. data processing)

11 Node Components (continued) 2.Request Processor Performs all data processing –Composes XML files for outbound delivery –Decomposes and processes inbound XML files Coupled with a scheduler component –Enables node to process Solicit requests at a time of the node administrator’s choosing –Automatically kick off outbound processes (i.e. daily Submit) Flow agnostic –Decoupled from specific flow implementations Ideally installed on an Application Server

12 Node Components (continued) 3.Node Administration Utility –Create and manage local accounts –Install new data exchange components –Set processing schedules –Audit Node activity –Extract documents (inbound and outbound should be stored)

13 Node Components (continued) 4.Flow-specific components –Discrete components tailored for a specific data exchange –Hot-swappable –Services (interface) is generic Node configuration determines which services are internal or public Node configuration determines whether a given service is for Query or Solicit

14 Node Components (continued) Flow-to-Node Interface

15 Large Transactions Can cause problems in several areas: –Data retrieval (SQL) –XML serialization (sender side) –Transmission over Internet –XML deserialization (receiver side) –Schema validation (both sender and receiver)

16 Large Transactions Stage data in a model similar to that which is used by the schema –XML is hierarchal whereas RDBMS is relational –More secure –source system unaffected by node operations –Index query parameter fields (SQL)

17 Large Transactions (continued) Use an asynchronous exchange –Use Solicit, not Query Schema design considerations –Schema KEY/KEYREF discouraged –Element naming may significantly affect file size OR Query “costing” –Calculate the size of a given result set (i.e. COUNT(*)) before running full query. –Not very much experience in this area

18 Large Transactions (continued) A well-designed flow can help avoid large transactions –“List” services can return only high-level data Scenario 1: RCRA.GetFacilities(“WA”) Scenario 2: RCRA.GetFacilityList(“WA”) RCRA.GetFacilityDetail(“WA”,”FACID1234”) –Data service parameters can be used to limit transaction size Scenario 3: RCRA.GetFacilitiesByType(“WA”,”LQG”) –All options affect schema design

19 Large Transactions (continued) File compression –zipping files can reduce file size by over 90% Compact storage (archiving) Significant reduction in time to transmit Disk I/O versus memory I/O –If possible, avoid using techniques which require system to read entire document into memory in order to process. Toughie…

20 State Management State Management is required any time two systems must be synchronized Contrast to Data Publishing exchange Typically the sender’s burden, but does not have to be Partial rejects compound the difficulty

21 State Management (continued) Flagging source data –Set “submission status” indicator on source data –Complexity is directly related to transaction granularity –Compounded if record-level rejects are performed

22 State Management (continued) Exchange Network Header –Same schema can be used to perform different transactions –Can remove the need for TransactionCode (i.e. INSERT, UPDATE, DELETE) in schema “Delta” to derive data changes since last submit –Many systems do not store deleted data –Compare last submission snapshot with current snapshot, derive what has changed Incremental and full refresh services –i.e. Facility Flow

23 Data Service Best Practices Data service naming conventions {Prefix}.{Action}{Object}[By{Parameter(s)}] i.e.: FacID.GetFacilityByName Work in Progress What about versioning?

24 Data Services Best Practices Documenting data services: –Data Service name –Whether the service is supported by Query, Solicit, or both –Parameters Parameter Name Index (order) Required/Optional Minimum/Maximum allowed values Data type (string, integer, Boolean, Date…) Whether multiple values can be supplied to the parameter Whether wildcard searches are supported and default wildcard behavior Special formatting considerations –Access/Security settings –Return schema –Special fault conditions Wildcards: % Parameter delimiter: | (pipe character) Parameter operation: AND

25 Data Validation Best Practices XML instance files should be validated against the schema by the sender before submittal CDX offering pre-submittal validation services for some flows Schematron (Doug Timms)

26 Schema Design Best Practices DRC 1.0 and DRC 1.1 –Schema Namespace –Schema Versioning –Exchange Network Schema Types –Use the Shared Schema Components