Professional Documents
Culture Documents
IM 36J04A15-01E
Yokogawa February 21st 2014
14th Edition Issue 1
Exaquantum Engineering Guide Volume 1 Administration i
Highlights
The Highlights section gives details of the changes made since the previous issue of this
document.
Summary of Changes
This is the 14th Edition of the document.
Detail of Changes
The changes are as follows.
Chapter/Section/Page Change
Ch 4.2 Minor update
Ch 4.5 Updates for SQL Server 2012
Ch 4.7 Minor text update
Ch 4.8 Added DVD information.
Ch 4.9 Various updates for SQL Server 2012. Changes to backup
recommendations. Minor text changes
Ch 4.10 Various updates for Windows 2012
Ch 5.4 Minor text update
Ch 6.3 Updated Exaquantum database information
Ch 7.2 Updated Exaquantum database information
Ch 7.2 Added Historian Database details
Table of Contents
Copyright and Trademark Notices .................................................................................. i
Highlights ....................................................................................................................... ii
Exaquantum Document Set ........................................................................................... iii
Table of Contents .......................................................................................................... iv
Chapter 1 Introduction .......................................................................................................... 1-1
1.1 Intended Audience............................................................................................................ 1-1
1.2 General ............................................................................................................................. 1-1
Chapter 2 Aggregation and Reporting Features ................................................................. 2-1
2.1 Aggregation Characteristics ............................................................................................. 2-2
2.2 Hourly Aggregations ........................................................................................................ 2-3
2.3 Daily Offsets .................................................................................................................... 2-5
2.4 Daily Aggregations .......................................................................................................... 2-9
2.5 Summation Aggregation ................................................................................................ 2-13
2.6 Differential Summation Function................................................................................... 2-15
Chapter 3 Site Work............................................................................................................... 3-1
3.1 Pre Installation Checklist ................................................................................................. 3-1
3.2 Site Readiness Checklist Prior to Exaquantum Site Installation ...................................... 3-3
3.3 Re-configuring Exaquantum for Site ............................................................................... 3-4
Chapter 4 Normal System Operation ................................................................................... 4-1
4.1 Health Checks .................................................................................................................. 4-1
4.2 Network Connection Health Check.................................................................................. 4-2
4.3 Windows OS in Windows Domain Time Synchronisation Health Check .................... 4-3
4.4 Memory Usage Health Check .......................................................................................... 4-4
4.5 Database Health Check .................................................................................................... 4-5
4.6 Live Data Feed Health Check .......................................................................................... 4-7
4.7 Event Viewer Health Check ............................................................................................. 4-7
4.8 Password Policy ............................................................................................................... 4-8
4.9 System Back Up ............................................................................................................. 4-11
4.10 Starting and Stopping the Exaquantum Service ............................................................. 4-32
Chapter 5 OPC Gateways ...................................................................................................... 5-1
5.1 OPC Data Qualities .......................................................................................................... 5-3
5.2 Aggregation Result Data Qualities ................................................................................... 5-3
5.3 Calculation Result Data Quality....................................................................................... 5-4
5.4 Changing the Quality Code for a Yokogawa Exaopc ...................................................... 5-5
Chapter 6 System Evolution .................................................................................................. 6-1
Chapter 1 Introduction
1.1 Intended Audience
The Exaquantum Engineering Guide contains tasks that need to be completed by users
within your organisation that have Windows administrative privileges. The user(s) of this
document must also be familiar with the following topics:
Windows Domain security (Users, Groups, Permissions etc)
DCOM Settings
Microsoft Excel
Configuring Networking components.
This documentation therefore assumes that the person carrying out the procedures has
knowledge and experience in the areas mentioned above. It also assumes that you have
already completed the relevant Exaquantum course(s).
1.2 General
The Engineering Guide summarises what is considered by Yokogawa as to be the 'good or
best practice' in the operation of an Exaquantum system. It is not intended that the methods
or procedures detailed in this document represent the only approach to configuring,
monitoring and using an Exaquantum system, but rather the procedures described are proven,
practical and effective.
This Engineering Guide has been divided into, Volumes and Chapters that detail various
procedures and methods. Certain Volumes or Chapters may not be relevant to your
Exaquantum system.
Volume 1: Administration
Chapter 1: Introduction
Chapter 2: Aggregation and Reporting Features
Chapter 3: Site Work
Chapter 4: Normal System Operation
Chapter 5: OPC Gateways
Chapter 6: System Evolution
Chapter 7: Troubleshooting
Chapter 8: Extending the System
Volume 2: Network Configuration
Volume 3: Support Tools
Volume 4: Web Authoring
Volume 5: PI Connection
Caution
When creating reports it is important to understand how aggregations work, as it is very easy
to select the wrong date and therefore display the wrong data.
This section gives details and examples of hourly and daily aggregations, showing the
potential difficulties involved and how to overcome them.
When tag values are updating every second, a report that listed all received data for any
considerable length of time would have too many values to be easily interpreted by the user.
To find specific data some filtering is required, e.g. the user may only be interested in the
highest value or the average value. Additionally, querying for aggregations rather than raw
data can substantially improve read performance.
To assist report generation, Exaquantum uses Aggregations. An aggregation looks at data
over a specified time (an aggregation period) and makes calculations based only on data
within that aggregation period. Typical calculations are max, min, mean and sum. These
calculations are made at the end of the specified aggregation period. Typical aggregation
periods are hour, day and shift. These aggregation periods can be used in Microsoft Excel
reports that can cover any period.
Note: Some useful examples of Excel report templates are supplied with Exaquantum.
For more information about reports, see the Exaquantum/Explorer User's Manual
(IM 36J04A12-01E).
A report will simplify data extraction. This is best achieved by using a specified report start
date and extracting the data automatically for all the other time periods by adding an amount
of time to that date. The first value in a report may be reportdate, the second reportdate n+1,
the third reportdate n+2, and so on.
For example, a weekly report specifies a start date of day n and the report will know that
the first value for the report is that of day n, the second value that of day n+1, and so on.
1
This is the default; the value may be ammended in the Registry.
2
This is the case for aggregations derived from raw data. For dependant aggregations, the timestamp is set to be the
period end; however this behaviour can be ammeded to use the actual Minimum or Maximum timestamp, by a
Registry setting.
15
Value
10
Time
00:20 10
00:40 10
01:20 15
Figure 2-1 shows that a request made with a timestamp of 00:40 will return the value
written at 00:00 (NOTE that Minimum and Maximum aggregations may not write values
on the production calendar period boundary). This behaviour is very useful when it
comes to creating reports, as will be explained later.
2.2 Hourly Aggregations
Hourly aggregations are normally used for daily or weekly reports.
It is important to understand that each hourly aggregation has a start point and an end point
but is only identified by its end point. The timestamp of a value is the end of the period.
For example, we will look at hourly aggregations during the day 20th January 2000.
The first hourly aggregation will begin at 00:00:01 and end at 01:00:00. The timestamp
attached to this aggregation will be 20/01/00 01:00:00.
The second aggregation will begin at 01:00:01 and finish at 02:00:00. It will have a
timestamp of 20/01/00 02:00:00.
This continues until 23:00:00. The final aggregation of the day is slightly different from
the others. It begins at 23:00:01 and ends at 00:00:00 but it has a timestamp of 21/01/00
00:00:00.
Note: This effect can be misleading. Timestamps for the end of the day should be
noted carefully.
Note 2: Using this format the user will enter the date they are interested in; the workbook
will automatically retrieve the correct values.
Daylight Saving Time
Daylight Saving Time (DST) can also affect reports using hourly aggregations and it is
important to understand how a report can be affected. The occasions when DST causes a
problem are the two days on which the local clocks change.
Exaquantum uses Co-ordinated Universal Time (UTC) to timestamp values. This time is
translated into local time so that the user sees timestamps only in their local time. For
example where local time is two hours ahead of UTC, i.e. 02:00 local time is 00:00 UTC.
On a normal day at the beginning of the year, timestamps will be attached as follows:
Table 2-1 Local Time and equivalent UTC Timestamp
00:00 22:00
01:00 23:00
02:00 00:00
03:00 01:00
04:00 02:00
This is not a problem as the times are automatically converted. A request for the value at
03:00 local time will be translated to 01:00 UTC. Each day has 24 hourly aggregations.
00:00 22:00
01:00 23:00
03:00 00:00
04:00 01:00
05:00 02:00
The local time request will be automatically translated by Exaquantum. However this day
will only have 23 hourly values, there being no value for 02:00 local time. Exaquantum
copes with this because a request for 02:00 local time will return the last value written to
history, in this case at 01:00 local time, 23:00 UTC. The daily report will still have 24
values, the values for 01:00 and 02:00 are the same.
Potential Problems
Calculations in a workbook based on the hourly values will be inaccurate for this day. Sum
calculations will be too high and average calculations could be either too high or too low.
Min and max calculations in the workbook will be unaffected.
Solution
The only effective solution available currently is to manually delete the aggregation value
attributed to the label 02:00 in the particular days report. This would correct all daily values
although, of course, the sum could be less that of other days since the day is one hour shorter.
00:00 21:00
01:00 22:00
02:00 23:00
02:00 00:00
03:00 01:00
The complication when DST ends is the local time of 02:00 can refer to either 23:00 UTC or
00:00 UTC. In this case there are 25 hourly aggregations for the local time period, one of
which will not be included in the report.
Possible Problems
This will affect daily totals. The sum value, in a workbook, will be too low and average
values could be too high or too low. It is also possible that a max or min value could occur
within the aggregation that is not displayed. This value would not appear on the report.
Solution
There is no simple solution to this problem. It may be acceptable to simply be aware of the
issue. However, if all data values are crucial then a special report collecting all individual
historical values for that day and manually calculating the results is the only solution. An
alternative would be to engineer a solution whereby values were requested and displayed in
UTC only. This is beyond the scope of standard Exaquantum functionality at present.
Date Value
20/1/00 Value 1
21/1/00 Value 2
22/1/00 Value 3
23/1/00 Value 4
24/1/00 Value 5
25/1/00 Value 6
26/1/00 Value 7
The difficulty arises because we have only specified half of the timestamp, the date half and
have given no time part. Thus the workbook will default to 00:00 and the value given as
Value 1 will in fact be based on data collected on the 19/1/00.
To overcome this the report creator must know the following information:
Offset used for the Aggregation Period
Date the user will enter
Data the user requires.
Points two and three may seem similar but it is important to know whether the user is aware
that aggregations are given a timestamp at the end of the aggregation period. If the user is
aware of this, and tries to adjust his input accordingly, then all corrective work within the
workbook will in fact cause incorrect values to be displayed. It is best practise to instruct the
user to enter the date for which he wants the data value and perform corrective actions
through the workbook.
These three pieces of information will allow the report creator to translate the date the user
enters, into the data the user requires.
Note: The drag and drop activity of adding tag values and the formulas required to do this
are not covered in this section. For more information refer to the
Exaquantum/Explorer User's Manual (IM 36J04A12-01E).
Values during DST Start and Finish
Daylight Saving Time can be an additional complication, twice during the year, time
anomalies will occur.
For example, assuming a one-hour change for DST, one day a year will have 25 hours and
another will have only 23. This will not affect the function of the reports but may affect the
totals. The aggregation of 23 hours may have a sum total lower than usual and the 25-hour
aggregation may have total higher than usual. This is because of the different lengths of day
and should not be corrected. However a user may wonder why there is an increase or
decrease in values and should be made aware of the affect of DST.
Local Time
If the time zone of the report computer is different to that of the Exaquantum server,
additional time offsets must be applied in the report.
Value
Time
Short duration values carry less weight than long duration values.
A summation aggregation without a time base, is a summation of each new value in the time
range (the aggregated value is in absolute units not rate of flow).
Figure 2-3 Typical Summation Aggregation with no Time Base
6
Value 3 3
2
1
14 1
Example:
When a PCS aggregated value is being read (totaliser), its values increases until a
limit is reached. At this point the value is zeroed then starts to increase again. This
value is used as an input to a calculated tag. The expression in the calculated
subtracts the previous value (stored in a manual tag) then stores the input in the
manual tag for the next cycle. If the result is large and negative, add the limit value
as you have seen a roll over zeroisation.
This calculation will periodically show the change in the PCS totaliser. Therefore if
you add these changes in any Production Calendar period and you have the total
values over a period.
The calculated and manual tag plus the OPC input/shortcut can be implemented in a
Function Block.
10
50
10
40
Diff Sum
10 + 15 + 5 + 10 + 10 + 10 10
30
25 5
15
10
10
1:00 2:00
Figure 2-5 Flow Chart of Correction Function based on the Valid Percent Difference
Add the difference to the differential Add the difference to the differential
summation. summation.
The following figure shows an example of a correction using the valid percent difference.
Figure 2-6 Example 1: Correction Function based on the Valid Percent Difference.
60
10
50
Diff Sum2 10
15 + 10 + 10 40
Percentage
Difference
15
25
Diff Sum1 15
10 + 15
10
10 5
Ignore this Value
1:00 2:00
Figure 2-7 Example 2: Correction Function based on the Valid Percent Difference
Percentage 35
Difference
15
25
20
Diff Sum2
Diff Sum1 15 15 5 10 + 5 + 15
10 + 15
10 10
10 5
1:00 2:00
[A] Hardware
[D] Software
[B] Exaopc
[E] Training
Disk Space
When you have established the status of your databases you must check the amount of
physical disk space remaining.
1 Double-click on the Computer icon.
2 Right-click on the drive that the databases are held on and select Properties.
A graphic shows how much disk space is used and how much is available.
Note: The disk space used may not be full. If a database is allocated 100 MB of disk
space then that 100 MB is reserved and therefore used even if there is no data in
the database tables.
It is possible that your HistorianData database resides on a different disk to the
other two. In this case you may wish to check both disks although in practice it
is only the HistorianData database that will increase in size significantly.
You now have a guide to the status of your databases. You should know:
How much space you have allocated for each database
How much of that allocation has been used
How much free space there is on the physical disk.
Historian Validation
This ensures the Historian databases are correctly storing data values.
For more information about the Historian Management tool, see the Exaquantum
Engineering Guide Volume 3 Support Tools (IM 36J04A15-03E). This document gives
more information about how to run checks.
Policies
Three possible password policies for users accounts are detailed here, with
recommendations for which to employ.
User changeable
Fixed
Combination policy.
User-Changeable Passwords
In case IT Security Model is domain model, this policy will be relevant.
All user account passwords can be changed at any time by the user.
This policy provides the greatest security because passwords are changed and therefore have
less chance of being discovered. It is also most likely to match a companys existing
password policy. If the user accounts are maintained on a single Windows domain, then a
change on any workstation will be registered on the domain controller and therefore be
available to all domain computers without extra effort.
This policy is recommended for Exaquantum systems that are maintained on a single domain.
Fixed Passwords
In case IT Security Model is standalone model, this policy will be relevant.
All user account passwords are set so that they do not expire and cannot be changed.
This policy is particularly useful when workgroups or groups of local users are involved.
This is because these configurations rely on matching copies of the user accounts rather than
sharing one instance. Therefore, if a user account password is changed on one client it must
be changed on all other clients and the Exaquantum server for identification checks to be
successful.
It is therefore recommended that any Exaquantum system that uses workgroups or groups of
local users use the fixed password policy.
Combination Policy
In case IT Security Model is standalone model on domain environment, this policy will be
relevant.
This is a combination of the first two policies and uses a mixture of fixed and changeable
passwords.
Example:
A system that has a domain available storing password details for a range of user
accounts using a number of client computers. The system uses Local users due to certain
elements being outside of the domain, e.g. an Exaopc server in a workgroup
configuration.
In this policy all accounts that can be maintained by the domain controller can have user-
changeable passwords, but those that are local to more than one computer must be fixed.
Summary
User accounts and passwords are made available in two ways. They are either shared by
using a domain controller, or they exist as matching sets local to each computer that needs
them. These categories can be used to summarise the recommendations for password policy:
Shared user accounts can have user changeable passwords
Matching user accounts should have fixed passwords
When the IT Security model is set to Standard, the Exaquantum Service user account,
QTM_PROCESS, will be set automatically by the IT Security Setting Tool. Account
changes by the QDCOMConfig tool can be made in Legacy Mode only.
Changing a Password
There are two ways that a password can be changed:
Interactively on any computer
Centrally using User Manager or User Manager for Domains.
All of which are fairly fixed in size, with the exception of QHistorianData, which contains
updating values and may grow in size with the life of the Exaquantum system. Regular
archiving of older data can stablise the size of the QHistorianData database.
Note: If the databases are lost, there is no way of recovering any of the historical data
from Exaquantum. Configuration information would also be lost. You would in
effect be returned to a pre-installation state.
The size of the historian database makes it difficult to provide an effective backup strategy
that balances the need for reliable backups and practicality. For more information and
suggested strategies, see the section on Database Backup Strategy.
Frequency
We recommend that the databases are backed up every day.
Differential Backups
The backup strategy also makes use of differential backups.
A differential backup must be used in conjunction with a complete backup. A differential
backup will back up only data that has changed since the last complete backup. This allows
periodic complete backups to be supplemented with more frequent differential backups. The
system can still be recovered to the point of any backup, but will use significantly less time
and resources. This also has the advantage of allowing the backups to be automated; a
differential backup only needs one tape.
Database Backup Strategy
Tape Backup
When your system is first started, the databases are of an easily manageable size. At this
stage, a daily backup of all databases takes little time and can be used for ease. Over time
however, the QHistorianData database may grow to a size that makes it impractical for daily
complete backups to tape. Once this database exceeds the size of one tape (normally 100
400 GB depending on tape size and compression rate), backup can no longer be an
automated task. This is because a backup goes across more than one tape, and someone has
to physically insert a new one. Additionally, the volume of time and resources (tapes)
involved can make backing up an inefficient and costly task. The backup strategy must take
account of this and of the need for regular, reliable backups.
Disk Backup
The use of tapes for backup is becoming less frequent and SQL Server is deprecating the use
of Tape backup devices in the next release. Backing up the Exaquantum databases to disk
files is the recommended route. To provide a level of security against physical damage to the
server these backup files must either be:
1. On a remote machine on the network
2. Copied after the backup to a remote location
3. On a removable device such as a USB or hot pluggable disk
To retain a second line of defence against an unreadable backup file the same file should not
be used for the full backups every time unless it has been copied elsewhere. The copying of
files requires the management of these copies to ensure the correct one is in place prior to
any restore. A typical administration pattern would see the backup location being secured by
a corporate backup application on a daily basis timed after the Exaquantum backups have
occurred.
There are several ways of backing up your databases. You could use Windows Backup or a
Maintenance Plan devised in SQL Server for instance. We recommend the use of SQL
Jobs. These can automate regular repeated functions saving time and effort. Whichever
database backup strategy is chosen, it must cover all databases on the system. These are:
QConfig
The Configuration database contains the configuration data for the tags, OPC gateways and
other system properties. It does not grow significantly after configuration.
QHistorianAdmin
The Historian Admin database contains the configuration information particular to the
historian. It will not grow significantly after configuration.
QHistorianData
The Historian Data database contains all the historical values as they are written to the
system. This database will grow as the system is used.
QWeb
The QWeb database contains the configuration information of trends created on the website,
also mimics and report files uploaded to the website. It does not grow significantly after
configuration.
ExaquantumFramework
The ExaquantumFramework database contains the configuration information of users and
product links on the website. It does not grow significantly after configuration.
Archive Databases
Data that is archived is placed in a separate database which stays on-line until it is removed.
These databases are numbered sequentially and are accessed by the historian when history
data is requested. The databases are controlled, backed up and restored by the Historian
Archiving screen. (For more information, see the Exaquantum/PIMS User's Manual (IM
36J04A11-01E).) Archive databases are read-only and do not grow.
System Databases
The system databases are created by SQL Server. Three databases, Master, Model and
MSDB, contain information about the system and the databases on it. They change little
over time but should be included in any backups to ensure consistency in the event of a
failure.
Exaquantum Recommended Backup Strategy
The recommended strategy would be to make a complete weekly backup of the five
Exaquantum databases, if possible taken at a quiet time in the week. Such a time could be
Sunday morning at 02:15.
Note: It is sensible to choose a time that avoids aggregation calculations, if possible.
If backing up to tape this backup may take some time and use more than one tape, and so
would need to be supervised. For this reason it will be necessary to choose a time when
personnel are available to change the tapes, if required.
If backing up to disk supervision is not required as there are no tapes to change, but there
must be sufficient space available on the remote disk storage before the backup is
commenced.
This complete weekly backup would be supplemented by a daily differential backup of the
five databases. Each daily backup would store changes made to the databases since the
complete backup. At the end of the week, you would then have one complete backup and six
differential backups.
To restore the databases from tape backup, you would need to restore the complete backup
and one of the differential backups, depending on which day you wanted restored. Each
differential backup should only need one tape and can therefore does not need to be
supervised. When backing up to tape the only task that is required is that someone has to
take the tape out of the tape drive at the end of the backup, and put a new one in before the
start of the next day. To help prevent accidental overwriting of a tape, the automated job
will eject the tape at the end of the backup. Therefore, if the next scheduled backup time
arrived and the tape had not been changed, the backup could not continue.
To restore the database from disk backup files the correct copy needs to be put in the defined
location prior to running the restore job. The physical tape replacement of the daily tape
backup cycle is replaced by whatever copying of disk files is deemed appropriate post each
backup run.
System Databases
The three system databases are fully backed up each time either a complete or a differential
backup is run. There is little advantage in running a differential backup on these databases,
as they are relatively small. Additionally, it is not permitted to make a differential backup of
the master database.
When using the Exaquantum website, to bckupa the databases, it is necessary to remove any
connections held by the website on these databases. This is done by recycling the
Exaquantum Web application pool:
1. Logon to the Web server or Combined server as a user with local administration rights.
2. Run the Administrative Tools Window
3. Select the IIS Manger (Internet Information Services Manager)
4. In the Connections Pane (left side), Expand the Computer node (labelled with the local
server name)
5. Click on Application Pools
6. In the Application Pools pane (center), click on ExaquantumWeb
7. In the Actions pane (right side), click on Recycle
8. Close the IIS Manager
Exaquantum Jobs
There are ten jobs shipped with Exaquantum, five for backing up to tape, and five for
backing up to disk. These are for use with the suggested Backup Strategy. The jobs are
supplied in two SQLServer script files. One of this needs to be run in order to add the jobs
to the system. The files are located in the Product Tools folder of your Exaquantum
Installation, and are called:
backup job scripts.sql
backup job scripts for Disk.sql
The easiest way to run these scripts is to use the SQLServer Management Studio:
1 Open SQL Server Management Studio.
2 Input the settings below in the Connect to server window, and click on Connect.
Server type: Database Engine
Server name: Exaquantum Server name
Authentication: Windows Authentication
3 Click New Query on the Management Studio window. The SQL Server Query window
is displayed.
4 Click on the icon to Load an SQL Script (the open icon).
5 Select the backup job scripts.sql or backup job scripts for Disk.sql file in the Product
Tools folder and open it.
The backup jobs shipped with Exaquantum are configured with a schedule setting. The first
will perform a complete backup once a week; the second will perform differential backups
for the remaining six days of the week. The other (restore) jobs are not scheduled.
The jobs must be enabled to work. As they are not shipped enabled, they must be enabled
by the end user. For more information, see Working with SQL Jobs.
In addition to these jobs, a SQL Server Agent operator called Local Machine is also shipped
with Exaquantum. This can be easily configured to send a message to the user when a job
completes. The procedure is described in Working with SQL Jobs.
Running Jobs
Scheduling Jobs
SQL Server jobs can be scheduled so that they occur automatically at any given time. The
scheduler is quite powerful and can cater for schedules such as every Sunday at 02.15 or the
last Wednesday of each month. The two backup jobs shipped with Exaquantum are set to
run as follows:
Complete backup of the five Exaquantum Databases: Every Sunday 02.15
Differential Backup of Exaquantum Databases: Daily except Sunday 02.15
You are encouraged to modify the schedules to suit the user.
Note: For more information, see Working with SQL Jobs.
Failure of a Job
Occasionally a job may fail to run. This could be for several reasons such as insufficient
space on the remote disk storage, no tape in the drive or a fault in the tape driver. SQL jobs
can notify users of problems in four ways:
Event Log
A failure can list an event in your application event log. The jobs shipped with Exaquantum
are configured to add event information to the event log on completion.
E-mail
A message can be e-mailed to inform someone if a job fails. This function requires the SQL
mail service to be configured and running. This is not set up by default on the jobs shipped
with Exaquantum.
On-line Error Messages
These may appear if there is a problem with a database or tape driver. These messages are
generated automatically by SQL.
Action to Take if a Job Fails
The job failures reason may be that a tape device was off-line or no tape was available.
You may also want to look in the error log created by SQL. These logs are located in the
Logs sub-folder of your MSSQL folder. They are also viewable by expanding the SQL logs
node of SQL Server Management Studio and double-clicking on the relevant log (usually the
current log).
Assuming any problem is rectified, you should perform a manual backup as soon as possible.
This can be done by manually running the relevant job.
Note: You should not run a differential backup unless there is a valid complete backup.
The Working with SQL Jobs section describes how to run a job manually.
Notes: The information held in the Job Summary Information is not updated automatically.
To make sure the information is up-to-date (or to update after a completed run),
right-click on the Job Name and select Refresh Job.
Notifications Tab
It is very useful to be able to send the success or failure status of a job to a user. This is set
up on the Notifications tab. This tab gives you the option to e-mail, page or Net Send the
results to an operator. Operators are set up using the Operators screen located above the Jobs
screen. Although straightforward to set up and test, you will need to know e-mail addresses
or computer names to create an operator.
Notifications can be sent either when a job fails (recommended for e-mail or pager), when it
succeeds (not recommended), or when it completes (recommended for net send and event
log). When notices of job completion are sent, this information includes success or failure of
the job.
E-mail
The e-mail option is useful when a backup operation has failed. Although you can only e-
mail one operator, this operator can be a group and so multiple notifications can be achieved.
This feature cannot be enabled in the pre-shipped versions as default settings cannot take
account of e-mail addresses. This option would therefore have to be set up on site. Sending
messages via e-mail requires the SQL mail service to be running.
For more information, refer to the SQL Server on-line documentation.
Writing to the Event Log
By default, all jobs will write an event to the application log, showing success or failure of
the operation. This should always be enabled.
Important
Before configuring the local computer operator account, make sure that the backup jobs
script file has been run.
To configure the local computer operator account, open the SQL Server Management Studio:
1 Open SQL Server Management Studio.
2 Input the settings below in the Connect to server window, and click on Connect.
Server type: Database Engine
Server name: Exaquantum Server name
Authentication: Windows Authentication
3 Expand the Server Name node (usually named after the local computer).
4 Expand the SQL Server Agent node.
5 Click on Operators. A list of operators is displayed.
6 Double-click on the operator named Local Machine to display its properties.
7 In the Net-send address field, replace Type computer name here with the name of the
Exaquantum Server computer.
8 Click on the Test button. You will be asked to confirm the test.
9 Click on OK and a net send message will appear on the Exaquantum Server computer.
10 Acknowledge the message and click on OK to close the Operator Properties window.
The operator is now configured. All Exaquantum jobs will notify the net-send address when
they complete.
Note: You do not have to specify the Exaquantum Server as the recipient for the Net Send.
You can enter any computer that is on the Network.
The notification is in the form of a simple pop-up message that informs the recipient that the
job has finished, and whether it was a success or failure. There is also some additional
information such as job length and the last step to run (useful in case of failure).
5 Once the restore has completed, the SQL Server will automatically be shut down.
6 Re-start the SQL Server from the SQL Service Manager. Restore the remaining system
and Exaquantum databases using the SQL Server Management Studio.
Restore Model Database
These system databases can be restored using the SQL Job named Exaquantum Database
restore from [Tape|Disk]. You should already have installed the master database if
required.
A complete backup of the msdb and the model databases is taken every night using either the
complete backup job or the differential backup job. Differential backups of these databases
are not taken due to their relatively small size. Use the backup that matches the time you
wish to restore to, normally the most recent available. Insert the backup tape if required,
then run the job manually. The full procedure is:
1 Insert the correct tape in the tape drive, if required or ensure the correct disk file in in the
backup location.
2 Navigate to the Jobs section of SQL Server Management Studio.
3 Right-click on the job named Exaquantum Database restore.
4 Select Start Job at Step
5 If Start Job window can be shown, click on Start.
6 Wait for the pop-up message and verify the success of the restore.
Restore the Six Exaquantum Databases from the Last Complete Backup Set
The six Exaquantum databases can be restored using one of two Jobs, depending on whether
you are also restoring a differential backup. The distinction between the two Jobs shipped
with Exaquantum is explained in Table 4-3
Table 4-3 Exaquantum Jobs Description
1 Insert the first tape of the backup set in the tape drive, if required or ensure the correct
disk file in in the backup location.
2 Navigate to the Jobs section of Management Studio, right-click on the appropriate job:
Exaquantum Complete Restore from [Tape|Disk] (final)
- or -
Exaquantum Complete Restore from [Tape|Disk] (primary).
3 Select Start Job at Step...
4 Insert further tapes if required.
5 If Start Job window can be shown, click on Start.
6 Wait for the pop-up message and verify the success of the restore.
The complete backup set is now restored. You can now either restore a differential backup
set (if appropriate) or use the databases.
Restore the Differential Backups from the Last Differential Backup Set
If you have run the primary restore job, you will now need to complete the operation by
restoring the differential backup set.
1 Insert the correct tape in the tape drive if required or ensure the correct disk file in in the
backup location.
2 Navigate to the Jobs section of SQL Server Management Studio.
3 Right-click on the job named Exaquantum Complete Restore (final).
4 Select Start Job at Step...
5 If Start Job window can be shown, click on Start.
6 Wait for the pop-up message and verify the success of the restore.
Your databases will now be restored to a consistent state.
Note: Some data loss will occur. The system cannot retrieve data sent from the OPC
gateway in the time between system shutdown and system start-up. This may
produce anomalies on reports that should be carefully monitored in the period after
restart.
Restart the Exaquantum Service and IIS Application Pools
Once the databases are restored you can start the Internet Information Service (IIS) application
pools used by the Exaquantum Web server must be restarted. The application pools are called:
Exaquantum
ExaquantumWeb
ExaquantumWebservice
Start the Exaquantum service using the Exaquantum Service Manager from your
Exaquantum menu.
Any other products and their (IIS) application pools stopped in the earlier step can be
restarted.
Important
If you are unsure about any stage you should refer to the relevant documentation. It is
important to consider recovery as a new installation. Failure to do this could lead to an
incomplete or incorrectly configured system.
Typical Scenarios
The Service Manager is used when it is necessary to start or stop the Exaquantum service.
Typical scenarios are:
Upgrades to the Exaquantum server software
Changes to the OPC Server configuration
Some changes to the Exaquantum configuration necessitate a restart of Exaquantum
before these changes are recognised. These are:
Changing the OPC server type
Changing the OPC server computer name
Changing the source of the timestamp.
Uncontrolled shutdown of the Exaquantum Server as a result of hardware, software or
power failure
Controlled shutdown on network failure to allow data from the shutdown period to be
recovered through History Catch-up at start up
Controlled shutdown initiated programmatically from a UPS system as a result of a
mains power failure.
History Catch-up
History Catch-up allows the Exaquantum system to recover data for the period between a
system shutdown and a restart. The data in the historian for a shutdown period will be
restored to form a seamless history of Exaquantum data. It does this by reading OPC data
from the OPC Server via the Historical Data Access (HDA) and Historical Alarm and Event
(HAE) interfaces.
History catchup time depend on shut down period, the number of tags, scan period, the load
of server system and so on.
When History catchup is running, as part of Exaquantum startup, the system load will be
high, compared with normal data gathering. This is especially true when tag update rates are
high (fast).
The data items that will be recovered during the History catch-up are:
Raw
Aggregated
Calculated
Alarm and Event.
Update Rate
During a catch-up period, the OPC item update rate used by readers of an OPC tag is used.
Exceptions to this rule are as follows:
Data will be periodically recorded if the OPC Servers configuration is set to periodically
collect history data.
The fastest update rate is used when there are multiple update rates specified for one item.
This happens when the one-minute update rate is temporarily changed to 5 seconds, and
reverted to the original one minute later on. In this case restored history will be 5
seconds update rate until some period (default 48 hours) will pass.
For more detailed description of this behaviour refer to the Exaopc Manual.
Quality Codes
Quality codes are allocated as follows:
For OPC tags, a special data point with a quality code Uncertain-BeginCatch-up is
inserted at the time of commencing the catch-up with the last available value before the
shutdown. This value will be overwritten if a coincident point is read from the OPC.
If the catch-up fails in the middle of a catch-up operation, a shutdown mark of Uncertain-
Shutdown is inserted at this point.
Calculated tags have no special points inserted. Their quality is based upon the quality of
their inputs.
Aggregation items behave in the same manner as for any other shut down and start up.
The Uncertain/Shutdown marker is written at the start of the shut down period, and their
quality is based upon the quality of their input. If no data is retrieved at the beginning of
catch up, Aggregations will calculate as Uncertain based on their shutdown value until
the first catch up point is received.
History Catch-up Configuration Tool
The Exaquantum History Catch-up screen (History Catch-up configuration tool) is one of the
Exaquantum/PIMS configuration tools. It is here that the History Catch-up parameters can
be set:
Enable History Catch-up
Abort on First Failure
There are two options regarding data recovery: catch-up all downtime or catch-up from an
aggregation period boundary.
Catch-up All Downtime
History catch-up can recover data for all items between the Exaquantum Server shutdown
time and the start-up time.
3 When Exaquantum starts, History Catch-up is triggered automatically and data for the
entire shutdown period is retrieved from the OPC(s) Historical Data Access database
(HDA). The administrator can monitor the progress of the History catch-up through the
Service Manager.
4 Alarm and Event data is recovered from the OPC Historical Alarm and Event database
(HAE) after Exaquantum has started and in parallel with live A+E data collection.
Errors in the Data during History Catch-up
The behaviour of the Exaquantum start up, if an error is encountered during History catch-up, can
be set using the History Catch-up configuration tool (Exaquantum History Catch-up screen).
When Enable History Catch-up is selected (and Abort on First Failure is not selected) and
an OPC HDA request fails for the OPC Server, the History catch-up will be abandoned for
that OPC Server, but Exaquantum start-up will continue.
Caution
When the History catch-up process is abandoned, it is not possible to recover any data for the
shutdown period. All data for the shutdown period will be lost.
If Abort on First Error is selected and an OPC HDA request fails for the OPC Server, the
Exaquantum start-up will be abandoned. This will cause the Exaquantum start-up to fail.
Failing start-up gives the administrator the opportunity to correct the error and restart
Exaquantum. In this case, History catch-up is automatically restarted from a clean point
prior to the failure. As the Exaquantum system has not started, the data should not be lost.
The History catch-up period will cover the period of the attempted, and subsequent, restarts.
Note: It is possible that the error cannot be corrected. The administrator must then accept
that the data cannot be recovered through History catch-up. In this case, the
administrator can restart Exaquantum and control the behaviour using the
Exaquantum Service Manager control.
Excessive Recovery Time for History Catch-up
If the Exaquantum system has been shut down for an exceptional period of time, for large
systems the History catch-up process may take a considerable amount of time. In these
exceptional circumstances, a decision can be taken to accept that the data for the shutdown
period will not be recovered. In this scenario, there are two options available on the Service
Manager to the administrator:
Use Skip to prematurely terminate the History catch-up and make the Exaquantum
system available
Use Abort to abort the catch up and change the catch up setting to recover an
aggregation period rather than all data.
Note: Changing the catch up setting in this situation can only be achieved by using the SQL
Server Management Studio to change the database before restarting Exaquantum.
Recommendations
Check that the History Catch-up configuration is correct for the situation before stopping
Exaquantum.
Check the Event Log after a start-up and shutdown.
Automatic Start
To start Exaquantum automatically at boot time the following configuration of the services
should be set:
Table 4-4 Services configuration for starting Exaquantum automatically
The procedure to follow to ensure that the Exaquantum processes start automatically when
the Exaquantum machine restarts is given below.
1 Run the Administrative Tools window.
2 From the Administrative Tools window, run the Services window (Figure 4-1).
Figure 4-1 Services Window
3 Select Exaquantum service, right mouse click and select Properties. The Exaquantum
Service Properties window (Figure 4-2) is displayed.
Figure 4-2 Service Properties Window
Operational procedure
The following explains the procedures for:
1 Registration of the Shutdown Script
2 Removal of the Shutdown Script
3 Setting the Timeout Period
4 Operation of the Shutdown Script
Registration of the Shutdown Script
Perform the following steps to register the Exaquantum shutdown script in the Windows
shutdown settings.
1 Locate the Run or Search dialog.
2 In the Run or Search dialog, type in "gpedit.msc" and click "OK".
3 The Group Policy console is displayed.
Figure 4-3 Group Policy console
5 Click the Add button and the Add a Script panel will be displayed.
Figure 4-6 Shutdown Properties Add a script
Figure 4-18 Maximum wait time for Group Policy scripts Properties
5 Select Enable and set wait time in seconds area, and set Maximum wait time for Group
Policy scripts.
For Not Configured , the Default wait time is 600 seconds.
If the timeout period is set to 30 minutes, then maximum wait time is set to 1800 seconds.
If the timeout period is set to 1 hour, then maximum wait time is infinite.
Figure 4-19 Maximum wait time for Group Policy scripts Properties - Enabled
When Exaquantum has shutdown the dialog will be closed.. The time from when the
shutdown was invoked to now, Timeout Duration, is displayed as in the image below:
Figure 4-22 Exaquantum shutdown dialog Timeout Duration
When the Terminate Now button is clicked a confirmation message dialog is displayed. If
YES is clicked Exaquantum will be terminated. If selecting this option there is a possiblility
that data may be lost.
Figure 4-23 Terminate Now dialog
The Exaquantum Secondary Quality codes are as follows (0x indicates that the value is in
hexadecimal):
Table 5-2 Secondary Quality Codes
0x0007 OPC Interface OPC Error - written to items when a 0x0000 Bad
fault occurs with communication to
the OPC Server.
0x0008 Time Change The Exaquantum Server time has been Can be 0x0040 -
changed Uncertain or
0x0000 - Bad
depending on the
extent of the time
change
Exaquantum accepts three data qualities, good, bad and uncertain. There are 26 recognised
states for data, all of which are assigned one of the three quality codes.
It is possible to decide which quality flag should be assigned to each individual data status.
Example:
If a tag is undergoing maintenance, the quality code assigned by default is 'bad'.
You may have mimics configured to highlight tags that unexpectedly show a 'bad'
quality. To avoid having tags that are known to be off-line causing a highlight, it
may be preferred to set the Maintenance status so that it displays an uncertain data
quality.
QConfig1.ndf Secondary
QConfig2.ndf Secondary
ExaquantumFramework_1.ndf Secondary
ExaquantumFramework_2.ndf Secondary
ExaquantumFramework_log.ldf Log
QWeb_1.ndf Secondary
QWeb_2.ndf Secondary
QWeb_log.ldf Log
FrameworkSchema_log.ldf Log
QHistorianAdmin.ndf Secondary
QHistorianAdmin_log.ldf Log
QHistorianData1.ndf Secondary
QHistorianData2.ndf Secondary
QHistorianData_log.ldf Log
On the SQL Server Query Window, click the green play button (or press the F5 key on
the keyboard) to execute the command.
How to Move a Database
1 Take a security copy of the database.
2 Stop Exaquantum, if it is running.
3 Stop all other applications that access SQL Server and ensure that no Query Windows
within SQL Server Management Studio are accessing the database to be removed.
4 Start SQL Server, if it is not already running.
5 Identify the database and database files to be moved as described in the Planning section.
6 Launch the Query Window application so that detach and attach stored procedures can be
issued. Refer to the section Using SQL Server Query Window on how to start and use
this application.
7 Issue the sp_detach_db stored procedure in the SQL Server Query Window; in the top
pane of the SQL Server Query Window, enter the following command:
sp_detach_db @dbname=<Name of the database to detach>
8 Click on the blue tick symbol to check that the format is correct. The message The
command(s) completed successfully. will be displayed in the lower pane of the SQL
Server Query Window.
9 Click on the green play symbol (or press the F5 key on the keyboard) to execute the
detach command.
Note: If the detach operation was successful, the following status message will be
displayed in the SQL Server Query Window status pane:
Successfully detached database <Name of the database to detach>.
DBCC execution completed. If DBCC printed error messages, contact your
system administrator.
If the database name is not correct (mistyped), then in the SQL Server Query
Window status pane the following message will be displayed:
Server: Msg 15010, Level 16, State 1, Line 0
The database <Name of the database to detach> does not exist. Use
sp_helpdb to show available databases.
If another application is still accessing the database then the following error will
be displayed:
Server: Msg 3702, Level 16, State 1, Line 0
It will be necessary to shut down the application before continuing.
Cannot drop the database <Name of the database to detach> because it is
currently in use.
DBCC execution completed. If DBCC printed error messages, contact your
system administrator.
10 Move the required files that were identified during the planning stage of this process to
their new locations. The files can be moved in the normal manner using Microsoft
Windows Explorer.
11 The database must be reattached by executing the sp_attach_db stored procedure in
SQL Server Query Window. The sp_attach_db takes the name of the database that is to
be attached, followed by the location and name of the primary file for the database, and
the location and names of all files that have been moved.
sp_attach-db @dbname=<Name of the database to attach>,
@filename1=<Primary file path/name>,
@filename2=<Additional moved file path/name>,
@filename3=
12 On successful attachment of the database, in the status window of SQL Server Query
Window, the following message will be displayed:
Successfully attached database <Name of the database to attach>
If the path and/or filename of the primary or one of the moved files is incorrect, in the
status window of SQL Server Query Window the following message will be displayed:
Server: Msg 5105, Level 16, State 4, Line 1
Device activation error. The physical file name <File path/name> may be incorrect.
13 Restart Exaquantum.
Chapter 7 Troubleshooting
7.1 Event Viewer
This section covers the functions of the Event Viewer that are considered of use. However,
in the case of any system failure, we recommended that users follow the procedures detailed
in this section to make better use of the facility. For more information about the Event
Viewer, refer to the Microsoft Windows Event Viewer Online Help.
Error and information messages that are generated by Exaquantum are written to the Event
Log during the normal operation of Exaquantum and therefore, the Event Log is a primary
source of troubleshooting information. Event Logs can also be saved, and when necessary,
sent electronically to enable troubleshooting to be carried out at other support locations. A
copy of the relevant event log is always useful when analysing problems reported with
Exaquantum.
It is good practice to examine the event logs regularly verify good working order of the
Exaquantum system.
All Exaquantum modules can write to the event log as can most external applications.
There are three types of event log; System, Security and Application.
System
This records events logged by the Windows system components. For example, the failure of
a driver or other system component to load during startup is recorded in the System log.
Security
This records security events. This helps track changes to the security system and to identify
any possible breaches to security. For example, attempts to log on to the system may be
recorded in the Security log, depending on the Audit settings in User Manager. You can
view the security log only if you are an Administrator for a computer.
This log contains errors relating to security. It is rarely used when troubleshooting
Exaquantum problems as the only messages likely to appear in this log are from DCOM
errors and these are normally duplicated in the Application Log. However, in the case of
suspected DCOM errors, it can be useful to access this log.
Application
This records events logged by applications running on the computer, such as the various
components that make up Exaquantum.
The log files (System log, Security log, Application log) are located as follows.
There are various levels of severity for each log entry. The levels of severity are identified
by symbols: error, warning and information.
Error
Error messages can help determine any problems with an Exaquantum system particularly in
the application log. They must be given prompt attention. For example, problems with
missing or faulty tag IDs will appear as will any problems with writing data to the historian.
Warning
Warning messages are of interest to a user but do not necessarily need immediate attention.
An example is a warning that a hard drive is getting near capacity. Although important to
address, these warnings are not normally a direct result of running Exaquantum. These
messages are more common in the system log and are not often of use for Exaquantum
troubleshooting.
Information
Information messages typically inform users that expected events took place, eg starting the
system.
Using QDCOMConfig
QDCOMConfig may be run on an Exaquantum Server computer or an Exaquantum Client
computer.
It must be run by users who have local Administration rights.
For further information on using QDCOMConfig and entering the required information
please refer to Accessing The Domain Quantumuser Account in IM 36J04A13-01E A
Exaquantum Installation Guide.