Copyrig ht © I FAC Electric Energ' S\Stetm Rio de Janeiro. Brali!. 1985
POWER SYSTB1S CO:-.JTROL CENTERS
A MODERN DATA BASE MANAGEMENT SYSTEM IN POWER SYSTEM CONTROL E. Lutz and DI'Parlllll'll1
of
POll'('/"
S\"III'III
J.
Martinaud
CUlllrul. CGEE ALSTIIO,\[ , Leml/ui.1 Penpl, FrolICI'
Abstract. After a short recall of the main objectives of a data base management system and their adequation to process control, the art i cle expresses that the DBMSs availahle on the market, for per formance reasons, are not adapted to control centres . t~anufacturers have to develop their own DBMS, with features that will a llow to reach adel1uate rf'sponse time keeping all the advantages of the DBMS approach . The main characteristics of a DBMS package, PRODIGE are presented the model, the associatec1 l anguages (DDL, DML , tIML) a nd the procedures for creat i on and use of c1ata base . 50me fil1ures are g iver which in d icate that, although the r8MS approach le ads to a non zero overhead in computer systems when compa r ed to the traditional file l'1anagel'1ent, this approac~ i s compensated by several advantaqes. The conclusion preserts so~e di r ec tions for future develo~ments. t:'eyworrls . Computer appl ica ti ons data tlase mana~ement system data handl ina eneroy contro l i nformati0n retr ipvil l process control system failure and recovery: systel'1 integrity.
I lIT ROD UCT I 0 I1 f)Bt1S otl.iectives
- the interface between the nata base and the aDpl ication rrogral'lS hein9 standar risen, ?ny further C'roC'ram accition i s facilitatec'.
The and
oroanisation of c' a t a in a rata ~ase the use of data rase rariloement (nBfiS) syste~ rave the following ma i r ob .i ectives :
Lonical rlaU indErp~c1erce . Only the cata nEeded ~y or aDrlication ,ro0ram are known by this oroorarJ1. ~s lore as these data are not charcec, the rrccram neecs ro recomoi 1 a 11 0 r. 11e w rate ty r e car rei r t re c u c e din the rata base for new oroora~s without involvir~ recol'1rilatior of existin0 oro orams.
Data centri'lisotion. His is the locical certralisation urrer t~e resronsa~ility of the Data Pase forll'1inistrator (r8fo) arc throuoh the use of a collecti0n of ctedica ted pieces of software. This centralisa tion roes not necessari ly mear physical centralisation, data can re spread on di fferent storaC'e meni? and even on cli f ferent cOMPuters. Thi s central i sation allows several benefits in comoarison with orevious desirns
Physiul ri ata irrlerenrerce. The applica tion rroaral'1s should not be modified or recompiled if tre steraoe confi~uration is chargecl durinr the life of a system . e re cf the resporsabilities e f the rata hase admi ni strator is tc tune the data base rhysical il'1DleT'1entation : it Must be 1'0ssHle to do it without affEctina He aDrlication proaraMs.
a considerahle increase in the reliabi 1 i ty of the overall systel" hecause all data are accessec. throuah stardarc software which is indepencent frol'1 the application orocral'1S,
Contrelled redunr.arcy. Eecause of data consistency constraints, one riata item I"ust not re avai 1 at 1 e for ci fferent users i r di fferent ,1 ac€S of HI? systerr at the same til'1e.
- safer anci srJ100ther rr0cedures for He Modification of rata, rodificaticr of their auantity or modificatior of their tyre,
29 3
• E. Lutz and J. Martinaud
294
Data security. Data security means capacity of the system to guarantee
the
It appears that the DBMS approach has the following advantages in terms of system:
- data accuracy and consistency - data protection against loss or damage - data privacy
- re 1 i ab i 1 i ty , - ease of development tion,
Because of the i ncreasi ng si ze of power system control centres in terms of function and number of data, it is desirable to reach the above objectives in the software used by this industry.
all of costs.
Market DBMSs generally sati sfy these objectives but have unacceptable drawbacks from the point of view of response time. An access to a data is never less than hal f a second of el apsed time which is incompatible with the needs of systems where hundreds of data must be processed per second. EXISTHJG MODELS The three existing models gical order of apparition p 1 ex, re 1 at ion al. The tw 0 classical and well known; the relationship between in the organisation of itself .
are in chronolohierarchical, fir s t mo del s are in these models data is implied the data base
In the relational model the data is logically viewed in two dimensional array of data elements called relations. In this case the model is a collection of relations with no implied relationships. The data retrieval is then made using a language based on the mathematical theory of relations. Because the absence of built-in relationships in the relational model, the access to the data implies the use of sophisticated access services with unacceptable response time. The pl ex model, or network model as defined by the Data Base Task Group of the CODASYL committee, and the hierachical model promote efficiency but as counterpart ask for more computer science knowledge from the user. PRODIGE PftCKAGE General Duri ng the 1 ast ten years important pro gress has been accomplished in the field of programming methodology. The di fferent phases of software produc tion are clearly defined and well ~ocumen ted. In the meantime, the cost of software is still increasing because of the ouick growth of systems size and complexity. In addition more and more functions previously realised by specific hardware are now handled by computers.
them
have
and
further
positive
evol u-
impacts
on
Model When we talk of a model, we understand the conjonction of data logical organisation and data access facilities. Data organisation. The model is a p1ex (network) with the following components [lata item the smallest named unit of data that has meaning in describin~ information. For example acquired value of an analog measurement, the normal position of a breaker. A data item can be used for four types of information constants, parameters (can be modified by the operator), variable (can be modified automatica1y by the process), relationship (a special type of data item that we will see below). Tup1 e a group of va1 ues of re1 ated data items. For example a tup1e can be the group of values associated to an analog measurement, acqui red va1 ue, maximum, minimum, manual value, estimated val ue ... a oroup of tup1es sharing the Cl ass For example active same data items. power analog measurements of oenerator un its. Schema a map of the overall struture of the data base.
logical
Data acces. Given the data organisation this is the collection of data access facilities which will allow to call the model "hierarChical", "network" or "relational". The ranae of data access types will define the efficiency and performance of the imo1ementation. Data base key the DB - key is a uninue value associated with a tup1e at the creation of the tup1e. It is the fastest means of access to a tup1e . Secondary key the computer nay a1 so use key which does not identi fy a uninue tuo1e but which identifies all those tup1es within a class with certain properties. Such a key is defined as a list of data items and the values of these items. For example a secondary key wi 11 allow to define all the active power analog measurement of hy d ro gene rator un its. The 1 i s t of tup1es corres pondi ng to a seconda ry key is ca 11 e d
A Modern Data Base Management System in Power System Control
an inverted list, it contains DB-keys. There are two types of inverted 1 i st, first the static type which can be stored for fast access, in this case the data items part of the corresponding secondary key are of the constant type ; second the dynamic type of inverted list which is built on line because the data items part of the correspondi ng secondary key are of the parameter or variable type. Example of static inverted 1 i st all the analog measurements of a given sUbstation. Example of dynami c inverted 1 i st all the opened breakers within a sUbstation. Relationship a data item can be declared as a relationship. If a tuple A in a class X has a relationship with a tuple B in a class Y the data access to data items of B will be possible from A, likewise B can have a relationship with the tuple C in the class Z and data items of C will be available to A. For example analoo measurements can have a relationship with the type of transducers and its characteristics. A special type of relationship the indirect relationship to access only one data item in a class Y from a tuple in a class X. It is more restrictive because only one data item of the class Y can be reached but the access is faster.
295
Physical organisation The data base administrator has the faci1 i ty to defi ne one or severa 1 fil es in which the data will be stored. One file contains segments. The segment is the basic quantum of data which is passed between di sk and memory under control of the data base management software. A segment is bel ongi ng to cl asses. For contains the all tuples of
a collection of data items tupl es from one or several a gi ven data item a seqment values of this data item for a partition.
For example let us imagine that the data base administrator has defined one partition for each RTU. Each partition contains tuples from the class of telemeasurements and tuples from the class of circuit breakers. Some da ta items of these tupl es have to be accessed simultaneously and rapidly, such as acquired measureMents values, measurements validity and acquired circuit breaker state. Therefore it can be decided to group these data items in one seoment. Such a segment will contai n the val ues of these data iteMs for all the measurement tuples and all circuit breakers tuples of one RTU. lanouages
- The set: this is the set as defined by the CODASYL, a set is composed of one tuple called OWNER and of ~ tuples called MEMBERS, the member tuples can be in different classes. For example some circui t breakers in the cl ass of ci rcui t breakers can be members of a set in which the owner is a substation in the class of substations.
As defined in the CODASYl recomMendations several lan9uages are defined for definition, organisation, access of data. Data desc ri ption lan~uaoe. (DDl) This is the means of decl ari ng to the data base management system what data structure will be used. This lan9uaqe allows definition of : data base name, cl asses, data items, keys, partitions, sets.
PRODIGE'S SPECIFICITIES manaaeMent languaoe. (MMl) This languaoe is used for the physical description of data storace. It allows mainly to refine the files and senments en disks and to tailor the use of main memory. More details of melT'ory Manaoement are oiven be low.
~emory
Partition This is logical association of tuples from one or several classes. For example all the tupl es 1 inked to a substation and distributer within several classes can be groured in a partition. The divisiC'n of the data base in partitions is such that a tuple is in one anr only ene rartition. The performance improvement is obtained because the physical implementation of data is linked to the division in parti tion (see below).
[1 a t
a mani p u1 a t ion 1 a n 0 u a 0 e. ([1 f' l) This i s the 1 anouaqe used by the anpl i cati on oroorams to access rla ta in the rata base. In the case of PPODIGE and because most of t~e aprlica tion is written in FOPTPAH this DVl is not an extension of COBOl as recomended by the CODASYL.
296
E. Lutz and J. Martinaud
Building the data base. (see fig. 1) Bui 1 di ng the data base consi sts of three main phases. Design of the schemas. The initial design of the data base structure is the definition of the conceptual schema, the subschemas and the physical schema. This design can be done by the data base admi ni strator when he has coll ected all the information which will have to be stored in the data base, when he knows which view each application program has of the data base and when the hardware configuration is asserted. This design is then put in concrete form using DDL and MML instructions.
Conceptual Sc hema
1~
/ Subschema 11
Subschema 2
*
MML (Memory Management Language)
Internal Schema
- the data dictionary which is a catalogue of all data types g1 Vl ng thei r names, structures and indexes used by the data base management software, ~ill
Subschema
+
Generation. This phase consists in establishing the initial structure of the data base using a program called the generator which will compile the DDL and MML instructions. The same generator is used for future structure modifications. The result is :
- the files in which the data base stored .
*
DDL (Data Description Language)
Generator
*
be
Configuration. The generation phase has created an empty data base, the configurator will then be used to fill in the data. The configurator is a standard tool for: - creation and modification of the content of the data base,
Data Dietiom,
- validation of the data base,
nU
Data base
- saving and restoring of the data base. The confiourator can be used in batch mode or interactive ~ode.
Data base
D ML
*
mana'le~ent
software Security Configuration mode. In this mode there is only one user and therefore no concurrent access probl em, the response time is not critical but the security of data manipu lation is i~portant. The accesses in this mode have a journal i ng feature and some integrity constraints are checked. Real time mode. In thi s mode there are several simultaneous users of the data base, each user can lock part of the data base while using it. The locking mechanism can be used at v~rious levels from the whole data base, down to the tuple. According to the type of access the lock i ng ~echani sm is executed automatically or must be done by the user. Because deadlock must not appear in the real time mode a deadlock
/~ Configurator
*
( Da ta Manipu1 a t i on Languaqe)
Real time Application
(*) - Software and lanouages included in the system.
Fio.1
PRODIGE
*
A Modern Data Base Management System in Power System Control
detection feature has been implemented for use during the debuo phase.
297
sequential access, block access.
PEPFORMANCE
I~PROVEMEHT
FEATURES
Memory management In the case of vi rtua1 memory computers the exchanoe of information between memory an~ disk is manaaed by the operatina system, otherwise a simulation of this mechanism is made. The storaae of data in the main memory is defined by "Mappin~s". A mapping is a description of the !'lain memory buffers used for data access. Some buffers can be used to keep resident one or several segments. One mappi ng is defi ned for a who1 e data base. Several mappinas can be defined for each data base, each app1 ication program can choose one of these mappi ngs, anyway there is no data duplication in the main memory. Let MI and M2 be two mappings of a data base, and Y a data declared resident in MI and not resident in M2. If a program A uses MJ and a program Buses M2, the program B when using X will take advantage of X res i dency. The MML allows a1 so to defi ne the fi 1 e organisation on disk. The modification of the physical organi sation using MML does not affect the existing programs. This allows to tune the perfor!'lances during the software integration phase and in case of future modifications of the system. Data manipulation High level services. These services are only used by the configurator and allow manipulation of one tup1e at a time. They involve sophisticated treatements or checks such as journa1ing of transactions, verification of the unicity of primary key s. Direct services. These are the services more often used in real time operation. They allow access to one or more data items from one or more tup1es :
Services using inverted list. These services allow access to all tup1es of an inverted list in two ways: seQuentia1y or globally. Services using external keys. These services allow to search for and have access to one tup1 e wi thi n a cl a ss or a set. These services are less time performant than the three preceeding type of services. Data manipulation improvements Access using external identificators. For performance reasons all the accesses which are not linked with the man-machine interface use DB-keys. Some accesses within the man-machine interface subsystem use an identificator called REX. The REX is an identificator for the tup1es known by the operators. The REX is composed of alphanumerical fields; for the tup1es linked to the electrical operation this is defined by the utility. The data access using REX is more time consuminC! than the access using a DB-key but it is rarely used. Partition and Performance improvement. Programs generally have access to several data successively due to the logical association of data within a partition, these differents accesses are genera1y made in the same partition. In the same way the block accesses concern generally data within one partition. Therefore for all critical programs the perfor!'lance improvement is reached because there is a reduction of disk to memory transfers and the data access is optimised. For example with partitions defined as all the information in a substation the improvement will be important for functions such as display of the substation, aCCluisition from the RTU and topology evaluation of the substation.
access to one tup1e, seauentia1 access to a tup1e at a time within a class. The search can be done within a partition, a type of partition or the cl ass, block access allows tup1es at a time.
access
to
several
Se r vi c e sus i n g sets . The se se r vi c e s allow to access one or more tup1es within a set. As for direct accesses there are: . access to one tup1e,
Memorised direct services. For direct services it is possib1 e duri ng the fi rst direct access to memorise the information concerni ng the access pri vi 1 eges and the logical-physical link to the data. Further access will then be much quicker. Access using set or inverted list. These type of access allow to improve the ti me performance for data which are not 10gica1y grouped within a partition. The improvement is obtai ned because the access is generally made usi ng internal 1 i sts of previously prepared DB-keys .
E. Lutz and J . Martinaud
298
C0 ~I CLUS ION
REFE PE ~I CES
The increase in si ze and compl exity of systems Il'ace recessary the lIse of ~ (lBMS with its standard characteristics. The exalT:ple of PRODIGE shows that the reali sation of a DBMS with such characteristics for real time application is possible .
Andleson, M. D., and P.A . Smith (1977). Qata bases for energy management systems a real-time operational approach . Proc. PICA Conf.
On a a re
Vfty
11/780
measured
access
times
direct access for one tuple 800 microseconds for a read and 1100 Il'icroseconds for a read anc write, memorised direct access to one tuple 450 microseconds for a read. These are CPU tir:1es (liven for access to five data items of one tuple which are in memory resident segments. The times look much hioher than the times generally oiven for classical systems using COMMO~I exchange features for example. ~l eanwhile i t must be noted that the times given above include the time for checking the access privilege and for the use of the locking facilities. These latter times are generally left out of the measures or estimations (liven for traditionna l systems . The mana(1ement of pri vileges and lockino facilities uses operating system services and therefore the comparison of figures must be done carefully. One trend in real-time DBMSs is the development of data access compilers which will allow to create DML for non-computer specialists . Such a compiler allows a user friendly DML without degrading the performances. Another trend is the development of di stributed data bases, in this field the difficulties to reach specified performances are amplified. Today these development linked to network architecture are at the early stage of design. One major trend for the next generation of control centers is the develpment of DBMS in which the association of initial information and of knowledge rules will allow to create new information . This is the field of artificial intelligence.
Delobel, C., and t1. Adiba (19 8 3) . Bases de donnees et systemes relationnels. Masson, Paris. Fargette, F. (1985). Donnees pour bases de donnees. Eyroll es, Pari s . Gardarin, G. (1984). Bases de donnees . Les langages. Eyrolles, Paris.
systemes
et
leurs
Lehman, R., and J. Mattioni (1983) . Data base methods in power system control centres . Electrical Power and Energy Systems. Vol 5 ~. 4 241-24~ . Butterworths, London . Lejuste, J.M., Y. Tadec, and J.M. Chochoy ( 1984) .
Organisation des logiciels temps reel de condui te de processus et concept de base de donnees. Proc. Colloque International SEE de Nice. Automatique Appliquee. SEE, Paris. ~1artin, J. (1976). Computer data base organisation . Prentice-hall, USA .
Mesguich, A. , and B. Comprendre les bases et pratique. Masson, Paris.
er (1984). de donnees. Theori e
~Iormi
Schl aepfer, F., D. Stewart, and J . A. Jordan (1975). Data bases in power systems operations and planning . Proc. Systems Engineering for Power, Status, and Prospects Conf. Henniker, New Hampshire, US A.