5. diel - Dátové formáty XML a SQL
V predchádzajúcej lekcii, Štruktúrované a neštruktúrované údaje , sme sa zoznámili s rozdielmi medzi štruktúrovanými a neštruktúrovanými dátami a možnosťami ich kombinácie.
V dnešnom tutoriále dátovej analýzy budeme pokračovať popisom najčastejších formátov súborov pre dátovú analýzu.
XML
XML (Extensible Markup Language - rozšíriteľný
značkovací jazyk) je textový formát pre uchovávanie a prenos
štruktúrovaných dát. Používa takzvané tagy, čo
sú textové značky ohraničené špicatými zátvorkami < a
>. Každý tag má svoj význam a obvykle tvorí dvojicu –
napríklad <title> a </title> – medzi
ktoré sa zapisuje konkrétna hodnota. Vďaka tomu môžeme presne popísať
význam každej časti dát. XML sa často používa v podnikových systémoch,
dátových prenosoch a pri výmene dokumentov medzi rôznymi aplikáciami.
XML súbory bývajú väčšie ako napríklad JSON a ich spracovanie môže byť pomalšie. Preto sa XML nehodí pre prácu s obrovským množstvom dát, kde je rýchlosť a efektivita kľúčová.
Štruktúra XML
XML má podobu stromovej štruktúry. Táto hierarchia umožňuje logicky a prehľadne usporiadať aj veľmi zložité dátové celky. Opäť si ukážme príklad s uložením dvoch osôb, tentoraz do XML:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <osoby> <osoba> <jmeno>Jan</jmeno> <prijmeni>Novák</prijmeni> <ulice>Příkrá 3</ulice> <mesto hlavni="ne">Vlašim</mesto> <psc>25801</psc> </osoba> <osoba> <jmeno>Jana</jmeno> <prijmeni>Příhodová</prijmeni> <ulice>U Hrušní 15</ulice> <mesto hlavni="ne">Benešov</mesto> <psc>25601</psc> </osoba> </osoby>
Vidíme, že XML je najčitateľnejší, ale aj najukecanejší. Prvý riadok
zvyčajne definuje verziu a kódovanie súboru. Ďalej nasleduje jediný
koreňový element. Element je obvykle definovaný otváracou a
zatváracou značkou, ktoré píšeme pomocou špicatých zátvoriek, napr.
<znacka> a </znacka>, kde značka
začínajúca lomítkom je zatváracia. Vnútri týchto značiek sa nachádza
obsah elementu, čo sú buď ďalšie zanorené elementy alebo
text. Dáta môžeme písať aj do atribútov elementu, vyššie má mesto
atribút hlavni.
Keď má element len málo dát, je možné ich všetky zapísať len do jeho atribútov. Element nemusí mať potom žiadny obsah. Takýto element sa môžeme rozhodnúť definovať ako nepárový a nemá potom zatváraciu značku. Jeho značka potom musí končiť lomítkom:
<web url="www.itnetwork.cz" />
Ukážka XML súboru
Opäť si vyskúšame otvoriť nejaký vzorový dataset, tentoraz z výukovej dokumentácie Microsoftu. Vzhľadom na to, že sa opäť jedná o rozsiahlejší súbor, ukážeme si len jeho časť. Súbor si najskôr skopírujeme:

Vysvetlíme si, čo jednotlivé značky znamenajú:
<catalog>– koreňový element celého dokumentu, obsahuje všetky knihy.<book>– záznam jednej knihy, má atribút id (napr. id="bk101").<author>– autor knihy.<title>– názov knihy.<genre>– žáner knihy.<price>– cena v dolároch.<publish_date>– dátum vydania.<description>– stručný opis obsahu knihy.

V priečinku vytvoríme nový súbor:

Súbor nazveme books.xml:

A skopírované dáta do neho vložíme:

Vloženie a úprava dát v súbore books.xml vo Visual Studio
Code nám umožňuje prehľadne pracovať s celou štruktúrou dokumentu, ľahko
odhaliť chyby a mať kontrolu nad každým prvkom. Opäť vidíme, že je obsah
prehľadne zafarbený.
XML entity
Keďže XML používa k svojej syntaxi znaky
<, >, &, nemôžeme ich len tak zapísať do dát
elementov. Je potrebné ich nahradiť za tzv. entity (napr. <
zapíšeme v dátach ako < alebo ako
<). Inak môže dôjsť k chybnej interpretácii
štruktúry XML.
Keby mala v našom ukážkovom XML osoba napr. miesto mena prezývku
Joker ]:>, museli by sme pravú špicatú zátvorku zapísať
takto:
<jmeno>Joker ]:></jmeno>
Entitami je možné okrem špeciálnych znakov používaných v XML syntaxi zapísať aj ďalšie znaky, ktoré sa inak zle píšu, napr. copyright ©. Ukážme si základné entity, ktoré v XML dátach použijeme, keď chceme zapísať špeciálny znak:
| Znak | Popis | Zástupné entity |
|---|---|---|
| nedeliteľná medzera | ||
| < | menšie ako | < < |
| > | väčšia ako | > > |
| & | ampersand | & & |
| " | dvojitá úvodzovka | " " |
| ' | jednoduchá úvodzovka | ' ' |
| ¢ | cent | ¢ ¢ |
| £ | libra | £ £ |
| ¥ | len | ¥ ¥ |
| € | euro | € € |
| © | copyright | © © |
| ® | registrovaná známka | ® ® |
| ™ | trademark | ™ ™ |
SQL
Štruktúrovaný dotazovací jazyk SQL (Structured Query
Language) sa používa na prácu s dátami uloženými v
databázach – umožňuje vyberať, upravovať aj
ukladať dáta pomocou presne definovaných dotazov. Tabuľky v
databáze majú stĺpce a riadky, ako napr. tabuľky v Exceli. S týmto formátom sa v kurze zoznámime
neskôr, keď budeme pracovať s databázami. Zatiaľ si ukážme len, ako
takýto dátový súbor vyzerá. Ide o sériu príkazov INSERT,
ktoré do databázy vložia jednotlivé riadky. Pre naše osoby by vyzeral SQL
súbor nasledovne:
INSERT INTO osoby (jmeno, prijmeni, ulice, mesto, psc) VALUES ('Jan', 'Novák', 'Příkrá 3', 'Vlašim', 25801), ('Jana', 'Příhodová', 'U Hrušní 15','Benešov', 25601);
Nad príkazmi môže byť ešte kód pre vytvorenie databázovej tabuľky a ďalšie nastavenia, môže vyzerať napr. takto:
CREATE TABLE IF NOT EXISTS osoby ( id SERIAL PRIMARY KEY, jmeno VARCHAR(50) NOT NULL, prijmeni VARCHAR(50) NOT NULL, ulice VARCHAR(100) NOT NULL, mesto VARCHAR(50) NOT NULL, psc INTEGER NOT NULL );
VARCHAR a INTEGER sú dátové typy, jedná sa o
text (v zátvorke sa definuje maximálna dĺžka) a celé číslo.
V ďalšej lekcii, Dáta Lifecycle a metódy zberu dát , sa zoznámime s procesom, ktorým prechádzajú dáta pri dátovej analýze, a priblížime si metódu zberu dát.
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkamiStiahnuté 130x (4.44 kB)
