FÖ 2: Databaskursen 1. Kvalitetsbegreppet 2. Kommunikation 3. Olika typer av data 4. Olika typer av datalagring 5. Databas 6. DBMS 7. Molntjänster 8. Tabeller 9. ANSI-SPARC 10. SQL 11. Oracle Arkitektur 1 Pär Douhan, pdo@du.se
Kvalitet? t? Datakvalitet? Informationskvalitet? 2
Kvalitetsbegreppet t t - definitioner iti 1. Ordböcker och lexikon: God beskaffenhet eller goda egenskaper (Swan, 1987) 2. En definition: Uppfyllandet av satta krav (Crosby, 1979) 3. En annan definition: Alla sammantagna egenskaper hos ett objekt eller företeelse som ger dess förmåga att tillfredsställa uttalade eller underförstådda behov" (ISO9000 SS020104) Termen kvalitet används, enligt Bo Sundgren, på två olika sätt: 1. På ett neutralt sätt i det neutrala läget har kvalitet ungefär samma betydelse som egenskap. Man kan alltså förse viss data med ett antal egenskaper som kan ses som kvalitetsbeskrivningar för datat. 2. På ett normativt sätt i det normativa läget är det meningsfullt att prata om god kvalitet, bättre kvalitet, sämre kvalitet och dålig kvalitet. God kvalitet är relaterad till användaren och användningen. Det som i en situation kan vara bra kvalitet, kan i en annan situation vara oacceptabelt dålig kvalitet. 3
Tjänstekvalitet t -egenskaper Egenskaper som, enlig Bergman och Klefsjö, karaktäriserar tjänstekvalitet: 1. Omgivning miljön som tjänsten presenteras i 2. Pålitlighet hur tillförlitligt tjänsten utförs av leverantören 3. Tillgänglighet Hur lätt det är för kunden att få kontakt med leverantören 4. Tjänstvillighet Viljan hos leverantören att hjälpa kunden 5. Artighet leverantörens uppförande i form av artighet och vänlighet 6. Kommunikationsförmåga förmåga att tala med kunden på ett sätt som kunden förstår Testa själv att utvärdera t. ex. köp och installation av ett kök, eller en totalrenovering av tvättstugan med hjälp av ovanstående kvalitetskriterier! 4
Produktkvalitet t -egenskaper Egenskaper som, enlig Bergman och Klefsjö, karaktäriserar produktkvalitet: 1. Prestanda hur produkten tillfredsställer kundens förväntningar på prestanda 2. Driftsäkerhet hur ofta det blir fel på produkten och hur alvarliga felen är 3. Underhållsmässighet hur lätt det är att underhålla och reparera produkten 4. Säkerhet hur säker produkten är att använda Citat av okänd 90-åring: Om jag jgändå vetat att livet består av 90% underhåll 5
Användbarhet -egenskaper Egenskaper som, enligt Stefan Cronholm, karaktäriserar användbarhet: (Användbarhet är ett centralt forskningstema inom MDI-området) 1. Relevans hur väl IS tillgodoser användarens behov 2. Effektivitet it t hur effektivt t eller produktivt t arbetsuppgifterna kan utföras 3. Användarens attityd användarens subjektiva känslor mot systemet 4. Lärbarhet hur lätt systemet är att lära sig 5. Flexibilitet hur IS klarar anpassningar till verksamhetsförändringar 6. Funktionalitet hur väl stödjer IS de arbetsuppgifter som användaren utför 7. Samtidighet olika användare ska kunna använda IS samtidigt 8. Lättanvänt hur lätt IS är att lära sig och hur nöjd användaren är med IS Analysera Fronter utifrån ovanstående kriterier 6
Kvalitetsegenskaper t NVDB Innehållsorienterad metadata Indirekt metadata 7
Kommunikation Direkt kommunikation: Hans frågar Pär med ett lismande tonfall: Får jag låna en femhundring? 1. Pär varseblir meddelandet med sina sinnen 2. Tolkar meddelandet 3. Redogör med sin Frame of Reference 4. Svarar: Ja Kommunikation via IT-system: Hans skriver ett meddelande: Får jag låna en femhundring? ITsystem Får jag låna en femhundring? 8
Kommunikationskvalitet k t Generiska kriterier för kommunikationskvalitet enligt Owen Eriksson: 1. Informationen ska gå att förstå samt vara relevant för användaren 2. Relevant och begriplig handlingsaspekt - Den illukutionära beståndsdelen (verbet) i handlingen måste vara begriplig. Är det ett erbjudande? En order? En bekräftelse? Ett önskemål? Ett avtal? En fråga? 3. Trovärdig information Användaren måste kunna lita på att informationen är trovärdig 9
Trovärdig information i NVDB Hög trovärdighet Låg trovärdighet Ofta är det bristen på rutiner som gör att användare börjar tro att informationen inte är trovärdig. Om detta väl inträffar spelar det ingen roll om datakvaliteten är hög eller inte, det räcker med att man tror att den är dålig. Man kan öka trovärdigheten genom att lagra information om vem som har uppdaterat viss information och när det gjordes. (Gustavsson och Sörman, 2004) 10
Datakvalitet t - informationskvalitet t Data Information Låg datakvalitet medför låg informationskvalitet. Data Information Hög datakvalitet kan medföra låg informationskvalitet. Otillräckligt med metadata, låg trovärdighet, otillräcklig frame of reference etc. hos användaren. Data Information Hög datakvalitet kan medföra hög informationskvalitet. Tillräckligt med metadata, hög trovärdighet, tillräcklig frame of reference etc. hos användaren. 11
Konsekvenser Information låg informationskvalitet Beslut fattas med hjälp av information. Om informationen (beslutsunderlaget) är otillräckligt föreligger stor risk för dåliga beslut. Några exempel på konsekvenser kan vara: 1. Avgrävning av kablar. Om det är otillräcklig lägesnoggrannhet på geografiska koordinater 2. I krigssituationer kan flyktingförläggningar och sjukhus bombas istället för militära mål, om lägesnoggrannheten är för låg eller om den är felaktig 3. Patienter kan felbehandlas i vården 4. Oskyldiga människor kan dömas för brott 12
Olika typer av data 13
Olika typer av datalagring 14
Informationsbehov Alla företag eller organisationer i har ett informationsbehov 15
Datalagring På 60-talet dominerades datalagringen av s.k. enkla filsystem. Fortran kundfiler Cobol personalfiler Varje program bearbetade sina egna datafiler. Hög nivå av beroende mellan program och datafiler. 16
Databas En databas är en organiserad samling information. Data Dictionary En databas innehåller alltid en beskrivning av lagrad information. Denna brukar kallas för Data Dictionary. Ibland även för metadatabasen. Det skall vara enkelt att läsa och manipulera information i databasen. 17
DBMS DBMS = Database Management System DBMS är ett system som lagrar, modifierar och hämtar data i databasen. Olika termer används: ORDBMS, RDBMS och DBMS. 18
Olika typer av databaser Relationsdatabaser, t kom på 1970-talet. tlt Lagrar masterdata, t transaktionsdata och analytisk data. Det är detta kursen handlar om. NoSQL databaser, kom en bit in på 2000-talet. Lagrar Big Data, data från bl. a. sociala medier, från sensorer, från webbloggar etc. 19
Olika leverantörer Det finns olika leverantörer av databaser. Exempel på några vanligt förekommande databaser: 20
Olika molntjänster t Data as a service (DaaS) http://www.gapminder.org gapminderorg Hans Rosling Database as a service (Cloud Database) 21
Edgar "Ted" Codd Edgar Frank "Ted" Codd (19 Augusti 1923-18 April 2003) var en engelsk datavetare som, när han arbetade för IBM, 1965 uppfann relationsmodellen för databashantering, den teoretiska grunden för relationsdatabaser. Data organiseras i tabeller på de logiska nivåerna. Hög nivå av program/data oberoende. Klientprogram behöver inte veta hur data fysiskt är lagrat i databasen. 22 Detta realiseras av en tre lager(schema)- arkitektur enligt ANSI/SPARC, med två logiska och en fysisk nivå.
Tabeller En relationsdatabas är samling av relationer eller tvådimensionella tabeller. En relationsdatabas t använder dessa tvådimensionella tabeller för att lagra data. 23
ANSI-SPARC SPARC Arkitekturen kt Vy 1 Vy 2 Vy 3 Del av helheten Extern nivå Alla objekt i databasen med metadata om dessa Hur dessa objekt fysiskt är lagrade i databasen Hela logiska vyn av databasen Fil -och postbeskrivningar Logiskt dataoberoende Konceptuell nivå Fysiskt dataoberoende Fysisk nivå OS Data (111000111001) 24
Gemensamt för alla databaser Alla databaser består av: 1. Memory (minne) 2. Processes (processer) 3. Storage (lagring, filer på disk) 25
SQL SQL, Structured Query Language DB DBMS SQL Resultat Databas: Består av olika filer; datafiler, kontrollfiler och redo loggfiler lagrade på disk. DBMS: Mjukvara, t. ex. Oracle eller MySQL, som via SQL tillhandahåller åtkomst till filerna i databasen. Består av olika minnesareor och bakgrundsprocesser. I Oracle's arkitektur kallas DBMS för Oracle Instance. 26
Oracle Oracle Server klient Oracle Instance SGA User process unik session SQL Resultat Shared pool Library cache Dictionary cache database buffer cache Redo log buffer DBMS Server process PMON SMON DBWR LGWR CKPT Bakgrundsprocesser (Tasks) Datafiler Kontrollfiler redo logg 1a redo logg 1b DB 27 Datafiler Kontrollfiler
Olika roller DBA, Databasadministratör, ansvarar för säkerhet, drift och underhåll av databasen. Developers, elopers de som utvecklar applikationer End users, de som använder databasens tjänster 28
SQL, fem olika delar SQL-språket består av fem olika delar: 1. Data Retrivial Language select 2. DML, Data Manipulation Language insert, update och delete 3. DDL, Data Definition Language create, alter och drop 4. DCL, Data Control Language grant och revoke 5. TCL, Transaction Control Language commit och rollback 29