Informator_techniczny_Wonderware_008.pdf

(269 KB) Pobierz
INFORMATOR TECHNICZNY WONDERWARE
Informator Techniczny nr 8
09-11-1998
Wonderware IndustrialSQL Server i Microsoft SQL Server
Wspólne cechy i różnice
Czasami po wysłuchaniu informacji o przemysłowej bazie danych firmy Wonderware - programie
IndustrialSQL Server , zdarza się nam usłyszeć z ust naszych klientów pytanie: “ czym właściwie ten
IndustrialSQL Server różni się od Microsoft SQL Server’a? ”. Pytanie takie pada szczególnie ze
strony osób mniej zaangażowanych w używanie zaawansowanych narzędzi SQL. Postaramy się w takim
razie pokrótce naświetlić zasadnicze różnie i punkty wspólne obu produktów.
Microsoft SQL Server
Microsoft SQL Server jest to jeden z czołowych systemów zarządzania relacyjnymi bazami danych
( Relational Database Managment Systems - RDBMS ). Produkty takie jak MS SQL Server, IBM DB/2 ,
Oracle , Informix czy Sybase SQL Server SA to czołowe bazy danych używane szeroko w biznesie i
zapewniające następujące funkcje:
zbieranie i odzyskiwanie danych,
czuwanie nad spójnością tych danych,
prace w środowisku wielodostępnym wraz z zapewnieniem odpowiednich praw dostępu do
odpowiednich informacji,
tworzenie kopii zapasowych danych oraz ich odtwarzanie
replikowanie danych na inne komputery lub systemy
i pewnie jeszcze wiele innych...
Historia MS SQL Server’a wywodzi się z roku 1987 kiedy to firma Sybase udostępniła firmie Microsoft
prawa do używania swojego produktu o nazwie Sybase SQL Server . W ten sposób w roku 1989 stało
się możliwe powstanie produktu o nazwie DataServer pracującym pod systemem operacyjnym OS/2
(pamiętajmy, ze wtedy jeszcze firma Microsoft współpracowała z firma IBM nad rozwijaniem tego
systemu). W 1992 roku powstała ostatnia wersja serwera bazy danych Microsoft na OS/2, zaś w 1993
roku powstał SQL Server 4.2 dla Windows NT - była to tez pierwsza 32-bitowa wersja tego programu.
W roku 1995 firma Microsoft wydala SQL Server’a 6.0 i była to pierwsza autorska wersja SQL Server’a
od Microsoft, wtedy tez wprowadzono podstawowe narzędzie do zarządzania serwerami SQL - SQL
Server Enterprise Manager . Obecnie na rynku dostępna jest wersja 6.5 wprowadzona na rynek w 1996
roku, ale na przełomie listopada i grudnia 1998 roku spodziewane jest pojawienie się wersji 7.0 -
znacząco poprawionej i udoskonalonej.
MS SQL Server jest baza danych pracująca w architekturze klient-serwer , umożliwia prace wielu
użytkowników jednocześnie, jest ściśle zintegrowany z systemem operacyjnym Windows NT (m.in. konta
użytkowników bazy danych mogą być pobierane z listy użytkowników systemu operacyjnego, zapewnia
zgodność z rodzina serwerów Microsoft BackOffice , korzysta z wątków systemu NT i architektury
wieloprocesorowej). Jego język SQL jest zgodny ze standardem SQL ANSI-92 czyli ogólnie
obowiązująca specyfikacja tego języka.
Architekturę MS SQL Server’a przedstawia poniższy rysunek. Zarówno na komputerze klienta jak i na
komputerze serwera musza działać odpowiednie biblioteki sieciowej komunikacji. Klient wysyła do
serwera zapytanie SQL zaś serwer odpowiada na to wysyłając dane czyli zestaw rekordów
spełniających podane w zapytaniu warunki. Klient może porozumiewać się z serwerem wprost czyli
poprzez odpowiednie biblioteki np. TCP/IP, potoki ( named pipes ) i inne, albo za pomocą uniwersalnego
ASTOR Sp. z o.o.
Dział Oprogramowania Przemysłowego
ul. Smoleńsk 29, 31-112 Kraków
e-mail: wonderware1@astor.com.pl
http://www.astor.com.pl
tel.: 012 428-63-30
fax: 012 428-63-09
926567282.044.png 926567282.045.png 926567282.046.png 926567282.047.png 926567282.001.png 926567282.002.png 926567282.003.png 926567282.004.png
 
