OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA),...

19
Copyright © 2007 OSIsoft, Inc. All rights reserved. OLE DB Goes Enterprise the PI System Data Provider Bodo Bachmann, Martin Freitag OLE DB Goes Enterprise the PI System Data Provider Bodo Bachmann, Martin Freitag

Transcript of OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA),...

Page 1: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

Copyright © 2007 OSIsoft, Inc. All rights reserved.

OLE DB Goes Enterprise the PI System Data Provider

Bodo Bachmann, Martin Freitag

OLE DB Goes Enterprise the PI System Data Provider

Bodo Bachmann, Martin Freitag

Page 2: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

2

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Agenda

l Unified Data Access l MiddleWare Standards l PI OLEDB l Application Integration Trends l Demo 1+2 l Limitations l New Goals l PI DAS

Page 3: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

3

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Unified Data Access l There is no Knowledge without Information

and there is no Information without Data l Today, data is usually stored in a variety of

sources: u Databases, files, spreadsheets, emails,..

l Unified Data Access aims at transparent access to data via Middleware. Well known data access standards are: u ODBC u JDBC u OLE DB u ADO.NET

ADO

ODBC

XML

.NET Managed Providers

OLE DB

JDBC

Page 4: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

4

Copyright © 2007 OSIsoft, Inc. All rights reserved.

OLE DB / PI OLEDB l OLE DB Object Linking and Embedding Database provides

and organizes COM objects for efficient, unified data access l OLE DB, much like OPC, standardizes the data access; however,

the big advantage OLE DB spec. offers is the implementation of a powerful script language ­ SQL

l PI OLEDB provider allows applications (OLE DB consumers) working with PI data through SQL queries:

OLE DB Consumer

PI OLEDB Provider

SQL Engine

Client Application

SQL Queries

PI Server

OLE DB/ COM

Page 5: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

5

Copyright © 2007 OSIsoft, Inc. All rights reserved.

PI OLEDB l PI OLEDB uses PI SDK for accessing the PI data. It’s SQL Engine

implementation, currently built in the provider, thus translates SQL queries to appropriate PI SDK calls.

l Many popular client apps. ­ OLE DB consumers, can thus “script” PI data, or have “built in” support for configuring OLE DB interfaces, e.g. MS Visual Studio.

OLE DB Consumer PI OLEDB Provider

Client Application

SQL Engine PI SDK

SQL Server Oracle, ADO.NET,

Excel, JDBC/OLEDB,…

PI Server

OLE DB/ COM

Page 6: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

6

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Application Integration Trends l Middleware data access standards:

u ODBC, JDBC drivers – procedural approach OLE DB providers – COM interfaces .NET providers – managed data providers

for the .NET environment

l Products that benefit from MiddleWare standards: u Microsoft SQL Server Integration Services (SSIS)

Oracle Fusion OPC Universal Architecture

l In Service Oriented Architecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component that reduces the number of such entry points thus perfectly fits SOA requirements.

Page 7: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

7

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Demo 1 ­ PI OLEDB and SSIS l Example 1 will show the configuration steps needed to Extract PI

data, Transform it to XML, attach to an e­mail and send (Load) to a given recipient. This ETL package, created in SSIS, will finally be automated; that is, executed on a periodical basis. à Utilizing MS SQL Server Tools (DTS and SSIS) for Data Exchange between PI and RDBMS, White Paper

l The example will utilize: ­ SSIS (SQL Server Integration Services) and Visual Studio 2005 ­ PI OLEDB provider

.NET SSIS Script

SQL Server Agent Scheduler PI Server

Source

PI OLEDB

E­Mail Recipient

Page 8: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

8

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Demo 1 ­ PI OLEDB and SSIS

Page 9: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

9

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Demo 2 – Views / JDBC bridge l Demo 2 shows creating a View from a Java application and accessing PI data

from a JDBC based client tool ­ the DbVisualizer. As there is no native PI JDBC driver today, a third party JDBC / OLE DB bridge is used. à JDBC to PI OLEDB using 3rd party bridges, White Paper

