Download presentation
Published byEustacia Berry Modified over 9 years ago
2
Wonderware Historian 2014 R2 Technical Overview
3
Historian 2014 R2 Features Simple to manage, high performance alarm & event history Network bandwidth efficiency System time independence Retrieval Exception Handling Easy summaries in ArchestrA Graphic dashboards Expanded tag types (double) Power user utilities for value imports & tag rename Historian Simple to manage, high performance alarm & event history Significantly lower network bandwidth usage for storing data (important for WAN applications) System time independence Leverage statistical summaries in ArchestrA Graphic dashboards Continued retrieval performance gains Remote IDAS: Easier network set up, redundant Historian support Better handling of data collection problems for reporting Integration with Citect Historize data from Vijeo Citect SCADA Reports using Vijeo Historian Enquire (Excel add-in) Support for creating standalone distributions Expanded tag types (double, long) Web service retrieval interface (replacement for SQLXML) Remove “ArchestrA User” dependence Streamed file import (LGH, CSV) Identity based security for SDK/HCAL Tag Rename Utility Historian Client Supports Online Edition Retrieval using web service interface (replacement for SQLXML)
4
Historian Storage Evolution
SuiteLink Tags Engine Historian 10.0 SuiteLink Tags Engine Replicated Historian 2012 R2 SuiteLink Tags Engine Tags* Replicated Historian 2014 SuiteLink Tags Alarm & Events Engine Tags* Replicated Historian 2014 R2 SuiteLink Tags* Engine Replicated Tags Alarm & Events Classic Storage Storage Engine SQL Server Event Storage * Newly collected data in Storage Engine, previous Classic data still accessible
5
Historian 2014 Architecture
SQL Server Historian OLEDB Active Image Retrieval Application Server <3.5 Classic Storage Storage Engine Application Server 3.5+ IDAS Replication Historian 9.0 SDK Historian SDK History Blocks
6
Historian 2014 R2 Architecture
SQL Server Historian OLEDB Active Image Retrieval Application Server <3.5 Classic Storage Classic Storage Redirector Storage Engine Application Server 3.5+ IDAS Replication Historian 9.0 SDK Historian SDK History Blocks
7
Classic Manual Storage (aahManStSvc.exe) Configuration Service
Historian 11.5 Storage Data Flow ClassicS/F CSV Historian 11.5 outside RTW named pipes Classic Storage (aahStoreSvc.exe) Classic Manual Storage (aahManStSvc.exe) IDAS inside RTW AITag=0 AITag=1 MDAS (DCOM) Configuration Service AI History Blocks WAS 3.1 / SDK 1.0 AITag=1 Microsoft TDS OLE DB Provider (SQL) AITag=0 ADO / SSMS HCAL (TCP/IP) Historian Client Access Point (HCAP) Historian Storage (aahStorage.exe) Tier-1 AITag=0 WAS 2012 R2+ SDK 2012 R2+
8
Historian Client Access Point (HCAP)
Historian 11.6 Storage Data Flow ClassicS/F CSV Historian 11.6 named pipes Classic Data Redirector (aahStoreSvc.exe) Data Import (aahManStSvc.exe) CSR CSR IDAS MDAS (DCOM) Configuration Service CSR History Blocks WAS 3.1 / SDK 1.0 Microsoft TDS OLE DB Provider (SQL) ADO / SSMS HCAL (TCP/IP) Historian Client Access Point (HCAP) Historian Storage (aahStorage.exe) Tier-1 WAS 2012 R2+ SDK 2012 R2+ aahImport.exe
9
Tag Editor Historian 2014 R2 Historian 2014 & earlier
10
Unified History: Alarm & Event History
Easier To Manage Archive/purge/restore using Windows Explorer, etc. No need to purge to sustain storage Performance Significantly higher storage rates Capacity limited by disk space, not insertion rate History Blocks Event Storage Application Server 4.1
11
Historian 2014 R2 Architecture
ArchestrA Graphic Alarm Client Historian Client Historian Client 2014 R2 Not supported in 2014 R2 Retrieval oData/REST WWALMDB Alarm DB Logger InTouch SQL Server oData/REST A2ALMDB Application Server 4.0 Historian OLEDB Retrieval Event Storage Application Server 4.1 Storage Engine Application Server 3.5+ Replication Historian SDK History Blocks Classic Storage Redirector Historian 9.0 SDK IDAS Application Server <3.5
12
Selecting Alarm & Event Storage
13
Alarm & Event Storage Tips
How to verify which storage option has been selected? Open Configurator and verify the selected option. To get accurate running mode. Open Task Manager and verify the command line arguments of aahEventStorage process. If –bs 1 is present, then the storage is configured to History Blocks, else it’s to DataBase. Proprietary & Confidential Information of Schneider Electric & Invensys Systems, Inc.
14
Alarm & Event Storage Tips
If storage is configured to History Blocks. Then there are other Diagnostic Logs to verify the storing events process. Like other Historian processes, we can use registry flags under HKEY_LOCAL_MACHINE\SOFTWARE\ArchestrA\Historian\Programs\aahEventBlockStorage Proprietary & Confidential Information of Schneider Electric & Invensys Systems, Inc.
15
Alarm & Event Storage Tips
In the registry are present (or can be added additional) keys to trace and tune the EventStorage performance: TraceGlobal – Dump the TraceInfo in the LogFile under C:\aahEventBlockStorageDirectory TraceEvents – Dump the info about Event being stored like time, size and other additional info TraceSessions – Dump the Retrieval session info SnapshotsCount – Currently set to 50, it’s the max snapshots that can be in memory simultaneously EventsInSnapshot – Currently max number of events in a snapshot (default 100K) FlushIdleTime – Snapshot will be flushed based on the time specified if there is no new events coming in FlushEventsNow – This will enable to force the events to be flushed from memory to disk DelayForMergingInMinutes – This is used for merging snapshots and this is the delay time to start the merge. MergeTimeIntervalInSeconds – This is used between consecutive merge runs in a block Proprietary & Confidential Information of Schneider Electric & Invensys Systems, Inc.
16
Historian Interface Capabilities
On-Premise 2014 R2 On-Premise Future Managed Process Event A2ALMDB SQL read ? SQL store SDK read SDK store oData read oData write About the question marks: Event & SQL: We may leverage some third-party software for this, but if we don’t we do expect new versions of tools (such as Reporting Services) to include richer native support for oData in the near future. We also plan on including more flexibile event aggregation as native functionality, which will more directly map to reporting needs. Managed SDK Retrieval: The main challenge here is authentication/security. We prefer to focus on the oData interface, at least near term. oData Write: We will have a simple, lightweight web service interface for storing process history and events. This might use oData, but we’re also evaluating more lightweight options.
17
oData/REST Historian 2014 R2 Use “Historian.htm” General
Simple HTTP queries Results as JSON Works in any browser Recommend Chrome & JSONview extension Historian 2014 R2 Must be in “aa__” local group Native Excel 2013 & 365 Recommend Power Query add-in Exact properties in transition Use “Historian.htm” Several example queries
18
Excel Power Query Copy URL from “Historian.htm”
For PowerPivot, need to add “&format=atom”
19
Block Management Circular Alternate Buffer Permanent
20
Alarms & Events Retrieval
History Block List Management Historian Management Console UI get Alarms & Events Retrieval Legacy Retrieval Event Storage (aahEventStorage.exe) Indexing Service (aahIndexSvc.exe) block A block B block C list copy block A block B block C list copy get, subscribe get, subscribe notify notify Historian Storage (aahStorage.exe) block A block B block C master list Circular Alternate Buffer Permanent
21
Block Creation Historian 2014 R2 & later Historian 2014 & earlier
Historian 2014 & earlier Based on system time Startup/shutdown Block duration Block size Manual (SMC, stored proc) Historian 2014 R2 & later Based on time of data Assigned based on duration
22
Current System Time Driven
History Block Creation Current System Time Driven Historian 11.5 (Indexing Service) created by Indexing Service created & updated by Classic Storage current time A A’ block P block B block C block D patch block configured duration 20s aligned by server’s time zone midnight Historian 11.6 (Storage) Data Driven A block P block B block C block D configured duration
23
Wonderware Historian Data
Historian Data Categories Wonderware Historian Data Original Data Revision Data Streamed Data Non-Streamed Data Latest Data New-Original Data original.dat latest.dat new-original.dat original-time.dat original-2.dat (snapshot index by time) original-3.dat (multiple snapshots per file)
24
Original Data File Structure
tsA teA tsB teB tsC teC original.dat Snapshot A Snapshot B Snapshot C tsD teD tsE teE tsF teF original-2.dat Snapshot D Snapshot E Snapshot F tsG teG original-3.dat Snapshot G HBs HBe original-time.dat Snapshot Time Range File Number Offset in File A tsA → teA 1 0x1000 D tsD → teD 2 G tsG → teG 3 B tsB → teB 0x8000 E tsE → teE 0x9000 C tsC → teC 0xA000 F tsF → teF 0xB000 HBs ≤ tsN ≤ teN < HBe
25
(merge with de-duplication)
Merging Original Data Snapshots tsA teA tsB teB tsC teC original.dat Snapshot A Snapshot B Snapshot C tsD teD tsE teE tsF teF original-2.dat Snapshot D Snapshot E Snapshot F tsG teG original-3.dat Snapshot G tsA teF original-merge.dat Snapshot M (merge with de-duplication) HBs HBe original-time.dat Snapshot Time Range File Number Offset in File A tsA → teA 1 0x1000 D tsD → teD 2 G tsG → teG 3 B tsB → teB 0x8000 E tsE → teE 0x9000 C tsC → teC 0xA000 F tsF → teF 0xB000 HBs ≤ tsA ≤ teF < HBe
26
Original Data Snapshots Merged
tsA teF original-4.dat Snapshot M HBs HBe original-time.dat Snapshot Time Range File Number Offset in File M tsA → teF 4 0x1000 HBs ≤ tsA ≤ teF < HBe original-merge.log
27
Original Data Snapshot Structure
Snapshot Header <<<SNAPSHOT>>> 16-byte “snapshot signature” version, time range, creation time total snapshot size Tag Lookup Area Nodes balanced multi-way search tree by tagid Tag Lookup Area Leafs VTQ Area 64-bit offset per tagid de-duplicated sequence of VTQs per tagid Tag Details Tag VTQs
28
History Blocks in 2014 R2 “Commit Changes” No More
Only pushes configuration Applied immediately No More “Block changeover” Manual Block Creation “Patch Blocks” New blocks on startup “Headroom” settings Removes last of legacy code in system core
29
History Block Structure
Historian 11.5 block80.inf Classic Data & Metadata blockstatus.dat Historian 11.6
30
Detailed Consequences
System Parameters AIAutoResize dropped AIResizeInterval dropped HeadroomX dropped TimeSyncMaster dropped Added MaxSnapshotSize Stored Procedures No Ops xp_NewHistoryBlock xp_RescanHistoryBlock xp_SetStorageXDeadband Tag Columns Dropped AITag AIRetrievalMode SamplesInActiveImage CalculatedAISamples
31
Detailed Consequences
No ActiveImage Settings in Config Editor All Tags Get Upgraded During Product Installation Data Can Be Stored on Top of Legacy No Waiting for Next Block On Commit Reliable Daylight Savings Transitions
32
Time-stamp Age -30.0 sec to +0.999 sec Historian 9.0 “Now” on Server
“Timestamp overwritten; values in future” Historian 9.0 Late Real-time Future “Values in the past did not fit within the real-time window” “Now” on Server Future Streamed Historian 2012 R2 & 2014 (Application Server only) “Timestamp overwritten; values in future” * While in store-forward, future time limits still apply to IDAS Streamed Historian 2014 R2 (Application Server & SuiteLink*) Important for VMs & poorly synchronized clocks
33
Classic Storage System Clock Dependency
Storage Relied on Classic History Block Infrastructure Complicated Classic History Block Sync Protocols Classic Storage Created New “Current” Blocks Classic Storage Updates End Time every 20s Indexing Service Created Old “Patch” Blocks Future VTQs Get Overwritten (QualityDetail 448) INSERTs/UPDATEs/CSV Rejected if Too Close History Block Changeovers VM Issues (time sync/suspend/resume) Disconnect NULL Injection by Current Server Time
34
Historian 11.6 System Clock Independence
Future VTQs Can Be Stored And Retrieved INSERTs/UPDATEs/CSV Can Be Anywhere in Time No Block Changeovers No Current History Block Block Creation is Data Driven HCAP Injects Disconnect NULLs with Current Server Time for Tags of ChannelStatus=1 Time Synchronization is Needed if You Care! No Future Time for IDAS in Store/Forward
35
Time Independence Example
Now 5-minutes early 1-minute early Live 1-minute late 5-minutes late
36
Connectivity Options oData (REST) Integrated History More secure
Alarm Event Process More secure Initially, read-only Namespace Customization Annotations Works With Reporting Services Excel 2013 & 365 Only accessible via REST & SDK SQL (TCP) oData SQLXML
37
LGH, CSV, FastLoad via Utility*
Classic Storage Storage Engine Old/Late Real-time Non-streamed Streamed Time Limits < t -30 ≤ t < +1 t < +24 hours* “Live” SuiteLink (aahIOSvrSvc) Replication Queued Import LGH, CSV, FastLoad LGH, CSV, FastLoad via Utility* SQL INSERT/ UPDATE “Realtime” * New in Historian 2014 R2
38
File Import (aahImport.exe)
Single file or “Folder Watcher” Streamed/non-streamed UI & Command Line Local/remote LGH & CSV
39
Tag Rename
40
Bullet Chart “Good” Range Target = SP Current = PV FFC FT
41
Statistics Works okay Can’t use it to compare different periods
Why not use Historian?
42
Historian Custom Property
Average Count First Integral Maximum Minimum Percent PercentGood StdDev Total Blank for “now” as end time For “state” statistics, select which one
43
Comparison To Extension Table Columns
aaHistoryStat AnalogSummaryHistory StateSummaryHistory Average StateTimeAvgContained Count ValueCount StateCountContained First First* Integral Maximum Maximum* StateTimeMax Minimum Minimum* StateTimeMinContained Percent StateTimePercent PercentGood StdDev Total StateTimeTotal * Uses the timestamp of the associated value
44
Historian Network Bandwidth
53% savings 92% savings No Compression 2014 P1 w/ 2014 R2 w/ Compression Compression* * Applies to “tier 1”. “Tier 2” savings is 18%. No change for Remote IDAS.
45
HCAL Packet Optimization
Rationale: Existing compression ratio was not good for data streaming packet ~ 20% Customer requires better utilization of bandwidth. Analysis: Unique Tag ID precedes every VTQ causing low compression ratio. Method: Build tag dictionary - Tag handle (DWORD) for each Tag ID for each connection session. Use Tag Handle instead of Tag ID in the packet. Result: Compression ratio improved ~ 92% Optimization enabled when compression is enabled. Transparent to user. Slight increase of Resource Usage
46
HCAL Packet Optimization
47
HCAL Diagnostics When Fail to Connect: To See Tag Information:
On Client Computer: Set LogFlag aahClientCommon[Connection] to see WCF exception stack. On Historian Computer: Check warning messages. Possible Cause: Invalid Historian name, firewall blocking, incorrect port, invalid credentials etc. To See Tag Information: Set Registry Setting [HKLM\…Programs\aahClient] “TraceGlobal”=dword:1 Trace files will be created under c:\aahClientCommon-TraceGlobal Toggle LogFlag aahClientCommon[TagDump] to see tags reported in the corresponding file. To Trace Tag Values See Tracing Document
48
HCAL Diagnostics To See Buffer Type and Count
Set LogFlag aahClientCommon[BufferCount] Buffer Type ‘SF’ – Partial Store/Forward (Tags not synchronized or values time less than cut-off time) Buffer Type ‘Streaming’ – Regular Buffer To See Buffer Destination (Historian or SF) and Size Set LogFlag aahClientCommon[BufferTransmit] To Find Out Reasons that Store/Forward Files not Forwarded: Set LogFlag aahClientCommon[StoreForward]. Or Set Registry Setting [HKLM\…Programs\aahClient] “TraceGlobal”=dword:1 and check the trace file.
49
HCAL Diagnostics To See Data Transmission Activities in HCAL:
Set LogFlag aahClientCommon[Operation] To See Status Checking/Management Activities Set LogFlag aahClientCommon[ServerStatus]
50
HCAP Diagnostics To See Incoming Requests from All Clients
Set LogFlag aahClientAccessPoint[Operation] To See Status Checking/Management with Clients and Other Components: Set LogFlag aahClientAccessPoint[ServerStatus]. To See Buffer Information Received from Clients: Set LogFlag aahClientAccessPoint[BufferTransmit] To See Status Checking/Management Activities Set LogFlag aahClientCommon[ServerStatus]
51
HCAP Diagnostics To Trace Tags from Client – See Trace Document
To See Tag Information: Set Registry Setting [HKLM\…Programs\aahClientAccessPoint] “TraceGlobal”=dword:1 Trace files will be created under c:\aahClientAccessPoint-TraceGlobal Toggle LogFlag aahClientAccessPoint[TagDump] to see tags and their last value received.
52
Storage Activity Tracing
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ArchestrA\Historian\Programs\aahStorage DWORD Values (0 = disabled by default, 1 = enabled) TraceGlobal must be 1 for the others Traces to work TraceSessions – trace storage session creation/deletion TraceQueries – trace tagids and start/end queries during LLR TraceBlocks – trace history block search during LLR TraceDiskManager – trace Circular/Alternate block movement/deletion TraceGetSnapshots – trace S/F snapshot enumeration done by HCAL TraceMerge – more detailed info on snapshot merge management TraceTagPipeline – more detailed info on in-memory snapshot management TraceTimeManager – trace block boundary calculations (DST change) TraceMemory – set to 0 to exclude memory stats from the global trace
53
Tag Editor Historian 2014 R2
54
IEEE Floating Point π = 3.1415927 π = 3.1415926535898
Single Precision (32-bits) 8-bit exponent 23-bit fraction ~7 decimal places Double Precision (64-bits) 11-bit exponent 52-bit fraction ~13 decimal places π = π = True value of π = … 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 What if your instrument has 5-digits of precision?
55
Is Your System Like This?
As Designed Reality Expanded support for “optimistic” quality More robust “counter”
56
Counter: Routinely Rolls Over
21-Apr-17 Counter: Routinely Rolls Over Infer these points Rollover Point (c) 2005 Invensys Systems, Inc.
57
Counter False Rollovers Introduced Reverse
Reset (when normally rollover) Introduced Counter Deadband 0=pre-R2 behavior
58
Optimistic Full Optimistic
59
Optimistic: Initial Value
select DateTime, Value, wwResolution, Quality, QualityDetail, OPCQuality from History where TagName in ('LocalRamp.WaveQ') and DateTime = ' :45:00' and wwRetrievalMode='delta' and wwQualityRule='optimistic' Full
60
Quality Handling Optimistic Good
Suppressed all bad quality points with OPC Quality < 64 (excluding vendor bits). Good Suppressed all uncertain quality points with OPC Quality >= 64 and < 192 (excluding vendor bits)
61
Optimistic Quality No Quality rule Optimistic Quality rule
62
Optimistic Quality Improved back tracking for quality rule
No Quality rule Optimistic Quality rule
63
System Tag Changes CPU SysPerfCPUn: Deprecated
SysPerfCPUTotal: Across all cores (unchanged) SysPerfMax: Highest single-core load SysPerfserviceCPU: % across all cores (previously for a single core, even on multicore systems) Memory SysPerfcomponentBytes: Now modulo 4GB SysPerfcomponentMBytes: New
64
System Tag Changes: CPU
<R2 100% Total ( )/4 =38% Max MAX(25,75,0,50) =75% Service ( )/4 =19% 75% 50% 25% 0% 1 2 3 Core
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.