Návody >Export do SQL databáze

Export do SQL databáze

Export do SQL databáze

ProCop od verze 3.4 disponuje možností automatického exportu dat do SQL databází, XLS, XLSX, CSV a jiných formátů, dostupných přes ODBC ovladače Windows. Pro tyto exporty je v monitorovacím systému služba ProSQL, která v naplánovaných časech spouští definované skripty, které vytvářejí, doplňují, nebo modifikují databázi, nebo soubory. Tento návod popisuje definici exportu dat Microsoft SQL databáze.

Požadavky před realizací

Předpokládejme fungující, běžící monitorovací systém ProCop verze 3.4 a vyšší, který sbírá data z regulátorů, či měřičů spotřeb po libovolných komunikačních cestách. Tato data, nebo některá z nich je potřeba exportovat do SQL databáze, například pro nadřízené systémy jako jsou vyhodnocovací, fakturační či firemní informační systémy. Tyto systémy obvykle pracují nad SQL databází, do které bude potřebné v definovaném formátu dodávat data z monitorovacího systému. Může být také vytvořena specializovaná SQL databáze, která bude sloužit pouze pro výměnu dat mezi monitorovacím systémem ProCop a informačním systémem.

Co je potřeba před realizací exportu:

Funkční SQL databáze
Název SQL databáze, případně instance
IP adresa, nebo doménové jméno počítače, na kterém SQL databáze běží
Uživatelské jméno a heslo pro čtení i zápis do SQL databáze
Monitorovací systém ProCop v. 3.4 a vyšší, sbírající data z technologie
Funkční síťové spojení mezi oběma počítači, běží-li SQL databáze na jiném počítači
Struktura, definice tabulek a formát dat, v jaké podobě mají být data ukládána

Instalace Microsoft SQL Server 2008 R2

Instalaci databázového serveru, pokud nepoužíváme existující provedeme podle dokumentace výrobce. V případě použití Microsoft SQL Server 2008 R2 Express Edition je instalace velmi snadná. Stačí stáhnout (v současnosti ze stránek www.microsoft.com/sqlserver/) příslušný softwarový balík a nainstalovat do Windows Server 2008 R2, případně Windows 7 Professional. Podle současných licenčních podmínek je možné využívat databázový server ve verzi Express do 10GB dat zcela zdarma.

Exclam Důležité upozornění!

Licence SQL databází nejsou součástí monitorovacího systému ProCop a řídí se licenčními podmínkami a pravidly konkrétního výrobce.

 

Uveďme krátký přehled a stručné vysvětlení dále používaného názvosloví, které se při instalaci SQL serveru a při realizaci projektu ProSQL využívá:

SQL server (SW) - softwarový balík, který umožňuje zpracovávat a uchovávat data, přístupný přes SQL (Structured Query Language = strukturovaný dotazovací jazyk), někdy se také hovoří o SQL databázi
SQL server (HW) - počítač, na kterém je provozována SQL databáze
Instance (SQL serveru) - na jednom počítači může být nainstalováno více SQL serverů, tedy více  instancí tohoto softwaru, rozlišují se jménem instance
Databáze - v SQL serveru může být více databází, nezávislých úložišť dat, každá s vlastní strukturou a oprávněními
Tabulka - databáze se mimo jiné skládá z tabulek, které mají definovány sloupce a v řádcích se pak ukládají data
Sloupec - vertikální část tabulky, definovaná jménem a datovým typem (případně dalšími parametry), jméno sloupce musí být v rámci tabulky unikátní, nikoliv v rámci databáze; v řádcích se pak v daném sloupci ukládají data definovaného jména a typu
Řádek - horizontální část tabuky, kde jsou ukládána data všech, nebo některých sloupců
Buňka - průnik řádku a sloupce tabulky, hodnota dat daného řádku sloupce
Index - podpůrný mechanismus pro rychlé třídění a vyhledávání v tabulce, obvykle pro daný sloupec
Primární index - index sloupce, kde všechna data musí být vyplněna a musí být unikátní (např. pořadové číslo)
Složený index - index, který je vytvořen nad více sloupci
Struktura databáze - definice struktur všech tabulek, jejich jmen a struktur v dané databázi
Struktura tabulky - definice všech sloupců tabulky, jejich jmen, datových typů a dalších parametrů, indexů a vazeb a omezení
Struktura dat - definice obsahu řádků, jejich identifikace

prod_tip_sm Tip!

Pro správu Microsoft SQL databází je dodáván produkt SQL Server Management Studio, což je velice silný nástroj pro veškerou správu databází a to i vzdáleně.

Struktura databáze

Ve stručnosti uveďme, že se jedná o definici tabulek, jejich sloupců, indexů, formátů dat, časů a period ukládání ve kterém mají být data z monitorovacího systému ProCop exportována. Samotnou strukturu tabulek bude nutné nadefinovat v monitorovacím systému ProCop, který ji sám vytvoří v SQL databázi po spuštění exportních úloh. Je potřeba zvážit, zda je vhodné data ukládat do jedné, či více tabulek, zda mají být data v SQL přepisována, nebo přidávána, také množství dat, které bude zpracováváno a tedy i zatížení monitorovacího systému, SQL databáze a její velikost v dlouhodobém měřítku.

Jaká data je potřeba exportovat do SQL databáze:

Veškerá nasbíraná data (pozor na obrovský objem dat)
Jen některá data jako:
oTeploty a tlaky systémů
oProvozní hodiny zařízení
oHlavní hodnoty měřičů spotřeb

 

V jakém formátu mají být data do SQL zapisována a jak často:

Jedna, nebo více tabulek, například pro každý modul zvlášť
Struktura tabulek
oNázvy a SQL typy sloupců
oPrimární indexy
oObsah sloupců vkládaných exportem, unikátnost identifíkátorů a primárního indexu
Perioda zápisu dat do SQL, přepisování dat v součinnosti s primárními indexy

Note Poznámka:

Návrh struktury SQL databáze bývá primárním problémem při zprovozňování výměny dat mezi různými informačními systémy. Na návrhu by se měly účastnit společně všechny dotčené strany, které budou data zpracovávat. Při nevhodném návrhu databáze může v dlouhodobém měřítku docházet k velké zátěži SQL databáze, k pomalému přístupu k datům a může být nasbírán obrovský objem špatně zpracovatelných dat.