Technischer Überblick Wireless & Mobile: Zugriff & Darstellung Wie kann ich mit Informationen interagieren? Pull Voice Offline Wireless Wireless Lite Man kann nicht immer online sein ! Wireless Netzwerke oft nicht verfügbar Zu geringe Bandbreite Hohe Online-Kosten sparen Das Produkt: Oracle Mobile Server ! Inklusive Oracle9i Lite für PocketPC, Palm OS, Symbian und WIN32 (Windows 98/ME/NT/2000/XP) Oracle Consolidator Oracle Web-to-go Der Mobile Server Architektur des Mobile Server Mobile Client Mobile Server Mobile Client Mobile Client Communication Sicherheit Anwendungsverteilung Sales Automation Field Service Supply Chain Deployment Datenabgleich Messaging Mobile Client Anwendungen Data Capture Procurement Self Service Administration Oracle9i Application Server Mobile Client Oracle9i Server Architektur des Mobile Server Mobile Client Mobile Server (M.S.) Oracle Server Mobile Client Win32, PocketPC, Symbian, Palm M.S. MODul M.S. MODul Mobile Server Standalone Daten Oracle HTTP Server Anwendungen Apache Server Oracle Lite Datenbank M.S. MODul JDBC Net8 Oracle9i Application Server HTTP HTTPS Win2K, WinXP, Linux, Solaris, AIX, HP/UX Oracle Server Mobile Server Repository Jedes Server Betriebssystem Die Oracle9i Lite Engine Oracle9i Lite „Core Engine“ Applikation Applikation Lite API Lite API Applikation Lite API Cache KEINE „Lite-Prozesse!“ Lite Engine Undo „Before“ Image Oracle9i Lite „Core Engine“ ODBC ADO.NET JDBC SQL Layer Java Procedures und Trigger Object Kernel API Datenreplikation („Consolidator“) Consolidator Replikation Features: Setup / Refresh Erkennungslogik Fast / Complete Refresh Konflikterkennung und -Lösung "Publish and Subscribe" Modell Data Subsetting durch Parameter Bidirektionale Replikation Asynchrone Replikation Consolidator Replikation MGP IN Tabelle queue Client Mobile Server Ein Comic Strip … Oracle Server Consolidator Replikation Z Z Z MGP Ich will replizieren! Hier hast Du meine geänderten Daten! ..... .... ..... ..... Client IN Tabelle queue Mobile Server Oracle Server Consolidator Replikation Z Z Z MGP Andere Baustelle! Ich reiche das sofort weiter... ..... .... ..... ..... Client Mobile Server IN Tabelle queue Oracle Server Consolidator Replikation Z Z Z MGP Und hier sind die neuen Daten seit dem letzten Mal! IN Tabelle queue ..... .... ..... ..... Client Mobile Server Oracle Server Consolidator Replikation Hoppela! Neue Daten! MGP IN Tabelle queue Client Mobile Server Irgendwann später ... Oracle Server Consolidator Replikation MGP IN Tabelle queue Client Mobile Server Oracle Server Tipp: „replizierte Sequenzen“ Sequenzen „Small Window“ Methode: start value = 1 increment = 1 window size = 10 threshhold z.B. = 5 „Nur Clients schreiben“ Sequenzen „Large Window“ Methode: start value z.B.= 100000000 Server nutzt Bereich < 100000000 Kein „Open End“ für Server! Sequenzen „Even/Odd“ Methode: increment z.B.= 2 Eigentlich am vernünftigsten – oder ? Tipp: „Daten-Abonnement“ Daten-Abonnement Herkömmlich: Die Snapshot-Definition gibt fest vor, welche Daten ein Client erhält / repliziert (SQL Query) Die Parametrisierung der Snapshot Query ermöglicht eine dynamischere Datenauswahl: der Inhalt des Snapshot-Parameters ist nachträglich variierbar Elegant: Eine “Abonnement-Tabelle” weist einem Replikations-Benutzer einzelne Datensätze zu, die es zu replizieren gilt. Abfrage dieser Tabelle mit EXISTS oder IN Daten-Abonnement Abonnement Benutzer UserID PWD U1 U2 U3 ... abc def Ghi ... ... Nutzdaten UserID PK PK Daten U2 U2 U1 ... PK1 PK2 PK2 ... PK1 PK2 PK3 ... Datum1 Datum2 Datum3 ... Welche Daten erhält Benutzer U2 ? SELECT * FROM NUTZDATEN N WHERE EXISTS ( SELECT PK FROM ABONNEMENT A WHERE A.PK = N.PK AND A.USERID = :BENUTZER ) Wie kommen die Anwendungen in den Server ? Oracle9i Lite Packaging Assistant (wtgpack.exe) Erzeugt Anwendungspakete (Tabellen, Dateien,...) Installiert diese im Mobile Server per Upload 1 2 Wie kommt 9i Lite auf den Client? "Bootstrapping": 9i Lite Core muß erst installiert werden, damit Daten und Anwendungen replizierbar sind. Oracle Installer? Nein! Eine einfache 9i Lite Setup URL ! Windows Client Mobile Client Web-to-go Online UND Offline Web Anwendungen Mit Web-to-Go 1. Offline Browser Oracle9i Lite Apps Data Data Online UND Offline Web Anwendungen Mit Web-to-Go 1. Offline 2. Going Online... Oracle9i Browser Browser Oracle9i Lite Oracle9i Lite Apps Data Data Apps Data Data Apps Data Data Online UND Offline Web Anwendungen Mit Web-to-Go 1. Offline 2. Going Online... 3. Online Oracle9i Oracle9i Browser Browser Oracle9i Lite Oracle9i Lite Apps Data Data Apps Data Data Browser Apps Data Data Apps Data Data Web-to-go Möglichkeiten “Single Source” Ansatz für Anwendungen (mobil/zentral) Berechtigungssystem für Anwendungen (User/Gruppen) Anwender-Desktop umgestaltbar (customizable) DB Connection Verwaltung und Pooling durch Web-to-go Java GUI Anwendungen möglich: Applet-Servlet-Kommunikation Unterstützung für zeitgesteuerte Synch-Vorgänge Applet-Servlet Kommunikation Applet „Sandbox“: verbotene Zugriffe Applet Lokaler Zugriff per DLL: verboten! Oracle Lite Netz-Zugriff auf den Web Server: erlaubt ! Netz-Zugriff auf alle anderen Server: verboten ! Web Server / Mobile Server Oracle Server Applet-Servlet Kommunikation Der Mobile Server „Trick“: Oracle Server Applet AppletProxy .getConnection() Mobile Server Proxy Servlet Servlets dürfen alles ! Oracle Lite Oracle9i Lite 5.0.3 Ausblick Oracle9i Lite Ausblick Geplantes Erscheinungsdatum: Mitte August 2003 Unterstützung für ADO.NET auf PCs (ADOCE für PocketPC bereits vorhanden) Unterstützung für XSCALE Handhelds (zwar kompatibel zu StrongARM, aber nicht optimiert) Bessere Unterstützung bei der Definition von Replikations-Vorlagen, Drag&Drop Support für Tabellen Volle Integration mit Oracle iAS: z.B. Einbindung in OC4J Enterprise Manager Web Oberfläche: Oracle Lite 5.0.3 ist das “Managability-Release”: Oracle9i Lite Ausblick Oracle9i Lite Ausblick Oracle9i Lite Ausblick Oracle9i Lite Ausblick Oracle9i Lite Ausblick Oracle9i Lite Ausblick Zusammenfassung Vereinfacht Lebenszyklus mobiler Anwendungen Schnittstellen auf allen Plattformen Develop Vereinfacht Lebenszyklus mobiler Anwendungen Schnittstellen auf allen Plattformen Develop Package Mobile Development Kit Wizard erzeugt Clients für alle Zielgeräte Vereinfacht Lebenszyklus mobiler Anwendungen Schnittstellen auf allen Plattformen Develop Package Publish Mobile Development Kit Wizard erzeugt Clients für alle Zielgeräte Automatische Generierung von Synchronisationslogik Vereinfacht Lebenszyklus mobiler Anwendungen Schnittstellen auf allen Plattformen Develop Package Deploy Verteilung auf mobile Geräte Publish Mobile Development Kit Wizard erzeugt Clients für alle Zielgeräte Automatische Generierung von Synchronisationslogik Vereinfacht Lebenszyklus mobiler Anwendungen Schnittstellen auf allen Plattformen ‘Asynchrone Replikation’ für 1000e gleichzeitiger Zugriffe Develop Run Oracle9i Server Oracle9i Lite Deploy Verteilung auf mobile Geräte Package Publish Mobile Development Kit Wizard erzeugt Clients für alle Zielgeräte Automatische Generierung von Synchronisationslogik Vereinfacht Lebenszyklus mobiler Anwendungen 100% Zentralisierte Administration und Verwaltung ‘Asynchrone Replikation’ Manage für 1000e gleichzeitiger Zugriffe Run Oracle9i Server Oracle9i Lite Deploy Verteilung auf mobile Geräte Schnittstellen auf allen Plattformen Develop Package Publish Mobile Development Kit Wizard erzeugt Clients für alle Zielgeräte Automatische Generierung von Synchronisationslogik Q U E S T I O N S A N S W E R S Mehr Infos: http://otn.oracle.com http://www.oracle.com