Mein Name ist Legion persistence.day Keynote Ralf Westphal, ralfw@ralfw.de Freier Autor, Berater, Entwickler und Trainer www.pdcollege.de
Warum sind Sie hier? Persistenz ist auch nicht mehr das, was sie einmal war Mein Name ist Legion, denn ich bin viele. Lukas 8,27-30
Persistenztechnologien Früher DAO, RDO oder ADO SQL SQL Stored Procedures C/S Heute ADO.NET, O/R Mapping, SQL XML, Web Service, Linq/DLinq, WinFS SQL+, XPath, OQL, OPath, XML Schema SQL Stored Procedures, SQL CLR, SQL Service Broker, SQL Notification Services N-Tier, SOA
Spannungsfelder Stream Cache Tabellen Stored Procs/Operationen DataSet Business Objects Relational Assoziativ
Relationalisierung I
Unifizierung I
Entfernung I
Verteilung I
Persistenz? Bei Persistenz geht es um mehr als einfache Datenspeicherung: Architektur Plattformen nicht-funktionale Kriterien Datenbankproduktauswahl Plattform Infrastruktur Technologieangebot API-Auswahl Mit einem DB-API und ein bisschen SQL ist es nicht mehr getan!
Kleiner Exkurs Oder: Etwas Theorie kann doch auch nicht schaden, oder?
Architektur? ist doch einfach oder? Aber: Was ist Geschäftslogik, was Datenzugriff? Welcher Code darf wo laufen? Wie machen verfügbare Technologien Sinn im überkommenen Architekturmodell?
Architektur! Klar - aber mit neuem Modell! Präzisere Begriffe tun Not Was bedeutet Verteilte Applikation? Was ist ein Applikationsserver? Was ist Geschäftslogik? Ein detaillierteres Strukturmodell tut Not Welche Bestandteile hat ein Softwaresystem? Wie kommunizierten Softwareartefakte miteinander?
Der Host ist die Applikation Host Laufzeitumgebung für Code Prozess/EXE Host Große Vielfalt Console.EXE Word, Excel IE COM+ IIS/ASP.NET SQL Server
Ruf doch mal an
Zellen statt Schichten Softwarezelle
Verteilte Applikationen Lösungen Mitose
Technologien einordnen Host Infrastruktur Programmiermodell Kommunikationstechnologien
Back to persistence
Einordnung ADO.NET, SQL XML, O/R Mapping, Web Service, SQL Service Broker Datenbankserver ADO.NET, O/R Mapping SQL Stored Proc, Managed Code
Enter the Matrix Nicht-funktionale Anforderungen Skalierbarkeit, Performance, Programmiermodell, Plattform, Sicherheit Hosts/Datenbanksysteme Infrastruktur Tx Pooling Programmiermodell Sprache Connected/Disconnected Sync/Async Kommunikationstechnologien/APIs Relational, z.b. ADO.NET Objekt-relational, O/R Mapping Nachrichtenorientiert, z.b. SQL Service Broker RPC, z.b. Web Service nf Anforderung Host API
Relationalisierung II Beliebige Verbindungen, dyn. Daten, Historisierung, log. Wachstum
Unifizierung II
Entfernung II
Verteilung II
Die Zukunft gehört Caches klaren Schnittstellen Operationen/Service Tabellen? verteilter Logik Assoziationen
Über den Referenten Ralf Westphal (www.ralfw.de) ist freier Softwaretechnologievermittler. Er arbeitet als Fachautor, Coach/Berater und Referent auf Entwickler-Events im Inund Ausland. Schwerpunkt seiner Arbeit sind die Architektur von.net- Software und die Förderung innovativer Softwaretechnologien. Bei der Wissensvermittlung beschreitet er gerne ungewöhnliche Wege, so zum Beispiel mit den Videoserien.NET TV und dotnetpro.tv und dem Trainingsunternehmen Professional Developer College (www.pdcollege.de). Ralf Westphal ist Microsoft Visual Developer Solution Architect MVP, ein Associate der ersten Stunde beim Beratungsunternehmen thinktecture (www.thinktecture.com) und war von 1998 bis 2005 einer der unabhängigen Microsoft Regional Directors für Deutschland. Email: ralfw@ralfw.de www.pdcollege.de
Publikationen Bücher.NET kompakt, Spektrum Akademischer Verlag 2002, ISBN 3827411858 In Fachzeitschriften ADO.NET Datenbankprogrammierung, Addison-Wesley 2002, ISBN 3827319978 Jetzt lerne ich ADO.NET, Markt+Technik, 2003, ISBN 3827262291 (zusammen mit Christian Weyer) Video www.dotnettv.de tv.dotnetpro.de