interfejsu ODBC 1 , który jest swego rodzaju translatorem ogólnego protokółu komunikacyjnego ODBC,
rozumianego przez wszystkie liczące się programy pod Windows, na protokół komunikacyjny SQL
Server’a.
Komputer-klient
Komputer-serwer
Aplikacja
SQL Server
ODBC
DBLib
ODS
Client NetLibrary
Server NetLibrary
SQL
Sieć
MS SQL Server został zaprojektowany przez programistów do tego aby być używany w warunkach
biurowych, gdzie wykonywane transakcje (polecenia zapisu i/lub odczytu) SA wykonywane częściej lub
rzadziej ale zawsze z pewnymi przerwami (czasami rzędu kilku sekund, czasem rzędu kilkudziesięciu
minut) - np. wypisywanie kolejnych faktur czy tez wykonywanie kolejnych analiz. Naturalne możliwości
człowieka nie pozwalają na analizowanie dużych ilości informacji w nieskończenie krótkim czasie.
Człowiek musi mięć chwile czasu aby wpisać dane do faktury, aby przeanalizować odczytane przez
siebie dane i wyciągnąć z nich jakiś wniosek - te krótkie odstępy pomiędzy pobieraniem danych w
zupełności wystarczają MS SQL Server’owi aby w warunkach biurowych wykonywać swoja “prace”
(zapisywanie i udostępnianie danych) bardzo sprawnie.
IndustrialSQL Server
W takim razie co to jest Wonderware IndustrialSQL Server?
IndustrialSQL Server jest to oprogramowanie wykorzystujące Microsoft SQL Server do spełniania
specyficznej funkcji: ciągłego pobierania dużej ilości szybkozmiennych danych z procesu
technologicznego.
IndustrialSQL Server został od początku zaprojektowany do tego zadania (a wiec np. NIE do
zastosowań w biurze, bo tam bardzo dobrze radzi sobie MS SQL Server). Oczywiście aby spełniać takie
zadanie dobrze, został wyposażony w odpowiednie i zaawansowane mechanizmy zbierania danych,
buforowania, a następnie efektywnego ich odczytywania. IndustrialSQL Server jest wiec
rozszerzeniem MS SQL Server’a - nie jest ani jego odpowiednikiem, ani zastępnikiem.
Spójrzmy na poniższy rysunek przedstawiający porównanie architektury obydwu programów. Widać, ze
IndustrialSQL Server dysponuje większa ilością modułów - jest tu m.in.:
1 Interfejs ODBC ( Open DataBase Connectivity ) jest to uniwersalny interfejs umożliwiający aplikacjom dostęp do bazy danych
za pomocą jednego protokołu ODBC. Technologia ta uniezależnia programy klienckie od formatu składowania danych
występujących w systemach zarządzania bazami danych.
2
926567282.005.png 926567282.006.png 926567282.007.png 926567282.008.png 926567282.009.png 926567282.010.png 926567282.011.png
 
