Šablonování a indexování

Slides:



Advertisements
Podobné prezentace
Nový přístup k aplikacím Vema
Advertisements

Tabulky v MS ACCESS Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Jiří Novák.
Základy databázových systémů
Přednáška č. 1 Úvod, Historie zpracování dat, Základní pojmy
A5M33IZS – Informační a znalostní systémy Dotazovací jazyk SQL - I.
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
Aplikační a programové vybavení
Databáze.
 Informací se data a vztahy mezi nimi stávají vhodnou interpretací pro uživatele, která odhaluje uspořádání, vztahy, tendence a trendy  Existuje celá.
Výpočetní technika Akademický rok 2008/2009 Letní semestr Mgr. Petr Novák Katedra informatiky a geoinformatiky FŽP UJEP
Výpočetní technika Akademický rok 2006/2007 Letní semestr Mgr. Petr Novák Katedra informatiky a geoinformatiky FŽP UJEP
Architektury a techniky DS Tvorba efektivních příkazů I Přednáška č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databáze Jiří Kalousek.
Definování prostředí pro provozování aplikace dosud jsme řešili projekt v obecné rovině aplikace bude ovšem provozována v konkrétním technickém a programovém.
Microsoft Access Prezentace základních uživatelských nástrojů
A1PRG - Programování – Seminář Ing. Michal Standardní knihovní funkce pro práci se soubory 13 Verze
D ATOVÉ MODELY Ing. Jiří Šilhán. D ATABÁZOVÉ SYSTÉMY Patří vedle textových editorů a tabulkových kalkulátorů k nejrozšířenějším představitelům programového.
Školení správců II. Petr Pinkas RNDr. Vít Ochozka.
Relační databáze.
Konceptuální návrh databáze
Databázové systémy. Práce s daty Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace.
Informatika pro ekonomy II přednáška 10
Databázové systémy Přednáška č. 4 Proces návrhu databáze.
Dokumentace informačního systému
Konceptuální návrh databáze
Databázové modelování
Databáze teorie.
Univerzita třetího věku kurz Pokročilý Tabulkový procesor 3.
Databázové systémy Informatika pro ekonomy, př. 18.
Databáze velké množství dat pevně dané struktury
Datovýsklad Datový sklad V budoucích službách státního archivu.
Databázové systémy Přednáška č. 5 Datové typy a Fyzická organizace dat.
Lišta nástrojů Standard otevření, uložení a další manipulace se soubory (tj. projekty) načítání dat (mapových vrstev) „žluté plus“ změna měřítka odkaz.
MS ACCESS Databáze pro každého. Základní pojmy  Data  určitá fakta, vztahující se k objektům z reálného světa, uložená v paměti počítače  Informace.
Univerzita třetího věku kurz Znalci Databáze 1.
Databázové systémy Úvod, Základní pojmy. Úvod S rozvojem lidského poznání roste prudce množství informací. Jsou kladeny vysoké požadavky na ukládání,
Perzistence XML dat Kamil Toman
Databáze MS ACCESS 2010.
24 Používání relačních databází (základní pojmy a principy z oblasti relačních databází, struktura databáze,oblasti použití relačních databází, vkládání.
Databáze MS ACCESS 2010.
Filtrování záznamů Filtr podle výběru Filtr podle formuláře Rozšířený filtr Symboly, výrazy Dotazy.
Využití sestavy Zobrazení a typy Části sestavy Vytvoření sestavy Ovládací prvky.
Rozdíl mezi databází a tabulkou Rozdíl mezi Accessem a Excelem
Úvod do databází zkrácená verze.
Univerzitní informační systém II., Lednice 2003 Podpora stipendií ve studijní administrativě Tomáš Majer
Univerzitní informační systém VIII., Karlov 2009 Fulltextové vyhledávání v UIS Miroslav Prachař.
Univerzitní informační systém II., Lednice 2003 Zadávání a kontrola přihlášek Tomáš Klein
Univerzitní informační systém III., Lednice 2004 E-přihlášky Ing. Tomáš Majer
Import dat Access (16). Projekt: CZ.1.07/1.5.00/ OAJL - inovace výuky Příjemce: Obchodní akademie, odborná škola a praktická škola pro tělesně.
Univerzitní informační systém III., Lednice 2004 Nové aplikace portálu SIF a OSSA a telefonních seznamů Ing. Hana Netrefová
Databáze ● úložiště dat s definovaným přístupem ● typy struktury – strom, sekvence, tabulka ● sestává z uspořádaných záznamů ● databáze – struktura – záznam.
Popis prostředí Tabulky Návrhové zobrazení Datové typy Vlastnosti pole Řazení a filtrování.
Význam relací Typy relací Vytvoření relace Nastavení relace Podtypy relace Referenční integrita.
Datové typy MS Access (3). Projekt: CZ.1.07/1.5.00/ OAJL - inovace výuky Příjemce: Obchodní akademie, odborná škola a praktická škola pro tělesně.
Databáze MS ACCESS 2010.
Úvodní slovo o sekci SJS
Albertina a Report Mgr. Libuše Simandlová
Soubor Soubor v informatice označuje pojmenovanou sadu dat uloženou na nějakém datovém médiu, se kterou lze pracovat nástroji operačního systému jako.
Výpočetní technika Akademický rok 2008/2009 Letní semestr
Servisní aplikace přístupového systému
Profesionální poštovní program mutt
Fulltextové vyhledávání
Právní systém Tomáš Klein Sekce jádra systému Vývojový tým Univerzitního informačního systému Mendelova zemědělská a lesnická univerzita v Brně Výjezdní.
Studijní systém z pohledu datamanagementu
Nástroje pro manažerské řízení vývoje
Informatika pro ekonomy přednáška 8
Vytvoření formuláře Access (11).
Optimalizace SQL dotazů
Přednáška 9 Triggery.
Praktický modul - zadání
Transkript prezentace:

Šablonování a indexování Aleš Kutín Sekce datamanagemenetu Vývojový tým Univerzitního informačního systému Mendelova zemědělská a lesnická univerzita v Brně Výjezdní zasedání UIS Lednice, 23. – 26. 10. 2002

Obsah I Indexování a dohledávání implementace dohledávání v UIS metody indexování indexované tabulky aktualizace indexů – současný stav, problémy plánované změny zamyšlení nad metodami výběru v UIS Výjezdní zasedání UIS

Obsah II Šablonování základní principy typy atributů výhody šablonování stinné stránky aplikační pohled Výjezdní zasedání UIS

Indexování I zadání vzorku nalezení vyhovujících záznamů Implementace dohledávání v UIS zadání vzorku nalezení vyhovujících záznamů omezení výběru (práva, subjekty, období, ...) finální výběr (předvedení funkce dohledávání) Výjezdní zasedání UIS

Indexování II Implementace dohledávání v UIS zaměříme se na první krok – dohledání vyhovujících záznamů na DB úrovni požadavky: rychlost dohledání možnost zadávání různých vzorků (části slov, čísla) vyhledávání podřetězců přímo nad záznamy v databázi je pomalé (vyřazuje použití databázových indexů) možné klíče mohou být uloženy v různých tabulkách, šablonách rychlosti lze dosáhnout použitím pouze relačního operátoru ‘=‘ a tím využitím DB indexů Výjezdní zasedání UIS

Indexování III Databázový index a předpoklady jeho použití index – databázový objekt urychlující hledání, plní funkci obsahu knihy stromovitá struktura, fyzicky uložen na disku (jako tabulka) pro efektivní použití indexů musíme data patřičně připravit: předem zkonvertovat na výsledný vyhledávaný formát (v UISu velká písmena bez diakritiky) – jakékoli volání funkce nad prohledávaným sloupcem index vyřazuje předem uložit všechny možné kombinace klíčů, které po zadání uživatelem mají vést k nalezení indexované hodnoty (pak můžeme vyhledávat pomocí ‘=‘) z uvedených požadavků plyne nutnost vytvoření zvláštní datové struktury pro ukládání jednotlivých klíčů – indexovací tabulky každá jedna indexovaná položka musí mít vlastní index. tabulku Výjezdní zasedání UIS

Indexování IV Metody indexování metodou indexování rozumíme postup kterým ze vstupní zdrojové projekce obdržíme množinu 1 – n klíčů sloužících k dohledání jednoho řádku indexované tabulky zdrojová projekce – hodnota v jednom sloupci tabulky (RC), zřetězení více sloupců (jméno a příjmení), výstup DB funkce metody indexování v současnosti podporované v UIS indexování celých údajů plné podřetězcové indexování indexování podřetězců od začátku slova indexování slov (příklady různých metod přímo v DB) Výjezdní zasedání UIS

Indexování V Indexované tabulky v současnosti je indexováno celkem 8 tabulek: uživatelé uchazeči předměty pracoviště obce části obce střední školy obory na SŠ Výjezdní zasedání UIS

Indexování VI Aktualizace indexů při vkládání nových záznamů a změně stávajících je nutné přebudovat dotyčné klíče v indexovací tabulce, aby byla funkce dohledávání stále aktuální v současné implementaci se indexy aktualizují nepřímo: při změně / vložení je generován pouze záznam o změně (pomocí DB triggeru) samotné oindexování je zajišťováno externím skriptem spouštěným v určitých časových intervalech (5 minut) výhoda – generace klíčů probíhá mimo databázi – nezpomaluje ji nevýhoda – změny se projevují až po určitém časovém úseku – zvláště palčivé při nutnosti opětovného dohledání právě zadaného záznamu Výjezdní zasedání UIS

Indexování VII Plánované změny současné řešení se ukázalo dlouhodobě nevhodným – stížnosti uživatelů probíhá přesun celého procesu indexování na databázovou úroveň – tj. přímo do triggerů spouštěných DML operacemi nové řešení bude mít okamžitý účinek zpomalení bude při přidávání / změně jen jednoho nebo „mála“ řádků (typická operace přes aplikační rozhraní) zanedbatelné postup přechodu přepsání indexovacích metod z Perlu do PL/SQL nahrazení skriptu doindexuj procedurou v PKG_INDEX koncový uživatel nezaregistruje změny Výjezdní zasedání UIS

Indexování VIII Alternativy k dohledávání kromě dohledávání lze výběr řešit: rozbalovací seznamy zaškrtávací pole výhoda alternativních způsobů – nemusí se odesílat nový HTTP požadavek (znovunačtení stránky) – rychlejší zvláště při silném provozu nevýhodou je použitelnost pouze do určitého počtu záznamů (řádově stovky) – pak již nepřehledné, zpomalují načítání stránky v některých případech je volba způsobu výběru sporná zvláště u hromadných zadávání bude třeba vyvinout sofistikovanější pomůcky (kombinace obou způsobů), např. výběr s historií závislé popupy Výjezdní zasedání UIS

Šablony I Základní principy šablonování šablonovaná tabulka – běžná databázová tabulka „číselníkového“ (tj. s jednosložkovým primárním klíčem) se kterou je asociována alespoň jedna šablona šablona – v širším pohledu dvojice tabulek – šablonové a atributové, mechanismus pomocí nějž jsou některé sloupce jednoho záznamu kořenové tabulky převáděny na řádky v tabulce atributové šablonová tabulka – definice sloupců – atributů atributová tabulka – vlastní úložiště dat mutování – rozšíření celé struktury o další rozměr typy mutování přes mutační tabulku (jazyky, ukončení předmětu) obecné Výjezdní zasedání UIS

Šablony II Typy atributů fyzicky je hodnota uložena v atributové tabulce vždy jako textové pole pro odlišení na aplikační úrovni (kontroly, zobrazení) vypracován systém typů atributů: obecné (řetězec, číslo, logická hodnota) odkazy do číselníků speciální (s dodatečnou kontrolou, formátováním – telefonní číslo) LARGE – dlouhé texty, binární data (fotka) kromě typu obsahuje definice každého atributu údaje povinný – aplikační kontrola vyplnění vícenásobný – možnost zadání více než jedné hodnoty práva pro čtení a zápis subjekt atributu Výjezdní zasedání UIS

Šablony III Výhody použití šablon obrovská flexibilita – přidání (i dočasné) atributu do šablony vyžaduje pouze přidání jednoho řádku do šablonové tabulky výhodnější z hlediska fyzického ukládání (nevznikají mnohasloupcové tabulky s většinou položek NULL) možnost uchovávání informace o poslední změně pro každý atribut zvlášť definice práv ke každému atributu možnost vícenásobných atributů třídění atributů podle skupin do různých šablon možnost odděleného skladování BLOB/CLOB sloupců trojrozměrnost při mutování Výjezdní zasedání UIS

Šablony IV Stinné stránky náročné zobrazování, relační operace nad atributy obtížné zajištění referenční integrity – nemožnost použití constraintů, nutná vlastní implementace => zpomalení nemožnost použití UNIQUE omezení hodnoty ukládány jako text – implicitní konverze u čísel znemožňuje použití indexů některé sloupce jsou zbytečně v základních tabulkách (typicky datumy, řetězce), jiné by bylo naopak vhodné přesunout ze šablon do tabulek (číselné hodnoty – cizí klíče, které jsou NOT NULL u většiny řádků a přes které se v SELECTech často připojují další tabulky) Výjezdní zasedání UIS

Šablony V Aplikační pohled jestliže z hlediska datového vyznívá použití šablon jednoznačně kladně, z aplikačního hlediska má současná implementace určité mezery šablony v UISu – ideou byla maximální univerzálnost – „řízeno daty“ – bez zásahu programátora automatické přidávání atributů, omezování při nedostatku práv důsledkem této univerzálnosti je někdy málo user-friendly chování aplikací řešení – Šablony a formuláře II. ??? Výjezdní zasedání UIS

Dotazy ? Výjezdní zasedání UIS