Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Daniel Walzenbach Developer Evangelist Microsoft Deutschland GmbH.

Ähnliche Präsentationen


Präsentation zum Thema: "Daniel Walzenbach Developer Evangelist Microsoft Deutschland GmbH."—  Präsentation transkript:

1 Daniel Walzenbach Developer Evangelist Microsoft Deutschland GmbH

2 Unstrukturierten Daten Geodaten Hierarchische Daten

3 Moderne Anwendungen speichern zunehmend unstrukturierte Daten Bilder Videos Dokumente … Datenmenge wächst jährlich um ca. 35% Davon 85% unstrukturierte Daten Wie können diese Daten gespeichert werden?

4 Transaktional konsistente Daten Einfaches Sichern/Wiederherstellen der Daten Einheitliches Programmiermodell und Berechtigungskonzept Große Datenbanken Schlechte Streamingperformance Beschränkung der Dateigröße auf 2GB Vergleichsweise teuer

5 Kleine Datenbanken Gute Streamingperformance Dateigröße nur durch Dateisystem begrenzt Vergleichsweise günstig Transaktional inkonsistente Daten Unterschiedliche Berechtigungssysteme Sichern/Wiederherstellen der Daten nicht trivial

6 Transaktional konsistente Daten Einfaches Sichern/Wiederherstellen der Daten (integriert in SQL Backup) Einheitliches Berechtigungskonzept Gute Streamingperformance Dateigröße nur durch Dateisystem begrenzt Vergleichsweise günstig

7 BLOBs ( varbinary(max) ) werden von SQL Server im Dateisystem verwaltet BLOBs werden in eigenem Verzeichnis gespeichert (erfordert NTFS) Verzeichnisse sind durch ACLs geschützt Zwei Programmiermodelle T-SQL Win32 Stream-API mit T-SQL Transaktionskontext

8 FileStream auf Server aktivieren Nur T-SQL Lokaler Dateisystemzugriff Lokaler und Remote Dateisystemzugriff Ablageort in CREATE DATABASE festlegen FILEGROUP FileStreamGroup1 CONTAINS FILESTREAM(NAME = FSMedia, FILENAME = NC:\Demos\FSData) Tabelle muss GUID-Feld enthalten ROWGUIDCOL NOT NULL UNIQUE

9 Nicht unterstützt werden DB Snapshot DB Mirroring Transparente Verschlüsselung

10 Zu speichernde Daten sind im Schnitt größer als 1 MB Schneller, lesender Zugriff ist wichtig Für kleinere Datensätze bietet varbinary(max) (in der Datenbank gespeichert) häufig bessere Performance varbinary(max), varchar(max) und XML Datentypen werden nach wie vor unterstützt

11 { FileStream demo } Konfiguration des Servers Zugriff auf FileStream Objekte mit T-SQL und.NET

12 Geodaten geben Antworten auf Fragen wie… Welche Straßen kreuzen ein bestimmtes Gelände? Überlappen sich bestimmte Gebiete? Liste aller italienischen Restaurants im Umkreis von 5km? Geodaten sind Bestandteil vieler Datenbanken Adressen zu Kunden?

13 Das Open Geospatial Consortium (OGC) definiert eine Hierarchie von Geodatentypen Point Linestring Polygon MultiPoint MultiLinestring MultiPolygon GeomCollection Nicht instanziierbare Klassen auf denen diese Typen aufbauen

14

15 SQL Server unterstützt zwei Geodatentypen GEOMETRY – flaches Erdmodell GEOGRAPHY – rundes Erdmodell Beide Typen unterstützen alle OGC Typen InstanceOf kann die Typen unterscheiden Unterstützung zweidimensionaler Daten X und Y oder Längen-/Breitengrad Z – Höhenangabe (benutzerdef. Semantik) M – Maßeinheit (benutzerdef. Semantik)

16 GEOGRAPHY Typ hat weitere Anforderungen Koordinaten werden in Breiten-/Längengrad eingegeben Ändert sich zu Längengrad/Breitengrad vor RTM Koordinaten von außengelegene Polygonringe müssen gegen den Uhrzeiger angegeben werden, innen liegende (Löcher) mit dem Uhrzeiger Ein einzelnes Geometrieobjekt kann nicht mehr als eine halbe logische Hemisphäre umfassen

17 GEMOETRY arbeitet in der Ebene Ein Polygon ist unabhängig der Ausrichtung eindeutig definiert

18 Welche Fläche definiert einen Polygonzug um den Äquator?

19 Linke Hand Regel

20 Geodaten Typen sind SQLCLR UDTs '.' Syntax für Properties '.' Syntax für Instanzmethoden '::' Syntax für statische Methoden Methoden und Properties sind case-sensitive

21 Jeder Typ unterstützt eine Anzahl von Methoden und Properties, die mit den OGC übereinstimmt Zusätzliche Erweiterungen für die Typen (MakeValid, Reduce, …) GEOMETRY implementiert alle OGC Properties und Methoden GEOGRAPHY implementiert die meisten OGC Eigenschaften und Properties

22 Geodaten werden binär gespeichert Instanzen des Typs können NULL sein Eingabe als Well Known binary - ST[Type]FromWKB Well Known text - ST[Type]FromText Geography Markup Language (GML) - GeomFromGml Außerdem SQLCLR Funktionen Parse Point

23 Geodaten können ausgegeben werden als Well Known binary - STAsBinary Well Known text - STAsText GML - AsGml Text mit Z und M Werten - AsTextZM SQLCLR Methode ToString – Gibt Well Known text zurück Als SQLCLR Object - SqlGeometry, SqlGeography Andere nützliche Formate: GeoRSS, KML Nicht direkt unterstützt