moduł odpowiedzialny za pobieranie i buforowanie danych z programów komunikacyjnych
do sterowników PLC ( Storage ) - dane mogą być pobierane w dwóch trybach: cyklicznym z
minimalnym gwarantowanym czasem 1 s lub zdarzeniowym - w tym trybie gwarantowana
rozdzielczość czasowa wynosi 3 ms (wybór trybu zbierania może się być niezależny dla każdej
zbieranej zmiennej i odbywa się poprzez zaznaczenie jednego checkboxa),
moduł odpowiedzialny za kompresje i zapis buforowanych danych w strukturach
IndustrialSQL Server’a ( Data Store ),
moduł odpowiedzialny za odpowiednie odczytywanie danych (w dziedzinie czasu, w
dziedzinie częstości, z zadana rozdzielczością czasowa, z zadana strefa nieczułości ze względu
na wartość lub na czas, z zadana ilością próbek, itd.).
W końcu moduł SQL Parser/Switch analizuje zapytanie klienta i jeżeli odnosi się ono do rozszerzeń
IndustrialSQL Server’a to je przechwytuje, a jeśli nie to podaje je standardowemu MS SQL Server’owi.
Moduł IO to nic innego jak klient protokółu komunikacyjnego SuiteLink (specjalizowany protokół
komunikacyjny firmy Wonderware do przesyłania dużych ilości danych, zgodny jeśli chodzi o format
ramki danych ze specyfikacja OPC ).
MS SQL Server na pewno nie posiada w sobie zawartych programów komunikacyjnych do sterowników
PLC, zaś w przypadku IndustrialSQL Server’a, jeżeli chcemy pobierać dane z węzła na którym pracuje
InTouch i program komunikacyjny to...po prostu wskazujemy katalog aplikacji InTouch’a i to wszystko !
Nie musimy wykonywać żadnych zapytań SQL, nie musimy martwic się o uwarunkowania czasowe, ani
o dopisywanie nowych rekordów - to wszystko wykonuje za nas IndustrialSQL Server, bo w końcu do
tego został stworzony.
MS SQL Server
IndustrialSQL Server
Server NetLibrary
Server NetLibrary
ODS
ODS
SQL Parser/Switch
Retrieval
SQL Server
Data Store
SQL Server
Storage
I/O
Dlaczego jeszcze IndustrialSQL Server jest czymś więcej niż MS SQL Server?
IndustrialSQL Server zawiera ponad 1000 dodatkowych obiektów definiujących dodatkowe tablice
baz danych, widoki (predefiniowane zapytania łączące w sobie dane z kilku tablic), indeksy, procedury
zachowane ( stored procedures ), wyzwalacze ( triggers ), uprawnienia użytkowników.
Dodatkowe tablice wspomniane wyżej są tworzone i zarządzane przez IndustrialSQL Server’a i
użytkownik pakietu nie musi już ich definiować ani wypełniać na własna rękę. Na etapie konfiguracji
systemu są one wypełniane automatycznie np. w wyniku wskazania katalogu aplikacji programu
InTouch. Tablice zawierają m.in.:
dane konfigurujące zbieranie danych:
3
926567282.012.png
konfiguracje zbieranych zmiennych - jednostki inżynierskie, parametry ich zbierania,
skalowanie,
definicje topologii systemu - węzły z których są zbierane dane, nazwy programów
komunikacyjnych, tematy komunikacji,
definicje hierarchii grup zmiennych - grupy publiczne dostępne dla wszystkich klientów
(np. zmienne z maszyny A, pomiary ciśnień itd.), grupy prywatne tworzone dla
konkretnych użytkowników (np. wskaźniki wydajności linii produkcyjnej),
konfiguracje tworzonych automatycznie podsumowań i definicje zdarzeń, które maja być
automatycznie wykrywane,
dane historyczne - każdy typ zmiennych (dyskretne, analogowe, łańcuchy znakowe)
składowany jest w innej tablicy, ponadto dane historyczne mogą być odtwarzane w kilka
sposobów (np. nazwy zmiennych i ich wartości jako kolejne wiersze wyniku zapytania, albo
nazwy zmiennych jako nagłówki kolumn),
dane bieżące ,
podsumowania i zdarzenia - dla każdej zbieranej zmiennej IndustrialSQL Server może tworzyć
automatycznie podsumowania (tj. wyznaczać minimum, maksimum, średnia lub sumę) co
godzinę, zmianę, dobę i tydzień. Konfiguracja poszczególnych rodzajów podsumowań jak i
okresów czasowych odbywa się poprzez zwykle pola typu checkbox . Ponadto IndustrialSQL
Server może automatycznie wykrywać zaistnienie zdarzeń (definiowanych przez użytkownika
jako warunki logiczne) oraz może wykonywać odpowiednie akcje w przypadku ich zaistnienia
(wykonanie “zdjęcia” systemu, wywołanie odpowiedniego programu, wysłanie informacji poczta
elektroniczna lub na pager itd.).
System zbierania
i zapisu danych
w IndustrialSQL Serverze
Moduł
dyskretny
Dane
dystretne
Dane analog.
(tryb zdarzen/)
Moduł
analog.
Moduł
znakowy
Dane
znakowe
Dane analog.
(tryb cykliczny)
Aktywny obraz zmiennych
Driver komunikacyjny
Driver systemowy
Program
komunikacyjny
Program
komunikacyjny
Program
komunikacyjny
IndustrialSQL to nazwa języka poleceń SQL, rozszerzonego względem TransactSQL obecnego w MS
SQL Serverze. Język IndustrialSQL umożliwia m.in. tworzenie zapytań z zadawaniem rozdzielczości
zwracanych danych (np. zapytanie następującej treści: “należy podąć dane na temat przepływu za
ostatnia dobę z dokładnością do 1 minuty, ale tylko wtedy gdy wartość ciśnienia zmieniła się o co
najmniej 1 dm 3 /min”). Inna możliwością jest zadawanie ilości wierszy jakie maja być zwrócone w
zapytaniu (np. “należy podąć 100 pomiarów ciśnienia za ostatnia zmianę”, co spowoduje podanie 100
pomiarów oddalonych od siebie o 4 minuty i 48 sekund). Ponadto język IndustrialSQL Server umożliwia
tworzenie zapytań ciągłych tzn. takich w których tylko raz pytamy się o dane zmienne a serwer bazy
4
926567282.013.png 926567282.014.png 926567282.015.png 926567282.016.png 926567282.017.png 926567282.018.png 926567282.019.png 926567282.020.png 926567282.021.png 926567282.022.png 926567282.023.png 926567282.024.png 926567282.025.png 926567282.026.png 926567282.027.png 926567282.028.png 926567282.029.png 926567282.030.png 926567282.031.png
danych za każdym razem gdy ona się zmieni przesyła nam aktualna wartość. Poniżej pokazano
przykładowy tekst zapytania realizujący taka funkcjonalność.
EXEX ww_SetContinuous ON
SELECT DateTime, TagName, Value
FROM AnalogLive
WHERE TagName – ‘ReactLevel’
Większość wspomnianych wyżej cech jest w praktyce bardzo trudna do osiągnięcia w standardowym
MS SQL Serverze lub wręcz nieosiągalna.
Przyszłość
Wydanie Microsoft SQL Server 7.0 jest planowane na przełom listopada i grudnia 1998 roku. Co
nowego przyniesie?
Jego możliwości zostały tak rozszerzone aby mógł stanowić konkurencje pod względem wydajności i
wielkości aplikacji dla takich baz jak Oracle czy Informix. Tak wiec m.in. będzie oferował wsparcie dla
dostarczycieli danych OLE DB czy tez będzie dysponował rozszerzonymi możliwościami replikowania
danych.
Następna wersja IndustrialSQL Server’a będzie korzystała z nowych możliwości MS SQL Server’a 7.0, a
wiec będzie zgodna ze specyfikacja OLE DB oraz będzie udostępniała lepsze możliwości integracji
danych z procesów technologicznych z danymi administracyjno-ekonomicznymi. Ukazanie się
IndustrialSQL Server 7.x planowane jest w pierwszej połowie 1999 roku.
Podsumowanie
W poniższej tabeli zawarto porównanie najważniejszych cech Microsoft SQL Server’a i IndustrialSQL
Server’a.
Microsoft SQL Server
IndustrialSQL Server
Szybkość zbierania
danych
szybkość zbierania danych
uwzględniająca pracę biurową
(rzadkie transakcje)
rozdzielczość czasowa
przystosowana do warunków
biurowych
brak wbudowanej kompresji danych
szybkość zbierania danych
dostosowana do przemysłu (nawet
kilkadziesiąt tysięcy sygnałów
jednocześnie)
rozdzielczość czasowa - 3.3 ms
wbudowana kompresja danych w
locie
Łatwość
konfiguracji
i serwisu
konieczność ręcznego sterowania
zapisem danych za pomocą języka
SQL
logowanie zdarzeń należy obsłużyć
osobno pisząc kod SQL –
obciążenie komputera
ręczne definiowanie odpowiedzi na
zdarzenia – zależność od
programisty SQL
nie ma potrzeby pisania kodu SQL -
tylko konfiguracja
wbudowany mechanizm logowania
zdarzeń
możliwość definiowania odpowiedzi
na zdarzenia
Adekwatność do
zastosowań
w przemyśle
bardzo dobra baza danych dla biura
brak dedykowanych narzędzi do
łatwej analizy danych z przemysłu
bardzo dobra baza danych dla
przemysłu
dedykowani klienci dla danych
5
926567282.032.png 926567282.033.png 926567282.034.png 926567282.035.png 926567282.036.png 926567282.037.png 926567282.038.png 926567282.039.png 926567282.040.png 926567282.041.png 926567282.042.png 926567282.043.png
 
Zgłoś jeśli naruszono regulamin