Mit dem aktuellen 2011-er Release der Infrastruktur Lösungen von Autodesk stehen dem Anwender für die Visualisierung, Bearbeitung und Verwaltung von Geodatenbeständen zusätzliche Open Source Datenformate zur Verfügung: So werden nebst der weit verbreiteten Open Source Datenbank MySQL nun auch die im GIS-Bereich beliebte PostGIS Datenbank unterstützt als auch das SQLite Datenbankformat.
Die auf PostgreSQL aufbauende Datenbank PostGIS haben wir in diesem Blog im Zusammenhang eines Whitepapers bereits vorgestellt (White Paper zur Verwendung von PostGIS Datenbanken). Die Neuerung im aktuellen Release besteht darin, dass der FDO Provider für PostGIS nun offiziell von Autodesk gewartet wird und deshalb direkt mit den Produkten ausgeliefert wird. Eine separate Installation ist daher nicht mehr nötig. Damit einher gingen auch zahlreiche Qualitätsverbesserungen, so dass dem Einsatz im operativen Betrieb nun nichts mehr im Wege stehen dürfte.
In diesem Artikel möchten wir das Augenmerk jedoch nicht auf PostGIS richten sondern vielmehr auf das relativ neue SQLite Datenbankformat, das den meisten Lesern bisweilen wohl weniger geläufig sein dürfte. Erfahren Sie in diesem Beitrag, welche Eigenschaften das Format aufweist, wo es heute eingesetzt wird, inwiefern sich der Einsatz in Ihren Projekten lohnen könnte und welche Zukunftsaussichten dem Format beschieden sind.
Eingeschaften von SQLite
Für den Anwender sind 3 Aspekte von zentraler Bedeutung:
- Die gesamte SQLite Datenbank befindet sich in einer einzigen Datei!
- Für die Anzeige und Bearbeitung von SQLite Daten muss keine Server Software installiert werden! Eine Client/Server Architektur wie bei herkömmlichen relationalen Datenbankmanagementsystemen gibt es hier also nicht.
- Null Konfiguration: Aufgrund der beiden vorangehenden Punkte entfällt jegliche Konfiguration.
Bei SQLite handelt es sich demnach um eine Datei basierende Datenbank, deren Grundgerüst nur wenige hundert KB gross ist. Auf den Nenner gebracht kann SQLite mit den Prädikaten “schlank, schnell, zuverlässig” charakterisiert werden.
Was kann SQLite nicht?
Selbstverständlich gibt es bei SQLite auch einige Einschränkungen. Insbesondere ist es nicht möglich, in der Datenbank Benutzer und Zugriffsberechtigungen zu verwalten. Für Datenbankdateien gelten die Zugriffsberechtigungen des Dateisystems. Zudem können Schreiboperationen in derselben Datenbankdatei nur nacheinander ausgeführt werden. Ein echter Mehrbenutzerbetrieb, bei dem mehrere Benutzer gleichzeitig einen Datensatz (sprich: Datenbankdatei) bearbeiten, ist dadurch nicht oder nur sehr eingeschränkt möglich.Wer entwickelt SQLite?
Pflege und Weiterentwicklung von SQLite wird durch das SQLite Consortium gewährleistet, dem u.a. Firmen wie Adobe, Bloomberg, Mozilla und Symbian angehören.
Wo wird SQLite eingesetzt?
SQLite wird heute weltweit eingesetzt. Nach Aussagen des Projektportals ist die Datenbank sogar die am weitest verbreitete SQL Datenbank Engine weltweit! Ein Blick auf Anwendungen, die SQLite einsetzen, bestärken diese Einschätzung:
- Der Internet Browser Mozilla Firefox setzt SQLite beispielsweise für die Lesezeichen Verwaltung ein
- Ebenso setzt der Internet Browser Apple Safari, sowohl in der Desktop- als auch in der iPhone-Variante diese Datenbank ein.
- Nebst dem E-Mail Programm Mail von Apple verwendet auch das Betriebssystem Mac OS X von Apple SQLite Dateien zur Verwaltung von Cache Dateien.
- SQLite kommt auch in der RIA Anwendung Adobe AIR als Datenbankanwendung zum Einsatz.
- Ferner kommt SQLite auch in Symbian Smartphones zum Einsatz
- Schliesslich verwendet AutoCAD Map 3D ab der Version 2011 ebenfalls das SQLite Format für die Verwaltung des Cache Speichers.
Verwaltungswerkzeuge
Als sogenannte “embedded” Datenbank entfällt grundsätzlich jegliche Konfiguration. Dennoch kann es von Vorteil sein, den Inhalt der Datenbank zu Unterhalts- und Kontrollzwecken anzuzeigen, mit SQL Befehlen abzufragen und zu bearbeiten. Dazu gibt es zahlreiche Verwaltungswerkzeuge von Drittanbietern, wovon viele kostenlos verfügbar sind, wei zum Beispiel.:
- SQLite Manager (Add-on für Firefox)
- SQLiteMan (siehe Abbildung)
Rechtliches
Die Software ist gemeinfrei, was bedeutet, dass ihr keine Urheberrecht zugrunde liegt und es dadurch keine Einschränkungen bei der Nutzung und Verbreitung gibt.
Erstellen von SQLite Dateien
In AutoCAD Map 3D 2011 können SQLite Dateien aus beliebigen FDO Vektor-Datenquellen erstellt werden. Es stehen grundsätzlich zwei Varianten zur Verfügung:
- Layerdaten in SQLite Datei exportieren. Verwenden Sie die Darstellungsverwaltung, um Daten nach bekannten räumlichen und attributiven Kriterien zu filtern. Sie können das Ergebnis anschliessend mit dem Befehl “Layerdaten in SQLite exportieren” in einer SQLite Datei abspeichern.
. - Massenkopie: Verwenden Sie die Massenkopie in Map 3D um Vektordaten von einer Datenquelle in eine andere zu übertragen. Tabellen und Attribute zwischen den beiden Datenquellen können automatisch oder interaktiv zugeordnet werden. Zuweisungen lassen sich für die Wiederverwendung abspeichern.
Über FDO verwaltete SQLite Dateien können über die Formatschnittstelle SQLite Spatial (FDO) auch mit den Produkten FME Desktop und FME Server der Firma Safe Software verarbeitet werden.
Der OSGeo FDO Provider für SQLite (spatial)
Die Produkte des Infrastruktur Portfolios von Autodesk nutzen die FDO Technologie, um Daten aus unterschiedlichen Quellen und Formaten zusammenzuführen. Für Daten aus SQLite Datenbanken gibts dazu wie bereits erwähnt einen neuen Daten-Provider mit dem Namen OsGeo FDO Provider für SQLite (Spatial). Die Bezeichnung des Providers weist auf einige wichtige Details hin:
- OSGeo; Der FDO-Provider ist als Open Source Projekt realisiert worden. Der Quellcode steht im Download-Bereich des FDO Projektes, das bekanntlich ebenfalls Open Source ist, zur Verfügung. OSGeo, die Open Source Geospatial Foundation, beherbergt das FDO Projekt.
. - SQLite (spatial); Da SQLite keinen Datentyp zur Speicherung von Geometrien besitzt, wurde das Format mit dem Feature Geometry Format (FGF) von FDO erweitert. Das FGF Geometrieformat folgt der OGC Simple Features for SQL Spezifikation und speichert die Geometrien gemäss der OGC WKB (Well-Known-Binary) Codierung. Diese wurde allerdings ein wenig erweitert, um beispielsweise auch Z und M Koordinaten verwalten zu können. Weitere Informationen zum FGF Geometrieformat findet sich im FDO Developer’s Guide auf der OSGeo-FDO Projektseite unter Dokumentation.
Anwendungsbereiche
Aufgrund der eingeschränkten Mehrbenutzer-Unterstützung eignet das Format vorwiegend für Anwendungen, bei denen Auskunft, Analyse, Ausgabe und Reporting im Vordergrund steht. Ebenso eignet sich das Format für Anwendungsbereiche, bei denen in der Regel nicht mehr als ein Sachbearbeiter gleichzeitig Änderungen am Datenbestand vornimmt.
Wegen der ausgezeichneten Performance beim Lesezugriff eignet sich das Format insbesondere auch als Datenspeicher für Webmapping Anwendungen auf der Basis von MapGuide Open Source und MapGuide Enterprise.
Dank der Umsetzung von Standards, der gemeinfreien Nutzung, des freien Zugangs zum Quellcode, der grossen Verbreitung im IT-Bereich sowie den ausgezeichneten technischen Eigenschaften hat das SQLite gute Chancen, sich im Geospatial Umfeld zu etablieren. Es stellt dadurch auch eine durchaus interessante Alternative für das in die Jahre gekommene Shape Format dar.
Links:
- SQLite Projektportal: http://www.sqlite.org/
- SQLite Consortium: http://www.sqlite.org/consortium.html
- SQLite Man: http://sqliteman.com
- SQLite Manager: https://addons.mozilla.org/de/firefox/addon/5817
. - FDO Projektportal: http://fdo.osgeo.org/
- FDO Dokumentation: http://fdo.osgeo.org/documentation.html
- FDO Developer’s Guide: http://fdo.osgeo.org/files/fdo/docs/FDG_FDODevGuide/index.html
. - OGC Simple Features for SQL Spezifikation: http://www.opengeospatial.org/standards/sfs
- FME SQLite Spatial (FDO): http://www.safe.com/products/desktop/formats/sqlite-spatial-fdo/index.php
- Wikipedia: http://de.wikipedia.org/wiki/Sqlite
Subscribe
Why don't you use Spatialite ?
Kommentiert von: Cédric Moullet | 31. Mai 2010 um 09:26 Uhr
Dazu gibt es mehrere Gründe. Wir gehen an dieser Stelle aber nicht näher darauf ein.
Kommentiert von: Markus Briglmeir | 01. Juni 2010 um 11:40 Uhr