GIS - Föreläsningar 2 Flashcards
Varför ska man ha databaser och DBMS i GIS?
Stora komplexa datamängder.
GIS används ofta i organisationer med många användare.
Krävs en struktur för all data
Förenklar åtkomst och underhåll
Möjliggör snabb/effektiv sökning och analys
Säkerhet
Access-regler
Lagring och arkivering
Vad är en databas?
Strukturerad samlingsdata; åtkomlig på enhetligt sätt
Olika typer; hierarkiska, nätverksobjektsorienterade, relationsdatabaser, objektsrelationella
Vad finns det för problem med databaser?
Tekniken förändras snabbt
Data är långlivat
Datauppbyggnad är en stor investering
Måste klara integrering/överföring av data
Måste ha en konceptuell modell
Vilka egenskaper har en databas?
Strikt struktur
Säkerhet
Effektiva sökningar
Effektiv lagring
Accesshantering
Hybrida system
Separata koordinatfiler + relationsdatabas. Geometriska data i filsystemen och attributdata i en relationsdatabas. Det finns ingen formell standard, några informella.
Integrerade system
Koordinater & attribut & metoder i tabeller. Dvs, objektsrelationella DB
Relationsdatabaser
Data organiseras i tabeller. Tabellerna kan länkas ihop för att uppnå en bra struktur. Det finns regler och restriktioner vid design av databasen.
Består av tabeller. En relation har attribut (kolumner i tabellen). En relation består av en mängd tupler (rader i tabellen).
Regler för relationsdatabaser
Undvik redundans, dvs samma information ska bara lagras en gång. Varje rad måste vara unik.
Bara enskilda värden får lagras i en cell
Undvik funktionella beroenden
Vad är en databashanterare?
Ett program som hanterar databaser och lagrar data på ett effektivt sätt. Låter användaren specificera strukturen för databasen. Låter användare ställa frågor till databasen och hanterar ev. samtidig åtkomst till databasen.
Transaktionskontroll - ACID
Atomicity - Databashanteraren garanterar att antingen ingen eller hela transaktionen utförs.
Consistency - Databasen är korrekt både före och efter transaktionen
Isolation - Ingen transaktion utanför den aktuella, kan se intermediär status i databasen
Durability - När transaktionen slutförs korrekt går den inte att återkalla
Olika sökningar i data
Linjärsökning - Går igenom hela listan från början tills sökt element hittas
Binärsökning - Kräver sorterad lista, t.ex. alfabetisk ordning. Börjar i mitten och kollar om sökt element är > eller < och söker sedan i rätt halva.
Index
Syftet med index är att tillåta binärsökning på flera kolumner i en relationsdatabas.
Innebär att en extra datastruktur måste lagras samt extra arbete vid skapande/editering av data
Är egentligen redundant data. men ökar sökhastigheten.
Objektsrelationella databaser
Mix av relationsdatabas och objektsorienterad databas.
Stödjer utveckling av mer komplexa datatyper, abstrakta datatyper (ex geometrier)
Vad är objektsrelationell lagringsstruktur?
Koordinater, attribut och topologi i tabeller
Tabeller för många vektorskikt lagras tillsammans i samma databassystem, DBMS
Topologiska egenskaper i separata tabeller som kan hantera topologiska relationer inom och mellan vektorskikt
Operationer (metoder) som är gemensamma för klasser av liknande objektstyper (punkter, linjer, polygoner) kan lagras/hanteras
Vad finns det för problem med att lagra geometriska data i en relationsdatabas?
Relationsdatabsen är främst gjort för att lagra text och siffror. Den är inte bra på att lagra komplicerad data som geometrisk data.
Det finns ingen enhetlig standard för hur dessa ska lagras.
Vidare stöjder inte standard SQL geometriska och topologiska frågor.