24 Eine SRID pro Geodatensatz SRID legt die Spezifikation fest 4326 – GPS, 4269 – ESRI, … SRID 0 – keine spezielle Referenz. Default für GEOMETRY Nur Geodaten mit der gleichen SRID können zusammen verarbeitet werden Rückgabewerde ansonsten NULL SRID muss einen Eintrag von sys.spatial_reference_systems referenzieren

25 Beschreibend STArea STLength STCentroid Beziehungen zwischen zwei Instanzen STIntersects STDistance Collections STGeometryN STPointN

26 SELECT * FROM roads WHERE roads.geom.Intersects(@ms)=1 Welche Straßen kreuzen das Firmengelände von Microsoft?

27 SQL Server 2008 erweitert den OGC Standard MakeValid – Konvertiert zu OGC gültiger Instanz BufferWithTolerence – erlaubt Annäherung und Abweichung Reduce – Vereinfacht komplexe Geometrie (GEOMETRY/GEOGRAPHY) GML Unterstützung …

28 SQL Server Spatial Indexes (B-Trees) Uses tessellation to tile 2D to linear Divides space into grids (uses Hilbert algorithm) Meant as a first level of row elimination Can produce false positives Never false negatives You specify Bounding box of top level grid - GEOMETRY index only Cells per object - number of cells recorded for matching Grids Four Grid Levels Three Grid Densities Per Level - Low, Medium, High

29

30

31 { Spatial demo } Geodaten im Überblick

32 Perfekter Einsatz für Unternehmensorganisation, Stücklisten, etc… Repräsentiert eine Position in einer Hierarchie Kompakte/effiziente Speicherung 6*log A n (A = Anzahl Kinder, n = Anzahl Knoten) Beliebige Datensätze speichern/löschen Leistungsfähige Abfragen GetRoot, GetLevel, IsDescendant, ReParent, etc.

33 Parent ID <- ChildID Einfach Daten einzupflegen aber… Aufwändig in der Abfrage Rekursion

34 Neuer Built-In Datentyp – HierarchyID SQLCLR basierte System UDT Kann auch in.NET (VB.NET, C#) verwendet werden (SqlHierarchyId) Als path enumeration model implementiert (ORDPATH) HierarchyID (SQLCLR Typ) kann erweitert werden Von dem Typ ableiten Um Methoden und Properties erweitern

35 Da HierarchyID ein SQLCLR Typ ist Kann von dem Typ abgeleitet werden Erweitern um Methoden und Properties

36 Knoten in einem Unterbaum sind benachbart angeordnet Effizient für Fragen nach Unterbäumen Suche nach allen Dateien in diesem und den untergeordneten Ordnern CREATE UNIQUE INDEX Org_Depth_First ON Organization(EmployeeID)

37 Knoten in einer Ebene sind benachbart angeordnet Effizient für Fragen nach direkt unterstellten Knoten Suche nach allen Angestellten eines Managers CREATE CLUSTERED INDEX Org_Breadth_First ON Organization(OrgLevel,EmployeeID)

38 { HierarchyID demo } Speichern hierarchischer Daten

39 Learn more about data programmability http://www.microsoft.com/sql/2008/technologies/dataprogrammability.mspx http://www.microsoft.com/sql/2008/technologies/spatial.mspx http://www.microsoft.com/sql/2008/technologies/spatial.mspx Learn more about spatial data http://www.microsoft.com/sql/2008/technologies/spatial.mspx http://www.microsoft.com/sql/2008/technologies/spatial.mspx Learn more about SQL Server 2008 http://www.microsoft.com/sql/2008/default.mspx http://www.microsoft.com/sql/2008/default.mspx Discover SQL Server 2008: Webcasts, Virtual Labs, and White Papers http://www.microsoft.com/sql/2008/learning/default.mspx http://www.microsoft.com/sql/2008/learning/default.mspx SQL Server 2008 training http://www.microsoft.com/learning/sql/2008/default.mspx http://www.microsoft.com/learning/sql/2008/default.mspx Download latest SQL Server CTP http://www.microsoft.com/sql/2008/prodinfo/download.mspx http://www.microsoft.com/sql/2008/prodinfo/download.mspx Join the SQL PASS community http://www.sqlpass.org

40 Visual Studio Team System Information Day Regelmäßige ganztägige Informationsveranstaltung von Microsoft Praxisnahe Demos & viel Raum für Diskussionen Details & Anmeldung: www.event-team.com/events/visualstudiowww.event-team.com/events/visualstudio TeamConf 2008 – Die Visual Studio Team System Konferenz VSTS in der Praxis - 22.-24. April 2008 in München Anwenderberichte (Siemens, ABB, Commerzbank, Datev, Münchener Rück,..) Fach- und Technologievorträge Vortragsprogramm und Anmeldung: www.teamconf.dewww.teamconf.de Visual Studio Launch Promotion Tauschen Sie Ihre Visual Studio Standard in eine höherwertige Visual Studio Edition Ihrer Wahl Anrechnung in Höhe von 299 beim Kauf eines anderen VS Produktes vom 19. Februar bis zum 30. April 2008 Nur bei den Partnern: PC Ware, SoftExpress, SOS und Zoschke (befinden sich alle in der Ausstellerhalle)

41 Wir freuen uns auf Ihre Fragen: Technische Experten stehen Ihnen während der gesamten Veranstaltung in der Haupthalle zur Verfügung.

42 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Herunterladen ppt "Daniel Walzenbach Developer Evangelist Microsoft Deutschland GmbH."

Ähnliche Präsentationen


Google-Anzeigen