l The example utilizes: ­ DbVisualizer from Onseven Software AB ­ JadoZoom JDBC / OLE DB bridge from infoZoom ­ PI OLEDB provider

PI Server

PI OLEDB

JDBC / OLE DB Bridge

DbVisualizer (Java)

MS Windows

RMI Server

Platform Independent

Node

RMI Client

Page 10: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

10

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Demo 2 – Views / JDBC bridge

Page 11: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

11

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Demo 2 – Views / JDBC bridge

Page 12: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

12

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Current Limitations l PI Server centric l Performance

u RPC‘s not granular enough, SDK overhead

l SQL Engine on client side u Performance problems on WAN

l Mix of threading models u Although multithreaded, needs to serialize into apartment threaded SDK

l No events l No UNICODE l No custom functions

u Except Views u E.g. Functions that can interpret binary structures

l No execution plan exposed u Is a problem when trying to find best query strategy

Page 13: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

13

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Goals l Access to the PI System, not just the PI Server

u JOIN AF Server + multiple PI Servers

l Go beyond OLE DB standard l Suitable as low level data access mechanism

u Application development u Middle ware

l Support multiple SQL based data access standards u e.g. JDBC, ADO.NET

l High Performance infrastructure u New RPCs with improved granularity and compression u Special pass through mechanism in AF SDK for massive data requests

l 32 bit and 64 bit versions l Scalable infrastructure

u Server side or client side deployment

Page 14: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

14

Copyright © 2007 OSIsoft, Inc. All rights reserved.

PI Data Access Server Three Tier Architecture

PI DAS

PI DAS Clients

Back Ends

• Multiple data access standards • Multiplatform • Application development

• Access to PI System not just PI Server • Distributed Query Engine • High performing, scalable infrastructure • Events

Page 15: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

15

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Deployment Options

Desktops

SQL Server

PI DAS

PI Server PI Server AF Server

PI DAS

Web Server Farm

PI DAS

Page 16: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

16

Copyright © 2007 OSIsoft, Inc. All rights reserved.

PI Data Access Server Phase 1

Network

l Phase 1: client side component l The PI System Data Provider will implement

the OLE DB data access standard l In Phase 1, the data provider will embed the

SQL Engine logic l Support for events

SQL Engine

RPC / AF SDK

OLE DB/ COM

PI Server PI Server

AF Server

PI System Data Provider

Client Application

Page 17: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

17

Copyright © 2007 OSIsoft, Inc. All rights reserved.

PI Data Access Server Phase 2

l More than one data access standard can be implemented

l Data filtering/reduction can happen: 1. On back­end (query constrains) 2. On PI DAS (JOINS)

PI Servers AF

Server

PI DAS

Consumer / Client

PI System Data Provider

(OLE DB)

Consumer / Client

Network

Network

l Phase 2: the data provider will be a light weight, client­ side component

PI System Data Provider

(JDBC)

Page 18: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

18

Copyright © 2007 OSIsoft, Inc. All rights reserved.

l Pre­compiled stored procedures will allow non­SQL based applications to connect to PI DAS

l External data sources can be integrated (JOINed) via AF Data References or direct, e.g. using OLE DB; PI DAS will operate as a distributed query engine for several data access standards.

PI Data Access Server Phase 3

PI Servers AF Server

JDBC C++ Library

Third party data source

Consumer / Client

Consumer / Client

Consumer / Client

OLE DB

Network

PI DAS

Network

l Phase 3: implementation of other data access standards, scripting extensions, stored procedures

Consumer / Client

xxxxxxx

Page 19: OLE DB Goes Enterprise the PI System Data Provider · l In S ervice O riented A rchitecture (SOA), data is accessed via a limited set of entry points (services). A MiddleWare component

19

Copyright © 2007 OSIsoft, Inc. All rights reserved.

Need to Know l PI OLEDB and PI System Data Provider will coexist l New Table structure l No MDB but AF tables l Development effort spans multiple years